Class: Dentaku::BulkExpressionSolver

Inherits:
Object
  • Object
show all
Defined in:
lib/dentaku/bulk_expression_solver.rb

Instance Method Summary collapse

Constructor Details

#initialize(expression_hash, memory) ⇒ BulkExpressionSolver

Returns a new instance of BulkExpressionSolver.



9
10
11
12
# File 'lib/dentaku/bulk_expression_solver.rb', line 9

def initialize(expression_hash, memory)
  self.expression_hash = expression_hash
  self.calculator = Calculator.new.store(memory)
end

Instance Method Details

#solve(&block) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/dentaku/bulk_expression_solver.rb', line 18

def solve(&block)
  error_handler = block || return_undefined_handler
  results = load_results(&error_handler)

  expression_hash.each_with_object({}) do |(k, _), r|
    r[k] = results[k.to_s]
  end
end

#solve!Object



14
15
16
# File 'lib/dentaku/bulk_expression_solver.rb', line 14

def solve!
  solve(&raise_exception_handler)
end