/** * * 可能是一元操作符 * @param boolean $allowCalls */ public function maybeUnary($allowCalls) { if ($this->isToken(FL_TOKEN_JS_OPERATOR) && Fl_Js_Static::isUnaryPrefix($this->currentToken['value'])) { return $this->makeUnary("unary-prefix", $this->execEach($this->currentToken['value'], 'getNextToken'), $this->maybeUnary($allowCalls)); } //$val = $this->maybeEmbedTokens ( 'exprAtomAst', $allowCalls ); $val = $this->exprAtomAst($allowCalls); while ($this->isToken(FL_TOKEN_JS_OPERATOR) && Fl_Js_Static::isUnarySuffix($this->currentToken['value']) && !$this->currentToken['newlineBefore']) { $val = $this->makeUnary("unary-postfix", $this->currentToken['value'], $val); $this->getNextToken(); } return $val; }