Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  TEXT::MICROMASON::TEMPLATEDIR (3)

.ds Aq ’


Text::MicroMason::TemplateDir - Use Base Directory and Relative Paths



Instead of using this class directly, pass its name to be mixed in:

    use Text::MicroMason;
    my $mason = Text::MicroMason->new( -TemplateDir, template_root=>/foo );

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 looked up relative to the template root:

    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 &>


This module changes the resolution of files passed to compile() and execute() to be relative to a base directory path or to the currently executing template.

    Supported Attributes

template_root Base directory from which to find templates.
strict_root Optional directory beyond which not to read files. If set to 1, uses template_root, Causes read_file to croak if any filename outside of the root is provided. (Note that this is not a chroot jail and only affects attempts to load a file as a template; for greater security see the chroot() builtin and Text::MicroMason::Safe.)

    Private Methods

prepare Intercepts uses of file templates and applies the base-path adjustment.
read_file Intercepts file access to check for strict_root.


The following additional exceptions are generated by Text::MicroMason::TemplateDir when appropriate:
o Text::MicroMason::TemplateDir: Strict root ’%s’ doesn’t seem to exist

The strict_root directory (or template_root if strict_root is ’1’) doesn’t seem to exist. Strict root checking uses Cwd’s abs_path(), and requires the strict_root directory to exist at the time the check is performed.

o Text::MicroMason::TemplatePath: Template ’%s’ not in required base path ’%s’

The template found in the configured template path was not within the configured strict_root directory. This may be caused by requesting an absolute template filename not within strict_root, or by specifying a strict_root which does not match the configured template path.


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.

Search for    or go to Top of page |  Section 3 |  Main Index

perl v5.20.3 MICROMASON::TEMPLATEDIR (3) 2009-11-11

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.