Shell File Manager

Current Path : /usr/share/doc/perl-Template-Toolkit-2.24/modules/Template/
Upload File :
Current File : //usr/share/doc/perl-Template-Toolkit-2.24/modules/Template/Filters.html


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN">
<html>
  <head>
    <title>Template::Filters</title>
    <link rel="stylesheet" type="text/css" href="../../css/blue.css" title="Clear Blue">
    <link rel="alternate stylesheet" type="text/css" href="../../css/orange.css" title="Clear Orange">
    <link rel="alternate stylesheet" type="text/css" href="../../css/green.css" title="Clear Green">
    <link rel="alternate stylesheet" type="text/css" href="../../css/purple.css" title="Clear Purple">
    <link rel="alternate stylesheet" type="text/css" href="../../css/grey.css" title="Clear Grey">
    <link rel="alternate stylesheet" type="text/css" href="../../css/print.css" title="Print">
    <!--[if IE 6]>
    <link rel="stylesheet" type="text/css" href="../../css/ie6.css" />
    <![endif]-->
    <!--[if IE 7]>
    <link rel="stylesheet" type="text/css" href="../../css/ie7.css" />
    <![endif]-->
    <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print">
    <script type="text/javascript" src="../../js/tt2.js"></script>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    <meta name="author" content="Andy Wardley">
  </head>
  <body id="body"> 
    <div id="layout">
        <div id="header">
          <a href="../../index.html" id="logo" alt="" title="Click for the Home Page"><span class="alt">TT2 Home Page</span></a>
          <ul id="trail">
            <li><a href="../../modules/index.html">Modules</a></li>
            <li><a href="../../modules/Template/index.html">Template::*</a></li>
            <li class="last"><a href="../../modules/Template/Filters.html">Filters.pm</a></li>
          </ul>
          <div class="controls">
            <a href="#" class="menu show" onclick="widescreen_off(); return false" title="Show Menu">
              <span class="about">Click to view the menu.  It's very nice.</span>
            </a>
            <a href="#" class="menu hide" onclick="widescreen_on();  return false" title="Hide Menu">
              <span class="about">Click to hide the menu and go all widescreen!</span>
            </a>
          
          <div class="pager">
            <a href="../../modules/Template/Exception.html" title="Template::Exception" class="go back">Back<span class="about"><h4>Template::Exception</h4>Exception handling class module</span></a>
            <a href="../../modules/Template/index.html" title="Template::* Modules" class="go up">Up<span class="about"><h4>Template::* Modules</h4></span></a>
            <a href="../../modules/Template/Grammar.html" title="Template::Grammar" class="go next">Next<span class="about"><h4>Template::Grammar</h4>Parser state/rule tables for the TT grammar</span></a>
          </div>
          </div>
          <h1 class="headline">Template::Filters</h1>
          <h2 class="subhead">Post-processing filters for template blocks</h1>
        
        </div>
        
        <div id="page">
          <div id="sidebar">
            <a href="../../index.html" id="logo"></a>
            <div id="menu">
              <ul class="menu">
                <li class="l0 first"><a href="../../manual/index.html">Manual</a></li>
                <li class="l0"><a href="../../modules/index.html" class="warm">Modules</a></li>
                <li class="l1"><a href="../../modules/Template.html">Template.pm</a></li>
                <li class="l1"><a href="../../modules/Template/index.html" class="warm">Template::*</a></li>
                <li class="l2"><a href="../../modules/Template/Base.html">Base.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Config.html">Config.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Constants.html">Constants.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Context.html">Context.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Directive.html">Directive.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Document.html">Document.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Exception.html">Exception.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Filters.html" class="warm">Filters.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Grammar.html">Grammar.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Iterator.html">Iterator.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Namespace/index.html">Namespace::*</a></li>
                <li class="l2"><a href="../../modules/Template/Parser.html">Parser.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Plugin.html">Plugin.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Plugin/index.html">Plugin::*</a></li>
                <li class="l2"><a href="../../modules/Template/Plugins.html">Plugins.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Provider.html">Provider.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Service.html">Service.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Stash.html">Stash.pm</a></li>
                <li class="l2"><a href="../../modules/Template/Stash/index.html">Stash::*</a></li>
                <li class="l2"><a href="../../modules/Template/Test.html">Test.pm</a></li>
                <li class="l2"><a href="../../modules/Template/VMethods.html">VMethods.pm</a></li>
                <li class="l2"><a href="../../modules/Template/View.html">View.pm</a></li>
                <li class="l0"><a href="../../tools/index.html">Tools</a></li>
                <li class="l0"><a href="../../tutorial/index.html">Tutorial</a></li>
                <li class="l0 last"><a href="../../faq/index.html">FAQ</a></li>
              </ul>
              <div class="foot"></div>
            </div>
          </div>
          <div id="content">
          <div class="section">
            <div class="head">
              <h1 id="contents" onclick="switch_section(this)" title="Click title to show/hide section content.">Contents</h1>
              <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
            </div>
            <div class="body">
              <ul class="toc">
                  <li class=""><a href="#SYNOPSIS">SYNOPSIS</a></li>
                  <li class=""><a href="#DESCRIPTION">DESCRIPTION</a></li>
                  <li class=""><a href="#METHODS">METHODS</a></li>
                  <li class="sub"><a href="#method_new">new(\%params)</a></li>
                  <li class="sub"><a href="#method_fetch">fetch($name, \@args, $context)</a></li>
                  <li class="sub"><a href="#method_use_html_entities">use_html_entities()</a></li>
                  <li class="sub"><a href="#method_use_apache_util">use_apache_util()</a></li>
                  <li class=""><a href="#CONFIGURATION_OPTIONS">CONFIGURATION OPTIONS</a></li>
                  <li class="sub"><a href="#section_FILTERS">FILTERS</a></li>
                  <li class="sub"><a href="#section_TOLERANT">TOLERANT</a></li>
                  <li class="sub"><a href="#section_DEBUG">DEBUG</a></li>
                  <li class=""><a href="#STANDARD_FILTERS">STANDARD FILTERS</a></li>
                  <li class=""><a href="#AUTHOR">AUTHOR</a></li>
                  <li class=""><a href="#COPYRIGHT">COPYRIGHT</a></li>
                  <li class=""><a href="#SEE_ALSO">SEE ALSO</a></li>
              
              </ul>
            </div>
          </div>
          
                <div class="pod">
            <div class="section">
              <div class="head">
                <h1 id="SYNOPSIS" onclick="switch_section(this)" title="Click title to show/hide section content.">SYNOPSIS</h1>
                <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
              </div>
              <div class="body">
                <pre>use Template::Filters;

