Class: GQL::Connection

Inherits:
Node
  • Object
show all
Defined in:
lib/gql/connection.rb

Instance Attribute Summary

Attributes inherited from Node

#ast_node, #context, #target, #variables

Class Method Summary collapse

Methods inherited from Node

#initialize, #raw_value, validate_is_subclass!, #value

Constructor Details

This class inherits a constructor from GQL::Node

Class Method Details

.build_class(id, proc, options = {}) ⇒ Object



6
7
8
9
10
11
12
13
14
15
# File 'lib/gql/connection.rb', line 6

def build_class(id, proc, options = {})
  list_class = options.delete(:list_class) || GQL.default_list_class
  item_class = options.delete(:item_class)

  Node.validate_is_subclass! list_class, 'list'

  list_class.build_class(id, proc, options).tap do |field_class|
    field_class.array :edges, -> { target }, item_class: item_class
  end
end