Class: GraphQL::StaticValidation::Validator::Context

Inherits:
Object
  • Object
show all
Defined in:
lib/graph_ql/static_validation/validator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(schema, document) ⇒ Context

Returns a new instance of Context.



21
22
23
24
25
26
27
28
29
30
# File 'lib/graph_ql/static_validation/validator.rb', line 21

def initialize(schema, document)
  @schema = schema
  @document = document
  @fragments = document.parts.each_with_object({}) do |part, memo|
    part.is_a?(GraphQL::Nodes::FragmentDefinition) && memo[part.name] = part
  end
  @errors = []
  @visitor = GraphQL::Visitor.new
  @type_stack = GraphQL::StaticValidation::TypeStack.new(schema, visitor)
end

Instance Attribute Details

#documentObject (readonly)

Returns the value of attribute document.



20
21
22
# File 'lib/graph_ql/static_validation/validator.rb', line 20

def document
  @document
end

#errorsObject (readonly)

Returns the value of attribute errors.



20
21
22
# File 'lib/graph_ql/static_validation/validator.rb', line 20

def errors
  @errors
end

#fragmentsObject (readonly)

Returns the value of attribute fragments.



20
21
22
# File 'lib/graph_ql/static_validation/validator.rb', line 20

def fragments
  @fragments
end

#schemaObject (readonly)

Returns the value of attribute schema.



20
21
22
# File 'lib/graph_ql/static_validation/validator.rb', line 20

def schema
  @schema
end

#visitorObject (readonly)

Returns the value of attribute visitor.



20
21
22
# File 'lib/graph_ql/static_validation/validator.rb', line 20

def visitor
  @visitor
end

Instance Method Details

#directive_definitionObject



40
41
42
# File 'lib/graph_ql/static_validation/validator.rb', line 40

def directive_definition
  @type_stack.directive_definitions.last
end

#field_definitionObject



36
37
38
# File 'lib/graph_ql/static_validation/validator.rb', line 36

def field_definition
  @type_stack.field_definitions.last
end

#object_typesObject



32
33
34
# File 'lib/graph_ql/static_validation/validator.rb', line 32

def object_types
  @type_stack.object_types
end