class BELParser::Script::Syntax::ExpressionValidation
Constants
- EXP_VALIDATOR
ExpressionValidator validates the syntax and semantics of
BEL
expressions when supplied a {BELParser::Language::Specification} and Hash of namespaces.- TARGET_NODES
Public Class Methods
expression_validator(script_context)
click to toggle source
# File lib/bel_parser/script/syntax/expression_validation.rb, line 29 def self.expression_validator(script_context) unless defined? @expression_validator spec, namespaces, uri_reader, url_reader = script_context.values_at( :specification, :namespace_definitions, :uri_reader, :url_reader) @expression_validator = EXP_VALIDATOR.new( spec, namespaces, uri_reader, url_reader) end @expression_validator end
map(ast_node, script_context)
click to toggle source
# File lib/bel_parser/script/syntax/expression_validation.rb, line 21 def self.map(ast_node, script_context) return nil unless TARGET_NODES.include?(ast_node.class) return nil unless script_context.key?(:specification) validator = expression_validator(script_context) validator.validate(ast_node) end