Class: GraphQL::Language::Nodes::Field
- Inherits:
-
AbstractNode
- Object
- AbstractNode
- GraphQL::Language::Nodes::Field
- Includes:
- Selection, Selections
- Defined in:
- lib/graphql/language/nodes/selection_ext.rb,
lib/graphql/language/nodes/inject_selection_ext.rb,
lib/graphql/language/nodes/query_result_class_ext.rb
Instance Method Summary collapse
- #inject_selection(*selections) ⇒ Object
-
#query_result_class(**kargs) ⇒ Object
Public: Get GraphQL::QueryResult class for result of query.
- #selection_query_result_classes(**kargs) ⇒ Object
Methods included from Selections
#replace_fragment_spread, #selections_query_result_classes
Methods inherited from AbstractNode
Instance Method Details
#inject_selection(*selections) ⇒ Object
38 39 40 |
# File 'lib/graphql/language/nodes/inject_selection_ext.rb', line 38 def inject_selection(*selections) self.selections.any? ? super : self end |
#query_result_class(**kargs) ⇒ Object
Public: Get GraphQL::QueryResult class for result of query.
Returns subclass of QueryResult or nil.
44 45 46 47 48 49 50 |
# File 'lib/graphql/language/nodes/query_result_class_ext.rb', line 44 def query_result_class(**kargs) if self.selections.any? super else nil end end |
#selection_query_result_classes(**kargs) ⇒ Object
52 53 54 55 |
# File 'lib/graphql/language/nodes/query_result_class_ext.rb', line 52 def selection_query_result_classes(**kargs) name = self.alias || self.name { name => query_result_class(**kargs) } end |