J. David Lowe > Text-Tmpl > Text::Tmpl

Download:
Text-Tmpl-0.33.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.33   Source  

NAME ^

Text::Tmpl - Templating system perl library

SYNOPSIS ^

use Text::Tmpl;

$context = new Text::Tmpl;

$return = $context->set_delimiters($opentag, $closetag);

$return = $context->register_simple($name, $coderef);

$return = $context->register_pair($isnamed, $open_name, $close_name, $coderef);

$return = $context->alias_simple($old_name, $new_name);

$return = $context->alias_pair($old_open_name, $old_close_name, $new_open_name, $new_close_name);

$context->remove_simple($name);

$context->remove_pair($open_name);

$context->set_debug($to_debug_or_not_to_debug);

$context->set_strip($to_strip_or_not_to_strip);

$return = $context->set_dir($directory);

$return = $context->set_value($name, $value);

$return = $context->set_values($hashref);

$subcontext = $context->loop_iteration($loop_name);

$subcontext = $context->fetch_loop_iteration($loop_name, $iteration_number);

$output = $context->parse_file($template_filename);

$output = $context->parse_string($template);

$errno = Text::Tmpl::errno();

$errstr = Text::Tmpl::strerror();

DESCRIPTION ^

Design goals

simplicity, reusability, speed, complete separation of logic from formatting.

Feature set

variables, loops, conditionals, extensibility of tags, includes, arbitrary delimiters.

Usage

For starters, make sure you 'use Text::Tmpl'.

Each function is described below:

new

This function initializes the library. It allocates and returns the "global" context structure, and also configures all of the default tag behavior.

set_delimiters

This function lets you change the delimiters marking the beginning and end of a tag (by default, these are "<!--#" and "-->"), for the specified context.

set_value

This function stores the name=value pair in the current context.

set_values

This function dumps the name=value pairs from a hash reference into the current context.

set_debug

This function turns debugging output on or off. Note that debugging output hasn't been written yet - this is just a placeholder.

set_strip

This function enables or disables the newline stripping feature. If enabled, the parser removes a single newline (if present) from after any tag.

set_dir

This function sets the directory where templates will be sought, both by parse_file and by the include tag. Search order is always current directory then this searched directory.

This directory must contain all the necessary punctuation so that appending a filename to it produces a valid path (On unix systems, you have to include the trailing slash on the directory name).

loop_iteration

This function adds an iteration to the loop named loop_name, and returns a unique context for that loop iteration.

fetch_loop_iteration

This function retrieves and returns the context for $iteration_number from the loop named $loop_name.

parse_file

This function opens $template_filename, and parses the contents of that file as a template, returning the output.

parse_string

This function parses template directly, in the same way that Text::Tmpl::parse_file does.

register_simple

This function registers a new simple tag named $name, which when encountered will cause the parser to call $coderef. See template_extend(1) for the gory details.

register_pair

This function registers a new tag pair $open_name/$close_name, which when encountered will cause the parser to call $coderef. See template_extend for the gory details.

alias_simple

This function copies the definition of a simple tag, previously registered as $old_name, to also be called by $new_name.

alias_pair

This function copies the definition of a tag pair, previously registered as $old_open_name/$old_close_name, to also be called by $new_open_name/$new_close_name.

remove_simple

This function removes the simple tag $name.

remove_pair

This function removes the tag pair whose open tag is $open_name.

errno

This function returns the error number of the last error - see the RETURN VALUES section below.

strerror

This function returns a string describing the last error - see the RETURN VALUES section below.

RETURN VALUES ^

All of the above functions which return numeric values will return 0 if they fail, or 1 otherwise. The ones which return contexts will return undef if they fail, or a valid pointer otherwise.

A function which fails will also set a global error number, which you can read using the errno() or strerror() package functions.

BUGS ^

Hopefully none.

AUTHOR ^

J. David Lowe, dlowe@saturn5.com

SEE ALSO ^

libtmpl(1), template_syntax(1), template_extend(1)

syntax highlighting: