NAME¶
Text::MicroMason::ExecuteCache - Use a Cache for Template Results
SYNOPSIS¶
Instead of using this class directly, pass its name to be mixed in:
use Text::MicroMason;
my $mason = Text::MicroMason->new( -ExecuteCache );
Use the standard compile method to parse a template into a subroutine:
my $subref = $mason->compile( text=>$template );
print $subref->( 'name'=>'Dave' );
The template does not have to be interpreted the second time because the results
are cached:
print $subref->( 'name'=>'Dave' ); # fast second time
When run with different arguments, the template is re-interpreted and the
results stored:
print $subref->( 'name'=>'Bob' ); # first time for Bob
print $subref->( 'name'=>'Bob' ); # fast second time for Bob
DESCRIPTION¶
Caches the output of templates.
Note that you should not use this feature if your template code interacts with
any external state, such as making changes to an external data source or
obtaining values that will change in the future. (However, you can still use
the caching provided by Text::MicroMason::CompileCache.)
Public Methods¶
- compile()
- Wraps each template that is compiled into a Perl subroutine in a memoizing
closure.
Supported Attributes¶
- execute_cache
- Defaults to an instance of Text::MicroMason::Cache::Simple.
This module uses a simple cache interface that is widely supported: the only
methods required are "get($key)" and "set($key, $value)".
You can use the simple cache classes provided in the Text::MicroMason::Cache::
namespace, or select other caching modules on CPAN that support the interface
described in Cache::Cache.
SEE ALSO¶
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.