@ant-yasa/uast-parser-php 0.2.9 → 0.2.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/dist/package.json +1 -1
  2. package/package.json +1 -1
  3. package/src/index.ts +26 -0
  4. package/src/parser.ts +1234 -0
  5. package/tests/benchmark/base/advanced.php +20 -0
  6. package/tests/benchmark/base/advanced.php.json +1269 -0
  7. package/tests/benchmark/base/basic.php +3 -0
  8. package/tests/benchmark/base/basic.php.json +292 -0
  9. package/tests/benchmark/base/closure-class.php +24 -0
  10. package/tests/benchmark/base/closure-class.php.json +1623 -0
  11. package/tests/benchmark/base/control-flow.php +37 -0
  12. package/tests/benchmark/base/control-flow.php.json +2010 -0
  13. package/tests/benchmark/base/enum-trait-adapt.php +31 -0
  14. package/tests/benchmark/base/enum-trait-adapt.php.json +965 -0
  15. package/tests/benchmark/base/exprs.php +4 -0
  16. package/tests/benchmark/base/exprs.php.json +811 -0
  17. package/tests/benchmark/base/flow-extras.php +12 -0
  18. package/tests/benchmark/base/flow-extras.php.json +897 -0
  19. package/tests/benchmark/base/function.php +7 -0
  20. package/tests/benchmark/base/function.php.json +536 -0
  21. package/tests/benchmark/base/modern-php.php +13 -0
  22. package/tests/benchmark/base/modern-php.php.json +508 -0
  23. package/tests/benchmark/base/namespace.php +5 -0
  24. package/tests/benchmark/base/namespace.php.json +307 -0
  25. package/tests/benchmark/base/new-static.php +3 -0
  26. package/tests/benchmark/base/new-static.php.json +399 -0
  27. package/tests/benchmark/base/runtime.php +13 -0
  28. package/tests/benchmark/base/runtime.php.json +1095 -0
  29. package/tests/benchmark/base/strings-casts.php +17 -0
  30. package/tests/benchmark/base/strings-casts.php.json +1357 -0
  31. package/tests/benchmark/base/structures.php +26 -0
  32. package/tests/benchmark/base/structures.php.json +1582 -0
  33. package/tests/index.ts +87 -0
