class Periodical::Filter::Policy

Attributes

periods[R]

Public Class Methods

new() click to toggle source
# File lib/periodical/filter.rb, line 117
def initialize
        @periods = {}
end

Public Instance Methods

<<(period) click to toggle source
# File lib/periodical/filter.rb, line 121
def <<(period)
        @periods[period.class] = period
end
filter(values, **options, &block) click to toggle source
# File lib/periodical/filter.rb, line 125
def filter(values, **options, &block)
        filtered_values = Set.new

        @periods.values.each do |period|
                filtered_values += period.filter(values, **options, &block)
        end

        return filtered_values, (Set.new(values) - filtered_values)
end