Class: Unitsml::Unitsdb::Units
- Inherits:
-
Object
- Object
- Unitsml::Unitsdb::Units
- Defined in:
- lib/unitsml/unitsdb/units.rb
Instance Attribute Summary collapse
-
#units ⇒ Object
Returns the value of attribute units.
Instance Method Summary collapse
- #filtered ⇒ Object
- #find_by_id(u_id) ⇒ Object
- #find_by_name(u_name) ⇒ Object
- #find_by_symbol_id(sym_id) ⇒ Object
- #units_symbol_hash ⇒ Object
- #units_symbol_ids ⇒ Object
Instance Attribute Details
#units ⇒ Object
Returns the value of attribute units.
6 7 8 |
# File 'lib/unitsml/unitsdb/units.rb', line 6 def units @units end |
Instance Method Details
#filtered ⇒ Object
18 19 20 21 22 |
# File 'lib/unitsml/unitsdb/units.rb', line 18 def filtered @filtered ||= units_symbol_ids.reject do |unit| ((/\*|\^|\/|^1$/).match?(unit) || find_by_symbol_id(unit).prefixed) end end |
#find_by_id(u_id) ⇒ Object
8 9 10 |
# File 'lib/unitsml/unitsdb/units.rb', line 8 def find_by_id(u_id) units.find { |unit| unit.id == u_id } end |
#find_by_name(u_name) ⇒ Object
12 13 14 15 16 |
# File 'lib/unitsml/unitsdb/units.rb', line 12 def find_by_name(u_name) units.find do |unit| unit.unit_symbols.find { |u_sym| u_sym.id == u_name } end end |
#find_by_symbol_id(sym_id) ⇒ Object
24 25 26 |
# File 'lib/unitsml/unitsdb/units.rb', line 24 def find_by_symbol_id(sym_id) units_symbol_hash[sym_id] end |
#units_symbol_hash ⇒ Object
32 33 34 35 36 37 38 39 40 41 |
# File 'lib/unitsml/unitsdb/units.rb', line 32 def units_symbol_hash @symbol_ids_hash ||= {} if @symbol_ids_hash.empty? units.each_with_object(@symbol_ids_hash) do |unit, object| unit.unit_symbols.each { |unit_sym| object[unit_sym.id] = unit } end end @symbol_ids_hash end |
#units_symbol_ids ⇒ Object
28 29 30 |
# File 'lib/unitsml/unitsdb/units.rb', line 28 def units_symbol_ids units_symbol_hash.keys end |