Sha256: d22636699aaa7623ab72d503c50e85ce55a8021db5726d32c4c5e997e2655180

Contents?: true

Size: 897 Bytes

Versions: 7

Compression:

Stored size: 897 Bytes

Contents

# frozen_string_literal: true

require_relative 'line_result'

module EhbrsRubyUtils
  module Videos
    module Series
      module Rename
        class LineResultGroup < ::EhbrsRubyUtils::Videos::Series::Rename::LineResult
          attr_reader :name, :children

          def initialize(name, files)
            super()
            @name = name
            @children = build_children(files)
          end

          def show(level)
            super(level)
            children.each do |child|
              child.show(level + 1)
            end
          end

          private

          def build_children(files)
            r = {}
            files.each do |file|
              key = file.send(child_key)
              r[key] ||= []
              r[key] << file
            end
            r.sort.map { |v| child_class.new(v[0], v[1]) }
          end
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ehbrs_ruby_utils-0.41.1 lib/ehbrs_ruby_utils/videos/series/rename/line_result_group.rb
ehbrs_ruby_utils-0.41.0 lib/ehbrs_ruby_utils/videos/series/rename/line_result_group.rb
ehbrs_ruby_utils-0.40.0 lib/ehbrs_ruby_utils/videos/series/rename/line_result_group.rb
ehbrs_ruby_utils-0.39.0 lib/ehbrs_ruby_utils/videos/series/rename/line_result_group.rb
ehbrs_ruby_utils-0.38.0 lib/ehbrs_ruby_utils/videos/series/rename/line_result_group.rb
ehbrs_ruby_utils-0.37.0 lib/ehbrs_ruby_utils/videos/series/rename/line_result_group.rb
ehbrs_ruby_utils-0.36.1 lib/ehbrs_ruby_utils/videos/series/rename/line_result_group.rb