@@ -0,0 +1,1582 @@
1
+ {
2
+ "type": "CompileUnit",
3
+ "body": [
4
+ {
5
+ "type": "ClassDefinition",
6
+ "id": {
7
+ "type": "Identifier",
8
+ "name": "Runner",
9
+ "_meta": {
10
+ "loc": {
11
+ "start": {
12
+ "line": 3,
13
+ "column": 11
14
+ },
15
+ "end": {
16
+ "line": 3,
17
+ "column": 17
18
+ },
19
+ "sourcefile": "structures.php"
20
+ }
21
+ },
22
+ "loc": {
23
+ "start": {
24
+ "line": 3,
25
+ "column": 11
26
+ },
27
+ "end": {
28
+ "line": 3,
29
+ "column": 17
30
+ },
31
+ "sourcefile": "structures.php"
32
+ }
33
+ },
34
+ "body": [
35
+ {
36
+ "type": "FunctionDefinition",
37
+ "id": {
38
+ "type": "Identifier",
39
+ "name": "run",
40
+ "_meta": {
41
+ "loc": {
42
+ "start": {
43
+ "line": 5,
44
+ "column": 21
45
+ },
46
+ "end": {
47
+ "line": 5,
48
+ "column": 24
49
+ },
50
+ "sourcefile": "structures.php"
51
+ }
52
+ },
53
+ "loc": {
54
+ "start": {
55
+ "line": 5,
56
+ "column": 21
57
+ },
58
+ "end": {
59
+ "line": 5,
60
+ "column": 24
61
+ },
62
+ "sourcefile": "structures.php"
63
+ }
64
+ },
65
+ "parameters": [
66
+ {
67
+ "type": "VariableDeclaration",
68
+ "id": {
69
+ "type": "Identifier",
70
+ "name": "x",
71
+ "_meta": {
72
+ "loc": {
73
+ "start": {
74
+ "line": 5,
75
+ "column": 25
76
+ },
77
+ "end": {
78
+ "line": 5,
79
+ "column": 27
80
+ },
81
+ "sourcefile": "structures.php"
82
+ }
83
+ },
84
+ "loc": {
85
+ "start": {
86
+ "line": 5,
87
+ "column": 25
88
+ },
89
+ "end": {
90
+ "line": 5,
91
+ "column": 27
92
+ },
93
+ "sourcefile": "structures.php"
94
+ }
95
+ },
96
+ "init": null,
97
+ "cloned": false,
98
+ "varType": {
99
+ "type": "DynamicType",
100
+ "id": null,
101
+ "_meta": {}
102
+ },
103
+ "_meta": {
104
+ "variadic": false,
105
+ "loc": {
106
+ "start": {
107
+ "line": 5,
108
+ "column": 25
109
+ },
110
+ "end": {
111
+ "line": 5,
112
+ "column": 27
113
+ },
114
+ "sourcefile": "structures.php"
115
+ }
116
+ },
117
+ "loc": {
118
+ "start": {
119
+ "line": 5,
120
+ "column": 25
121
+ },
122
+ "end": {
123
+ "line": 5,
124
+ "column": 27
125
+ },
126
+ "sourcefile": "structures.php"
127
+ }
128
+ }
129
+ ],
130
+ "returnType": {
131
+ "type": "DynamicType",
132
+ "id": null,
133
+ "_meta": {}
134
+ },
135
+ "body": {
136
+ "type": "ScopedStatement",
137
+ "body": [],
138
+ "id": null,
139
+ "_meta": {
140
+ "loc": {
141
+ "start": {
142
+ "line": 5,
143
+ "column": 5
144
+ },
145
+ "end": {
146
+ "line": 5,
147
+ "column": 29
148
+ },
149
+ "sourcefile": "structures.php"
150
+ }
151
+ },
152
+ "loc": {
153
+ "start": {
154
+ "line": 5,
155
+ "column": 5
156
+ },
157
+ "end": {
158
+ "line": 5,
159
+ "column": 29
160
+ },
161
+ "sourcefile": "structures.php"
162
+ }
163
+ },
164
+ "modifiers": [
165
+ "public"
166
+ ],
167
+ "_meta": {
168
+ "loc": {
169
+ "start": {
170
+ "line": 5,
171
+ "column": 5
172
+ },
173
+ "end": {
174
+ "line": 5,
175
+ "column": 29
176
+ },
177
+ "sourcefile": "structures.php"
178
+ }
179
+ },
180
+ "loc": {
181
+ "start": {
182
+ "line": 5,
183
+ "column": 5
184
+ },
185
+ "end": {
186
+ "line": 5,
187
+ "column": 29
188
+ },
189
+ "sourcefile": "structures.php"
190
+ }
191
+ }
192
+ ],
193
+ "supers": [],
194
+ "_meta": {
195
+ "kind": "interface",
196
+ "loc": {
197
+ "start": {
198
+ "line": 3,
199
+ "column": 1
200
+ },
201
+ "end": {
202
+ "line": 6,
203
+ "column": 2
204
+ },
205
+ "sourcefile": "structures.php"
206
+ }
207
+ },
208
+ "loc": {
209
+ "start": {
210
+ "line": 3,
211
+ "column": 1
212
+ },
213
+ "end": {
214
+ "line": 6,
215
+ "column": 2
216
+ },
217
+ "sourcefile": "structures.php"
218
+ }
219
+ },
220
+ {
221
+ "type": "ClassDefinition",
222
+ "id": {
223
+ "type": "Identifier",
224
+ "name": "HelperTrait",
225
+ "_meta": {
226
+ "loc": {
227
+ "start": {
228
+ "line": 8,
229
+ "column": 7
230
+ },
231
+ "end": {
232
+ "line": 8,
233
+ "column": 18
234
+ },
235
+ "sourcefile": "structures.php"
236
+ }
237
+ },
238
+ "loc": {
239
+ "start": {
240
+ "line": 8,
241
+ "column": 7
242
+ },
243
+ "end": {
244
+ "line": 8,
245
+ "column": 18
246
+ },
247
+ "sourcefile": "structures.php"
248
+ }
249
+ },
250
+ "body": [
251
+ {
252
+ "type": "FunctionDefinition",
253
+ "id": {
254
+ "type": "Identifier",
255
+ "name": "helper",
256
+ "_meta": {
257
+ "loc": {
258
+ "start": {
259
+ "line": 10,
260
+ "column": 21
261
+ },
262
+ "end": {
263
+ "line": 10,
264
+ "column": 27
265
+ },
266
+ "sourcefile": "structures.php"
267
+ }
268
+ },
269
+ "loc": {
270
+ "start": {
271
+ "line": 10,
272
+ "column": 21
273
+ },
274
+ "end": {
275
+ "line": 10,
276
+ "column": 27
277
+ },
278
+ "sourcefile": "structures.php"
279
+ }
280
+ },
281
+ "parameters": [],
282
+ "returnType": {
283
+ "type": "DynamicType",
284
+ "id": null,
285
+ "_meta": {}
286
+ },
287
+ "body": {
288
+ "type": "ScopedStatement",
289
+ "body": [
290
+ {
291
+ "type": "ReturnStatement",
292
+ "argument": {
293
+ "type": "Literal",
294
+ "value": 1,
295
+ "literalType": "number",
296
+ "_meta": {
297
+ "loc": {
298
+ "start": {
299
+ "line": 12,
300
+ "column": 16
301
+ },
302
+ "end": {
303
+ "line": 12,
304
+ "column": 17
305
+ },
306
+ "sourcefile": "structures.php"
307
+ }
308
+ },
309
+ "loc": {
310
+ "start": {
311
+ "line": 12,
312
+ "column": 16
313
+ },
314
+ "end": {
315
+ "line": 12,
316
+ "column": 17
317
+ },
318
+ "sourcefile": "structures.php"
319
+ }
320
+ },
321
+ "isYield": false,
322
+ "_meta": {
323
+ "loc": {
324
+ "start": {
325
+ "line": 12,
326
+ "column": 9
327
+ },
328
+ "end": {
329
+ "line": 12,
330
+ "column": 18
331
+ },
332
+ "sourcefile": "structures.php"
333
+ }
334
+ },
335
+ "loc": {
336
+ "start": {
337
+ "line": 12,
338
+ "column": 9
339
+ },
340
+ "end": {
341
+ "line": 12,
342
+ "column": 18
343
+ },
344
+ "sourcefile": "structures.php"
345
+ }
346
+ }
347
+ ],
348
+ "id": null,
349
+ "_meta": {
350
+ "loc": {
351
+ "start": {
352
+ "line": 11,
353
+ "column": 5
354
+ },
355
+ "end": {
356
+ "line": 13,
357
+ "column": 6
358
+ },
359
+ "sourcefile": "structures.php"
360
+ }
361
+ },
362
+ "loc": {
363
+ "start": {
364
+ "line": 11,
365
+ "column": 5
366
+ },
367
+ "end": {
368
+ "line": 13,
369
+ "column": 6
370
+ },
371
+ "sourcefile": "structures.php"
372
+ }
373
+ },
374
+ "modifiers": [
375
+ "public"
376
+ ],
377
+ "_meta": {
378
+ "loc": {
379
+ "start": {
380
+ "line": 10,
381
+ "column": 5
382
+ },
383
+ "end": {
384
+ "line": 13,
385
+ "column": 6
386
+ },
387
+ "sourcefile": "structures.php"
388
+ }
389
+ },
390
+ "loc": {
391
+ "start": {
392
+ "line": 10,
393
+ "column": 5
394
+ },
395
+ "end": {
396
+ "line": 13,
397
+ "column": 6
398
+ },
399
+ "sourcefile": "structures.php"
400
+ }
401
+ }
402
+ ],
403
+ "supers": [],
404
+ "_meta": {
405
+ "kind": "trait",
406
+ "loc": {
407
+ "start": {
408
+ "line": 8,
409
+ "column": 1
410
+ },
411
+ "end": {
412
+ "line": 14,
413
+ "column": 2
414
+ },
415
+ "sourcefile": "structures.php"
416
+ }
417
+ },
418
+ "loc": {
419
+ "start": {
420
+ "line": 8,
421
+ "column": 1
422
+ },
423
+ "end": {
424
+ "line": 14,
425
+ "column": 2
426
+ },
427
+ "sourcefile": "structures.php"
428
+ }
429
+ },
430
+ {
431
+ "type": "FunctionDefinition",
432
+ "id": {
433
+ "type": "Identifier",
434
+ "name": "demo",
435
+ "_meta": {
436
+ "loc": {
437
+ "start": {
438
+ "line": 16,
439
+ "column": 10
440
+ },
441
+ "end": {
442
+ "line": 16,
443
+ "column": 14
444
+ },
445
+ "sourcefile": "structures.php"
446
+ }
447
+ },
448
+ "loc": {
449
+ "start": {
450
+ "line": 16,
451
+ "column": 10
452
+ },
453
+ "end": {
454
+ "line": 16,
455
+ "column": 14
456
+ },
457
+ "sourcefile": "structures.php"
458
+ }
459
+ },
460
+ "parameters": [],
461
+ "returnType": {
462
+ "type": "DynamicType",
463
+ "id": null,
464
+ "_meta": {}
465
+ },
466
+ "body": {
467
+ "type": "ScopedStatement",
468
+ "body": [
469
+ {
470
+ "type": "VariableDeclaration",
471
+ "id": {
472
+ "type": "Identifier",
473
+ "name": "a",
474
+ "_meta": {
475
+ "loc": {
476
+ "start": {
477
+ "line": 18,
478
+ "column": 12
479
+ },
480
+ "end": {
481
+ "line": 18,
482
+ "column": 14
483
+ },
484
+ "sourcefile": "structures.php"
485
+ }
486
+ },
487
+ "loc": {
488
+ "start": {
489
+ "line": 18,
490
+ "column": 12
491
+ },
492
+ "end": {
493
+ "line": 18,
494
+ "column": 14
495
+ },
496
+ "sourcefile": "structures.php"
497
+ }
498
+ },
499
+ "init": null,
500
+ "cloned": false,
501
+ "varType": {
502
+ "type": "DynamicType",
503
+ "id": null,
504
+ "_meta": {}
505
+ },
506
+ "_meta": {
507
+ "storage": "global",
508
+ "loc": {
509
+ "start": {
510
+ "line": 18,
511
+ "column": 12
512
+ },
513
+ "end": {
514
+ "line": 18,
515
+ "column": 14
516
+ },
517
+ "sourcefile": "structures.php"
518
+ }
519
+ },
520
+ "loc": {
521
+ "start": {
522
+ "line": 18,
523
+ "column": 12
524
+ },
525
+ "end": {
526
+ "line": 18,
527
+ "column": 14
528
+ },
529
+ "sourcefile": "structures.php"
530
+ }
531
+ },
532
+ {
533
+ "type": "VariableDeclaration",
534
+ "id": {
535
+ "type": "Identifier",
536
+ "name": "b",
537
+ "_meta": {
538
+ "loc": {
539
+ "start": {
540
+ "line": 18,
541
+ "column": 16
542
+ },
543
+ "end": {
544
+ "line": 18,
545
+ "column": 18
546
+ },
547
+ "sourcefile": "structures.php"
548
+ }
549
+ },
550
+ "loc": {
551
+ "start": {
552
+ "line": 18,
553
+ "column": 16
554
+ },
555
+ "end": {
556
+ "line": 18,
557
+ "column": 18
558
+ },
559
+ "sourcefile": "structures.php"
560
+ }
561
+ },
562
+ "init": null,
563
+ "cloned": false,
564
+ "varType": {
565
+ "type": "DynamicType",
566
+ "id": null,
567
+ "_meta": {}
568
+ },
569
+ "_meta": {
570
+ "storage": "global",
571
+ "loc": {
572
+ "start": {
573
+ "line": 18,
574
+ "column": 16
575
+ },
576
+ "end": {
577
+ "line": 18,
578
+ "column": 18
579
+ },
580
+ "sourcefile": "structures.php"
581
+ }
582
+ },
583
+ "loc": {
584
+ "start": {
585
+ "line": 18,
586
+ "column": 16
587
+ },
588
+ "end": {
589
+ "line": 18,
590
+ "column": 18
591
+ },
592
+ "sourcefile": "structures.php"
593
+ }
594
+ },
595
+ {
596
+ "type": "VariableDeclaration",
597
+ "id": {
598
+ "type": "Identifier",
599
+ "name": "cache",
600
+ "_meta": {
601
+ "loc": {
602
+ "start": {
603
+ "line": 19,
604
+ "column": 12
605
+ },
606
+ "end": {
607
+ "line": 19,
608
+ "column": 18
609
+ },
610
+ "sourcefile": "structures.php"
611
+ }
612
+ },
613
+ "loc": {
614
+ "start": {
615
+ "line": 19,
616
+ "column": 12
617
+ },
618
+ "end": {
619
+ "line": 19,
620
+ "column": 18
621
+ },
622
+ "sourcefile": "structures.php"
623
+ }
624
+ },
625
+ "init": {
626
+ "type": "Literal",
627
+ "value": 1,
628
+ "literalType": "number",
629
+ "_meta": {
630
+ "loc": {
631
+ "start": {
632
+ "line": 19,
633
+ "column": 21
634
+ },
635
+ "end": {
636
+ "line": 19,
637
+ "column": 22
638
+ },
639
+ "sourcefile": "structures.php"
640
+ }
641
+ },
642
+ "loc": {
643
+ "start": {
644
+ "line": 19,
645
+ "column": 21
646
+ },
647
+ "end": {
648
+ "line": 19,
649
+ "column": 22
650
+ },
651
+ "sourcefile": "structures.php"
652
+ }
653
+ },
654
+ "cloned": false,
655
+ "varType": {
656
+ "type": "DynamicType",
657
+ "id": null,
658
+ "_meta": {}
659
+ },
660
+ "_meta": {
661
+ "storage": "static",
662
+ "loc": {
663
+ "start": {
664
+ "line": 19,
665
+ "column": 12
666
+ },
667
+ "end": {
668
+ "line": 19,
669
+ "column": 22
670
+ },
671
+ "sourcefile": "structures.php"
672
+ }
673
+ },
674
+ "loc": {
675
+ "start": {
676
+ "line": 19,
677
+ "column": 12
678
+ },
679
+ "end": {
680
+ "line": 19,
681
+ "column": 22
682
+ },
683
+ "sourcefile": "structures.php"
684
+ }
685
+ },
686
+ {
687
+ "type": "ExpressionStatement",
688
+ "expression": {
689
+ "type": "CallExpression",
690
+ "callee": {
691
+ "type": "Identifier",
692
+ "name": "unset",
693
+ "_meta": {}
694
+ },
695
+ "arguments": [
696
+ {
697
+ "type": "Identifier",
698
+ "name": "a",
699
+ "_meta": {
700
+ "loc": {
701
+ "start": {
702
+ "line": 20,
703
+ "column": 11
704
+ },
705
+ "end": {
706
+ "line": 20,
707
+ "column": 13
708
+ },
709
+ "sourcefile": "structures.php"
710
+ }
711
+ },
712
+ "loc": {
713
+ "start": {
714
+ "line": 20,
715
+ "column": 11
716
+ },
717
+ "end": {
718
+ "line": 20,
719
+ "column": 13
720
+ },
721
+ "sourcefile": "structures.php"
722
+ }
723
+ },
724
+ {
725
+ "type": "Identifier",
726
+ "name": "b",
727
+ "_meta": {
728
+ "loc": {
729
+ "start": {
730
+ "line": 20,
731
+ "column": 15
732
+ },
733
+ "end": {
734
+ "line": 20,
735
+ "column": 17
736
+ },
737
+ "sourcefile": "structures.php"
738
+ }
739
+ },
740
+ "loc": {
741
+ "start": {
742
+ "line": 20,
743
+ "column": 15
744
+ },
745
+ "end": {
746
+ "line": 20,
747
+ "column": 17
748
+ },
749
+ "sourcefile": "structures.php"
750
+ }
751
+ }
752
+ ],
753
+ "_meta": {
754
+ "loc": {
755
+ "start": {
756
+ "line": 20,
757
+ "column": 5
758
+ },
759
+ "end": {
760
+ "line": 20,
761
+ "column": 19
762
+ },
763
+ "sourcefile": "structures.php"
764
+ }
765
+ },
766
+ "loc": {
767
+ "start": {
768
+ "line": 20,
769
+ "column": 5
770
+ },
771
+ "end": {
772
+ "line": 20,
773
+ "column": 19
774
+ },
775
+ "sourcefile": "structures.php"
776
+ }
777
+ },
778
+ "_meta": {
779
+ "loc": {
780
+ "start": {
781
+ "line": 20,
782
+ "column": 5
783
+ },
784
+ "end": {
785
+ "line": 20,
786
+ "column": 19
787
+ },
788
+ "sourcefile": "structures.php"
789
+ }
790
+ },
791
+ "loc": {
792
+ "start": {
793
+ "line": 20,
794
+ "column": 5
795
+ },
796
+ "end": {
797
+ "line": 20,
798
+ "column": 19
799
+ },
800
+ "sourcefile": "structures.php"
801
+ }
802
+ },
803
+ {
804
+ "type": "ExpressionStatement",
805
+ "expression": {
806
+ "type": "AssignmentExpression",
807
+ "left": {
808
+ "type": "TupleExpression",
809
+ "elements": [
810
+ {
811
+ "type": "Identifier",
812
+ "name": "x",
813
+ "_meta": {
814
+ "loc": {
815
+ "start": {
816
+ "line": 22,
817
+ "column": 6
818
+ },
819
+ "end": {
820
+ "line": 22,
821
+ "column": 8
822
+ },
823
+ "sourcefile": "structures.php"
824
+ }
825
+ },
826
+ "loc": {
827
+ "start": {
828
+ "line": 22,
829
+ "column": 6
830
+ },
831
+ "end": {
832
+ "line": 22,
833
+ "column": 8
834
+ },
835
+ "sourcefile": "structures.php"
836
+ }
837
+ },
838
+ {
839
+ "type": "Identifier",
840
+ "name": "y",
841
+ "_meta": {
842
+ "loc": {
843
+ "start": {
844
+ "line": 22,
845
+ "column": 10
846
+ },
847
+ "end": {
848
+ "line": 22,
849
+ "column": 12
850
+ },
851
+ "sourcefile": "structures.php"
852
+ }
853
+ },
854
+ "loc": {
855
+ "start": {
856
+ "line": 22,
857
+ "column": 10
858
+ },
859
+ "end": {
860
+ "line": 22,
861
+ "column": 12
862
+ },
863
+ "sourcefile": "structures.php"
864
+ }
865
+ }
866
+ ],
867
+ "_meta": {
868
+ "loc": {
869
+ "start": {
870
+ "line": 22,
871
+ "column": 5
872
+ },
873
+ "end": {
874
+ "line": 22,
875
+ "column": 13
876
+ },
877
+ "sourcefile": "structures.php"
878
+ }
879
+ },
880
+ "loc": {
881
+ "start": {
882
+ "line": 22,
883
+ "column": 5
884
+ },
885
+ "end": {
886
+ "line": 22,
887
+ "column": 13
888
+ },
889
+ "sourcefile": "structures.php"
890
+ }
891
+ },
892
+ "right": {
893
+ "type": "CallExpression",
894
+ "callee": {
895
+ "type": "Identifier",
896
+ "name": "foo",
897
+ "_meta": {
898
+ "loc": {
899
+ "start": {
900
+ "line": 22,
901
+ "column": 16
902
+ },
903
+ "end": {
904
+ "line": 22,
905
+ "column": 19
906
+ },
907
+ "sourcefile": "structures.php"
908
+ }
909
+ },
910
+ "loc": {
911
+ "start": {
912
+ "line": 22,
913
+ "column": 16
914
+ },
915
+ "end": {
916
+ "line": 22,
917
+ "column": 19
918
+ },
919
+ "sourcefile": "structures.php"
920
+ }
921
+ },
922
+ "arguments": [],
923
+ "_meta": {
924
+ "loc": {
925
+ "start": {
926
+ "line": 22,
927
+ "column": 16
928
+ },
929
+ "end": {
930
+ "line": 22,
931
+ "column": 21
932
+ },
933
+ "sourcefile": "structures.php"
934
+ }
935
+ },
936
+ "loc": {
937
+ "start": {
938
+ "line": 22,
939
+ "column": 16
940
+ },
941
+ "end": {
942
+ "line": 22,
943
+ "column": 21
944
+ },
945
+ "sourcefile": "structures.php"
946
+ }
947
+ },
948
+ "operator": "=",
949
+ "cloned": false,
950
+ "_meta": {
951
+ "loc": {
952
+ "start": {
953
+ "line": 22,
954
+ "column": 5
955
+ },
956
+ "end": {
957
+ "line": 22,
958
+ "column": 21
959
+ },
960
+ "sourcefile": "structures.php"
961
+ }
962
+ },
963
+ "loc": {
964
+ "start": {
965
+ "line": 22,
966
+ "column": 5
967
+ },
968
+ "end": {
969
+ "line": 22,
970
+ "column": 21
971
+ },
972
+ "sourcefile": "structures.php"
973
+ }
974
+ },
975
+ "_meta": {
976
+ "loc": {
977
+ "start": {
978
+ "line": 22,
979
+ "column": 5
980
+ },
981
+ "end": {
982
+ "line": 22,
983
+ "column": 22
984
+ },
985
+ "sourcefile": "structures.php"
986
+ }
987
+ },
988
+ "loc": {
989
+ "start": {
990
+ "line": 22,
991
+ "column": 5
992
+ },
993
+ "end": {
994
+ "line": 22,
995
+ "column": 22
996
+ },
997
+ "sourcefile": "structures.php"
998
+ }
999
+ },
1000
+ {
1001
+ "type": "ExpressionStatement",
1002
+ "expression": {
1003
+ "type": "AssignmentExpression",
1004
+ "left": {
1005
+ "type": "TupleExpression",
1006
+ "elements": [
1007
+ {
1008
+ "type": "Identifier",
1009
+ "name": "m",
1010
+ "_meta": {
1011
+ "loc": {
1012
+ "start": {
1013
+ "line": 23,
1014
+ "column": 10
1015
+ },
1016
+ "end": {
1017
+ "line": 23,
1018
+ "column": 12
1019
+ },
1020
+ "sourcefile": "structures.php"
1021
+ }
1022
+ },
1023
+ "loc": {
1024
+ "start": {
1025
+ "line": 23,
1026
+ "column": 10
1027
+ },
1028
+ "end": {
1029
+ "line": 23,
1030
+ "column": 12
1031
+ },
1032
+ "sourcefile": "structures.php"
1033
+ }
1034
+ },
1035
+ {
1036
+ "type": "Identifier",
1037
+ "name": "n",
1038
+ "_meta": {
1039
+ "loc": {
1040
+ "start": {
1041
+ "line": 23,
1042
+ "column": 14
1043
+ },
1044
+ "end": {
1045
+ "line": 23,
1046
+ "column": 16
1047
+ },
1048
+ "sourcefile": "structures.php"
1049
+ }
1050
+ },
1051
+ "loc": {
1052
+ "start": {
1053
+ "line": 23,
1054
+ "column": 14
1055
+ },
1056
+ "end": {
1057
+ "line": 23,
1058
+ "column": 16
1059
+ },
1060
+ "sourcefile": "structures.php"
1061
+ }
1062
+ }
1063
+ ],
1064
+ "_meta": {
1065
+ "loc": {
1066
+ "start": {
1067
+ "line": 23,
1068
+ "column": 5
1069
+ },
1070
+ "end": {
1071
+ "line": 23,
1072
+ "column": 17
1073
+ },
1074
+ "sourcefile": "structures.php"
1075
+ }
1076
+ },
1077
+ "loc": {
1078
+ "start": {
1079
+ "line": 23,
1080
+ "column": 5
1081
+ },
1082
+ "end": {
1083
+ "line": 23,
1084
+ "column": 17
1085
+ },
1086
+ "sourcefile": "structures.php"
1087
+ }
1088
+ },
1089
+ "right": {
1090
+ "type": "CallExpression",
1091
+ "callee": {
1092
+ "type": "Identifier",
1093
+ "name": "bar",
1094
+ "_meta": {
1095
+ "loc": {
1096
+ "start": {
1097
+ "line": 23,
1098
+ "column": 20
1099
+ },
1100
+ "end": {
1101
+ "line": 23,
1102
+ "column": 23
1103
+ },
1104
+ "sourcefile": "structures.php"
1105
+ }
1106
+ },
1107
+ "loc": {
1108
+ "start": {
1109
+ "line": 23,
1110
+ "column": 20
1111
+ },
1112
+ "end": {
1113
+ "line": 23,
1114
+ "column": 23
1115
+ },
1116
+ "sourcefile": "structures.php"
1117
+ }
1118
+ },
1119
+ "arguments": [],
1120
+ "_meta": {
1121
+ "loc": {
1122
+ "start": {
1123
+ "line": 23,
1124
+ "column": 20
1125
+ },
1126
+ "end": {
1127
+ "line": 23,
1128
+ "column": 25
1129
+ },
1130
+ "sourcefile": "structures.php"
1131
+ }
1132
+ },
1133
+ "loc": {
1134
+ "start": {
1135
+ "line": 23,
1136
+ "column": 20
1137
+ },
1138
+ "end": {
1139
+ "line": 23,
1140
+ "column": 25
1141
+ },
1142
+ "sourcefile": "structures.php"
1143
+ }
1144
+ },
1145
+ "operator": "=",
1146
+ "cloned": false,
1147
+ "_meta": {
1148
+ "loc": {
1149
+ "start": {
1150
+ "line": 23,
1151
+ "column": 5
1152
+ },
1153
+ "end": {
1154
+ "line": 23,
1155
+ "column": 25
1156
+ },
1157
+ "sourcefile": "structures.php"
1158
+ }
1159
+ },
1160
+ "loc": {
1161
+ "start": {
1162
+ "line": 23,
1163
+ "column": 5
1164
+ },
1165
+ "end": {
1166
+ "line": 23,
1167
+ "column": 25
1168
+ },
1169
+ "sourcefile": "structures.php"
1170
+ }
1171
+ },
1172
+ "_meta": {
1173
+ "loc": {
1174
+ "start": {
1175
+ "line": 23,
1176
+ "column": 5
1177
+ },
1178
+ "end": {
1179
+ "line": 23,
1180
+ "column": 26
1181
+ },
1182
+ "sourcefile": "structures.php"
1183
+ }
1184
+ },
1185
+ "loc": {
1186
+ "start": {
1187
+ "line": 23,
1188
+ "column": 5
1189
+ },
1190
+ "end": {
1191
+ "line": 23,
1192
+ "column": 26
1193
+ },
1194
+ "sourcefile": "structures.php"
1195
+ }
1196
+ },
1197
+ {
1198
+ "type": "ReturnStatement",
1199
+ "argument": {
1200
+ "type": "ObjectExpression",
1201
+ "properties": [
1202
+ {
1203
+ "type": "ObjectProperty",
1204
+ "key": {
1205
+ "type": "Literal",
1206
+ "value": null,
1207
+ "literalType": "null",
1208
+ "_meta": {}
1209
+ },
1210
+ "value": {
1211
+ "type": "Identifier",
1212
+ "name": "x",
1213
+ "_meta": {
1214
+ "loc": {
1215
+ "start": {
1216
+ "line": 25,
1217
+ "column": 13
1218
+ },
1219
+ "end": {
1220
+ "line": 25,
1221
+ "column": 15
1222
+ },
1223
+ "sourcefile": "structures.php"
1224
+ }
1225
+ },
1226
+ "loc": {
1227
+ "start": {
1228
+ "line": 25,
1229
+ "column": 13
1230
+ },
1231
+ "end": {
1232
+ "line": 25,
1233
+ "column": 15
1234
+ },
1235
+ "sourcefile": "structures.php"
1236
+ }
1237
+ },
1238
+ "_meta": {
1239
+ "loc": {
1240
+ "start": {
1241
+ "line": 25,
1242
+ "column": 13
1243
+ },
1244
+ "end": {
1245
+ "line": 25,
1246
+ "column": 15
1247
+ },
1248
+ "sourcefile": "structures.php"
1249
+ }
1250
+ },
1251
+ "loc": {
1252
+ "start": {
1253
+ "line": 25,
1254
+ "column": 13
1255
+ },
1256
+ "end": {
1257
+ "line": 25,
1258
+ "column": 15
1259
+ },
1260
+ "sourcefile": "structures.php"
1261
+ }
1262
+ },
1263
+ {
1264
+ "type": "ObjectProperty",
1265
+ "key": {
1266
+ "type": "Literal",
1267
+ "value": null,
1268
+ "literalType": "null",
1269
+ "_meta": {}
1270
+ },
1271
+ "value": {
1272
+ "type": "Identifier",
1273
+ "name": "y",
1274
+ "_meta": {
1275
+ "loc": {
1276
+ "start": {
1277
+ "line": 25,
1278
+ "column": 17
1279
+ },
1280
+ "end": {
1281
+ "line": 25,
1282
+ "column": 19
1283
+ },
1284
+ "sourcefile": "structures.php"
1285
+ }
1286
+ },
1287
+ "loc": {
1288
+ "start": {
1289
+ "line": 25,
1290
+ "column": 17
1291
+ },
1292
+ "end": {
1293
+ "line": 25,
1294
+ "column": 19
1295
+ },
1296
+ "sourcefile": "structures.php"
1297
+ }
1298
+ },
1299
+ "_meta": {
1300
+ "loc": {
1301
+ "start": {
1302
+ "line": 25,
1303
+ "column": 17
1304
+ },
1305
+ "end": {
1306
+ "line": 25,
1307
+ "column": 19
1308
+ },
1309
+ "sourcefile": "structures.php"
1310
+ }
1311
+ },
1312
+ "loc": {
1313
+ "start": {
1314
+ "line": 25,
1315
+ "column": 17
1316
+ },
1317
+ "end": {
1318
+ "line": 25,
1319
+ "column": 19
1320
+ },
1321
+ "sourcefile": "structures.php"
1322
+ }
1323
+ },
1324
+ {
1325
+ "type": "ObjectProperty",
1326
+ "key": {
1327
+ "type": "Literal",
1328
+ "value": null,
1329
+ "literalType": "null",
1330
+ "_meta": {}
1331
+ },
1332
+ "value": {
1333
+ "type": "Identifier",
1334
+ "name": "m",
1335
+ "_meta": {
1336
+ "loc": {
1337
+ "start": {
1338
+ "line": 25,
1339
+ "column": 21
1340
+ },
1341
+ "end": {
1342
+ "line": 25,
1343
+ "column": 23
1344
+ },
1345
+ "sourcefile": "structures.php"
1346
+ }
1347
+ },
1348
+ "loc": {
1349
+ "start": {
1350
+ "line": 25,
1351
+ "column": 21
1352
+ },
1353
+ "end": {
1354
+ "line": 25,
1355
+ "column": 23
1356
+ },
1357
+ "sourcefile": "structures.php"
1358
+ }
1359
+ },
1360
+ "_meta": {
1361
+ "loc": {
1362
+ "start": {
1363
+ "line": 25,
1364
+ "column": 21
1365
+ },
1366
+ "end": {
1367
+ "line": 25,
1368
+ "column": 23
1369
+ },
1370
+ "sourcefile": "structures.php"
1371
+ }
1372
+ },
1373
+ "loc": {
1374
+ "start": {
1375
+ "line": 25,
1376
+ "column": 21
1377
+ },
1378
+ "end": {
1379
+ "line": 25,
1380
+ "column": 23
1381
+ },
1382
+ "sourcefile": "structures.php"
1383
+ }
1384
+ },
1385
+ {
1386
+ "type": "ObjectProperty",
1387
+ "key": {
1388
+ "type": "Literal",
1389
+ "value": null,
1390
+ "literalType": "null",
1391
+ "_meta": {}
1392
+ },
1393
+ "value": {
1394
+ "type": "Identifier",
1395
+ "name": "n",
1396
+ "_meta": {
1397
+ "loc": {
1398
+ "start": {
1399
+ "line": 25,
1400
+ "column": 25
1401
+ },
1402
+ "end": {
1403
+ "line": 25,
1404
+ "column": 27
1405
+ },
1406
+ "sourcefile": "structures.php"
1407
+ }
1408
+ },
1409
+ "loc": {
1410
+ "start": {
1411
+ "line": 25,
1412
+ "column": 25
1413
+ },
1414
+ "end": {
1415
+ "line": 25,
1416
+ "column": 27
1417
+ },
1418
+ "sourcefile": "structures.php"
1419
+ }
1420
+ },
1421
+ "_meta": {
1422
+ "loc": {
1423
+ "start": {
1424
+ "line": 25,
1425
+ "column": 25
1426
+ },
1427
+ "end": {
1428
+ "line": 25,
1429
+ "column": 27
1430
+ },
1431
+ "sourcefile": "structures.php"
1432
+ }
1433
+ },
1434
+ "loc": {
1435
+ "start": {
1436
+ "line": 25,
1437
+ "column": 25
1438
+ },
1439
+ "end": {
1440
+ "line": 25,
1441
+ "column": 27
1442
+ },
1443
+ "sourcefile": "structures.php"
1444
+ }
1445
+ }
1446
+ ],
1447
+ "id": null,
1448
+ "_meta": {
1449
+ "isArray": true,
1450
+ "loc": {
1451
+ "start": {
1452
+ "line": 25,
1453
+ "column": 12
1454
+ },
1455
+ "end": {
1456
+ "line": 25,
1457
+ "column": 28
1458
+ },
1459
+ "sourcefile": "structures.php"
1460
+ }
1461
+ },
1462
+ "loc": {
1463
+ "start": {
1464
+ "line": 25,
1465
+ "column": 12
1466
+ },
1467
+ "end": {
1468
+ "line": 25,
1469
+ "column": 28
1470
+ },
1471
+ "sourcefile": "structures.php"
1472
+ }
1473
+ },
1474
+ "isYield": false,
1475
+ "_meta": {
1476
+ "loc": {
1477
+ "start": {
1478
+ "line": 25,
1479
+ "column": 5
1480
+ },
1481
+ "end": {
1482
+ "line": 25,
1483
+ "column": 29
1484
+ },
1485
+ "sourcefile": "structures.php"
1486
+ }
1487
+ },
1488
+ "loc": {
1489
+ "start": {
1490
+ "line": 25,
1491
+ "column": 5
1492
+ },
1493
+ "end": {
1494
+ "line": 25,
1495
+ "column": 29
1496
+ },
1497
+ "sourcefile": "structures.php"
1498
+ }
1499
+ }
1500
+ ],
1501
+ "id": null,
1502
+ "_meta": {
1503
+ "loc": {
1504
+ "start": {
1505
+ "line": 17,
1506
+ "column": 1
1507
+ },
1508
+ "end": {
1509
+ "line": 26,
1510
+ "column": 2
1511
+ },
1512
+ "sourcefile": "structures.php"
1513
+ }
1514
+ },
1515
+ "loc": {
1516
+ "start": {
1517
+ "line": 17,
1518
+ "column": 1
1519
+ },
1520
+ "end": {
1521
+ "line": 26,
1522
+ "column": 2
1523
+ },
1524
+ "sourcefile": "structures.php"
1525
+ }
1526
+ },
1527
+ "modifiers": [],
1528
+ "_meta": {
1529
+ "loc": {
1530
+ "start": {
1531
+ "line": 16,
1532
+ "column": 1
1533
+ },
1534
+ "end": {
1535
+ "line": 26,
1536
+ "column": 2
1537
+ },
1538
+ "sourcefile": "structures.php"
1539
+ }
1540
+ },
1541
+ "loc": {
1542
+ "start": {
1543
+ "line": 16,
1544
+ "column": 1
1545
+ },
1546
+ "end": {
1547
+ "line": 26,
1548
+ "column": 2
1549
+ },
1550
+ "sourcefile": "structures.php"
1551
+ }
1552
+ }
1553
+ ],
1554
+ "language": "php",
1555
+ "languageVersion": null,
1556
+ "uri": "structures.php",
1557
+ "version": "0.0.0",
1558
+ "_meta": {
1559
+ "loc": {
1560
+ "start": {
1561
+ "line": 1,
1562
+ "column": 1
1563
+ },
1564
+ "end": {
1565
+ "line": 27,
1566
+ "column": 1
1567
+ },
1568
+ "sourcefile": "structures.php"
1569
+ }
1570
+ },
1571
+ "loc": {
1572
+ "start": {
1573
+ "line": 1,
1574
+ "column": 1
1575
+ },
1576
+ "end": {
1577
+ "line": 27,
1578
+ "column": 1
1579
+ },
1580
+ "sourcefile": "structures.php"
1581
+ }
1582
+ }