Project

General

Profile

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
 * @author Arnaud Le Blanc <arnaud.lb@gmail.com>
19
 *
20
 * @deprecated since 1.12 (to be removed in 2.0)
21
 */
22
interface Twig_TokenParserBrokerInterface
23
{
24
    /**
25
     * Gets a TokenParser suitable for a tag.
26
     *
27
     * @param string $tag A tag name
28
     *
29
     * @return null|Twig_TokenParserInterface A Twig_TokenParserInterface or null if no suitable TokenParser was found
30
     */
31
    public function getTokenParser($tag);
32

    
33
    /**
34
     * Calls Twig_TokenParserInterface::setParser on all parsers the implementation knows of.
35
     *
36
     * @param Twig_ParserInterface $parser A Twig_ParserInterface interface
37
     */
38
    public function setParser(Twig_ParserInterface $parser);
39

    
40
    /**
41
     * Gets the Twig_ParserInterface.
42
     *
43
     * @return null|Twig_ParserInterface A Twig_ParserInterface instance or null
44
     */
45
    public function getParser();
46
}
(41-41/43)