# File lib/action_controller/routing/optimisations.rb, line 70 def generation_code elements = [] idx = 0 if kind == :url elements << '#{request.protocol}' elements << '#{request.host_with_port}' end elements << '#{request.relative_url_root if request.relative_url_root}' # The last entry in <tt>route.segments</tt> appears to *always* be a # 'divider segment' for '/' but we have assertions to ensure that # we don't include the trailing slashes, so skip them. (route.segments.size == 1 ? route.segments : route.segments[0..-2]).each do |segment| if segment.is_a?(DynamicSegment) elements << segment.interpolation_chunk("args[#{idx}].to_param") idx += 1 else elements << segment.interpolation_chunk end end %("#{elements * ''}") end