Module: QuantityResolver
- Included in:
- CooklangRb::Tag
- Defined in:
- lib/cooklang_rb/quantity_resolver.rb
Instance Method Summary collapse
Instance Method Details
#resolve_quantity(quantity, default: "") ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/cooklang_rb/quantity_resolver.rb', line 4 def resolve_quantity(quantity, default: "") return default if quantity.nil? return quantity if quantity.is_a? Numeric quantity = quantity.strip if quantity.respond_to?(:strip) if quantity.include?(".") quantity.to_f elsif quantity.include?("/") && quantity[0] != "0" quantity.gsub(/\s/, "").to_r.to_f elsif quantity.match?(/^[0-9]+$/) quantity.to_i else quantity.empty? ? default : quantity end end |