Twig-1.3.0/lib/Twig/TokenParserBrokerInterface.php
changeset 4 9a001a04b634
equal deleted inserted replaced
3:6d109e3804ac 4:9a001a04b634
       
     1 <?php
       
     2 
       
     3 /*
       
     4  * This file is part of Twig.
       
     5  *
       
     6  * (c) 2010 Fabien Potencier
       
     7  * (c) 2010 Arnaud Le Blanc
       
     8  *
       
     9  * For the full copyright and license information, please view the LICENSE
       
    10  * file that was distributed with this source code.
       
    11  */
       
    12 
       
    13 /**
       
    14  * Interface implemented by token parser brokers.
       
    15  *
       
    16  * Token parser brokers allows to implement custom logic in the process of resolving a token parser for a given tag name.
       
    17  *
       
    18  * @package twig
       
    19  * @author  Arnaud Le Blanc <arnaud.lb@gmail.com>
       
    20  */
       
    21 interface Twig_TokenParserBrokerInterface
       
    22 {
       
    23     /**
       
    24      * Gets a TokenParser suitable for a tag.
       
    25      *
       
    26      * @param  string $tag A tag name
       
    27      *
       
    28      * @return null|Twig_TokenParserInterface A Twig_TokenParserInterface or null if no suitable TokenParser was found
       
    29      */
       
    30     function getTokenParser($tag);
       
    31 
       
    32     /**
       
    33      * Calls Twig_TokenParserInterface::setParser on all parsers the implementation knows of.
       
    34      *
       
    35      * @param Twig_ParserInterface $parser A Twig_ParserInterface interface
       
    36      */
       
    37     function setParser(Twig_ParserInterface $parser);
       
    38 
       
    39     /**
       
    40      * Gets the Twig_ParserInterface.
       
    41      *
       
    42      * @return null|Twig_ParserInterface A Twig_ParserInterface instance of null
       
    43      */
       
    44     function getParser();
       
    45 }