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 dependencies.
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.
      86 87 88 89 90 91  | 
    
      # File 'lib/graphql/static_validation/definition_dependencies.rb', line 86 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)
      78 79 80  | 
    
      # File 'lib/graphql/static_validation/definition_dependencies.rb', line 78 def cyclical_definitions @cyclical_definitions end  | 
  
#unmet_dependencies ⇒ Hash<Node, Array<GraphQL::Language::Nodes::FragmentSpread>> (readonly)
      81 82 83  | 
    
      # File 'lib/graphql/static_validation/definition_dependencies.rb', line 81 def unmet_dependencies @unmet_dependencies end  | 
  
#unused_dependencies ⇒ Array<GraphQL::Language::Nodes::FragmentDefinition> (readonly)
      84 85 86  | 
    
      # File 'lib/graphql/static_validation/definition_dependencies.rb', line 84 def unused_dependencies @unused_dependencies end  | 
  
Instance Method Details
#[](definition_node) ⇒ Array<GraphQL::Language::Nodes::AbstractNode>
Returns dependencies for definition_node.
      94 95 96  | 
    
      # File 'lib/graphql/static_validation/definition_dependencies.rb', line 94 def [](definition_node) @dependencies[definition_node] end  |