Class: Rack::App::Hook

Inherits:
Object
  • Object
show all
Defined in:
lib/rack/app/hook.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}, &block) ⇒ Hook

Returns a new instance of Hook.



5
6
7
8
# File 'lib/rack/app/hook.rb', line 5

def initialize(options = {}, &block)
  self.Class = options[:class] || raise(ArgumentError, "missing :class keyword argument")
  self.block = block
end

Instance Attribute Details

#block ⇒ Object

Returns the value of attribute block.



3
4
5
# File 'lib/rack/app/hook.rb', line 3

def block
  @block
end

#Class ⇒ Object

Returns the value of attribute Class.



3
4
5
# File 'lib/rack/app/hook.rb', line 3

def Class
  @Class
end

Instance Method Details

#exec(env) ⇒ Object



10
11
12
# File 'lib/rack/app/hook.rb', line 10

def exec(env)
  env[Rack::App::Constants::ENV::HANDLERS].get(self.Class).instance_exec(&self.block)
end