aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch/routing/route_set.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2014-05-29 15:27:46 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2014-05-29 15:27:46 -0700
commit333a4d09ab8b024b3d23618e9d668bef2bab1355 (patch)
tree77c0f30a6cba905c3c555cc83171fd83af444907 /actionpack/lib/action_dispatch/routing/route_set.rb
parent15ffbedf3bb5907c3774fcc38466c799e92f9a04 (diff)
downloadrails-333a4d09ab8b024b3d23618e9d668bef2bab1355.tar.gz
rails-333a4d09ab8b024b3d23618e9d668bef2bab1355.tar.bz2
rails-333a4d09ab8b024b3d23618e9d668bef2bab1355.zip
pass the parsed path from mapper to the Strexp
Diffstat (limited to 'actionpack/lib/action_dispatch/routing/route_set.rb')
-rw-r--r--actionpack/lib/action_dispatch/routing/route_set.rb9
1 files changed, 6 insertions, 3 deletions
diff --git a/actionpack/lib/action_dispatch/routing/route_set.rb b/actionpack/lib/action_dispatch/routing/route_set.rb
index 66d1805702..bdda802195 100644
--- a/actionpack/lib/action_dispatch/routing/route_set.rb
+++ b/actionpack/lib/action_dispatch/routing/route_set.rb
@@ -418,7 +418,9 @@ module ActionDispatch
"http://guides.rubyonrails.org/routing.html#restricting-the-routes-created"
end
- path = build_path(conditions.delete(:path_info), requirements, SEPARATORS, anchor)
+ path = conditions.delete :path_info
+ ast = conditions.delete :parsed_path_info
+ path = build_path(path, ast, requirements, SEPARATORS, anchor)
conditions = build_conditions(conditions, path.names.map { |x| x.to_sym })
route = @set.add_route(app, path, conditions, defaults, name)
@@ -426,8 +428,9 @@ module ActionDispatch
route
end
- def build_path(path, requirements, separators, anchor)
- strexp = Journey::Router::Strexp.build(
+ def build_path(path, ast, requirements, separators, anchor)
+ strexp = Journey::Router::Strexp.new(
+ ast,
path,
requirements,
SEPARATORS,