annotate vendor/nikic/php-parser/test/code/parser/expr/new.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 New
Chris@0 2 -----
Chris@0 3 <?php
Chris@0 4
Chris@0 5 new A;
Chris@0 6 new A($b);
Chris@0 7
Chris@0 8 // class name variations
Chris@0 9 new $a();
Chris@0 10 new $a['b']();
Chris@0 11 new A::$b();
Chris@0 12 // DNCR object access
Chris@0 13 new $a->b();
Chris@0 14 new $a->b->c();
Chris@0 15 new $a->b['c']();
Chris@0 16 new $a->b{'c'}();
Chris@0 17
Chris@0 18 // test regression introduces by new dereferencing syntax
Chris@0 19 (new A);
Chris@0 20 -----
Chris@0 21 array(
Chris@13 22 0: Stmt_Expression(
Chris@13 23 expr: Expr_New(
Chris@13 24 class: Name(
Chris@13 25 parts: array(
Chris@13 26 0: A
Chris@13 27 )
Chris@0 28 )
Chris@13 29 args: array(
Chris@0 30 )
Chris@0 31 )
Chris@0 32 )
Chris@13 33 1: Stmt_Expression(
Chris@13 34 expr: Expr_New(
Chris@13 35 class: Name(
Chris@13 36 parts: array(
Chris@13 37 0: A
Chris@13 38 )
Chris@13 39 )
Chris@13 40 args: array(
Chris@13 41 0: Arg(
Chris@13 42 value: Expr_Variable(
Chris@13 43 name: b
Chris@13 44 )
Chris@13 45 byRef: false
Chris@13 46 unpack: false
Chris@13 47 )
Chris@13 48 )
Chris@0 49 )
Chris@13 50 )
Chris@13 51 2: Stmt_Expression(
Chris@13 52 expr: Expr_New(
Chris@13 53 class: Expr_Variable(
Chris@13 54 name: a
Chris@13 55 )
Chris@13 56 args: array(
Chris@13 57 )
Chris@13 58 comments: array(
Chris@13 59 0: // class name variations
Chris@13 60 )
Chris@0 61 )
Chris@0 62 comments: array(
Chris@0 63 0: // class name variations
Chris@0 64 )
Chris@0 65 )
Chris@13 66 3: Stmt_Expression(
Chris@13 67 expr: Expr_New(
Chris@13 68 class: Expr_ArrayDimFetch(
Chris@13 69 var: Expr_Variable(
Chris@13 70 name: a
Chris@13 71 )
Chris@13 72 dim: Scalar_String(
Chris@13 73 value: b
Chris@13 74 )
Chris@0 75 )
Chris@13 76 args: array(
Chris@0 77 )
Chris@0 78 )
Chris@13 79 )
Chris@13 80 4: Stmt_Expression(
Chris@13 81 expr: Expr_New(
Chris@13 82 class: Expr_StaticPropertyFetch(
Chris@13 83 class: Name(
Chris@13 84 parts: array(
Chris@13 85 0: A
Chris@13 86 )
Chris@13 87 )
Chris@13 88 name: VarLikeIdentifier(
Chris@13 89 name: b
Chris@13 90 )
Chris@13 91 )
Chris@13 92 args: array(
Chris@13 93 )
Chris@0 94 )
Chris@0 95 )
Chris@13 96 5: Stmt_Expression(
Chris@13 97 expr: Expr_New(
Chris@13 98 class: Expr_PropertyFetch(
Chris@13 99 var: Expr_Variable(
Chris@13 100 name: a
Chris@13 101 )
Chris@13 102 name: Identifier(
Chris@13 103 name: b
Chris@13 104 )
Chris@13 105 )
Chris@13 106 args: array(
Chris@13 107 )
Chris@13 108 comments: array(
Chris@13 109 0: // DNCR object access
Chris@13 110 )
Chris@13 111 )
Chris@13 112 comments: array(
Chris@13 113 0: // DNCR object access
Chris@13 114 )
Chris@13 115 )
Chris@13 116 6: Stmt_Expression(
Chris@13 117 expr: Expr_New(
Chris@13 118 class: Expr_PropertyFetch(
Chris@13 119 var: Expr_PropertyFetch(
Chris@13 120 var: Expr_Variable(
Chris@13 121 name: a
Chris@13 122 )
Chris@13 123 name: Identifier(
Chris@13 124 name: b
Chris@13 125 )
Chris@13 126 )
Chris@13 127 name: Identifier(
Chris@13 128 name: c
Chris@13 129 )
Chris@13 130 )
Chris@13 131 args: array(
Chris@13 132 )
Chris@13 133 )
Chris@13 134 )
Chris@13 135 7: Stmt_Expression(
Chris@13 136 expr: Expr_New(
Chris@13 137 class: Expr_ArrayDimFetch(
Chris@13 138 var: Expr_PropertyFetch(
Chris@13 139 var: Expr_Variable(
Chris@13 140 name: a
Chris@13 141 )
Chris@13 142 name: Identifier(
Chris@13 143 name: b
Chris@13 144 )
Chris@13 145 )
Chris@13 146 dim: Scalar_String(
Chris@13 147 value: c
Chris@13 148 )
Chris@13 149 )
Chris@13 150 args: array(
Chris@13 151 )
Chris@13 152 )
Chris@13 153 )
Chris@13 154 8: Stmt_Expression(
Chris@13 155 expr: Expr_New(
Chris@13 156 class: Expr_ArrayDimFetch(
Chris@13 157 var: Expr_PropertyFetch(
Chris@13 158 var: Expr_Variable(
Chris@13 159 name: a
Chris@13 160 )
Chris@13 161 name: Identifier(
Chris@13 162 name: b
Chris@13 163 )
Chris@13 164 )
Chris@13 165 dim: Scalar_String(
Chris@13 166 value: c
Chris@13 167 )
Chris@13 168 )
Chris@13 169 args: array(
Chris@13 170 )
Chris@13 171 )
Chris@13 172 )
Chris@13 173 9: Stmt_Expression(
Chris@13 174 expr: Expr_New(
Chris@0 175 class: Name(
Chris@0 176 parts: array(
Chris@0 177 0: A
Chris@0 178 )
Chris@0 179 )
Chris@13 180 args: array(
Chris@0 181 )
Chris@0 182 )
Chris@0 183 comments: array(
Chris@13 184 0: // test regression introduces by new dereferencing syntax
Chris@0 185 )
Chris@0 186 )
Chris@0 187 )