Class: Unitsml::Parse

Inherits:
Parslet::Parser
  • Object
show all
Includes:
IntermediateExpRules
Defined in:
lib/unitsml/parse.rb

Instance Method Summary collapse

Instance Method Details

#arr_to_expression(arr, file_name) ⇒ Object



74
75
76
77
78
79
80
# File 'lib/unitsml/parse.rb', line 74

def arr_to_expression(arr, file_name)
  array = arr&.flatten&.compact&.sort_by(&:length)&.reverse
  array&.reduce do |expression, expr_string|
    expression = str(expression).as(file_name.to_sym) if expression.is_a?(String)
    expression | str(expr_string).as(file_name.to_sym)
  end
end