Sha256: 04b8512cc37585f4f3f0c4dbf26c93ecf28f0fb94010f63c37e8cf31c7cef324

Contents?: true

Size: 1016 Bytes

Versions: 4

Compression:

Stored size: 1016 Bytes

Contents

# frozen_string_literal: true

require_relative "unary_function"

module Plurimath
  module Math
    module Function
      class Left < UnaryFunction
        def to_asciimath
          "left#{parameter_one}"
        end

        def to_mathml_without_math_tag
          mo = Utility.ox_element("mo")
          mo << left_paren if parameter_one
          mo
        end

        def to_omml_without_math_tag
          mr = Utility.ox_element("m:r")
          if parameter_one
            mt = Utility.ox_element("m:t")
            mr << (mt << parameter_one)
          end
          [mr]
        end

        def to_html
          "<i>#{parameter_one}</i>"
        end

        def to_latex
          "\\left #{Latex::Constants::LEFT_RIGHT_PARENTHESIS.invert[parameter_one] || '.'}"
        end

        def validate_function_formula
          false
        end

        protected

        def left_paren
          return "{" if parameter_one == "\\{"

          parameter_one
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
plurimath-0.3.9 lib/plurimath/math/function/left.rb
plurimath-0.3.8 lib/plurimath/math/function/left.rb
plurimath-0.3.7 lib/plurimath/math/function/left.rb
plurimath-0.3.6 lib/plurimath/math/function/left.rb