table of contents
Mason::Filters::Standard(3pm) | User Contributed Perl Documentation | Mason::Filters::Standard(3pm) |
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 argument "yield" that can be
invoked to generate the content. Arguments passed to
"yield" can be accessed inside the
content via @_. This is the replacement for Mason
1's Components With Content
<http://search.cpan.org/perldoc?HTML::Mason::Devel#Component_Calls_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¶
Mason::Manual::Filters, Mason
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.
2022-05-27 | perl v5.34.0 |