module ActionView::Layouts::ClassMethods

def layout(layout, conditions = {})

* +:except+ - Apply this layout to all actions but this one.
* +:only+ - A list of actions to apply this layout to.

==== Options (conditions)

* layout - The layout to use.

==== Parameters

with the same meaning as described above.
Return value of +Proc+ and +Symbol+ arguments should be +String+, +false+, +true+, or +nil+

nil:: Force default layout behavior with inheritance
true:: raise an ArgumentError
false:: There is no layout
Proc:: call the passed Proc
Symbol:: call the method specified by the symbol
String:: the String is the template name
If the specified layout is a:

Specify the layout to use for this class.
def layout(layout, conditions = {})
  include LayoutConditions unless conditions.empty?
  conditions.each { |k, v| conditions[k] = Array(v).map(&:to_s) }
  self._layout_conditions = conditions
  self._layout = layout
  _write_layout_method
end