. */ namespace Doctrine\ORM\Query\AST; /** * SimpleCaseExpression ::= "CASE" CaseOperand SimpleWhenClause {SimpleWhenClause}* "ELSE" ScalarExpression "END" * * @since 2.2 * * @link www.doctrine-project.org * @author Benjamin Eberlei * @author Guilherme Blanco * @author Jonathan Wage * @author Roman Borschel */ class SimpleCaseExpression extends Node { /** * @var PathExpression */ public $caseOperand = null; /** * @var array */ public $simpleWhenClauses = array(); /** * @var mixed */ public $elseScalarExpression = null; /** * @param PathExpression $caseOperand * @param array $simpleWhenClauses * @param mixed $elseScalarExpression */ public function __construct($caseOperand, array $simpleWhenClauses, $elseScalarExpression) { $this->caseOperand = $caseOperand; $this->simpleWhenClauses = $simpleWhenClauses; $this->elseScalarExpression = $elseScalarExpression; } /** * {@inheritdoc} */ public function dispatch($sqlWalker) { return $sqlWalker->walkSimpleCaseExpression($this); } }