Make hh_single_type_check --MRO output easier to read
[hiphop-php.git] / hphp / hack / test / full_fidelity / cases / purity-v1 / parse_multiple_rx+pure.php.json.exp
blobf47b79e7f47603d6bf2a9488c29a35d690bd3a4a
2 "parse_tree":{
3 "kind":"script",
4 "script_declarations":{
5 "kind":"list",
6 "elements":[
8 "kind":"markup_section",
9 "markup_hashbang":{
10 "kind":"token",
11 "token":{
12 "kind":"hashbang",
13 "text":"",
14 "offset":0,
15 "leading_width":0,
16 "width":0,
17 "trailing_width":0,
18 "leading":[],
19 "trailing":[],
20 "line_number":1
23 "markup_suffix":{
24 "kind":"markup_suffix",
25 "markup_suffix_less_than_question":{
26 "kind":"token",
27 "token":{
28 "kind":"<?",
29 "text":"<?",
30 "offset":0,
31 "leading_width":0,
32 "width":2,
33 "trailing_width":0,
34 "leading":[],
35 "trailing":[],
36 "line_number":1
39 "markup_suffix_name":{
40 "kind":"token",
41 "token":{
42 "kind":"name",
43 "text":"hh",
44 "offset":2,
45 "leading_width":0,
46 "width":2,
47 "trailing_width":11,
48 "leading":[],
49 "trailing":[
50 {"kind":"whitespace","text":" ","offset":4,"width":1},
51 {"kind":"single_line_comment","text":"// strict","offset":5,"width":9},
52 {"kind":"end_of_line","text":"\n","offset":14,"width":1}
54 "line_number":1
60 "kind":"classish_declaration",
61 "classish_keyword":{
62 "kind":"token",
63 "token":{
64 "kind":"class",
65 "text":"class",
66 "offset":15,
67 "leading_width":1,
68 "width":5,
69 "trailing_width":1,
70 "leading":[{"kind":"end_of_line","text":"\n","offset":15,"width":1}],
71 "trailing":[{"kind":"whitespace","text":" ","offset":21,"width":1}],
72 "line_number":3
75 "classish_name":{
76 "kind":"token",
77 "token":{
78 "kind":"name",
79 "text":"C",
80 "offset":22,
81 "leading_width":0,
82 "width":1,
83 "trailing_width":1,
84 "leading":[],
85 "trailing":[{"kind":"whitespace","text":" ","offset":23,"width":1}],
86 "line_number":3
89 "classish_body":{
90 "kind":"classish_body",
91 "classish_body_left_brace":{
92 "kind":"token",
93 "token":{
94 "kind":"{",
95 "text":"{",
96 "offset":24,
97 "leading_width":0,
98 "width":1,
99 "trailing_width":1,
100 "leading":[],
101 "trailing":[{"kind":"end_of_line","text":"\n","offset":25,"width":1}],
102 "line_number":3
105 "classish_body_elements":{
106 "kind":"list",
107 "elements":[
109 "kind":"methodish_declaration",
110 "methodish_attribute":{
111 "kind":"old_attribute_specification",
112 "old_attribute_specification_left_double_angle":{
113 "kind":"token",
114 "token":{
115 "kind":"<<",
116 "text":"<<",
117 "offset":26,
118 "leading_width":2,
119 "width":2,
120 "trailing_width":0,
121 "leading":[{"kind":"whitespace","text":" ","offset":26,"width":2}],
122 "trailing":[],
123 "line_number":4
126 "old_attribute_specification_attributes":{
127 "kind":"list",
128 "elements":[
130 "kind":"list_item",
131 "list_item":{
132 "kind":"constructor_call",
133 "constructor_call_type":{
134 "kind":"token",
135 "token":{
136 "kind":"name",
137 "text":"__Rx",
138 "offset":30,
139 "leading_width":0,
140 "width":4,
141 "trailing_width":0,
142 "leading":[],
143 "trailing":[],
144 "line_number":4
148 "list_separator":{
149 "kind":"token",
150 "token":{
151 "kind":",",
152 "text":",",
153 "offset":34,
154 "leading_width":0,
155 "width":1,
156 "trailing_width":1,
157 "leading":[],
158 "trailing":[{"kind":"whitespace","text":" ","offset":35,"width":1}],
159 "line_number":4
164 "kind":"list_item",
165 "list_item":{
166 "kind":"constructor_call",
167 "constructor_call_type":{
168 "kind":"token",
169 "token":{
170 "kind":"name",
171 "text":"__Pure",
172 "offset":36,
173 "leading_width":0,
174 "width":6,
175 "trailing_width":0,
176 "leading":[],
177 "trailing":[],
178 "line_number":4
185 "old_attribute_specification_right_double_angle":{
186 "kind":"token",
187 "token":{
188 "kind":">>",
189 "text":">>",
190 "offset":42,
191 "leading_width":0,
192 "width":2,
193 "trailing_width":1,
194 "leading":[],
195 "trailing":[{"kind":"end_of_line","text":"\n","offset":44,"width":1}],
196 "line_number":4
200 "methodish_function_decl_header":{
201 "kind":"function_declaration_header",
202 "function_modifiers":{
203 "kind":"list",
204 "elements":[
206 "kind":"token",
207 "token":{
208 "kind":"public",
209 "text":"public",
210 "offset":45,
211 "leading_width":2,
212 "width":6,
213 "trailing_width":1,
214 "leading":[{"kind":"whitespace","text":" ","offset":45,"width":2}],
215 "trailing":[{"kind":"whitespace","text":" ","offset":53,"width":1}],
216 "line_number":5
221 "function_keyword":{
222 "kind":"token",
223 "token":{
224 "kind":"function",
225 "text":"function",
226 "offset":54,
227 "leading_width":0,
228 "width":8,
229 "trailing_width":1,
230 "leading":[],
231 "trailing":[{"kind":"whitespace","text":" ","offset":62,"width":1}],
232 "line_number":5
235 "function_name":{
236 "kind":"token",
237 "token":{
238 "kind":"name",
239 "text":"f",
240 "offset":63,
241 "leading_width":0,
242 "width":1,
243 "trailing_width":0,
244 "leading":[],
245 "trailing":[],
246 "line_number":5
249 "function_left_paren":{
250 "kind":"token",
251 "token":{
252 "kind":"(",
253 "text":"(",
254 "offset":64,
255 "leading_width":0,
256 "width":1,
257 "trailing_width":0,
258 "leading":[],
259 "trailing":[],
260 "line_number":5
263 "function_right_paren":{
264 "kind":"token",
265 "token":{
266 "kind":")",
267 "text":")",
268 "offset":65,
269 "leading_width":0,
270 "width":1,
271 "trailing_width":0,
272 "leading":[],
273 "trailing":[],
274 "line_number":5
277 "function_colon":{
278 "kind":"token",
279 "token":{
280 "kind":":",
281 "text":":",
282 "offset":66,
283 "leading_width":0,
284 "width":1,
285 "trailing_width":1,
286 "leading":[],
287 "trailing":[{"kind":"whitespace","text":" ","offset":67,"width":1}],
288 "line_number":5
291 "function_type":{
292 "kind":"simple_type_specifier",
293 "simple_type_specifier":{
294 "kind":"token",
295 "token":{
296 "kind":"void",
297 "text":"void",
298 "offset":68,
299 "leading_width":0,
300 "width":4,
301 "trailing_width":1,
302 "leading":[],
303 "trailing":[{"kind":"whitespace","text":" ","offset":72,"width":1}],
304 "line_number":5
309 "methodish_function_body":{
310 "kind":"compound_statement",
311 "compound_left_brace":{
312 "kind":"token",
313 "token":{
314 "kind":"{",
315 "text":"{",
316 "offset":73,
317 "leading_width":0,
318 "width":1,
319 "trailing_width":0,
320 "leading":[],
321 "trailing":[],
322 "line_number":5
325 "compound_right_brace":{
326 "kind":"token",
327 "token":{
328 "kind":"}",
329 "text":"}",
330 "offset":74,
331 "leading_width":0,
332 "width":1,
333 "trailing_width":1,
334 "leading":[],
335 "trailing":[{"kind":"end_of_line","text":"\n","offset":75,"width":1}],
336 "line_number":5
343 "classish_body_right_brace":{
344 "kind":"token",
345 "token":{
346 "kind":"}",
347 "text":"}",
348 "offset":76,
349 "leading_width":0,
350 "width":1,
351 "trailing_width":1,
352 "leading":[],
353 "trailing":[{"kind":"end_of_line","text":"\n","offset":77,"width":1}],
354 "line_number":6
360 "kind":"end_of_file",
361 "end_of_file_token":{
362 "kind":"token",
363 "token":{
364 "kind":"end_of_file",
365 "text":"",
366 "offset":78,
367 "leading_width":0,
368 "width":0,
369 "trailing_width":0,
370 "leading":[],
371 "trailing":[],
372 "line_number":7
379 "program_text":"<?hh // strict\n\nclass C {\n <<__Rx, __Pure>>\n public function f(): void {}\n}\n",
380 "version":"2021-01-05-0001"