The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Helix::Driver::Template - Helix Framework generic template driver.

SYNOPSIS

Example template driver:

    package MyApp::Driver::Template;
    use base qw/Helix::Driver::Template/;

    sub parse
    {
        my ($self, $tpl) = @_;
        throw HXError::Driver::Template::Open("This is just an example!");
    }

    sub render
    {
        my $self = shift;
        throw HXError::Driver::Template::Open("This is just an example!");
    }

DESCRIPTION

The Helix::Driver::Template is a generic template driver for Helix Framework. It declares some functions that are common for all driver types and some abstract methods, that must be overloaded in ancestor classes. All template drivers should subclass this package.

METHODS

new($templates_dir)

Class constructor. Sets initial class data: $templates_dir - directory where template file will be placed, and checks if $template_dir directory exists, and if it doesn't - throws an exception.

set(%vars)

Sets template variables. %vars - hash of variables and corresponding values. For example:

    (
        "title"   => "Hello, world!",
        "content" => "Blabla"
    )

parse($tpl)

Parses a $tpl template. Abstract method, should be overloaded in ancestor class.

render()

Renders a previously parsed template. Abstract method, should be overloaded in ancestor class.

SEE ALSO

Helix, Helix::Driver::Template::Exceptions

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

Anton Belousov, <abel@cpan.org>

COPYRIGHT

Copyright (c) 2009, Atma 7, http://www.atma7.com