Class: BELParser::Language::Syntax::UndefinedNamespaceError
- Inherits:
-
SyntaxError
- Object
- SyntaxResult
- SyntaxError
- BELParser::Language::Syntax::UndefinedNamespaceError
- Defined in:
- lib/bel_parser/language/syntax/undefined_namespace.rb
Overview
UndefinedNamespaceError indicates a parameter prefix is referencing an undefined namespace.
Instance Attribute Summary collapse
-
#defined_namespaces ⇒ Object
readonly
Gets the defined namespaces.
-
#invalid_prefix ⇒ Object
readonly
Gets the invalid prefix.
Attributes inherited from SyntaxResult
#expression_node, #specification
Instance Method Summary collapse
-
#initialize(prefix_node, spec, invalid_prefix, defined_namespaces) ⇒ UndefinedNamespaceError
constructor
A new instance of UndefinedNamespaceError.
- #msg ⇒ Object
Methods inherited from SyntaxError
Methods inherited from SyntaxResult
Constructor Details
#initialize(prefix_node, spec, invalid_prefix, defined_namespaces) ⇒ UndefinedNamespaceError
Returns a new instance of UndefinedNamespaceError.
34 35 36 37 38 |
# File 'lib/bel_parser/language/syntax/undefined_namespace.rb', line 34 def initialize(prefix_node, spec, invalid_prefix, defined_namespaces) super(prefix_node, spec) @invalid_prefix = invalid_prefix @defined_namespaces = defined_namespaces.dup end |
Instance Attribute Details
#defined_namespaces ⇒ Object (readonly)
Gets the defined namespaces.
32 33 34 |
# File 'lib/bel_parser/language/syntax/undefined_namespace.rb', line 32 def defined_namespaces @defined_namespaces end |
#invalid_prefix ⇒ Object (readonly)
Gets the invalid prefix.
30 31 32 |
# File 'lib/bel_parser/language/syntax/undefined_namespace.rb', line 30 def invalid_prefix @invalid_prefix end |
Instance Method Details
#msg ⇒ Object
40 41 42 43 44 45 |
# File 'lib/bel_parser/language/syntax/undefined_namespace.rb', line 40 def msg <<-MSG.gsub(/ {10}/, '') Undefined namespace "#{invalid_prefix}". Defined namespaces are: #{defined_namespaces.keys.join(', ')} MSG end |