Class: BELParser::Language::Syntax::UndefinedNamespaceValue

Inherits:
Object
  • Object
show all
Includes:
SyntaxFunction
Defined in:
lib/bel_parser/language/syntax/undefined_namespace_value.rb

Overview

Undefined namespace value finds values that are missing from their purported namespaces.

Class Method Summary collapse

Class Method Details

.map(value_node, spec, namespaces) ⇒ Object



13
14
15
16
17
18
19
20
21
22
# File 'lib/bel_parser/language/syntax/undefined_namespace_value.rb', line 13

def self.map(value_node, spec, namespaces)
  return nil unless value_node.is_a?(BELParser::Parsers::AST::Value)
  return nil unless value_node.namespace

  nsv = value_node.namespace_value
  if nsv.nil? || nsv.encoding.nil?
    value = value_node.children[0].string_literal
    UndefinedNamespaceValueWarning.new(value_node, spec, value)
  end
end