1
0
mirror of synced 2024-12-15 07:36:03 +03:00
doctrine2/draft/Doctrine/Query/Production/SelectExpression.php

25 lines
807 B
PHP
Raw Normal View History

2007-12-10 23:02:41 +03:00
<?php
/**
* SelectExpression = (Expression | "(" Subselect ")" ) [["AS"] identifier]
*/
class Doctrine_Query_Production_SelectExpression extends Doctrine_Query_Production
{
public function execute(array $params = array())
{
if ($this->_isSubquery()) {
$this->_parser->match('(');
$this->Subselect();
$this->_parser->match(')');
} else {
$this->Expression();
}
if ($this->_isNextToken(Doctrine_Query_Token::T_AS)) {
$this->_parser->match(Doctrine_Query_Token::T_AS);
$this->_parser->match(Doctrine_Query_Token::T_IDENTIFIER);
} elseif ($this->_isNextToken(Doctrine_Query_Token::T_IDENTIFIER)) {
$this->_parser->match(Doctrine_Query_Token::T_IDENTIFIER);
}
}
}