/**
* Parses an assignment expression
*
* @return Node\Node|null
*/
protected function parseAssignmentExpression() { if ($expr =
$this->
parseArrowFunction()) { return $expr;
} elseif ($this->context->allowYield &&
$expr =
$this->
parseYieldExpression()) { return $expr;
} elseif ($expr =
$this->
parseConditionalExpression()) { $exprTypes = array
( "ConditionalExpression", "LogicalExpression",
"BinaryExpression", "UpdateExpression", "UnaryExpression"
);
if (!
in_array($expr->
getType(),
$exprTypes)) { $operators =
$this->assignmentOperators;
if ($operator =
$this->scanner->
consumeOneOf($operators)) {