Class: Ruby::Rego::Memoization::Context

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby/rego/memoization.rb

Overview

Holds per-scope caches used during evaluation.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeContext

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_valuesHash (readonly)

Returns:

  • (Hash)


26
27
28
# File 'lib/ruby/rego/memoization.rb', line 26

def function_values
  @function_values
end

#reference_keysHash (readonly)

Returns:

  • (Hash)


23
24
25
# File 'lib/ruby/rego/memoization.rb', line 23

def reference_keys
  @reference_keys
end

#reference_valuesHash (readonly)

Returns:

  • (Hash)


20
21
22
# File 'lib/ruby/rego/memoization.rb', line 20

def reference_values
  @reference_values
end

#rule_valuesHash (readonly)

Returns:

  • (Hash)


17
18
19
# File 'lib/ruby/rego/memoization.rb', line 17

def rule_values
  @rule_values
end