GSP
Quick Navigator

Search Site

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

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  TEMPLATE::PROVIDER::FROMDATA (3)

.ds Aq ’

NAME

Template::Provider::FromDATA - Load templates from your __DATA__ section

CONTENTS

SYNOPSIS



    use Template;
    use Template::Provider::FromDATA;
   
    # Create the provider
    my $provider = Template::Provider::FromDATA->new( {
        CLASSES => __PACKAGE__
    } );
   
    # Add the provider to the config
    my $template = Template->new( {
        # ...
        LOAD_TEMPLATES => [ $provider ]
    } );

    # Render a template
    $template->process( mytemplate, { bar => Bar } );

    # ...and now the templates
   
    __DATA__
   
    __mytemplate__
    Foo [% bar %]
   
    __myothertemplate__
    Baz, [% qux %]?



DESCRIPTION

This module allows you to store your templates inline with your code in the __DATA__ section. It will search any number of classes specified.

CAVEAT

If you have two templates with the same name, this module will not understand the difference, it will simply return the first one found. If you wish, you can specify a fully qualified template name by prefixing the template with the module name (using - instead of :: as a namespace separator), adding a / to separate the module name from the template name.



    $template->process( My-Templates/mytemplate, { bar => Bar } );



INSTALLATION



    perl Makefile.PL
    make
    make test
    make install



METHODS

    new( \%OPTIONS )

Create a new instance of the provider. You can specify a list of classes to be searched for templates via the CLASSES option. By omitting this option it will search main.



    # defaults to main
    $provider = Template::Provider::FromDATA->new;
   
    # look for templates in Foo
    $provider = Template::Provider::FromDATA->new( {
        CLASSES => Foo
    } );

    # look for templates in Foo::Bar and Foo::Baz
    $provider = Template::Provider::FromDATA->new( {
        CLASSES => [ Foo::Bar, Foo::Baz ]
    } );



By default, template data is lazy-loaded as they it is requested. If you wish to load up all template data upon initializtion, you can use the PRELOAD option.



    $provider = Template::Provider::FromDATA->new( {
        PRELOAD => 1
    } );



    _init( \%OPTIONS )

A subclassed method to handle the options passed to new().

fetch( CW$name )

This is a subclassed method that will load a template via _fetch() if a non-reference argument is passed.

_load( CW$name )

Loads the template via the get_file() sub and sets some cache information.

get_file( CW$class, CW$template )

This method searches through $class for a template named $template. Returns the contents on success, undef on failure.

This function was mostly borrowed from Catalyst::Helper’s get_file function.

ACCESSORS

    classes

An arrayref of the class names containing our templates.

    cache

A hashref of file and template data.

AUTHOR

Brian Cassidy <bricas@cpan.org>

COPYRIGHT AND LICENSE

Copyright 2005-2012 by Brian Cassidy

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

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


perl v5.20.3 TEMPLATE::PROVIDER::FROMDATA (3) 2012-10-22

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