提交 b592c5b6 编写于 作者: A Aaron Patterson

pass the path ast down

now we don't need to add it to a hash and delete it from the hash later
just to pass it around
上级 aaaa6790
......@@ -134,7 +134,6 @@ def initialize(set, ast, defaults, controller, default_action, modyoule, to, for
@defaults = formats[:defaults].merge(@defaults).merge(normalize_defaults(options))
@conditions[:required_defaults] = (split_options[:required_defaults] || []).map(&:first)
@conditions[:parsed_path_info] = ast
unless via == [:all]
@conditions[:request_method] = via.map { |m| m.to_s.dasherize.upcase }
end
......@@ -1605,7 +1604,7 @@ def add_route(action, controller, options, _path, to, via, formatted, anchor, op
mapping = Mapping.build(@scope, @set, ast, controller, default_action, to, via, formatted, options_constraints, options)
app, conditions, requirements, defaults = mapping.to_route
@set.add_route(app, conditions, requirements, defaults, as, anchor)
@set.add_route(app, conditions, ast, requirements, defaults, as, anchor)
end
def root(path, options={})
......
......@@ -514,7 +514,7 @@ def empty?
routes.empty?
end
def add_route(app, conditions, requirements, defaults, name, anchor)
def add_route(app, conditions, path_ast, requirements, defaults, name, anchor)
raise ArgumentError, "Invalid route name: '#{name}'" unless name.blank? || name.to_s.match(/^[_a-z]\w*$/i)
if name && named_routes[name]
......@@ -525,9 +525,8 @@ def add_route(app, conditions, requirements, defaults, name, anchor)
"http://guides.rubyonrails.org/routing.html#restricting-the-routes-created"
end
ast = conditions.delete :parsed_path_info
required_defaults = conditions.delete :required_defaults
path = build_path(ast, requirements, anchor)
path = build_path(path_ast, requirements, anchor)
conditions = build_conditions(conditions)
route = @set.add_route(app, path, conditions, required_defaults, defaults, name)
......
......@@ -27,7 +27,7 @@ def dispatcher_class
end
def defaults
@my_routes.map { |x| x[3] }
@my_routes.map { |x| x[4] }
end
def conditions
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册