class Bookbinder::Preprocessing::Preprocessor
Attributes
processes[R]
Public Class Methods
new(*processes)
click to toggle source
# File lib/bookbinder/preprocessing/preprocessor.rb, line 9 def initialize(*processes) @processes = processes end
Public Instance Methods
preprocess(sections, *args)
click to toggle source
# File lib/bookbinder/preprocessing/preprocessor.rb, line 13 def preprocess(sections, *args) sections.group_by { |section| processes.detect(Proc.new { NullProcess.new }) { |process| process.applicable_to?(section) } }.each do |process, grouped_sections| process.preprocess(grouped_sections, *args) end end