Sha256: 5c0edf2097339745c25990f6027720260b87083e489b11ab57f4716e9950ed2e

Contents?: true

Size: 413 Bytes

Versions: 4

Compression:

Stored size: 413 Bytes

Contents

# frozen_string_literal: true

module ActiveRecordFilter
  # Base component that other filter components should extend.
  # A component must implement `filter` that returns an ActiveRecord relation.
  #
  class Component
    def initialize(filter_object)
      @filter_object = filter_object
    end

    def filter
      raise NotImplementedError
    end

    protected

    attr_reader :filter_object
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
active_record_filter-0.2.0 lib/active_record_filter/component.rb
active_record_filter-0.1.0 lib/active_record_filter/component.rb
active_record_filter-0.0.3 lib/active_record_filter/component.rb
active_record_filter-0.0.2 lib/active_record_filter/component.rb