Class: GraphQL::Query::InlineFragmentResolutionStrategy

Inherits:
Object
  • Object
show all
Defined in:
lib/graph_ql/query/inline_fragment_resolution_strategy.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ast_inline_fragment, type, target, operation_resolver) ⇒ InlineFragmentResolutionStrategy

Returns a new instance of InlineFragmentResolutionStrategy.



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/graph_ql/query/inline_fragment_resolution_strategy.rb', line 3

def initialize(ast_inline_fragment, type, target, operation_resolver)
  child_type = operation_resolver.query.schema.types[ast_inline_fragment.type]
  resolved_type = GraphQL::Query::TypeResolver.new(target, child_type, type).type
  if resolved_type.nil?
    @result = {}
  else
    selections = ast_inline_fragment.selections
    resolver = GraphQL::Query::SelectionResolver.new(target, resolved_type, selections, operation_resolver)
    @result = resolver.result
  end
end

Instance Attribute Details

#resultObject (readonly)

Returns the value of attribute result.



2
3
4
# File 'lib/graph_ql/query/inline_fragment_resolution_strategy.rb', line 2

def result
  @result
end