Security update for Core, with self-updated composer
[yaffs-website] / vendor / nikic / php-parser / test / code / parser / expr / fetchAndCall / staticCall.test
1 Static calls
2 -----
3 <?php
4
5 // method name variations
6 A::b();
7 A::{'b'}();
8 A::$b();
9 A::$b['c']();
10 A::$b['c']['d']();
11
12 // array dereferencing
13 A::b()['c'];
14
15 // class name variations
16 static::b();
17 $a::b();
18 ${'a'}::b();
19 $a['b']::c();
20 -----
21 !!php5
22 array(
23     0: Expr_StaticCall(
24         class: Name(
25             parts: array(
26                 0: A
27             )
28             comments: array(
29                 0: // method name variations
30             )
31         )
32         name: b
33         args: array(
34         )
35         comments: array(
36             0: // method name variations
37         )
38     )
39     1: Expr_StaticCall(
40         class: Name(
41             parts: array(
42                 0: A
43             )
44         )
45         name: Scalar_String(
46             value: b
47         )
48         args: array(
49         )
50     )
51     2: Expr_StaticCall(
52         class: Name(
53             parts: array(
54                 0: A
55             )
56         )
57         name: Expr_Variable(
58             name: b
59         )
60         args: array(
61         )
62     )
63     3: Expr_StaticCall(
64         class: Name(
65             parts: array(
66                 0: A
67             )
68         )
69         name: Expr_ArrayDimFetch(
70             var: Expr_Variable(
71                 name: b
72             )
73             dim: Scalar_String(
74                 value: c
75             )
76         )
77         args: array(
78         )
79     )
80     4: Expr_StaticCall(
81         class: Name(
82             parts: array(
83                 0: A
84             )
85         )
86         name: Expr_ArrayDimFetch(
87             var: Expr_ArrayDimFetch(
88                 var: Expr_Variable(
89                     name: b
90                 )
91                 dim: Scalar_String(
92                     value: c
93                 )
94             )
95             dim: Scalar_String(
96                 value: d
97             )
98         )
99         args: array(
100         )
101     )
102     5: Expr_ArrayDimFetch(
103         var: Expr_StaticCall(
104             class: Name(
105                 parts: array(
106                     0: A
107                 )
108                 comments: array(
109                     0: // array dereferencing
110                 )
111             )
112             name: b
113             args: array(
114             )
115             comments: array(
116                 0: // array dereferencing
117             )
118         )
119         dim: Scalar_String(
120             value: c
121         )
122         comments: array(
123             0: // array dereferencing
124         )
125     )
126     6: Expr_StaticCall(
127         class: Name(
128             parts: array(
129                 0: static
130             )
131             comments: array(
132                 0: // class name variations
133             )
134         )
135         name: b
136         args: array(
137         )
138         comments: array(
139             0: // class name variations
140         )
141     )
142     7: Expr_StaticCall(
143         class: Expr_Variable(
144             name: a
145         )
146         name: b
147         args: array(
148         )
149     )
150     8: Expr_StaticCall(
151         class: Expr_Variable(
152             name: Scalar_String(
153                 value: a
154             )
155         )
156         name: b
157         args: array(
158         )
159     )
160     9: Expr_StaticCall(
161         class: Expr_ArrayDimFetch(
162             var: Expr_Variable(
163                 name: a
164             )
165             dim: Scalar_String(
166                 value: b
167             )
168         )
169         name: c
170         args: array(
171         )
172     )
173 )