class Sinatra::Base

def route(verb, path, options={}, &block)

def route(verb, path, options={}, &block)
  # Because of self.options.host
  host_name(options.delete(:host)) if options.key?(:host)
  enable :empty_path_info if path == "" and empty_path_info.nil?
  block, pattern, keys, conditions = compile! verb, path, block, options
  invoke_hook(:route_added, verb, path, block)
  (@routes[verb] ||= []).
    push([pattern, keys, conditions, block]).last
end