class Prism::BlockNode

def copy(**params)

def copy: (**params) -> BlockNode
def copy(**params)
  BlockNode.new(
    params.fetch(:locals) { locals },
    params.fetch(:parameters) { parameters },
    params.fetch(:body) { body },
    params.fetch(:opening_loc) { opening_loc },
    params.fetch(:closing_loc) { closing_loc },
    params.fetch(:location) { location },
  )
end