class GraphQL::Client::RenameNodeVisitor

Public Class Methods

new(document, definitions:) click to toggle source
Calls superclass method
# File lib/graphql/client.rb, line 256
def initialize(document, definitions:)
  super(document)
  @definitions = definitions
end

Public Instance Methods

on_fragment_definition(node, _parent) click to toggle source
Calls superclass method
# File lib/graphql/client.rb, line 261
def on_fragment_definition(node, _parent)
  rename_node(node)
  super
end
on_fragment_spread(node, _parent) click to toggle source
Calls superclass method
# File lib/graphql/client.rb, line 271
def on_fragment_spread(node, _parent)
  rename_node(node)
  super
end
on_operation_definition(node, _parent) click to toggle source
Calls superclass method
# File lib/graphql/client.rb, line 266
def on_operation_definition(node, _parent)
  rename_node(node)
  super
end

Private Instance Methods

rename_node(node) click to toggle source
# File lib/graphql/client.rb, line 278
def rename_node(node)
  definition = @definitions[node.name]
  if definition
    node.extend(LazyName)
    node._definition = definition
  end
end