def compile(first = false)
code = ""
default_params = { :action => "index" }
get_value = proc do |key|
if default_params.has_key?(key) && params[key][0] != ?"
"#{params[key]} || \"#{default_params[key]}\""
else
"#{params[key]}"
end
end
params_as_string = params.keys.map { |k| "#{k.inspect} => #{get_value[k]}" }.join(', ')
code << " els" unless first
code << "if # #{@behavior.merged_original_conditions.inspect} \n"
code << if_conditions(params_as_string).join(" && ") << "\n"
code << " # then\n"
if @conditional_block
code << " [#{@index.inspect}, block_result]\n"
else
code << " [#{@index.inspect}, {#{params_as_string}}]\n"
end
end