annotate vendor/nikic/php-parser/test/code/parser/expr/fetchAndCall/constantDeref.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 Array/string dereferencing
Chris@0 2 -----
Chris@0 3 <?php
Chris@0 4
Chris@0 5 "abc"[2];
Chris@0 6 "abc"[2][0][0];
Chris@0 7
Chris@0 8 [1, 2, 3][2];
Chris@0 9 [1, 2, 3][2][0][0];
Chris@0 10
Chris@0 11 array(1, 2, 3)[2];
Chris@0 12 array(1, 2, 3)[2][0][0];
Chris@0 13
Chris@0 14 FOO[0];
Chris@0 15 Foo::BAR[1];
Chris@0 16 $foo::BAR[2][1][0];
Chris@0 17 -----
Chris@0 18 array(
Chris@13 19 0: Stmt_Expression(
Chris@13 20 expr: Expr_ArrayDimFetch(
Chris@13 21 var: Scalar_String(
Chris@13 22 value: abc
Chris@13 23 )
Chris@13 24 dim: Scalar_LNumber(
Chris@13 25 value: 2
Chris@13 26 )
Chris@0 27 )
Chris@0 28 )
Chris@13 29 1: Stmt_Expression(
Chris@13 30 expr: Expr_ArrayDimFetch(
Chris@0 31 var: Expr_ArrayDimFetch(
Chris@13 32 var: Expr_ArrayDimFetch(
Chris@13 33 var: Scalar_String(
Chris@13 34 value: abc
Chris@13 35 )
Chris@13 36 dim: Scalar_LNumber(
Chris@13 37 value: 2
Chris@13 38 )
Chris@0 39 )
Chris@0 40 dim: Scalar_LNumber(
Chris@13 41 value: 0
Chris@0 42 )
Chris@0 43 )
Chris@0 44 dim: Scalar_LNumber(
Chris@0 45 value: 0
Chris@0 46 )
Chris@0 47 )
Chris@13 48 )
Chris@13 49 2: Stmt_Expression(
Chris@13 50 expr: Expr_ArrayDimFetch(
Chris@13 51 var: Expr_Array(
Chris@13 52 items: array(
Chris@13 53 0: Expr_ArrayItem(
Chris@13 54 key: null
Chris@13 55 value: Scalar_LNumber(
Chris@13 56 value: 1
Chris@13 57 )
Chris@13 58 byRef: false
Chris@13 59 )
Chris@13 60 1: Expr_ArrayItem(
Chris@13 61 key: null
Chris@13 62 value: Scalar_LNumber(
Chris@13 63 value: 2
Chris@13 64 )
Chris@13 65 byRef: false
Chris@13 66 )
Chris@13 67 2: Expr_ArrayItem(
Chris@13 68 key: null
Chris@13 69 value: Scalar_LNumber(
Chris@13 70 value: 3
Chris@13 71 )
Chris@13 72 byRef: false
Chris@13 73 )
Chris@13 74 )
Chris@13 75 )
Chris@13 76 dim: Scalar_LNumber(
Chris@13 77 value: 2
Chris@13 78 )
Chris@0 79 )
Chris@0 80 )
Chris@13 81 3: Stmt_Expression(
Chris@13 82 expr: Expr_ArrayDimFetch(
Chris@13 83 var: Expr_ArrayDimFetch(
Chris@13 84 var: Expr_ArrayDimFetch(
Chris@13 85 var: Expr_Array(
Chris@13 86 items: array(
Chris@13 87 0: Expr_ArrayItem(
Chris@13 88 key: null
Chris@13 89 value: Scalar_LNumber(
Chris@13 90 value: 1
Chris@13 91 )
Chris@13 92 byRef: false
Chris@13 93 )
Chris@13 94 1: Expr_ArrayItem(
Chris@13 95 key: null
Chris@13 96 value: Scalar_LNumber(
Chris@13 97 value: 2
Chris@13 98 )
Chris@13 99 byRef: false
Chris@13 100 )
Chris@13 101 2: Expr_ArrayItem(
Chris@13 102 key: null
Chris@13 103 value: Scalar_LNumber(
Chris@13 104 value: 3
Chris@13 105 )
Chris@13 106 byRef: false
Chris@13 107 )
Chris@13 108 )
Chris@0 109 )
Chris@13 110 dim: Scalar_LNumber(
Chris@0 111 value: 2
Chris@0 112 )
Chris@0 113 )
Chris@0 114 dim: Scalar_LNumber(
Chris@13 115 value: 0
Chris@0 116 )
Chris@0 117 )
Chris@0 118 dim: Scalar_LNumber(
Chris@0 119 value: 0
Chris@0 120 )
Chris@0 121 )
Chris@13 122 )
Chris@13 123 4: Stmt_Expression(
Chris@13 124 expr: Expr_ArrayDimFetch(
Chris@13 125 var: Expr_Array(
Chris@13 126 items: array(
Chris@13 127 0: Expr_ArrayItem(
Chris@13 128 key: null
Chris@13 129 value: Scalar_LNumber(
Chris@13 130 value: 1
Chris@13 131 )
Chris@13 132 byRef: false
Chris@13 133 )
Chris@13 134 1: Expr_ArrayItem(
Chris@13 135 key: null
Chris@13 136 value: Scalar_LNumber(
Chris@13 137 value: 2
Chris@13 138 )
Chris@13 139 byRef: false
Chris@13 140 )
Chris@13 141 2: Expr_ArrayItem(
Chris@13 142 key: null
Chris@13 143 value: Scalar_LNumber(
Chris@13 144 value: 3
Chris@13 145 )
Chris@13 146 byRef: false
Chris@13 147 )
Chris@13 148 )
Chris@13 149 )
Chris@13 150 dim: Scalar_LNumber(
Chris@13 151 value: 2
Chris@13 152 )
Chris@0 153 )
Chris@0 154 )
Chris@13 155 5: Stmt_Expression(
Chris@13 156 expr: Expr_ArrayDimFetch(
Chris@13 157 var: Expr_ArrayDimFetch(
Chris@13 158 var: Expr_ArrayDimFetch(
Chris@13 159 var: Expr_Array(
Chris@13 160 items: array(
Chris@13 161 0: Expr_ArrayItem(
Chris@13 162 key: null
Chris@13 163 value: Scalar_LNumber(
Chris@13 164 value: 1
Chris@13 165 )
Chris@13 166 byRef: false
Chris@13 167 )
Chris@13 168 1: Expr_ArrayItem(
Chris@13 169 key: null
Chris@13 170 value: Scalar_LNumber(
Chris@13 171 value: 2
Chris@13 172 )
Chris@13 173 byRef: false
Chris@13 174 )
Chris@13 175 2: Expr_ArrayItem(
Chris@13 176 key: null
Chris@13 177 value: Scalar_LNumber(
Chris@13 178 value: 3
Chris@13 179 )
Chris@13 180 byRef: false
Chris@13 181 )
Chris@13 182 )
Chris@0 183 )
Chris@13 184 dim: Scalar_LNumber(
Chris@0 185 value: 2
Chris@0 186 )
Chris@0 187 )
Chris@0 188 dim: Scalar_LNumber(
Chris@13 189 value: 0
Chris@0 190 )
Chris@0 191 )
Chris@0 192 dim: Scalar_LNumber(
Chris@0 193 value: 0
Chris@0 194 )
Chris@0 195 )
Chris@13 196 )
Chris@13 197 6: Stmt_Expression(
Chris@13 198 expr: Expr_ArrayDimFetch(
Chris@13 199 var: Expr_ConstFetch(
Chris@13 200 name: Name(
Chris@13 201 parts: array(
Chris@13 202 0: FOO
Chris@13 203 )
Chris@13 204 )
Chris@13 205 )
Chris@13 206 dim: Scalar_LNumber(
Chris@13 207 value: 0
Chris@13 208 )
Chris@0 209 )
Chris@0 210 )
Chris@13 211 7: Stmt_Expression(
Chris@13 212 expr: Expr_ArrayDimFetch(
Chris@13 213 var: Expr_ClassConstFetch(
Chris@13 214 class: Name(
Chris@13 215 parts: array(
Chris@13 216 0: Foo
Chris@13 217 )
Chris@0 218 )
Chris@13 219 name: Identifier(
Chris@0 220 name: BAR
Chris@0 221 )
Chris@0 222 )
Chris@0 223 dim: Scalar_LNumber(
Chris@0 224 value: 1
Chris@0 225 )
Chris@0 226 )
Chris@13 227 )
Chris@13 228 8: Stmt_Expression(
Chris@13 229 expr: Expr_ArrayDimFetch(
Chris@13 230 var: Expr_ArrayDimFetch(
Chris@13 231 var: Expr_ArrayDimFetch(
Chris@13 232 var: Expr_ClassConstFetch(
Chris@13 233 class: Expr_Variable(
Chris@13 234 name: foo
Chris@13 235 )
Chris@13 236 name: Identifier(
Chris@13 237 name: BAR
Chris@13 238 )
Chris@13 239 )
Chris@13 240 dim: Scalar_LNumber(
Chris@13 241 value: 2
Chris@13 242 )
Chris@13 243 )
Chris@13 244 dim: Scalar_LNumber(
Chris@13 245 value: 1
Chris@13 246 )
Chris@13 247 )
Chris@13 248 dim: Scalar_LNumber(
Chris@13 249 value: 0
Chris@13 250 )
Chris@0 251 )
Chris@0 252 )
Chris@0 253 )