NAME
Mason::Filters::Standard - Standard filters
DESCRIPTION
These filters are automatically composed into Mason::Component.
FILTERS
- Capture ($ref)
-
Uses
$m->capture
to capture the content in $ref instead of outputting it.% $.Capture(\my $content) {{ <!-- this will end up in $content --> % }} ... do something with $content
- CompCall ($path, @args...)
-
Calls the component with path and @args, just as with
$m->scomp
, with an additional coderef argumentyield
that can be invoked to generate the content. Arguments passed toyield
can be accessed inside the content via@_
. This is the replacement for Mason 1's Components With Content.In index.mc: % $.CompCall ('list_items.mi', items => \@items) {{ <li><% $_[0] %></li> % }} In list_items.mi: <%class> has 'items'; has 'yield'; </%class> % foreach my $item (@{$.items}) { <% $.yield->($item) %> % }
- NoBlankLines
-
Remove lines with only whitespace from content. This
% $.NoBlankLines {{ hello world % }}
yields
hello world
- Repeat ($count)
-
Repeat the content block $count times. Note that the block is re-executed each time, which may result in different content.
<!-- Prints 1 to 5 --> % my $i = 1; % $.Repeat(5) {{ <% $i++ %><br> % }}
- Tee ($ref)
-
Uses
$m->capture
to capture the content in $ref, and also output it.% $.Tee(\my $content) {{ <!-- this will end up in $content and also be output --> % }} ... <!-- output content again down here --> <% $content %>
- Trim
-
Remove whitespace from the beginning and end of the content.
SEE ALSO
AUTHOR
Jonathan Swartz <swartz@pobox.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Jonathan Swartz.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.