Module: Systeme::Localize

Included in:
Systeme
Defined in:
lib/systeme/localize.rb

Class Method Summary collapse

Class Method Details

.declare_system(dictionary) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/systeme/localize.rb', line 5

def self.declare_system(dictionary)
  dictionary.each do |measure, data|
    data[:units].each do |unit|
      define_method(unit[:unit].to_sym) { self * unit[:factor].to_f * data[:si] }
      class_eval("alias :" + unit[:unit] + "s :" + unit[:unit])
      Systeme::Registration::names << unit[:unit] << unit[:unit]+"s"
      if unit[:aliases]
        unit[:aliases].each do |aka|
           class_eval("alias :" + aka + " :" + unit[:unit])
           Systeme::Registration::names << aka
         end
      end
    end
  end
end