class GraphQL::Language::Visitor

def end_visit(node, parent)

Should global `leave` visitors come first or last?
def end_visit(node, parent)
  node_visitor = self[node.class]
  self.class.apply_hooks(node_visitor.leave, node, parent)
end