Mercurial > hg > isophonics-drupal-site
comparison vendor/nikic/php-parser/test/code/parser/stmt/class/anonymous.test @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children | 5fb285c0d0e3 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:4c8ae668cc8c |
---|---|
1 Anonymous classes | |
2 ----- | |
3 <?php | |
4 | |
5 new class { | |
6 public function test() {} | |
7 }; | |
8 new class extends A implements B, C {}; | |
9 new class() { | |
10 public $foo; | |
11 }; | |
12 new class($a, $b) extends A { | |
13 use T; | |
14 }; | |
15 | |
16 class A { | |
17 public function test() { | |
18 return new class($this) extends A { | |
19 const A = 'B'; | |
20 }; | |
21 } | |
22 } | |
23 ----- | |
24 array( | |
25 0: Expr_New( | |
26 class: Stmt_Class( | |
27 flags: 0 | |
28 name: null | |
29 extends: null | |
30 implements: array( | |
31 ) | |
32 stmts: array( | |
33 0: Stmt_ClassMethod( | |
34 flags: MODIFIER_PUBLIC (1) | |
35 byRef: false | |
36 name: test | |
37 params: array( | |
38 ) | |
39 returnType: null | |
40 stmts: array( | |
41 ) | |
42 ) | |
43 ) | |
44 ) | |
45 args: array( | |
46 ) | |
47 ) | |
48 1: Expr_New( | |
49 class: Stmt_Class( | |
50 flags: 0 | |
51 name: null | |
52 extends: Name( | |
53 parts: array( | |
54 0: A | |
55 ) | |
56 ) | |
57 implements: array( | |
58 0: Name( | |
59 parts: array( | |
60 0: B | |
61 ) | |
62 ) | |
63 1: Name( | |
64 parts: array( | |
65 0: C | |
66 ) | |
67 ) | |
68 ) | |
69 stmts: array( | |
70 ) | |
71 ) | |
72 args: array( | |
73 ) | |
74 ) | |
75 2: Expr_New( | |
76 class: Stmt_Class( | |
77 flags: 0 | |
78 name: null | |
79 extends: null | |
80 implements: array( | |
81 ) | |
82 stmts: array( | |
83 0: Stmt_Property( | |
84 flags: MODIFIER_PUBLIC (1) | |
85 props: array( | |
86 0: Stmt_PropertyProperty( | |
87 name: foo | |
88 default: null | |
89 ) | |
90 ) | |
91 ) | |
92 ) | |
93 ) | |
94 args: array( | |
95 ) | |
96 ) | |
97 3: Expr_New( | |
98 class: Stmt_Class( | |
99 flags: 0 | |
100 name: null | |
101 extends: Name( | |
102 parts: array( | |
103 0: A | |
104 ) | |
105 ) | |
106 implements: array( | |
107 ) | |
108 stmts: array( | |
109 0: Stmt_TraitUse( | |
110 traits: array( | |
111 0: Name( | |
112 parts: array( | |
113 0: T | |
114 ) | |
115 ) | |
116 ) | |
117 adaptations: array( | |
118 ) | |
119 ) | |
120 ) | |
121 ) | |
122 args: array( | |
123 0: Arg( | |
124 value: Expr_Variable( | |
125 name: a | |
126 ) | |
127 byRef: false | |
128 unpack: false | |
129 ) | |
130 1: Arg( | |
131 value: Expr_Variable( | |
132 name: b | |
133 ) | |
134 byRef: false | |
135 unpack: false | |
136 ) | |
137 ) | |
138 ) | |
139 4: Stmt_Class( | |
140 flags: 0 | |
141 name: A | |
142 extends: null | |
143 implements: array( | |
144 ) | |
145 stmts: array( | |
146 0: Stmt_ClassMethod( | |
147 flags: MODIFIER_PUBLIC (1) | |
148 byRef: false | |
149 name: test | |
150 params: array( | |
151 ) | |
152 returnType: null | |
153 stmts: array( | |
154 0: Stmt_Return( | |
155 expr: Expr_New( | |
156 class: Stmt_Class( | |
157 flags: 0 | |
158 name: null | |
159 extends: Name( | |
160 parts: array( | |
161 0: A | |
162 ) | |
163 ) | |
164 implements: array( | |
165 ) | |
166 stmts: array( | |
167 0: Stmt_ClassConst( | |
168 flags: 0 | |
169 consts: array( | |
170 0: Const( | |
171 name: A | |
172 value: Scalar_String( | |
173 value: B | |
174 ) | |
175 ) | |
176 ) | |
177 ) | |
178 ) | |
179 ) | |
180 args: array( | |
181 0: Arg( | |
182 value: Expr_Variable( | |
183 name: this | |
184 ) | |
185 byRef: false | |
186 unpack: false | |
187 ) | |
188 ) | |
189 ) | |
190 ) | |
191 ) | |
192 ) | |
193 ) | |
194 ) | |
195 ) |