Sha256: 39d53f6ec6a4379eb4ee7a2e7833e908f33ad325c1faf7350f45948c91b8f88a

Contents?: true

Size: 949 Bytes

Versions: 10

Compression:

Stored size: 949 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/core_ext'
require 'inifile'

module EhbrsRubyUtils
  module Vg
    module Wii
      module Wit
        module Parsers
          class Info
            SECTION_NAME_PATTERN = /\A#{::Regexp.quote('IMAGE-FORMAT:')}(.+)\z/.freeze

            enable_simple_cache
            common_constructor :output

            private

            def images_uncached
              ini = ::IniFile.new(content: output)
              r = {}
              ini.sections.each do |section_name|
                image_section_name = parse_image_section_name(section_name)
                r[image_section_name] = ini[section_name] if image_section_name.present?
              end
              r
            end

            def parse_image_section_name(section_name)
              SECTION_NAME_PATTERN.match(section_name).if_present { |m| m[1] }
            end
          end
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
ehbrs_ruby_utils-0.44.3 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.44.2 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.44.1 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.44.0 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.41.1 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.41.0 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.40.0 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.39.0 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.38.0 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb
ehbrs_ruby_utils-0.37.0 lib/ehbrs_ruby_utils/vg/wii/wit/parsers/info.rb