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.
45 46 47 48 49 50 51 |
# File 'lib/graphql/language/nodes/query_result_class_ext.rb', line 45 def query_result_class(**kargs) if self.selections.any? super else nil end end |
#selection_query_result_classes(**kargs) ⇒ Object
53 54 55 56 |
# File 'lib/graphql/language/nodes/query_result_class_ext.rb', line 53 def selection_query_result_classes(**kargs) name = self.alias || self.name { name => query_result_class(**kargs) } end |