Method: Unitsml::Unit#numerator_value

Defined in:
lib/unitsml/unit.rb

#numerator_value(mathml = true) ⇒ Object



32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/unitsml/unit.rb', line 32

def numerator_value(mathml = true)
  integer = power_numerator.to_s
  unless integer.match?(/-/)
    return mathml ? { mn_value: [::Mml::Mn.from_xml("<mn>#{integer}</mn>")] } : integer
  end

  return integer.sub(/(-)(.+)/, '&#x2212;\2') unless mathml

  integer = integer.sub(/(-)(.+)/, '<mn>\2</mn>')
  integer = ::Mml::Mn.from_xml(integer)
  mo_tag = ::Mml::Mo.new(value: "&#x2212;")
  { mo_value: [mo_tag], mn_value: [integer] }
end