Text::MicroMason::ExecuteCache(3) Use a Cache for Template Results


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


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

Wraps each template that is compiled into a Perl subroutine in a memoizing closure.

Supported Attributes

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.