1 Expressions in static scalar context
8 const T_4 = "foo" . "bar";
9 const T_5 = (1.5 + 1.5) * 2;
10 const T_6 = "foo" . 2 . 3 . 4.0;
12 const T_8 = <<<ENDOFSTRING
16 const T_10 = (-1?:1) + (0?2:3);
29 const T_23 = 0 != "0";
30 const T_24 = 1 == "1";
31 const T_25 = 1 + 2 * 3;
32 const T_26 = "1" + 2 + "3";
34 const T_28 = [1, 2, 3][1];
40 const T_34 = 100 >> 4;
48 value: Expr_BinaryOp_ShiftLeft(
52 right: Scalar_LNumber(
63 value: Expr_BinaryOp_Div(
67 right: Scalar_LNumber(
78 value: Expr_BinaryOp_Plus(
82 right: Scalar_DNumber(
93 value: Expr_BinaryOp_Concat(
108 value: Expr_BinaryOp_Mul(
109 left: Expr_BinaryOp_Plus(
110 left: Scalar_DNumber(
113 right: Scalar_DNumber(
117 right: Scalar_LNumber(
128 value: Expr_BinaryOp_Concat(
129 left: Expr_BinaryOp_Concat(
130 left: Expr_BinaryOp_Concat(
134 right: Scalar_LNumber(
138 right: Scalar_LNumber(
142 right: Scalar_DNumber(
153 value: Scalar_MagicConst_Line(
162 value: Scalar_String(
163 value: This is a test string
172 value: Expr_BitwiseNot(
173 expr: Expr_UnaryMinus(
174 expr: Scalar_LNumber(
186 value: Expr_BinaryOp_Plus(
188 cond: Expr_UnaryMinus(
189 expr: Scalar_LNumber(
194 else: Scalar_LNumber(
199 cond: Scalar_LNumber(
205 else: Scalar_LNumber(
217 value: Expr_BinaryOp_BooleanAnd(
218 left: Scalar_LNumber(
221 right: Scalar_LNumber(
232 value: Expr_BinaryOp_LogicalAnd(
233 left: Scalar_LNumber(
236 right: Scalar_LNumber(
247 value: Expr_BinaryOp_BooleanOr(
248 left: Scalar_LNumber(
251 right: Scalar_LNumber(
262 value: Expr_BinaryOp_LogicalOr(
263 left: Scalar_LNumber(
266 right: Scalar_LNumber(
277 value: Expr_BinaryOp_LogicalXor(
278 left: Scalar_LNumber(
281 right: Scalar_LNumber(
292 value: Expr_BinaryOp_LogicalXor(
293 left: Scalar_LNumber(
296 right: Scalar_LNumber(
307 value: Expr_BinaryOp_Smaller(
308 left: Scalar_LNumber(
311 right: Scalar_LNumber(
322 value: Expr_BinaryOp_SmallerOrEqual(
323 left: Scalar_LNumber(
326 right: Scalar_LNumber(
337 value: Expr_BinaryOp_Greater(
338 left: Scalar_LNumber(
341 right: Scalar_LNumber(
352 value: Expr_BinaryOp_GreaterOrEqual(
353 left: Scalar_LNumber(
356 right: Scalar_LNumber(
367 value: Expr_BinaryOp_Identical(
368 left: Scalar_LNumber(
371 right: Scalar_LNumber(
382 value: Expr_BinaryOp_NotIdentical(
383 left: Scalar_LNumber(
386 right: Scalar_LNumber(
397 value: Expr_BinaryOp_NotEqual(
398 left: Scalar_LNumber(
401 right: Scalar_String(
412 value: Expr_BinaryOp_Equal(
413 left: Scalar_LNumber(
416 right: Scalar_String(
427 value: Expr_BinaryOp_Plus(
428 left: Scalar_LNumber(
431 right: Expr_BinaryOp_Mul(
432 left: Scalar_LNumber(
435 right: Scalar_LNumber(
447 value: Expr_BinaryOp_Plus(
448 left: Expr_BinaryOp_Plus(
452 right: Scalar_LNumber(
456 right: Scalar_String(
467 value: Expr_BinaryOp_Pow(
468 left: Scalar_LNumber(
471 right: Scalar_LNumber(
482 value: Expr_ArrayDimFetch(
487 value: Scalar_LNumber(
494 value: Scalar_LNumber(
501 value: Scalar_LNumber(
519 value: Expr_BinaryOp_Minus(
520 left: Scalar_LNumber(
523 right: Scalar_LNumber(
534 value: Expr_BinaryOp_BitwiseXor(
535 left: Scalar_LNumber(
538 right: Scalar_LNumber(
549 value: Expr_BinaryOp_BitwiseAnd(
550 left: Scalar_LNumber(
553 right: Scalar_LNumber(
564 value: Expr_BinaryOp_BitwiseOr(
565 left: Scalar_LNumber(
568 right: Scalar_LNumber(
579 value: Expr_BinaryOp_Mod(
580 left: Scalar_LNumber(
583 right: Scalar_LNumber(
594 value: Expr_BinaryOp_ShiftRight(
595 left: Scalar_LNumber(
598 right: Scalar_LNumber(
609 value: Expr_BooleanNot(
610 expr: Expr_ConstFetch(