Sha256: 4c7ed84a5c5e22a8249cd0b80a3b8aa038663c672a869d9ff37efad7b007b46c

Contents?: true

Size: 529 Bytes

Versions: 14

Compression:

Stored size: 529 Bytes

Contents

module AppPrism
  module Sections
    class SectionsCollection < Array

      # def locator
      #   self.first.locator.chomp(' index:0')
      # end

      def find_by(values_hash)
        find do |section|
          values_hash.all? { |key, value| value === section.public_send(key) }
        end
      end

      def select_by(values_hash)
        matches = select do |section|
          values_hash.all? { |key, value| value === section.public_send(key) }
        end
        self.class[*matches]
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
app_prism-0.1.2 lib/app_prism/sections/sections_collection.rb
app_prism-0.1.1 lib/app_prism/sections/sections_collection.rb
app_prism-0.1.0 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.12 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.11 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.10 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.9 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.8 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.7 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.6 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.5 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.4 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.3 lib/app_prism/sections/sections_collection.rb
app_prism-0.0.2 lib/app_prism/sections/sections_collection.rb