Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Dancer2::Template::ImpUsernContributed:PerllDocu:Implementation::ForkedTiny(3)

NAME
       Dancer2::Template::Implementation::ForkedTiny - Dancer2 own
       implementation of Template::Tiny

VERSION
       version 0.300004

SYNOPSIS
	 my $template =	Dancer2::Template::Implementation::ForkedTiny->new(
	     TRIM => 1,
	 );

	 # Print the template results to STDOUT
	 $template->process( <<'END_TEMPLATE', { foo =>	'World'	} );
	 Hello [% foo %]!
	 END_TEMPLATE

DESCRIPTION
       Dancer2::Template::Implementation::ForkedTiny is	a reimplementation of
       a subset	of the functionality from Template Toolkit in as few lines of
       code as possible.

       It is intended for use in light-usage, low-memory, or low-cpu
       templating situations, where you	may need to upgrade to the full
       feature set in the future, or if	you want the retain the	familiarity of
       TT-style	templates.

       For the subset of functionality it implements, it has fully-compatible
       template	and stash API. All templates used with
       Dancer2::Template::Implementation::ForkedTiny should be able to be
       transparently upgraded to full Template Toolkit.

       Unlike Template Toolkit,	Dancer2::Template::Implementation::ForkedTiny
       will process templates without a	compile	phase (but despite this	is
       still quicker, owing to heavy use of the	Perl regular expression
       engine.

   SUPPORTED USAGE
       By default, the "[% %]" tag style is used. You can change the start tag
       and end tag by specifying them at object	creation :

	 my $template =	Dancer2::Template::Implementation::ForkedTiny->new(
	     start_tag => '<%',
	     end_tag =>	'%>,
	 );

       In the rest of the documentation, "[% %]" will be used, but it can be
       of course your specified	start /	end tags.

       Both the	"[%+ +%]" style	explicit whitespace and	the "[%- -%]" style
       explicit	chomp are support, although the	"[%+ +%]" version is unneeded
       in practice as Dancer2::Template::Implementation::ForkedTiny does not
       support default-enabled "PRE_CHOMP" or "POST_CHOMP".

       Variable	expressions in the form	"[% foo.bar.baz	%]" are	supported.

       Appropriate simple behaviours for "ARRAY" references, "HASH" references
       and objects are supported. "VMethods" such as [%	array.length %]	are
       not supported at	this time.

       If the resulting	expression is a	CodeRef, it'll be evaluated.

       "IF", "ELSE" and	"UNLESS" conditional blocks are	supported, but only
       with simple "[% foo.bar.baz %]" conditions.

       Support for looping (or rather iteration) is available in simple	"[%
       FOREACH item IN list %]"	form is	supported. Other loop structures are
       not supported. Because support for arbitrary or infinite	looping	is not
       available, Dancer2::Template::Implementation::ForkedTiny	templates are
       not turing complete. This is intentional.

       All of the four supported control structures
       "IF"/"ELSE"/"UNLESS"/"FOREACH" can be nested to arbitrary depth.

       The treatment of	"_private" hash	and method keys	is compatible with
       Template	Toolkit, returning null	or false rather	than the actual
       content of the hash key or method.

       Anything	beyond the above is currently out of scope.

NAME
       Dancer2::Template::Implementation::ForkedTiny - Template	Toolkit
       reimplemented in	as little code as possible, forked from	Template::Tiny

METHODS
   new
	 my $template =	Dancer2::Template::Implementation::ForkedTiny->new(
	     TRIM => 1,
	 );

       The "new" constructor is	provided for compatibility with	Template
       Toolkit.

       The only	parameter it currently supports	is "TRIM" (which removes
       leading and trailing whitespace from processed templates).

       Additional parameters can be provided without error, but	will be
       ignored.

   process
	 # DEPRECATED: Return template results (emits a	warning)
	 my $text = $template->process(	\$input, $vars );

	 # Print template results to STDOUT
	 $template->process( \$input, $vars );

	 # Generate template results into a variable
	 my $output = '';
	 $template->process( \$input, $vars, \$output );

       The "process" method is called to process a template.

       The first parameter is a	reference to a text string containing the
       template	text. A	reference to a hash may	be passed as the second
       parameter containing definitions	of template variables.

       If a third parameter is provided, it must be a scalar reference to be
       populated with the output of the	template.

       For a limited amount of time, the old deprecated	interface will
       continue	to be supported. If "process" is called	without	a third
       parameter, and in scalar	or list	contest, the template results will be
       returned	to the caller.

       If "process" is called without a	third parameter, and in	void context,
       the template results will be "print()"ed	to the currently selected file
       handle (probably	"STDOUT") for compatibility with Template.

SUPPORT
       Bugs should be reported via the CPAN bug	tracker	at

       <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Template-Tiny>

       For other issues, or commercial enhancement or support, contact the
       author.

AUTHOR
       Adam Kennedy <adamk@cpan.org>

       Forked and improved by Damien Krotkine <dams@cpan.org>

SEE ALSO
       Config::Tiny, CSS::Tiny,	YAML::Tiny

COPYRIGHT
       Copyright 2009 -	2011 Adam Kennedy.  Copyright 2012 Damien Krotkine.

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

       The full	text of	the license can	be found in the	LICENSE	file included
       with this module.

AUTHOR
       Dancer Core Developers

COPYRIGHT AND LICENSE
       This software is	copyright (c) 2020 by Alexis Sukrieh.

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

perl v5.32.1		      Dancer2::Template::Implementation::ForkedTiny(3)

NAME | VERSION | SYNOPSIS | DESCRIPTION | NAME | METHODS | SUPPORT | AUTHOR | SEE ALSO | COPYRIGHT | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Dancer2::Template::Implementation::ForkedTiny&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help