Class Nanoc::ItemRepProxy
In: lib/nanoc/base/compilation/item_rep_proxy.rb
Parent: Object

Represents an item representation, but provides an interface that is easier to use when writing compilation and routing rules. It is also responsible for fetching the necessary information from the compiler, such as assigns.

The API provided by item representation proxies allows layout identifiers to be given as literals instead of as references to {Nanoc::Layout}.

Methods

filter   is_proxy?   layout   new  

Public Class methods

@param [Nanoc::ItemRep] item_rep The item representation that this

  proxy should behave like

@param [Nanoc::Compiler] compiler The compiler that will provide the

  necessary compilation-related functionality.

Public Instance methods

Runs the item content through the given filter with the given arguments. This method will replace the content of the `:last` snapshot with the filtered content of the last snapshot.

This method is supposed to be called only in a compilation rule block (see {Nanoc::CompilerDSL#compile}).

@see Nanoc::ItemRep#filter

@param [Symbol] name The name of the filter to run the item

  representations' content through

@param [Hash] args The filter arguments that should be passed to the

  filter's #run method

@return [void]

Returns true because this item is already a proxy, and therefore doesn’t need to be wrapped anymore.

@api private

@return [true]

@see Nanoc::ItemRep#is_proxy? @see Nanoc::ItemRepRecorderProxy#is_proxy?

Lays out the item using the given layout. This method will replace the content of the `:last` snapshot with the laid out content of the last snapshot.

This method is supposed to be called only in a compilation rule block (see {Nanoc::CompilerDSL#compile}).

@see Nanoc::ItemRep#layout

@param [String] layout_identifier The identifier of the layout to use

@return [void]

[Validate]