class OoxmlParser::DocxFormula
Class for formula data
Attributes
@return [ArgumentProperties] properties of arguments
Public Class Methods
Source
# File lib/ooxml_parser/docx_parser/document_structure/docx_paragraph/docx_formula.rb, line 25 def initialize(parent: nil) @formula_run = [] super end
Calls superclass method
OoxmlParser::OOXMLDocumentObject::new
Public Instance Methods
Source
# File lib/ooxml_parser/docx_parser/document_structure/docx_paragraph/docx_formula.rb, line 33 def parse(node) node.xpath('*').each do |node_child| case node_child.name when 'r' @formula_run << MathRun.new(parent: self).parse(node_child) when 'box', 'borderBox' @formula_run << Box.new(parent: self).parse(node_child) when 'func' @formula_run << Function.new(parent: self).parse(node_child) when 'rad' @formula_run << Radical.new(parent: self).parse(node_child) when 'e', 'eqArr' @formula_run << DocxFormula.new(parent: self).parse(node_child) when 'nary' @formula_run << Nary.new(parent: self).parse(node_child) when 'd' @formula_run << Delimiter.new(parent: self).parse(node_child) when 'sSubSup', 'sSup', 'sSub' @formula_run << Index.new(parent: self).parse(node_child) when 'f' @formula_run << Fraction.new(parent: self).parse(node_child) when 'm' @formula_run << Matrix.new(parent: self).parse(node_child) when 'bar' @formula_run << Bar.new(parent: self).parse(node_child) when 'acc' @formula_run << Accent.new(parent: self).parse(node_child) when 'groupChr' @formula_run << GroupChar.new(parent: self).parse(node_child) when 'argPr' @argument_properties = ArgumentProperties.new(parent: self).parse(node_child) when 'sPre' @formula_run << PreSubSuperscript.new(parent: self).parse(node_child) when 'limUpp', 'limLow' @formula_run << Limit.new(parent: self).parse(node_child) end end return nil if @formula_run.empty? self end
Parse DocxFormula
object @param node [Nokogiri::XML:Element] node to parse @return [DocxFormula] result of parsing