annotate vendor/nikic/php-parser/test/code/parser/stmt/namespace/outsideStmtInvalid.test @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 5fb285c0d0e3
children
rev   line source
Chris@0 1 There (mostly) can't be statements outside of namespaces
Chris@0 2 -----
Chris@0 3 <?php
Chris@0 4 echo 1;
Chris@0 5 echo 2;
Chris@0 6 namespace A;
Chris@0 7 -----
Chris@0 8 Namespace declaration statement has to be the very first statement in the script on line 4
Chris@0 9 array(
Chris@0 10 0: Stmt_Echo(
Chris@0 11 exprs: array(
Chris@0 12 0: Scalar_LNumber(
Chris@0 13 value: 1
Chris@0 14 )
Chris@0 15 )
Chris@0 16 )
Chris@0 17 1: Stmt_Echo(
Chris@0 18 exprs: array(
Chris@0 19 0: Scalar_LNumber(
Chris@0 20 value: 2
Chris@0 21 )
Chris@0 22 )
Chris@0 23 )
Chris@0 24 2: Stmt_Namespace(
Chris@0 25 name: Name(
Chris@0 26 parts: array(
Chris@0 27 0: A
Chris@0 28 )
Chris@0 29 )
Chris@0 30 stmts: array(
Chris@0 31 )
Chris@0 32 )
Chris@0 33 )
Chris@0 34 -----
Chris@0 35 <?php
Chris@0 36 namespace A {}
Chris@0 37 echo 1;
Chris@0 38 -----
Chris@0 39 No code may exist outside of namespace {} from 3:1 to 3:7
Chris@0 40 array(
Chris@0 41 0: Stmt_Namespace(
Chris@0 42 name: Name(
Chris@0 43 parts: array(
Chris@0 44 0: A
Chris@0 45 )
Chris@0 46 )
Chris@0 47 stmts: array(
Chris@0 48 )
Chris@0 49 )
Chris@0 50 1: Stmt_Echo(
Chris@0 51 exprs: array(
Chris@0 52 0: Scalar_LNumber(
Chris@0 53 value: 1
Chris@0 54 )
Chris@0 55 )
Chris@0 56 )
Chris@0 57 )
Chris@0 58 -----
Chris@0 59 <?php
Chris@0 60 namespace A {}
Chris@0 61 declare(ticks=1);
Chris@0 62 foo();
Chris@0 63 namespace B {}
Chris@0 64 -----
Chris@0 65 No code may exist outside of namespace {} from 3:1 to 3:17
Chris@0 66 array(
Chris@0 67 0: Stmt_Namespace(
Chris@0 68 name: Name(
Chris@0 69 parts: array(
Chris@0 70 0: A
Chris@0 71 )
Chris@0 72 )
Chris@0 73 stmts: array(
Chris@0 74 )
Chris@0 75 )
Chris@0 76 1: Stmt_Declare(
Chris@0 77 declares: array(
Chris@0 78 0: Stmt_DeclareDeclare(
Chris@13 79 key: Identifier(
Chris@13 80 name: ticks
Chris@13 81 )
Chris@0 82 value: Scalar_LNumber(
Chris@0 83 value: 1
Chris@0 84 )
Chris@0 85 )
Chris@0 86 )
Chris@0 87 stmts: null
Chris@0 88 )
Chris@13 89 2: Stmt_Expression(
Chris@13 90 expr: Expr_FuncCall(
Chris@13 91 name: Name(
Chris@13 92 parts: array(
Chris@13 93 0: foo
Chris@13 94 )
Chris@0 95 )
Chris@13 96 args: array(
Chris@13 97 )
Chris@0 98 )
Chris@0 99 )
Chris@0 100 3: Stmt_Namespace(
Chris@0 101 name: Name(
Chris@0 102 parts: array(
Chris@0 103 0: B
Chris@0 104 )
Chris@0 105 )
Chris@0 106 stmts: array(
Chris@0 107 )
Chris@0 108 )
Chris@0 109 )