Class: HttpRouter::Node::Lookup
Instance Attribute Summary
#priority, #router
Instance Method Summary
collapse
#add_arbitrary, #add_destination, #add_free_match, #add_glob, #add_lookup, #add_match, #add_request, #add_spanning_match, #add_variable, #usable?
Constructor Details
#initialize(router) ⇒ Lookup
Returns a new instance of Lookup.
4
5
6
7
|
# File 'lib/http_router/node/lookup.rb', line 4
def initialize(router)
@map = {}
super(router)
end
|
Instance Method Details
#[](request) ⇒ Object
9
10
11
12
13
14
|
# File 'lib/http_router/node/lookup.rb', line 9
def [](request)
if @map[request.path.first]
request = request.clone
@map[request.path.shift].each{|m| m[request]}
end
end
|
#add(part) ⇒ Object
16
17
18
|
# File 'lib/http_router/node/lookup.rb', line 16
def add(part)
Node.new(@router, @map[part] ||= [])
end
|
#usuable?(other) ⇒ Boolean
20
21
22
|
# File 'lib/http_router/node/lookup.rb', line 20
def usuable?(other)
other.class == self.class
end
|