Sha256: b5cabb3c99442c4c41392773c78459cad8d80adbf2f8540b824fe47eae752149

Contents?: true

Size: 706 Bytes

Versions: 10

Compression:

Stored size: 706 Bytes

Contents

# frozen_string_literal: true

require 'attr/gather/filters/base'
require 'attr/gather/filters/result'
require 'attr/gather/filters/filtering'
require 'attr/gather/concerns/registrable'

module Attr
  module Gather
    # Namespace for filters
    module Filters
      extend Registrable

      # The default filter if none is specified
      #
      # @return [Attr::Gather::Filters::Noop]
      def self.default
        @default = resolve(:noop)
      end

      register(:contract) do |contract|
        require 'attr/gather/filters/contract'

        Contract.new(contract)
      end

      register(:noop) do |*|
        require 'attr/gather/filters/noop'

        Noop.new
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
attr-gather-1.5.1 lib/attr/gather/filters.rb
attr-gather-1.4.0 lib/attr/gather/filters.rb
attr-gather-1.2.1 lib/attr/gather/filters.rb
attr-gather-1.3.0 lib/attr/gather/filters.rb
attr-gather-1.2.0 lib/attr/gather/filters.rb
attr-gather-1.1.3 lib/attr/gather/filters.rb
attr-gather-1.1.2 lib/attr/gather/filters.rb
attr-gather-1.1.1 lib/attr/gather/filters.rb
attr-gather-1.1.0 lib/attr/gather/filters.rb
attr-gather-1.0.0 lib/attr/gather/filters.rb