Class: GraphQL::StaticValidation::DefinitionDependencies::DependencyMap
- Inherits:
-
Object
- Object
- GraphQL::StaticValidation::DefinitionDependencies::DependencyMap
- Defined in:
- lib/graphql/static_validation/definition_dependencies.rb
Overview
Map definition AST nodes to the definition AST nodes they depend on. Expose circular depednencies.
Instance Attribute Summary collapse
-
#cyclical_definitions ⇒ Array<GraphQL::Language::Nodes::FragmentDefinition>
readonly
-
#unmet_dependencies ⇒ Hash<Node, Array<GraphQL::Language::Nodes::FragmentSpread>>
readonly
-
#unused_dependencies ⇒ Array<GraphQL::Language::Nodes::FragmentDefinition>
readonly
Instance Method Summary collapse
-
#[](definition_node) ⇒ Array<GraphQL::Language::Nodes::AbstractNode>
Dependencies for
definition_node
. -
#initialize ⇒ DependencyMap
constructor
A new instance of DependencyMap.
Constructor Details
#initialize ⇒ DependencyMap
Returns a new instance of DependencyMap
92 93 94 95 96 97 |
# File 'lib/graphql/static_validation/definition_dependencies.rb', line 92 def initialize @dependencies = Hash.new { |h, k| h[k] = [] } @cyclical_definitions = [] @unmet_dependencies = Hash.new { |h, k| h[k] = [] } @unused_dependencies = [] end |
Instance Attribute Details
#cyclical_definitions ⇒ Array<GraphQL::Language::Nodes::FragmentDefinition> (readonly)
84 85 86 |
# File 'lib/graphql/static_validation/definition_dependencies.rb', line 84 def cyclical_definitions @cyclical_definitions end |
#unmet_dependencies ⇒ Hash<Node, Array<GraphQL::Language::Nodes::FragmentSpread>> (readonly)
87 88 89 |
# File 'lib/graphql/static_validation/definition_dependencies.rb', line 87 def unmet_dependencies @unmet_dependencies end |
#unused_dependencies ⇒ Array<GraphQL::Language::Nodes::FragmentDefinition> (readonly)
90 91 92 |
# File 'lib/graphql/static_validation/definition_dependencies.rb', line 90 def unused_dependencies @unused_dependencies end |
Instance Method Details
#[](definition_node) ⇒ Array<GraphQL::Language::Nodes::AbstractNode>
Returns dependencies for definition_node
100 101 102 |
# File 'lib/graphql/static_validation/definition_dependencies.rb', line 100 def [](definition_node) @dependencies[definition_node] end |