module Middleman::CoreExtensions::Request::ClassMethods

def call(env)

Other tags:
    Private: -
def call(env)
  prototype.call(env)
end

def inst(&block)

Returns:
  • (Middleman::Application) -

Other tags:
    Private: -
def inst(&block)
  @inst ||= begin
    mm = new(&block)
    mm.run_hook :ready
    mm
  end
end

def inst=(inst)

Returns:
  • (void) -

Parameters:
  • inst (Middleman::Application) --

Other tags:
    Private: -
def inst=(inst)
  @inst = inst
end

def map(map, &block)

Returns:
  • (void) -

Parameters:
  • map (String) -- Path to map
def map(map, &block)
  @mappings ||= []
  @mappings << [map, block]
end

def prototype

Returns:
  • (Rack::Builder) -

Other tags:
    Private: -
def prototype
  reset!
  to_rack_app
end

def reset!

Other tags:
    Private: -
def reset!
  @rack_app = nil
end

def to_rack_app(&block)

Returns:
  • (Rack::Builder) -

Other tags:
    Private: -
def to_rack_app(&block)
  @rack_app ||= begin
    app = ::Rack::Builder.new
    app.use Rack::Lint
    Array(@middleware).each do |klass, options, block|
      app.use(klass, *options, &block)
    end
    inner_app = inst(&block)
    app.map("/") { run inner_app }
    Array(@mappings).each do |path, block|
      app.map(path, &block)
    end
    app
  end
end

def use(middleware, *args, &block)

Returns:
  • (void) -

Parameters:
  • middleware (Class) -- Middleware module
def use(middleware, *args, &block)
  @middleware ||= []
  @middleware << [middleware, args, block]
end