Class: GraphQL::Language::Visitor::NodeVisitor

Inherits:
Object
  • Object
show all
Defined in:
lib/graphql/language/visitor.rb

Overview

Collect enter and leave hooks for classes in Nodes

Access NodeVisitors via #[]

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeNodeVisitor

Returns a new instance of NodeVisitor



226
227
228
229
# File 'lib/graphql/language/visitor.rb', line 226

def initialize
  @enter = []
  @leave = []
end

Instance Attribute Details

#enterArray<Proc> (readonly)

Returns Hooks to call when entering a node of this type

Returns:

  • (Array<Proc>)

    Hooks to call when entering a node of this type



222
223
224
# File 'lib/graphql/language/visitor.rb', line 222

def enter
  @enter
end

#leaveArray<Proc> (readonly)

Returns Hooks to call when leaving a node of this type

Returns:

  • (Array<Proc>)

    Hooks to call when leaving a node of this type



224
225
226
# File 'lib/graphql/language/visitor.rb', line 224

def leave
  @leave
end

Instance Method Details

#<<(hook) ⇒ Object

Shorthand to add a hook to the #enter array

Parameters:

  • hook (Proc)

    A hook to add



233
234
235
# File 'lib/graphql/language/visitor.rb', line 233

def <<(hook)
  enter << hook
end