Sha256: 1911bb5641eec82179b3b3519fc452edbcccbdd3644201731d80d3efb405ded6
Contents?: true
Size: 1.21 KB
Versions: 1
Compression:
Stored size: 1.21 KB
Contents
# frozen_string_literal: true module OoxmlParser # Class for working with any tag contained only value class ValuedChild < OOXMLDocumentObject # @return [String] value of tag attr_accessor :value # @return [String] type of value attr_reader :type def initialize(type = :string, parent: nil) @type = type super(parent: parent) end # Parse ValuedChild object # @param node [Nokogiri::XML:Element] node to parse # @return [ValuedChild] result of parsing def parse(node) node.attributes.each do |key, value| case key when 'val' @value = value.value.to_s if type == :string @value = value_to_symbol(value) if type == :symbol @value = value.value.to_i if type == :integer @value = value.value.to_f if type == :float @value = parse_boolean(value.value.to_s) if type == :boolean end end self end private # Handle boolean value # @param [String] value to parse # @return [Boolean] result def parse_boolean(value) return true if value == '1' return true if value == 'true' return false if value == '0' return false if value == 'false' end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ooxml_parser-0.34.0 | lib/ooxml_parser/common_parser/common_data/valued_child.rb |