File: README

package info (click to toggle)
libtemplate-provider-fromdata-perl 0.10-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 164 kB
  • ctags: 105
  • sloc: perl: 1,171; makefile: 2
file content (97 lines) | stat: -rw-r--r-- 2,889 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
NAME
    Template::Provider::FromDATA - Load templates from your __DATA__ section

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. The only option you can specify
    is "CLASSES" which will tell the provider what classes to search for
    templates. 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' ]
        } );

  _init( \%OPTIONS )
    A subclassed method to handle the options passed to "new()".

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

  _load( $name )
    Loads the template via the "get_file()" sub and sets some cache
    information.

  get_file( $class, $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.

AUTHOR
    Brian Cassidy <bricas@cpan.org>

COPYRIGHT AND LICENSE
    Copyright 2005-2009 by Brian Cassidy

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