lib/dentaku/calculator.rb in dentaku-0.2.12 vs lib/dentaku/calculator.rb in dentaku-0.2.13

- old
+ new

@@ -1,14 +1,25 @@ require 'dentaku/evaluator' +require 'dentaku/rules' require 'dentaku/token' require 'dentaku/tokenizer' module Dentaku class Calculator attr_reader :result def initialize clear + end + + def add_rule(new_rule) + Rules.add_rule new_rule + self + end + + def add_rules(new_rules) + new_rules.each { | r | Rules.add_rule r } + self end def evaluate(expression, data={}) @tokenizer ||= Tokenizer.new @tokens = @tokenizer.tokenize(expression)