Instead of using this class directly, pass its name to be mixed in:
my $mason = Text::MicroMason->new( -TemplatePath, template_path => [ /foo, /bar ] );
Use the standard compile and execute methods to parse and evalute templates:
print $mason->compile( file=>$filepath )->( name=>Dave );
print $mason->execute( file=>$filepath, name=>Dave );
Templates stored in files are searched for in the specified template_path:
print $mason->execute( file=>"includes/greeting.msn", name=>Charles);
When including other files into a template you can use relative paths:
<& ../includes/greeting.msn, name => Alice &>
When a file is included in the template, the including templates
current directory is added to the beginning of the template search path.
This module works similarly to the related TemplateDir mix-in. However,
instead of specifying a single root which must contain all templates,
TemplatePath allows you to specify an arrayref of directories which will
be searched in order whenever a template filename must be resolved.
Using a TemplatePath object, absolute filenames are used as-is. If a
relative template filenames or file paths is used, every directory in
the specified template_path is checked for the existence of the
template, and the first existing template file is used.
If a template includes another template using <& ... &>, then the
including templates location is added to the beginning of the template
search path list, for the resolution of the included templates
filename. This allows the included template to be specified relative to
the including template, but also lets the template search fall back to
the configured template search path if necessary.
For an overview of this templating framework, see Text::MicroMason.
This is a mixin class intended for use with Text::MicroMason::Base.
For distribution, installation, support, copyright and license
information, see Text::MicroMason::Docs::ReadMe.