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.