class Temple::Engine
def self.use(filter, *options, &block)
def self.use(filter, *options, &block) default_options = Hash === options.last ? options.pop : {} chain << proc do |opts| filter.new(default_options.merge(Hash[*opts.select {|k,v| options.include?(k) }.flatten]), &block) end end