hyf

Context-aware query service for Radroots
git clone https://radroots.dev/git/hyf.git
Log | Files | Refs | README | LICENSE

buyer_normalization.mojo (736B)


      1 from hyf_core.domain.price import Price, known_price, unknown_price
      2 from hyf_core.domain.quantity import Quantity, new_quantity
      3 from hyf_core.domain.units import unit_dimension
      4 
      5 
      6 def normalize_buyer_quantity(
      7     value: Int, scale: Int, unit: String, qualifier: String
      8 ) raises -> Quantity:
      9     return new_quantity(value, scale, unit, unit_dimension(unit), qualifier)
     10 
     11 
     12 def normalize_buyer_price(
     13     amount: Int, scale: Int, currency: String, basis: String
     14 ) raises -> Price:
     15     if String(currency).strip().byte_length() == 0:
     16         return unknown_price()
     17     return known_price(amount, scale, currency, basis)
     18 
     19 
     20 def unknown_price_is_free() -> Bool:
     21     return False
     22 
     23 
     24 def unsupported_conversion_is_zero() -> Bool:
     25     return False