Class: Jaina::Parser::Expression::Registry Private
- Inherits:
-
Object
- Object
- Jaina::Parser::Expression::Registry
- Defined in:
- lib/jaina/parser/expression/registry.rb,
lib/jaina/parser/expression/registry/access_interface_mixin.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Defined Under Namespace
Modules: AccessInterfaceMixin
Constant Summary collapse
- Error =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Class.new(StandardError)
- AlreadyRegisteredExpressionError =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Class.new(Error)
- UnregisteredExpressionError =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Class.new(Error)
- IncorrectExpressionObjectError =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Class.new(Error)
Instance Method Summary collapse
- #[](expression_token) ⇒ Class{Jaina::Parser::Operator::Abstract} private
- #expressions ⇒ Array<String> private
- #initialize ⇒ void constructor private
- #redefine(expression) ⇒ void private
- #register(expression) ⇒ void private
Constructor Details
#initialize ⇒ void
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
21 22 23 24 |
# File 'lib/jaina/parser/expression/registry.rb', line 21 def initialize @expression_set = {} @access_lock = Mutex.new end |
Instance Method Details
#[](expression_token) ⇒ Class{Jaina::Parser::Operator::Abstract}
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
31 32 33 |
# File 'lib/jaina/parser/expression/registry.rb', line 31 def [](expression_token) thread_safe { fetch(expression_token) } end |
#expressions ⇒ Array<String>
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
57 58 59 |
# File 'lib/jaina/parser/expression/registry.rb', line 57 def expressions thread_safe { expression_names } end |
#redefine(expression) ⇒ void
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
This method returns an undefined value.
49 50 51 |
# File 'lib/jaina/parser/expression/registry.rb', line 49 def redefine(expression) thread_safe { apply(expression) } end |
#register(expression) ⇒ void
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
This method returns an undefined value.
40 41 42 |
# File 'lib/jaina/parser/expression/registry.rb', line 40 def register(expression) thread_safe { add(expression) } end |