Class: Banzai::Pipeline

Inherits:
Filter
  • Object
show all
Defined in:
lib/banzai/pipeline.rb

Overview

Pipeline is a filter that accept an array of filters that will be applied to input sequentially.

Instance Attribute Summary

Attributes inherited from Filter

#options

Instance Method Summary collapse

Methods inherited from Filter

call

Constructor Details

#initialize(*filters) ⇒ Pipeline

Returns a new instance of Pipeline.



5
6
7
# File 'lib/banzai/pipeline.rb', line 5

def initialize(*filters)
  @filters = filters.flatten
end

Instance Method Details

#call(input) ⇒ Object



9
10
11
12
13
# File 'lib/banzai/pipeline.rb', line 9

def call(input)
  @filters.inject(input) do |content, filter|
    filter.call(content)
  end
end