Module: Danica::VariablesHolder
Defined Under Namespace
Classes: AliasBuilder, Calculator, Store, VariablesBuilder
Instance Method Summary
collapse
Methods included from Common
#content, #formatted, #gnu, #tex, #to, #to_f, #to_gnu, #to_tex, #valued?
Instance Method Details
#calculate(*args) ⇒ Object
64
65
66
|
# File 'lib/danica/variables_holder.rb', line 64
def calculate(*args)
Calculator.new(self, *args).calculate
end
|
#initialize(*args) ⇒ Object
48
49
50
51
52
53
54
|
# File 'lib/danica/variables_holder.rb', line 48
def initialize(*args)
args = args.flatten
args = args.first if (args.length == 1) && args.first.try(:keys).try(:all?) do |k|
self.class.variables_names.include?(k)
end
self.variables = args
end
|
#variables=(vars) ⇒ Object
56
57
58
59
60
61
62
|
# File 'lib/danica/variables_holder.rb', line 56
def variables=(vars)
vars = vars.as_hash(self.class.variables_names).compact unless vars.is_a? Hash
vars = vars.dup.change_values!(skip_inner: false) { |v| wrap_value(v) }
vars.each do |k, v|
public_send("#{k}=", v)
end
end
|