module Roda::RodaPlugins::TypecastParams

def self.configure(app, opts=OPTS, &block)

before processing them.
Respect the strip: :all to strip all parameter strings
and if a block is passed, eval it in the context of the subclass.
Set application-specific Params subclass unless one has been set,
def self.configure(app, opts=OPTS, &block)
  app.const_set(:TypecastParams, Class.new(RodaPlugins::TypecastParams::Params)) unless app.const_defined?(:TypecastParams)
  app::TypecastParams.class_eval(&block) if block
  if opts[:strip] == :all
    app::TypecastParams.send(:include, StringStripper)
  end
  if opts[:allow_null_bytes]
    app::TypecastParams.send(:include, AllowNullByte)
  end
  if opts[:skip_bytesize_checking]
    app::TypecastParams.send(:include, SkipBytesizeChecking)
  end
  if opts[:date_parse_input_handler]
    app::TypecastParams.class_eval do
      include DateParseInputHandler
      define_method(:handle_date_parse_input, &opts[:date_parse_input_handler])
      private :handle_date_parse_input
      alias handle_date_parse_input handle_date_parse_input
    end
  end
end