build_query(path, details)
private
Helper for building query glob string based on
resolver’s pattern.
# File actionview/lib/action_view/template/resolver.rb, line 248
def build_query(path, details)
query = @pattern.dup
prefix = path.prefix.empty? ? "" : "#{escape_entry(path.prefix)}\\1"
query.gsub!(/:prefix(\/)?/, prefix)
partial = escape_entry(path.partial? ? "_#{path.name}" : path.name)
query.gsub!(/:action/, partial)
details.each do |ext, candidates|
if ext == :variants && candidates == :any
query.gsub!(/:#{ext}/, "*")
else
query.gsub!(/:#{ext}/, "{#{candidates.compact.uniq.join(',')}}")
end
end
File.expand_path(query, @path)
end