class Kalculator::Formula
Attributes
ast[R]
string[R]
Public Class Methods
new(string)
click to toggle source
# File lib/kalculator/formula.rb, line 6 def initialize(string) @ast = Kalculator::Parser.parse(Kalculator::Lexer.lex(string)) @string = string end
Public Instance Methods
evaluate(data_source = {}, custom_functions = {})
click to toggle source
# File lib/kalculator/formula.rb, line 15 def evaluate(data_source = {}, custom_functions = {}) Kalculator::Evaluator.new(data_source, custom_functions).evaluate(ast) end
validate( type_source = Kalculator::TypeSources.new(Hash.new))
click to toggle source
# File lib/kalculator/formula.rb, line 11 def validate( type_source = Kalculator::TypeSources.new(Hash.new)) Kalculator::Validator.new(type_source).validate(ast) end