Class: ConfigBuilder::FilterStack

Inherits:
Object
  • Object
show all
Defined in:
lib/config_builder/filter_stack.rb

Instance Method Summary collapse

Constructor Details

#initializeFilterStack

Returns a new instance of FilterStack.



6
7
8
# File 'lib/config_builder/filter_stack.rb', line 6

def initialize
  @filter_stack = []
end

Instance Method Details

#filter(input) ⇒ Hash

Parameters:

  • input (Hash)

Returns:

  • (Hash)


13
14
15
16
17
18
19
20
21
22
# File 'lib/config_builder/filter_stack.rb', line 13

def filter(input)
  set_filters(input.delete(:filters))

  output = @filter_stack.inject(input) do |current_input, filter|
    filter.set_config(current_input)
    filter.run
  end

  output
end