Class: Serializable::XBuilder

Inherits:
Object
  • Object
show all
Includes:
ActionView::TemplateHandlers::Compilable
Defined in:
lib/serializable/xbuilder.rb

Instance Method Summary collapse

Instance Method Details

#compile(template) ⇒ Object Also known as: call



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/serializable/xbuilder.rb', line 7

def compile(template)
  compiled_code = "    format = params[:format]\n\n    if format && :json == format.to_sym\n      _set_controller_content_type(Mime::JSON)\n      xbuilder = ::Builder::HashStructure.new\n      \#{template.source}\n      xbuilder.target!.to_json\n    else\n      _set_controller_content_type(Mime::XML)\n      xbuilder = ::Builder::XmlMarkup.new\n      \#{template.source}\n      xbuilder.target!\n    end\n  CODE\n  compiled_code\nend\n"