NAME
Template::Plugin::ListMoreUtils - TT2 plugin to use List::MoreUtils
SYNOPSIS
[% my1to9even = [ 2, 4, 6, 8 ];
my1to9prim = [ 2, 3, 5, 7 ];
my1to9odd = [ 1, 3, 5, 7, 9 ]; %]
[% USE ListMoreUtils %]
[% my1to9all = ListMoreUtils.uniq( my1to9even.merge( my1to9prim, my1to9odd ) ); %]
1 .. 9 are [% my1to9all.size() %]
DESCRIPTION
This module provides an Template::Toolkit interface to Tassilo von Parseval's List::MoreUtils. It extends the built-in functions dealing with lists as well as Template::Plugin::ListUtil.
USAGE
To use this module from templates, you can choose between class interface
[% my1to9even = [ 2, 4, 6, 8 ];
my1to9prim = [ 2, 3, 5, 7 ];
my1to9odd = [ 1, 3, 5, 7, 9 ]; %]
[% USE ListMoreUtils %]
[% my1to9all = ListMoreUtils.uniq( my1to9even.merge( my1to9prim, my1to9odd ) ); %]
1 .. 9 are [% my1to9all.size() %]
or the virtual method interface, which is described in Template::Plugin::ListMoreUtilsVMethods.
FUNCTIONS PROVIDED
All functions behave as documented in List::MoreUtils. I don't plan to copy the entire POD from there. Template::Toolkit provides lists as list reference, so they were expanded before the appropriate function in List::MoreUtils
is called.
any BLOCK LIST
all BLOCK LIST
none BLOCK LIST
notall BLOCK LIST
any_u BLOCK LIST
all_u BLOCK LIST
none_u BLOCK LIST
notall_u BLOCK LIST
true BLOCK LIST
false BLOCK LIST
firstidx BLOCK LIST
first_index BLOCK LIST
lastidx BLOCK LIST
last_index BLOCK LIST
onlyidx BLOCK LIST
only_index BLOCK LIST
firstres BLOCK LIST
first_result BLOCK LIST
lastres BLOCK LIST
last_result BLOCK LIST
onlyres BLOCK LIST
only_result BLOCK LIST
firstval BLOCK LIST
first_value BLOCK LIST
lastval BLOCK LIST
last_value BLOCK LIST
onlyval BLOCK LIST
only_value BLOCK LIST
insert_after BLOCK VALUE LIST
insert_after_string STRING VALUE LIST
apply BLOCK LIST
after BLOCK LIST
after_incl BLOCK LIST
before BLOCK LIST
before_incl BLOCK LIST
indexes BLOCK LIST
pairwise BLOCK LIST LIST
Unlike the original pairwise
, both variables are given through @_
. Template::Toolkit uses eval to evaluate the perl code declared there and passes neither $a
nor $b
(which sounds reasonable to me).
minmax LIST
uniq LIST
distinct LIST
singleton LIST
mesh
zip
part BLOCK LIST
bsearch BLOCK LIST
bsearchidx BLOCK LIST
bsearch_index BLOCK LIST
LIMITATION
Except the typical limitations known from perl functions embedded in Template::Toolkit, the only limitation I currently miss is being able to use TT2 defined macros as callback.
BUGS
Please report any bugs or feature requests to bug-Template-Plugin-ListMoreUtils at rt.cpan.org
, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Template-Plugin-ListMoreUtils. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Template::Plugin::ListMoreUtils
You can also look for information at:
RT: CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Template-Plugin-ListMoreUtils
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
Search CPAN
Business and commercial support should be acquired via preferred freelancer agencies.
LICENSE AND COPYRIGHT
Copyright 2009-2015 Jens Rehsack.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.
SEE ALSO
perl(1), List::MoreUtils, <Template::Plugin::ListUtil>