Class: Unit::Parser
- Inherits:
-
Object
- Object
- Unit::Parser
- Includes:
- SymbolConverter
- Defined in:
- lib/unitmanager/unit_composition.rb
Instance Method Summary collapse
-
#initialize(units) ⇒ Parser
constructor
A new instance of Parser.
- #parse_operand_symbols(string) ⇒ Object
- #to_units(unit_spec) ⇒ Object
Methods included from SymbolConverter
Constructor Details
#initialize(units) ⇒ Parser
Returns a new instance of Parser.
156 157 158 |
# File 'lib/unitmanager/unit_composition.rb', line 156 def initialize(units) @units = units end |
Instance Method Details
#parse_operand_symbols(string) ⇒ Object
171 172 173 174 |
# File 'lib/unitmanager/unit_composition.rb', line 171 def parse_operand_symbols(string) operands = string.nil? ? [] : string.split(/\*/) operands.collect{|name| name.to_sym} end |
#to_units(unit_spec) ⇒ Object
160 161 162 163 164 165 166 167 168 169 |
# File 'lib/unitmanager/unit_composition.rb', line 160 def to_units(unit_spec) operands = unit_spec.split(/\//) raise "Invalid Number of Operands in : #{unit_spec}" if operands.size > 2 { :dividends => convert(parse_operand_symbols(operands[0])), :divisors => convert(parse_operand_symbols(operands[1])) } end |