annotate vendor/nikic/php-parser/test/code/parser/expr/fetchAndCall/constantDeref.test @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 5fb285c0d0e3
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@0 19 0: Expr_ArrayDimFetch(
Chris@0 20 var: Scalar_String(
Chris@0 21 value: abc
Chris@0 22 )
Chris@0 23 dim: Scalar_LNumber(
Chris@0 24 value: 2
Chris@0 25 )
Chris@0 26 )
Chris@0 27 1: Expr_ArrayDimFetch(
Chris@0 28 var: Expr_ArrayDimFetch(
Chris@0 29 var: Expr_ArrayDimFetch(
Chris@0 30 var: Scalar_String(
Chris@0 31 value: abc
Chris@0 32 )
Chris@0 33 dim: Scalar_LNumber(
Chris@0 34 value: 2
Chris@0 35 )
Chris@0 36 )
Chris@0 37 dim: Scalar_LNumber(
Chris@0 38 value: 0
Chris@0 39 )
Chris@0 40 )
Chris@0 41 dim: Scalar_LNumber(
Chris@0 42 value: 0
Chris@0 43 )
Chris@0 44 )
Chris@0 45 2: Expr_ArrayDimFetch(
Chris@0 46 var: Expr_Array(
Chris@0 47 items: array(
Chris@0 48 0: Expr_ArrayItem(
Chris@0 49 key: null
Chris@0 50 value: Scalar_LNumber(
Chris@0 51 value: 1
Chris@0 52 )
Chris@0 53 byRef: false
Chris@0 54 )
Chris@0 55 1: Expr_ArrayItem(
Chris@0 56 key: null
Chris@0 57 value: Scalar_LNumber(
Chris@0 58 value: 2
Chris@0 59 )
Chris@0 60 byRef: false
Chris@0 61 )
Chris@0 62 2: Expr_ArrayItem(
Chris@0 63 key: null
Chris@0 64 value: Scalar_LNumber(
Chris@0 65 value: 3
Chris@0 66 )
Chris@0 67 byRef: false
Chris@0 68 )
Chris@0 69 )
Chris@0 70 )
Chris@0 71 dim: Scalar_LNumber(
Chris@0 72 value: 2
Chris@0 73 )
Chris@0 74 )
Chris@0 75 3: Expr_ArrayDimFetch(
Chris@0 76 var: Expr_ArrayDimFetch(
Chris@0 77 var: Expr_ArrayDimFetch(
Chris@0 78 var: Expr_Array(
Chris@0 79 items: array(
Chris@0 80 0: Expr_ArrayItem(
Chris@0 81 key: null
Chris@0 82 value: Scalar_LNumber(
Chris@0 83 value: 1
Chris@0 84 )
Chris@0 85 byRef: false
Chris@0 86 )
Chris@0 87 1: Expr_ArrayItem(
Chris@0 88 key: null
Chris@0 89 value: Scalar_LNumber(
Chris@0 90 value: 2
Chris@0 91 )
Chris@0 92 byRef: false
Chris@0 93 )
Chris@0 94 2: Expr_ArrayItem(
Chris@0 95 key: null
Chris@0 96 value: Scalar_LNumber(
Chris@0 97 value: 3
Chris@0 98 )
Chris@0 99 byRef: false
Chris@0 100 )
Chris@0 101 )
Chris@0 102 )
Chris@0 103 dim: Scalar_LNumber(
Chris@0 104 value: 2
Chris@0 105 )
Chris@0 106 )
Chris@0 107 dim: Scalar_LNumber(
Chris@0 108 value: 0
Chris@0 109 )
Chris@0 110 )
Chris@0 111 dim: Scalar_LNumber(
Chris@0 112 value: 0
Chris@0 113 )
Chris@0 114 )
Chris@0 115 4: Expr_ArrayDimFetch(
Chris@0 116 var: Expr_Array(
Chris@0 117 items: array(
Chris@0 118 0: Expr_ArrayItem(
Chris@0 119 key: null
Chris@0 120 value: Scalar_LNumber(
Chris@0 121 value: 1
Chris@0 122 )
Chris@0 123 byRef: false
Chris@0 124 )
Chris@0 125 1: Expr_ArrayItem(
Chris@0 126 key: null
Chris@0 127 value: Scalar_LNumber(
Chris@0 128 value: 2
Chris@0 129 )
Chris@0 130 byRef: false
Chris@0 131 )
Chris@0 132 2: Expr_ArrayItem(
Chris@0 133 key: null
Chris@0 134 value: Scalar_LNumber(
Chris@0 135 value: 3
Chris@0 136 )
Chris@0 137 byRef: false
Chris@0 138 )
Chris@0 139 )
Chris@0 140 )
Chris@0 141 dim: Scalar_LNumber(
Chris@0 142 value: 2
Chris@0 143 )
Chris@0 144 )
Chris@0 145 5: Expr_ArrayDimFetch(
Chris@0 146 var: Expr_ArrayDimFetch(
Chris@0 147 var: Expr_ArrayDimFetch(
Chris@0 148 var: Expr_Array(
Chris@0 149 items: array(
Chris@0 150 0: Expr_ArrayItem(
Chris@0 151 key: null
Chris@0 152 value: Scalar_LNumber(
Chris@0 153 value: 1
Chris@0 154 )
Chris@0 155 byRef: false
Chris@0 156 )
Chris@0 157 1: Expr_ArrayItem(
Chris@0 158 key: null
Chris@0 159 value: Scalar_LNumber(
Chris@0 160 value: 2
Chris@0 161 )
Chris@0 162 byRef: false
Chris@0 163 )
Chris@0 164 2: Expr_ArrayItem(
Chris@0 165 key: null
Chris@0 166 value: Scalar_LNumber(
Chris@0 167 value: 3
Chris@0 168 )
Chris@0 169 byRef: false
Chris@0 170 )
Chris@0 171 )
Chris@0 172 )
Chris@0 173 dim: Scalar_LNumber(
Chris@0 174 value: 2
Chris@0 175 )
Chris@0 176 )
Chris@0 177 dim: Scalar_LNumber(
Chris@0 178 value: 0
Chris@0 179 )
Chris@0 180 )
Chris@0 181 dim: Scalar_LNumber(
Chris@0 182 value: 0
Chris@0 183 )
Chris@0 184 )
Chris@0 185 6: Expr_ArrayDimFetch(
Chris@0 186 var: Expr_ConstFetch(
Chris@0 187 name: Name(
Chris@0 188 parts: array(
Chris@0 189 0: FOO
Chris@0 190 )
Chris@0 191 )
Chris@0 192 )
Chris@0 193 dim: Scalar_LNumber(
Chris@0 194 value: 0
Chris@0 195 )
Chris@0 196 )
Chris@0 197 7: Expr_ArrayDimFetch(
Chris@0 198 var: Expr_ClassConstFetch(
Chris@0 199 class: Name(
Chris@0 200 parts: array(
Chris@0 201 0: Foo
Chris@0 202 )
Chris@0 203 )
Chris@0 204 name: BAR
Chris@0 205 )
Chris@0 206 dim: Scalar_LNumber(
Chris@0 207 value: 1
Chris@0 208 )
Chris@0 209 )
Chris@0 210 8: Expr_ArrayDimFetch(
Chris@0 211 var: Expr_ArrayDimFetch(
Chris@0 212 var: Expr_ArrayDimFetch(
Chris@0 213 var: Expr_ClassConstFetch(
Chris@0 214 class: Expr_Variable(
Chris@0 215 name: foo
Chris@0 216 )
Chris@0 217 name: BAR
Chris@0 218 )
Chris@0 219 dim: Scalar_LNumber(
Chris@0 220 value: 2
Chris@0 221 )
Chris@0 222 )
Chris@0 223 dim: Scalar_LNumber(
Chris@0 224 value: 1
Chris@0 225 )
Chris@0 226 )
Chris@0 227 dim: Scalar_LNumber(
Chris@0 228 value: 0
Chris@0 229 )
Chris@0 230 )
Chris@0 231 )