@@ 1214-1217 (lines=4) @@ | ||
1211 | if ($this->t->scanOperand) |
|
1212 | break 2; |
|
1213 | ||
1214 | while ( !empty($operators) && |
|
1215 | $this->opPrecedence[end($operators)->type] > $this->opPrecedence[$tt] |
|
1216 | ) |
|
1217 | $this->reduce($operators, $operands); |
|
1218 | ||
1219 | array_push($operators, new JSNode($this->t)); |
|
1220 | ||
@@ 1244-1247 (lines=4) @@ | ||
1241 | break 2; |
|
1242 | ||
1243 | // Use >, not >=, for right-associative ASSIGN |
|
1244 | while ( !empty($operators) && |
|
1245 | $this->opPrecedence[end($operators)->type] > $this->opPrecedence[$tt] |
|
1246 | ) |
|
1247 | $this->reduce($operators, $operands); |
|
1248 | ||
1249 | array_push($operators, new JSNode($this->t)); |
|
1250 | end($operands)->assignOp = $this->t->currentToken()->assignOp; |
|
@@ 1290-1293 (lines=4) @@ | ||
1287 | if ($this->t->scanOperand) |
|
1288 | break 2; |
|
1289 | ||
1290 | while ( !empty($operators) && |
|
1291 | $this->opPrecedence[end($operators)->type] >= $this->opPrecedence[$tt] |
|
1292 | ) |
|
1293 | $this->reduce($operators, $operands); |
|
1294 | ||
1295 | if ($tt == OP_DOT) |
|
1296 | { |
|
@@ 1331-1332 (lines=2) @@ | ||
1328 | if (!empty($operators)) |
|
1329 | { |
|
1330 | // Use >, not >=, so postfix has higher precedence than prefix. |
|
1331 | while ($this->opPrecedence[end($operators)->type] > $this->opPrecedence[$tt]) |
|
1332 | $this->reduce($operators, $operands); |
|
1333 | } |
|
1334 | ||
1335 | $n = new JSNode($this->t, $tt, array_pop($operands)); |
|
@@ 1476-1479 (lines=4) @@ | ||
1473 | } |
|
1474 | else |
|
1475 | { |
|
1476 | while ( !empty($operators) && |
|
1477 | $this->opPrecedence[end($operators)->type] > $this->opPrecedence[KEYWORD_NEW] |
|
1478 | ) |
|
1479 | $this->reduce($operators, $operands); |
|
1480 | ||
1481 | // Handle () now, to regularize the n-ary case for n > 0. |
|
1482 | // We must set scanOperand in case there are arguments and |