$filters = Template::Filters-&gt;new(\%config);

($filter, $error) = $filters-&gt;fetch($name, \@args, $context);

if ($filter) {
    print &amp;$filter("some text");
}
else {
    print "Could not fetch $name filter: $error\n";
}</pre>
              </div>
            </div>
            <div class="section">
              <div class="head">
                <h1 id="DESCRIPTION" onclick="switch_section(this)" title="Click title to show/hide section content.">DESCRIPTION</h1>
                <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
              </div>
              <div class="body">
                <p>
                      The <code>Template::Filters</code> module implements a provider for
                      creating subroutines that implement the standard filters. Additional
                      custom filters may be provided via the <a
                      href="#section_FILTERS">FILTERS</a> configuration option.
                    </p>
              </div>
            </div>
            <div class="section">
              <div class="head">
                <h1 id="METHODS" onclick="switch_section(this)" title="Click title to show/hide section content.">METHODS</h1>
                <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
              </div>
              <div class="body">
                <div class="subsection">
                  <div class="head">
                    <h2 id="method_new" class="method" onclick="switch_subsection(this)" title="Click title to show/hide sub-section content.">new(\%params)</h2>
                    <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
                  </div>
                  <div class="body">
                    <p>
                          Constructor method which instantiates and returns a reference to a
                          <code>Template::Filters</code> object. A reference to a hash array of
                          configuration items may be passed as a parameter. These are described
                          below.
                        </p>
                        <pre>my $filters = Template::Filters-&gt;new({
    FILTERS =&gt; { ... },
});

