Class: Ruby::Rego::Memoization::Context
- Inherits:
-
Object
- Object
- Ruby::Rego::Memoization::Context
- Defined in:
- lib/ruby/rego/memoization.rb
Overview
Holds per-scope caches used during evaluation.
Instance Attribute Summary collapse
-
#function_values ⇒ Hash
readonly
-
#reference_keys ⇒ Hash
readonly
-
#reference_values ⇒ Hash
readonly
-
#rule_values ⇒ Hash
readonly
Instance Method Summary collapse
-
#initialize ⇒ Context
constructor
A new instance of Context.
Constructor Details
#initialize ⇒ Context
Returns a new instance of Context.
9 10 11 12 13 14 |
# File 'lib/ruby/rego/memoization.rb', line 9 def initialize @rule_values = {} # @type var @rule_values: Hash[String, Value] @reference_values = {} # @type var @reference_values: Hash[AST::Reference, Value] @reference_keys = {} # @type var @reference_keys: Hash[AST::Reference, Array[Object] | Object] @function_values = {} # @type var @function_values: Hash[Array[Object], Value] end |
Instance Attribute Details
#function_values ⇒ Hash (readonly)
26 27 28 |
# File 'lib/ruby/rego/memoization.rb', line 26 def function_values @function_values end |
#reference_keys ⇒ Hash (readonly)
23 24 25 |
# File 'lib/ruby/rego/memoization.rb', line 23 def reference_keys @reference_keys end |
#reference_values ⇒ Hash (readonly)
20 21 22 |
# File 'lib/ruby/rego/memoization.rb', line 20 def reference_values @reference_values end |
#rule_values ⇒ Hash (readonly)
17 18 19 |
# File 'lib/ruby/rego/memoization.rb', line 17 def rule_values @rule_values end |