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.