Class: TinyGQL::Nodes::InlineFragment

Inherits:
Node
  • Object
show all
Defined in:
lib/tinygql/nodes.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Node

#argument?, #boolean_value?, #directive?, #directive_definition?, #document?, #each, #enum_type_definition?, #enum_value?, #enum_value_definition?, #executable_directive_location?, #field?, #field_definition?, #float_value?, #fragment_definition?, #fragment_spread?, #input_object_type_definition?, #input_value_definition?, #int_value?, #interface_type_definition?, #list_type?, #list_value?, #named_type?, #not_null_type?, #null_value?, #object_field?, #object_type_definition?, #object_type_extension?, #object_value?, #operation_definition?, #root_operation_type_definition?, #scalar_type_definition?, #schema_definition?, #string_value?, #type_condition?, #type_system_directive_location?, #union_type_definition?, #value?, #variable?, #variable_definition?

Constructor Details

#initialize(type_condition, directives, selection_set) ⇒ InlineFragment

Returns a new instance of InlineFragment.



452
453
454
455
456
# File 'lib/tinygql/nodes.rb', line 452

def initialize type_condition, directives, selection_set
  @type_condition = type_condition
  @directives = directives
  @selection_set = selection_set
end

Instance Attribute Details

#directivesObject (readonly)

Returns the value of attribute directives.



450
451
452
# File 'lib/tinygql/nodes.rb', line 450

def directives
  @directives
end

#selection_setObject (readonly)

Returns the value of attribute selection_set.



450
451
452
# File 'lib/tinygql/nodes.rb', line 450

def selection_set
  @selection_set
end

#type_conditionObject (readonly)

Returns the value of attribute type_condition.



450
451
452
# File 'lib/tinygql/nodes.rb', line 450

def type_condition
  @type_condition
end

Instance Method Details

#accept(viz) ⇒ Object



458
459
460
# File 'lib/tinygql/nodes.rb', line 458

def accept viz
  viz.handle_inline_fragment self
end

#childrenObject



468
469
470
# File 'lib/tinygql/nodes.rb', line 468

def children
  ary = []; ary << type_condition if type_condition; ary.concat(directives) if directives; ary.concat(selection_set); ary
end

#fold(viz, seed) ⇒ Object



462
463
464
# File 'lib/tinygql/nodes.rb', line 462

def fold viz, seed
  viz.handle_inline_fragment self, seed
end

#inline_fragment?Boolean

Returns:

  • (Boolean)


466
# File 'lib/tinygql/nodes.rb', line 466

def inline_fragment? = true