my $template = Template-&gt;new({
    LOAD_FILTERS =&gt; [ $filters ],
});</pre>
                        <p>
                          A default <code>Template::Filters</code> module is created by the <a
                          href="../../modules/Template.html">Template</a> module if the <a
                          href="#section_LOAD_FILTERS">LOAD_FILTERS</a> option isn't specified. All
                          configuration parameters are forwarded to the constructor.
                        </p>
                        <pre>$template = Template-&gt;new({
    FILTERS =&gt; { ... },
});</pre>
                  </div>
                </div>    <div class="subsection">
                  <div class="head">
                    <h2 id="method_fetch" class="method" onclick="switch_subsection(this)" title="Click title to show/hide sub-section content.">fetch($name, \@args, $context)</h2>
                    <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
                  </div>
                  <div class="body">
                    <p>
                          Called to request that a filter of a given name be provided. The name of
                          the filter should be specified as the first parameter. This should be one
                          of the standard filters or one specified in the <a
                          href="#section_FILTERS">FILTERS</a> configuration hash. The second
                          argument should be a reference to an array containing configuration
                          parameters for the filter. This may be specified as 0, or undef where no
                          parameters are provided. The third argument should be a reference to the
                          current <a href="../../modules/Template/Context.html">Template::Context</a> object.
                        </p>
                        <p>
                          The method returns a reference to a filter sub-routine on success. It may
                          also return <code>(undef, STATUS_DECLINE)</code> to decline the request,
                          to allow delegation onto other filter providers in the <a
                          href="#section_LOAD_FILTERS">LOAD_FILTERS</a> chain of responsibility. On
                          error, <code>($error, STATUS_ERROR)</code> is returned where $error is an
                          error message or <a href="../../modules/Template/Exception.html">Template::Exception</a> object indicating the error that occurred.
                        </p>
                        <p>
                          When the <code>TOLERANT</code> option is set, errors are automatically
                          downgraded to a <code>STATUS_DECLINE</code> response.
                        </p>
                  </div>
                </div>    <div class="subsection">
                  <div class="head">
                    <h2 id="method_use_html_entities" class="method" onclick="switch_subsection(this)" title="Click title to show/hide sub-section content.">use_html_entities()</h2>
                    <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
                  </div>
                  <div class="body">
                    <p>
                          This class method can be called to configure the <code>html_entity</code>
                          filter to use the <a href="http://search.cpan.org/search?query=HTML::Entities&mode=all">HTML::Entities</a> module. An error will be raised if it is not
                          installed on your system.
                        </p>
                        <pre>use Template::Filters;
Template::Filters-&gt;use_html_entities();</pre>
                  </div>
                </div>    <div class="subsection">
                  <div class="head">
                    <h2 id="method_use_apache_util" class="method" onclick="switch_subsection(this)" title="Click title to show/hide sub-section content.">use_apache_util()</h2>
                    <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
                  </div>
                  <div class="body">
                    <p>
                          This class method can be called to configure the <code>html_entity</code>
                          filter to use the <a href="http://search.cpan.org/search?query=Apache::Util&mode=all">Apache::Util</a> module. An error will be raised if it is not
                          installed on your system.
                        </p>
                        <pre>use Template::Filters;
Template::Filters-&gt;use_apache_util();</pre>
                  </div>
                </div>
              </div>
            </div>
            <div class="section">
              <div class="head">
                <h1 id="CONFIGURATION_OPTIONS" onclick="switch_section(this)" title="Click title to show/hide section content.">CONFIGURATION OPTIONS</h1>
                <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
              </div>
              <div class="body">
                <p>
                      The following list summarises the configuration options that can be
                      provided to the <code>Template::Filters</code> <a
                      href="#method_new">new()</a> constructor. Please see <a href="../../manual/Config.html">Template::Manual::Config</a>
                      for further information about each option.
                    </p>
                    <div class="subsection">
                  <div class="head">
                    <h2 id="section_FILTERS" onclick="switch_subsection(this)" title="Click title to show/hide sub-section content.">FILTERS</h2>
                    <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
                  </div>
                  <div class="body">
                    <p>
                          The <a href="../../manual/Config.html#section_FILTERS">FILTERS</a> option can be used to specify custom
                          filters which can then be used with the <a href="../../manual/Directives.html#section_FILTER">FILTER</a>
                          directive like any other. These are added to the standard filters which
                          are available by default.
                        </p>
                        <pre>$filters = Template::Filters-&gt;new({
    FILTERS =&gt; {
        'sfilt1' =&gt;   \&amp;static_filter,
        'dfilt1' =&gt; [ \&amp;dyanamic_filter_factory, 1 ],
    },
});</pre>
                  </div>
                </div>    <div class="subsection">
                  <div class="head">
                    <h2 id="section_TOLERANT" onclick="switch_subsection(this)" title="Click title to show/hide sub-section content.">TOLERANT</h2>
                    <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
                  </div>
                  <div class="body">
                    <p>
                          The <a href="../../manual/Config.html#section_TOLERANT">TOLERANT</a> flag can be set to indicate that the
                          <code>Template::Filters</code> module should ignore any errors and
                          instead return <code>STATUS_DECLINED</code>.
                        </p>
                  </div>
                </div>    <div class="subsection">
                  <div class="head">
                    <h2 id="section_DEBUG" onclick="switch_subsection(this)" title="Click title to show/hide sub-section content.">DEBUG</h2>
                    <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
                  </div>
                  <div class="body">
                    <p>
                          The <a href="../../manual/Config.html#section_DEBUG">DEBUG</a> option can be used to enable debugging
                          messages for the Template::Filters module by setting it to include the
                          <code>DEBUG_FILTERS</code> value.
                        </p>
                        <pre>use Template::Constants qw( :debug );

