Module: Sinatra::Namespace::SharedMethods
- Defined in:
- lib/sinatra/named_routes.rb
Instance Method Summary collapse
Instance Method Details
#get_namespaces ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/sinatra/named_routes.rb', line 14 def get_namespaces patterns = [@pattern] next_base = base while(next_base) next_base, pattern = next_base.class_eval { [defined?(base) && base, @pattern] } patterns << pattern if pattern end node = router patterns.reverse.map do |p| node = node.children.find {|c| c.content == p} node.name end end |
#named(name, pattern = "/#{name}") ⇒ Object
9 10 11 12 |
# File 'lib/sinatra/named_routes.rb', line 9 def named(name, pattern = "/#{name}") router.set(pattern, name, get_namespaces) pattern end |