Вход Регистрация
Файл: symfony-2.7/src/Symfony/Bundle/TwigBundle/TokenParser/RenderTokenParser.php
Строк: 79
<?php

/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace SymfonyBundleTwigBundleTokenParser;

use 
SymfonyBundleTwigBundleNodeRenderNode;

/**
 * Token Parser for the render tag.
 *
 * @author Fabien Potencier <fabien@symfony.com>
 *
 * @deprecated since version 2.2, to be removed in 3.0.
 */
class RenderTokenParser extends Twig_TokenParser
{
    
/**
     * Parses a token and returns a node.
     *
     * @param Twig_Token $token A Twig_Token instance
     *
     * @return Twig_NodeInterface A Twig_NodeInterface instance
     */
    
public function parse(Twig_Token $token)
    {
        
$expr $this->parser->getExpressionParser()->parseExpression();

        
// options
        
if ($this->parser->getStream()->test(Twig_Token::PUNCTUATION_TYPE',')) {
            
$this->parser->getStream()->next();

            
$options $this->parser->getExpressionParser()->parseExpression();
        } else {
            
$options = new Twig_Node_Expression_Array(array(), $token->getLine());
        }

        
$this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE);

        return new 
RenderNode($expr$options$token->getLine(), $this->getTag());
    }

    
/**
     * Gets the tag name associated with this token parser.
     *
     * @return string The tag name
     */
    
public function getTag()
    {
        return 
'render';
    }
}
Онлайн: 0
Реклама