Class: HttpRouter::Node::Glob

Inherits:
HttpRouter::Node show all
Defined in:
lib/http_router/node/glob.rb

Instance Attribute Summary

Attributes inherited from HttpRouter::Node

#priority, #router

Instance Method Summary collapse

Methods inherited from HttpRouter::Node

#add_arbitrary, #add_destination, #add_free_match, #add_glob, #add_lookup, #add_match, #add_request, #add_spanning_match, #add_variable, #arbitrary, #destination, #glob, #initialize, #join_whole_path, #linear, #lookup, #request, #unescape, #variable

Constructor Details

This class inherits a constructor from HttpRouter::Node

Instance Method Details

#[](request) ⇒ Object



4
5
6
7
8
9
10
11
12
13
# File 'lib/http_router/node/glob.rb', line 4

def [](request)
  request = request.clone
  request.params << []
  remaining_parts = request.path.dup
  until remaining_parts.empty?
    request.params[-1] << unescape(remaining_parts.shift)
    request.path = remaining_parts
    super(request)
  end
end