my $template = Template-&gt;new({
    DEBUG =&gt; DEBUG_FILTERS | DEBUG_PLUGINS,
});</pre>
                  </div>
                </div>
              </div>
            </div>
            <div class="section">
              <div class="head">
                <h1 id="STANDARD_FILTERS" onclick="switch_section(this)" title="Click title to show/hide section content.">STANDARD FILTERS</h1>
                <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
              </div>
              <div class="body">
                <p>
                      Please see <a href="../../manual/Filters.html">Template::Manual::Filters</a> for a list of the filters provided
                      with the Template Toolkit, complete with examples of use.
                    </p>
              </div>
            </div>
            <div class="section">
              <div class="head">
                <h1 id="AUTHOR" onclick="switch_section(this)" title="Click title to show/hide section content.">AUTHOR</h1>
                <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
              </div>
              <div class="body">
                <p>
                      Andy Wardley &lt;[email protected]&gt; <a
                      href="http://wardley.org/">http://wardley.org/</a>
                    </p>
              </div>
            </div>
            <div class="section">
              <div class="head">
                <h1 id="COPYRIGHT" onclick="switch_section(this)" title="Click title to show/hide section content.">COPYRIGHT</h1>
                <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
              </div>
              <div class="body">
                <p>
                      Copyright (C) 1996-2007 Andy Wardley. All Rights Reserved.
                    </p>
                    <p>
                      This module is free software; you can redistribute it and/or modify it
                      under the same terms as Perl itself.
                    </p>
              </div>
            </div>
            <div class="section">
              <div class="head">
                <h1 id="SEE_ALSO" onclick="switch_section(this)" title="Click title to show/hide section content.">SEE ALSO</h1>
                <a href="#body" class="top" title="Back up to the top of the page" >Top</a>
              </div>
              <div class="body">
                <p>
                      <a href="../../manual/Filters.html">Template::Manual::Filters</a>, <a href="../../modules/Template.html">Template</a>, <a href="../../modules/Template/Context.html">Template::Context</a>
                    </p>
              </div>
            </div>
            
            </div></div>
          <br class="clear" />
          <div class="pageinfo">
            <a href="http://template-toolkit.org/docs/modules/Template/Filters.html">http://template-toolkit.org/docs/modules/Template/Filters.html</a>
          </div>
        </div>
        
        <div id="footer">
          <a href="http://opensource.org/" class="osi"></a>
          <div class="controls">
          <div class="pager">
            <a href="../../modules/Template/Exception.html" title="Template::Exception" class="go back">Back<span class="about"><h4>Template::Exception</h4></span></a>
            <a href="../../modules/Template/index.html" title="Template::* Modules" class="go up">Up<span class="about"><h4>Template::* Modules</h4></span></a>
            <a href="../../modules/Template/Grammar.html" title="Template::Grammar" class="go next">Next<span class="about"><h4>Template::Grammar</h4></span></a>
          </div>
          </div>
          <div class="copyright">
            Copyright &copy; 1996-2012 <a href="http://wardley.org/">Andy Wardley</a>.  All Rights Reserved.
          </div>
          <div class="licence">
            The <a href="http://template-toolkit.org/">Template Toolkit</a> is <a href="http://opensource.org/">Open Source</a> software.
            You can redistribute and/or modify it under the terms of the <a href="http://www.opensource.org/licenses/gpl-license.php">GNU Public Licence</a>
            or the <a href="http://www.opensource.org/licenses/artistic-license.php">Perl Artistic Licence</a>.
          </div>
        </div>
        <div id="palette">
          <ul>
            <li class="first"><a href="#" class="blue" onclick="set_style('Clear Blue')"></a></li>
            <li><a href="#" class="orange" onclick="set_style('Clear Orange')"></a></li>
            <li><a href="#" class="green" onclick="set_style('Clear Green')"></a></li>
            <li><a href="#" class="purple" onclick="set_style('Clear Purple')"></a></li>
            <li><a href="#" class="grey" onclick="set_style('Clear Grey')"></a></li>
          </ul>
        </div>
    </div>  </body>
</html>

Shell File Manager Version 1.1, Coded By Shell
Email: [email protected]