• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ImportDeclaration",
6      "source": {
7        "type": "StringLiteral",
8        "value": "dynamic_import_tests",
9        "loc": {
10          "start": {
11            "line": 20,
12            "column": 19,
13            "program": "dynamic_call.ets"
14          },
15          "end": {
16            "line": 20,
17            "column": 41,
18            "program": "dynamic_call.ets"
19          }
20        }
21      },
22      "specifiers": [
23        {
24          "type": "ImportSpecifier",
25          "local": {
26            "type": "Identifier",
27            "name": "A",
28            "decorators": [],
29            "loc": {
30              "start": {
31                "line": 20,
32                "column": 10,
33                "program": "dynamic_call.ets"
34              },
35              "end": {
36                "line": 20,
37                "column": 11,
38                "program": "dynamic_call.ets"
39              }
40            }
41          },
42          "imported": {
43            "type": "Identifier",
44            "name": "A",
45            "decorators": [],
46            "loc": {
47              "start": {
48                "line": 20,
49                "column": 10,
50                "program": "dynamic_call.ets"
51              },
52              "end": {
53                "line": 20,
54                "column": 11,
55                "program": "dynamic_call.ets"
56              }
57            }
58          },
59          "loc": {
60            "start": {
61              "line": 20,
62              "column": 10,
63              "program": "dynamic_call.ets"
64            },
65            "end": {
66              "line": 20,
67              "column": 11,
68              "program": "dynamic_call.ets"
69            }
70          }
71        }
72      ],
73      "loc": {
74        "start": {
75          "line": 20,
76          "column": 1,
77          "program": "dynamic_call.ets"
78        },
79        "end": {
80          "line": 20,
81          "column": 41,
82          "program": "dynamic_call.ets"
83        }
84      }
85    },
86    {
87      "type": "ClassDeclaration",
88      "definition": {
89        "id": {
90          "type": "Identifier",
91          "name": "ETSGLOBAL",
92          "decorators": [],
93          "loc": {
94            "start": {
95              "line": 1,
96              "column": 1,
97              "program": "dynamic_call.ets"
98            },
99            "end": {
100              "line": 1,
101              "column": 1,
102              "program": "dynamic_call.ets"
103            }
104          }
105        },
106        "superClass": null,
107        "implements": [],
108        "body": [
109          {
110            "type": "MethodDefinition",
111            "key": {
112              "type": "Identifier",
113              "name": "main",
114              "decorators": [],
115              "loc": {
116                "start": {
117                  "line": 1,
118                  "column": 1,
119                  "program": null
120                },
121                "end": {
122                  "line": 1,
123                  "column": 1,
124                  "program": null
125                }
126              }
127            },
128            "kind": "method",
129            "accessibility": "public",
130            "static": true,
131            "optional": false,
132            "computed": false,
133            "value": {
134              "type": "FunctionExpression",
135              "function": {
136                "type": "ScriptFunction",
137                "id": {
138                  "type": "Identifier",
139                  "name": "main",
140                  "decorators": [],
141                  "loc": {
142                    "start": {
143                      "line": 1,
144                      "column": 1,
145                      "program": null
146                    },
147                    "end": {
148                      "line": 1,
149                      "column": 1,
150                      "program": null
151                    }
152                  }
153                },
154                "generator": false,
155                "async": false,
156                "expression": false,
157                "params": [],
158                "body": {
159                  "type": "BlockStatement",
160                  "statements": [],
161                  "loc": {
162                    "start": {
163                      "line": 1,
164                      "column": 1,
165                      "program": null
166                    },
167                    "end": {
168                      "line": 1,
169                      "column": 1,
170                      "program": null
171                    }
172                  }
173                },
174                "loc": {
175                  "start": {
176                    "line": 1,
177                    "column": 1,
178                    "program": null
179                  },
180                  "end": {
181                    "line": 1,
182                    "column": 1,
183                    "program": null
184                  }
185                }
186              },
187              "loc": {
188                "start": {
189                  "line": 1,
190                  "column": 1,
191                  "program": null
192                },
193                "end": {
194                  "line": 1,
195                  "column": 1,
196                  "program": null
197                }
198              }
199            },
200            "overloads": [],
201            "decorators": [],
202            "loc": {
203              "start": {
204                "line": 1,
205                "column": 1,
206                "program": "dynamic_call.ets"
207              },
208              "end": {
209                "line": 1,
210                "column": 1,
211                "program": "dynamic_call.ets"
212              }
213            }
214          },
215          {
216            "type": "MethodDefinition",
217            "key": {
218              "type": "Identifier",
219              "name": "_$init$_",
220              "decorators": [],
221              "loc": {
222                "start": {
223                  "line": 1,
224                  "column": 1,
225                  "program": null
226                },
227                "end": {
228                  "line": 1,
229                  "column": 1,
230                  "program": null
231                }
232              }
233            },
234            "kind": "method",
235            "accessibility": "public",
236            "static": true,
237            "optional": false,
238            "computed": false,
239            "value": {
240              "type": "FunctionExpression",
241              "function": {
242                "type": "ScriptFunction",
243                "id": {
244                  "type": "Identifier",
245                  "name": "_$init$_",
246                  "decorators": [],
247                  "loc": {
248                    "start": {
249                      "line": 1,
250                      "column": 1,
251                      "program": null
252                    },
253                    "end": {
254                      "line": 1,
255                      "column": 1,
256                      "program": null
257                    }
258                  }
259                },
260                "generator": false,
261                "async": false,
262                "expression": false,
263                "params": [],
264                "body": {
265                  "type": "BlockStatement",
266                  "statements": [],
267                  "loc": {
268                    "start": {
269                      "line": 1,
270                      "column": 1,
271                      "program": null
272                    },
273                    "end": {
274                      "line": 1,
275                      "column": 1,
276                      "program": null
277                    }
278                  }
279                },
280                "loc": {
281                  "start": {
282                    "line": 1,
283                    "column": 1,
284                    "program": null
285                  },
286                  "end": {
287                    "line": 1,
288                    "column": 1,
289                    "program": null
290                  }
291                }
292              },
293              "loc": {
294                "start": {
295                  "line": 1,
296                  "column": 1,
297                  "program": null
298                },
299                "end": {
300                  "line": 1,
301                  "column": 1,
302                  "program": null
303                }
304              }
305            },
306            "overloads": [],
307            "decorators": [],
308            "loc": {
309              "start": {
310                "line": 1,
311                "column": 1,
312                "program": "dynamic_call.ets"
313              },
314              "end": {
315                "line": 1,
316                "column": 1,
317                "program": "dynamic_call.ets"
318              }
319            }
320          },
321          {
322            "type": "MethodDefinition",
323            "key": {
324              "type": "Identifier",
325              "name": "foo",
326              "decorators": [],
327              "loc": {
328                "start": {
329                  "line": 22,
330                  "column": 10,
331                  "program": "dynamic_call.ets"
332                },
333                "end": {
334                  "line": 22,
335                  "column": 13,
336                  "program": "dynamic_call.ets"
337                }
338              }
339            },
340            "kind": "method",
341            "accessibility": "public",
342            "static": true,
343            "optional": false,
344            "computed": false,
345            "value": {
346              "type": "FunctionExpression",
347              "function": {
348                "type": "ScriptFunction",
349                "id": {
350                  "type": "Identifier",
351                  "name": "foo",
352                  "decorators": [],
353                  "loc": {
354                    "start": {
355                      "line": 22,
356                      "column": 10,
357                      "program": "dynamic_call.ets"
358                    },
359                    "end": {
360                      "line": 22,
361                      "column": 13,
362                      "program": "dynamic_call.ets"
363                    }
364                  }
365                },
366                "generator": false,
367                "async": false,
368                "expression": false,
369                "params": [],
370                "returnType": {
371                  "type": "ETSPrimitiveType",
372                  "loc": {
373                    "start": {
374                      "line": 22,
375                      "column": 17,
376                      "program": "dynamic_call.ets"
377                    },
378                    "end": {
379                      "line": 22,
380                      "column": 20,
381                      "program": "dynamic_call.ets"
382                    }
383                  }
384                },
385                "body": {
386                  "type": "BlockStatement",
387                  "statements": [
388                    {
389                      "type": "VariableDeclaration",
390                      "declarations": [
391                        {
392                          "type": "VariableDeclarator",
393                          "id": {
394                            "type": "Identifier",
395                            "name": "a",
396                            "decorators": [],
397                            "loc": {
398                              "start": {
399                                "line": 23,
400                                "column": 9,
401                                "program": "dynamic_call.ets"
402                              },
403                              "end": {
404                                "line": 23,
405                                "column": 10,
406                                "program": "dynamic_call.ets"
407                              }
408                            }
409                          },
410                          "init": {
411                            "type": "ETSNewClassInstanceExpression",
412                            "typeReference": {
413                              "type": "ETSTypeReference",
414                              "part": {
415                                "type": "ETSTypeReferencePart",
416                                "name": {
417                                  "type": "Identifier",
418                                  "name": "A",
419                                  "decorators": [],
420                                  "loc": {
421                                    "start": {
422                                      "line": 23,
423                                      "column": 17,
424                                      "program": "dynamic_call.ets"
425                                    },
426                                    "end": {
427                                      "line": 23,
428                                      "column": 18,
429                                      "program": "dynamic_call.ets"
430                                    }
431                                  }
432                                },
433                                "loc": {
434                                  "start": {
435                                    "line": 23,
436                                    "column": 17,
437                                    "program": "dynamic_call.ets"
438                                  },
439                                  "end": {
440                                    "line": 23,
441                                    "column": 19,
442                                    "program": "dynamic_call.ets"
443                                  }
444                                }
445                              },
446                              "loc": {
447                                "start": {
448                                  "line": 23,
449                                  "column": 17,
450                                  "program": "dynamic_call.ets"
451                                },
452                                "end": {
453                                  "line": 23,
454                                  "column": 19,
455                                  "program": "dynamic_call.ets"
456                                }
457                              }
458                            },
459                            "arguments": [],
460                            "loc": {
461                              "start": {
462                                "line": 23,
463                                "column": 13,
464                                "program": "dynamic_call.ets"
465                              },
466                              "end": {
467                                "line": 23,
468                                "column": 21,
469                                "program": "dynamic_call.ets"
470                              }
471                            }
472                          },
473                          "loc": {
474                            "start": {
475                              "line": 23,
476                              "column": 9,
477                              "program": "dynamic_call.ets"
478                            },
479                            "end": {
480                              "line": 23,
481                              "column": 21,
482                              "program": "dynamic_call.ets"
483                            }
484                          }
485                        }
486                      ],
487                      "kind": "let",
488                      "loc": {
489                        "start": {
490                          "line": 23,
491                          "column": 5,
492                          "program": "dynamic_call.ets"
493                        },
494                        "end": {
495                          "line": 23,
496                          "column": 21,
497                          "program": "dynamic_call.ets"
498                        }
499                      }
500                    },
501                    {
502                      "type": "ReturnStatement",
503                      "argument": {
504                        "type": "TSAsExpression",
505                        "expression": {
506                          "type": "CallExpression",
507                          "callee": {
508                            "type": "MemberExpression",
509                            "object": {
510                              "type": "MemberExpression",
511                              "object": {
512                                "type": "CallExpression",
513                                "callee": {
514                                  "type": "MemberExpression",
515                                  "object": {
516                                    "type": "Identifier",
517                                    "name": "a",
518                                    "decorators": [],
519                                    "loc": {
520                                      "start": {
521                                        "line": 24,
522                                        "column": 12,
523                                        "program": "dynamic_call.ets"
524                                      },
525                                      "end": {
526                                        "line": 24,
527                                        "column": 13,
528                                        "program": "dynamic_call.ets"
529                                      }
530                                    }
531                                  },
532                                  "property": {
533                                    "type": "Identifier",
534                                    "name": "getB",
535                                    "decorators": [],
536                                    "loc": {
537                                      "start": {
538                                        "line": 24,
539                                        "column": 14,
540                                        "program": "dynamic_call.ets"
541                                      },
542                                      "end": {
543                                        "line": 24,
544                                        "column": 18,
545                                        "program": "dynamic_call.ets"
546                                      }
547                                    }
548                                  },
549                                  "computed": false,
550                                  "optional": false,
551                                  "loc": {
552                                    "start": {
553                                      "line": 24,
554                                      "column": 12,
555                                      "program": "dynamic_call.ets"
556                                    },
557                                    "end": {
558                                      "line": 24,
559                                      "column": 18,
560                                      "program": "dynamic_call.ets"
561                                    }
562                                  }
563                                },
564                                "arguments": [],
565                                "optional": false,
566                                "loc": {
567                                  "start": {
568                                    "line": 24,
569                                    "column": 12,
570                                    "program": "dynamic_call.ets"
571                                  },
572                                  "end": {
573                                    "line": 24,
574                                    "column": 20,
575                                    "program": "dynamic_call.ets"
576                                  }
577                                }
578                              },
579                              "property": {
580                                "type": "Identifier",
581                                "name": "prop_var",
582                                "decorators": [],
583                                "loc": {
584                                  "start": {
585                                    "line": 24,
586                                    "column": 21,
587                                    "program": "dynamic_call.ets"
588                                  },
589                                  "end": {
590                                    "line": 24,
591                                    "column": 29,
592                                    "program": "dynamic_call.ets"
593                                  }
594                                }
595                              },
596                              "computed": false,
597                              "optional": false,
598                              "loc": {
599                                "start": {
600                                  "line": 24,
601                                  "column": 12,
602                                  "program": "dynamic_call.ets"
603                                },
604                                "end": {
605                                  "line": 24,
606                                  "column": 29,
607                                  "program": "dynamic_call.ets"
608                                }
609                              }
610                            },
611                            "property": {
612                              "type": "Identifier",
613                              "name": "foo",
614                              "decorators": [],
615                              "loc": {
616                                "start": {
617                                  "line": 24,
618                                  "column": 30,
619                                  "program": "dynamic_call.ets"
620                                },
621                                "end": {
622                                  "line": 24,
623                                  "column": 33,
624                                  "program": "dynamic_call.ets"
625                                }
626                              }
627                            },
628                            "computed": false,
629                            "optional": false,
630                            "loc": {
631                              "start": {
632                                "line": 24,
633                                "column": 12,
634                                "program": "dynamic_call.ets"
635                              },
636                              "end": {
637                                "line": 24,
638                                "column": 33,
639                                "program": "dynamic_call.ets"
640                              }
641                            }
642                          },
643                          "arguments": [
644                            {
645                              "type": "NumberLiteral",
646                              "value": 5,
647                              "loc": {
648                                "start": {
649                                  "line": 24,
650                                  "column": 34,
651                                  "program": "dynamic_call.ets"
652                                },
653                                "end": {
654                                  "line": 24,
655                                  "column": 35,
656                                  "program": "dynamic_call.ets"
657                                }
658                              }
659                            }
660                          ],
661                          "optional": false,
662                          "loc": {
663                            "start": {
664                              "line": 24,
665                              "column": 12,
666                              "program": "dynamic_call.ets"
667                            },
668                            "end": {
669                              "line": 24,
670                              "column": 36,
671                              "program": "dynamic_call.ets"
672                            }
673                          }
674                        },
675                        "typeAnnotation": {
676                          "type": "ETSPrimitiveType",
677                          "loc": {
678                            "start": {
679                              "line": 24,
680                              "column": 40,
681                              "program": "dynamic_call.ets"
682                            },
683                            "end": {
684                              "line": 24,
685                              "column": 43,
686                              "program": "dynamic_call.ets"
687                            }
688                          }
689                        },
690                        "loc": {
691                          "start": {
692                            "line": 24,
693                            "column": 12,
694                            "program": "dynamic_call.ets"
695                          },
696                          "end": {
697                            "line": 24,
698                            "column": 36,
699                            "program": "dynamic_call.ets"
700                          }
701                        }
702                      },
703                      "loc": {
704                        "start": {
705                          "line": 24,
706                          "column": 5,
707                          "program": "dynamic_call.ets"
708                        },
709                        "end": {
710                          "line": 24,
711                          "column": 44,
712                          "program": "dynamic_call.ets"
713                        }
714                      }
715                    }
716                  ],
717                  "loc": {
718                    "start": {
719                      "line": 22,
720                      "column": 21,
721                      "program": "dynamic_call.ets"
722                    },
723                    "end": {
724                      "line": 25,
725                      "column": 2,
726                      "program": "dynamic_call.ets"
727                    }
728                  }
729                },
730                "loc": {
731                  "start": {
732                    "line": 22,
733                    "column": 10,
734                    "program": "dynamic_call.ets"
735                  },
736                  "end": {
737                    "line": 25,
738                    "column": 2,
739                    "program": "dynamic_call.ets"
740                  }
741                }
742              },
743              "loc": {
744                "start": {
745                  "line": 22,
746                  "column": 10,
747                  "program": "dynamic_call.ets"
748                },
749                "end": {
750                  "line": 25,
751                  "column": 2,
752                  "program": "dynamic_call.ets"
753                }
754              }
755            },
756            "overloads": [],
757            "decorators": [],
758            "loc": {
759              "start": {
760                "line": 22,
761                "column": 1,
762                "program": "dynamic_call.ets"
763              },
764              "end": {
765                "line": 25,
766                "column": 2,
767                "program": "dynamic_call.ets"
768              }
769            }
770          }
771        ],
772        "loc": {
773          "start": {
774            "line": 1,
775            "column": 1,
776            "program": "dynamic_call.ets"
777          },
778          "end": {
779            "line": 1,
780            "column": 1,
781            "program": "dynamic_call.ets"
782          }
783        }
784      },
785      "loc": {
786        "start": {
787          "line": 1,
788          "column": 1,
789          "program": "dynamic_call.ets"
790        },
791        "end": {
792          "line": 1,
793          "column": 1,
794          "program": "dynamic_call.ets"
795        }
796      }
797    },
798    {
799      "type": "ClassDeclaration",
800      "definition": {
801        "id": {
802          "type": "Identifier",
803          "name": "$jsnew",
804          "decorators": [],
805          "loc": {
806            "start": {
807              "line": 1,
808              "column": 1,
809              "program": null
810            },
811            "end": {
812              "line": 1,
813              "column": 1,
814              "program": null
815            }
816          }
817        },
818        "superClass": null,
819        "implements": [],
820        "body": [
821          {
822            "type": "ClassProperty",
823            "key": {
824              "type": "Identifier",
825              "name": "qname_start_from",
826              "decorators": [],
827              "loc": {
828                "start": {
829                  "line": 1,
830                  "column": 1,
831                  "program": null
832                },
833                "end": {
834                  "line": 1,
835                  "column": 1,
836                  "program": null
837                }
838              }
839            },
840            "accessibility": "private",
841            "static": true,
842            "readonly": true,
843            "declare": false,
844            "optional": false,
845            "computed": false,
846            "typeAnnotation": {
847              "type": "ETSPrimitiveType",
848              "loc": {
849                "start": {
850                  "line": 1,
851                  "column": 1,
852                  "program": null
853                },
854                "end": {
855                  "line": 1,
856                  "column": 1,
857                  "program": null
858                }
859              }
860            },
861            "definite": false,
862            "decorators": [],
863            "loc": {
864              "start": {
865                "line": 1,
866                "column": 1,
867                "program": null
868              },
869              "end": {
870                "line": 1,
871                "column": 1,
872                "program": null
873              }
874            }
875          },
876          {
877            "type": "ClassStaticBlock",
878            "value": {
879              "type": "FunctionExpression",
880              "function": {
881                "type": "ScriptFunction",
882                "id": {
883                  "type": "Identifier",
884                  "name": "<cctor>",
885                  "decorators": [],
886                  "loc": {
887                    "start": {
888                      "line": 1,
889                      "column": 1,
890                      "program": null
891                    },
892                    "end": {
893                      "line": 1,
894                      "column": 1,
895                      "program": null
896                    }
897                  }
898                },
899                "generator": false,
900                "async": false,
901                "expression": true,
902                "params": [],
903                "body": {
904                  "type": "BlockStatement",
905                  "statements": [
906                    {
907                      "type": "ExpressionStatement",
908                      "expression": {
909                        "type": "CallExpression",
910                        "callee": {
911                          "type": "MemberExpression",
912                          "object": {
913                            "type": "Identifier",
914                            "name": "JSRuntime",
915                            "decorators": [],
916                            "loc": {
917                              "start": {
918                                "line": 1,
919                                "column": 1,
920                                "program": null
921                              },
922                              "end": {
923                                "line": 1,
924                                "column": 1,
925                                "program": null
926                              }
927                            }
928                          },
929                          "property": {
930                            "type": "Identifier",
931                            "name": "__initJSNewClass",
932                            "decorators": [],
933                            "loc": {
934                              "start": {
935                                "line": 1,
936                                "column": 1,
937                                "program": null
938                              },
939                              "end": {
940                                "line": 1,
941                                "column": 1,
942                                "program": null
943                              }
944                            }
945                          },
946                          "computed": false,
947                          "optional": false,
948                          "loc": {
949                            "start": {
950                              "line": 1,
951                              "column": 1,
952                              "program": null
953                            },
954                            "end": {
955                              "line": 1,
956                              "column": 1,
957                              "program": null
958                            }
959                          }
960                        },
961                        "arguments": [],
962                        "optional": false,
963                        "loc": {
964                          "start": {
965                            "line": 1,
966                            "column": 1,
967                            "program": null
968                          },
969                          "end": {
970                            "line": 1,
971                            "column": 1,
972                            "program": null
973                          }
974                        }
975                      },
976                      "loc": {
977                        "start": {
978                          "line": 1,
979                          "column": 1,
980                          "program": null
981                        },
982                        "end": {
983                          "line": 1,
984                          "column": 1,
985                          "program": null
986                        }
987                      }
988                    }
989                  ],
990                  "loc": {
991                    "start": {
992                      "line": 1,
993                      "column": 1,
994                      "program": null
995                    },
996                    "end": {
997                      "line": 1,
998                      "column": 1,
999                      "program": null
1000                    }
1001                  }
1002                },
1003                "loc": {
1004                  "start": {
1005                    "line": 1,
1006                    "column": 1,
1007                    "program": null
1008                  },
1009                  "end": {
1010                    "line": 1,
1011                    "column": 1,
1012                    "program": null
1013                  }
1014                }
1015              },
1016              "loc": {
1017                "start": {
1018                  "line": 1,
1019                  "column": 1,
1020                  "program": null
1021                },
1022                "end": {
1023                  "line": 1,
1024                  "column": 1,
1025                  "program": null
1026                }
1027              }
1028            },
1029            "loc": {
1030              "start": {
1031                "line": 1,
1032                "column": 1,
1033                "program": null
1034              },
1035              "end": {
1036                "line": 1,
1037                "column": 1,
1038                "program": null
1039              }
1040            }
1041          },
1042          {
1043            "type": "MethodDefinition",
1044            "key": {
1045              "type": "Identifier",
1046              "name": "$_invoke",
1047              "decorators": [],
1048              "loc": {
1049                "start": {
1050                  "line": 1,
1051                  "column": 1,
1052                  "program": null
1053                },
1054                "end": {
1055                  "line": 1,
1056                  "column": 1,
1057                  "program": null
1058                }
1059              }
1060            },
1061            "kind": "method",
1062            "accessibility": "public",
1063            "static": true,
1064            "optional": false,
1065            "computed": false,
1066            "value": {
1067              "type": "FunctionExpression",
1068              "function": {
1069                "type": "ScriptFunction",
1070                "id": {
1071                  "type": "Identifier",
1072                  "name": "$_invoke",
1073                  "decorators": [],
1074                  "loc": {
1075                    "start": {
1076                      "line": 1,
1077                      "column": 1,
1078                      "program": null
1079                    },
1080                    "end": {
1081                      "line": 1,
1082                      "column": 1,
1083                      "program": null
1084                    }
1085                  }
1086                },
1087                "generator": false,
1088                "async": false,
1089                "expression": false,
1090                "params": [
1091                  {
1092                    "type": "ETSParameterExpression",
1093                    "name": {
1094                      "type": "Identifier",
1095                      "name": "obj",
1096                      "typeAnnotation": {
1097                        "type": "OpaqueType",
1098                        "loc": {
1099                          "start": {
1100                            "line": 1,
1101                            "column": 1,
1102                            "program": null
1103                          },
1104                          "end": {
1105                            "line": 1,
1106                            "column": 1,
1107                            "program": null
1108                          }
1109                        }
1110                      },
1111                      "decorators": [],
1112                      "loc": {
1113                        "start": {
1114                          "line": 1,
1115                          "column": 1,
1116                          "program": null
1117                        },
1118                        "end": {
1119                          "line": 1,
1120                          "column": 1,
1121                          "program": null
1122                        }
1123                      }
1124                    },
1125                    "loc": {
1126                      "start": {
1127                        "line": 1,
1128                        "column": 1,
1129                        "program": null
1130                      },
1131                      "end": {
1132                        "line": 1,
1133                        "column": 1,
1134                        "program": null
1135                      }
1136                    }
1137                  },
1138                  {
1139                    "type": "ETSParameterExpression",
1140                    "name": {
1141                      "type": "Identifier",
1142                      "name": "qname_start",
1143                      "typeAnnotation": {
1144                        "type": "ETSPrimitiveType",
1145                        "loc": {
1146                          "start": {
1147                            "line": 1,
1148                            "column": 1,
1149                            "program": null
1150                          },
1151                          "end": {
1152                            "line": 1,
1153                            "column": 1,
1154                            "program": null
1155                          }
1156                        }
1157                      },
1158                      "decorators": [],
1159                      "loc": {
1160                        "start": {
1161                          "line": 1,
1162                          "column": 1,
1163                          "program": null
1164                        },
1165                        "end": {
1166                          "line": 1,
1167                          "column": 1,
1168                          "program": null
1169                        }
1170                      }
1171                    },
1172                    "loc": {
1173                      "start": {
1174                        "line": 1,
1175                        "column": 1,
1176                        "program": null
1177                      },
1178                      "end": {
1179                        "line": 1,
1180                        "column": 1,
1181                        "program": null
1182                      }
1183                    }
1184                  },
1185                  {
1186                    "type": "ETSParameterExpression",
1187                    "name": {
1188                      "type": "Identifier",
1189                      "name": "qname_len",
1190                      "typeAnnotation": {
1191                        "type": "ETSPrimitiveType",
1192                        "loc": {
1193                          "start": {
1194                            "line": 1,
1195                            "column": 1,
1196                            "program": null
1197                          },
1198                          "end": {
1199                            "line": 1,
1200                            "column": 1,
1201                            "program": null
1202                          }
1203                        }
1204                      },
1205                      "decorators": [],
1206                      "loc": {
1207                        "start": {
1208                          "line": 1,
1209                          "column": 1,
1210                          "program": null
1211                        },
1212                        "end": {
1213                          "line": 1,
1214                          "column": 1,
1215                          "program": null
1216                        }
1217                      }
1218                    },
1219                    "loc": {
1220                      "start": {
1221                        "line": 1,
1222                        "column": 1,
1223                        "program": null
1224                      },
1225                      "end": {
1226                        "line": 1,
1227                        "column": 1,
1228                        "program": null
1229                      }
1230                    }
1231                  }
1232                ],
1233                "returnType": {
1234                  "type": "OpaqueType",
1235                  "loc": {
1236                    "start": {
1237                      "line": 1,
1238                      "column": 1,
1239                      "program": null
1240                    },
1241                    "end": {
1242                      "line": 1,
1243                      "column": 1,
1244                      "program": null
1245                    }
1246                  }
1247                },
1248                "loc": {
1249                  "start": {
1250                    "line": 1,
1251                    "column": 1,
1252                    "program": null
1253                  },
1254                  "end": {
1255                    "line": 1,
1256                    "column": 1,
1257                    "program": null
1258                  }
1259                }
1260              },
1261              "loc": {
1262                "start": {
1263                  "line": 1,
1264                  "column": 1,
1265                  "program": null
1266                },
1267                "end": {
1268                  "line": 1,
1269                  "column": 1,
1270                  "program": null
1271                }
1272              }
1273            },
1274            "overloads": [],
1275            "decorators": [],
1276            "loc": {
1277              "start": {
1278                "line": 1,
1279                "column": 1,
1280                "program": null
1281              },
1282              "end": {
1283                "line": 1,
1284                "column": 1,
1285                "program": null
1286              }
1287            }
1288          }
1289        ],
1290        "loc": {
1291          "start": {
1292            "line": 1,
1293            "column": 1,
1294            "program": null
1295          },
1296          "end": {
1297            "line": 1,
1298            "column": 1,
1299            "program": null
1300          }
1301        }
1302      },
1303      "loc": {
1304        "start": {
1305          "line": 1,
1306          "column": 1,
1307          "program": null
1308        },
1309        "end": {
1310          "line": 1,
1311          "column": 1,
1312          "program": null
1313        }
1314      }
1315    },
1316    {
1317      "type": "ClassDeclaration",
1318      "definition": {
1319        "id": {
1320          "type": "Identifier",
1321          "name": "$jscall",
1322          "decorators": [],
1323          "loc": {
1324            "start": {
1325              "line": 1,
1326              "column": 1,
1327              "program": null
1328            },
1329            "end": {
1330              "line": 1,
1331              "column": 1,
1332              "program": null
1333            }
1334          }
1335        },
1336        "superClass": null,
1337        "implements": [],
1338        "body": [
1339          {
1340            "type": "ClassProperty",
1341            "key": {
1342              "type": "Identifier",
1343              "name": "qname_start_from",
1344              "decorators": [],
1345              "loc": {
1346                "start": {
1347                  "line": 1,
1348                  "column": 1,
1349                  "program": null
1350                },
1351                "end": {
1352                  "line": 1,
1353                  "column": 1,
1354                  "program": null
1355                }
1356              }
1357            },
1358            "accessibility": "private",
1359            "static": true,
1360            "readonly": true,
1361            "declare": false,
1362            "optional": false,
1363            "computed": false,
1364            "typeAnnotation": {
1365              "type": "ETSPrimitiveType",
1366              "loc": {
1367                "start": {
1368                  "line": 1,
1369                  "column": 1,
1370                  "program": null
1371                },
1372                "end": {
1373                  "line": 1,
1374                  "column": 1,
1375                  "program": null
1376                }
1377              }
1378            },
1379            "definite": false,
1380            "decorators": [],
1381            "loc": {
1382              "start": {
1383                "line": 1,
1384                "column": 1,
1385                "program": null
1386              },
1387              "end": {
1388                "line": 1,
1389                "column": 1,
1390                "program": null
1391              }
1392            }
1393          },
1394          {
1395            "type": "ClassStaticBlock",
1396            "value": {
1397              "type": "FunctionExpression",
1398              "function": {
1399                "type": "ScriptFunction",
1400                "id": {
1401                  "type": "Identifier",
1402                  "name": "<cctor>",
1403                  "decorators": [],
1404                  "loc": {
1405                    "start": {
1406                      "line": 1,
1407                      "column": 1,
1408                      "program": null
1409                    },
1410                    "end": {
1411                      "line": 1,
1412                      "column": 1,
1413                      "program": null
1414                    }
1415                  }
1416                },
1417                "generator": false,
1418                "async": false,
1419                "expression": true,
1420                "params": [],
1421                "body": {
1422                  "type": "BlockStatement",
1423                  "statements": [
1424                    {
1425                      "type": "ExpressionStatement",
1426                      "expression": {
1427                        "type": "CallExpression",
1428                        "callee": {
1429                          "type": "MemberExpression",
1430                          "object": {
1431                            "type": "Identifier",
1432                            "name": "JSRuntime",
1433                            "decorators": [],
1434                            "loc": {
1435                              "start": {
1436                                "line": 1,
1437                                "column": 1,
1438                                "program": null
1439                              },
1440                              "end": {
1441                                "line": 1,
1442                                "column": 1,
1443                                "program": null
1444                              }
1445                            }
1446                          },
1447                          "property": {
1448                            "type": "Identifier",
1449                            "name": "__initJSCallClass",
1450                            "decorators": [],
1451                            "loc": {
1452                              "start": {
1453                                "line": 1,
1454                                "column": 1,
1455                                "program": null
1456                              },
1457                              "end": {
1458                                "line": 1,
1459                                "column": 1,
1460                                "program": null
1461                              }
1462                            }
1463                          },
1464                          "computed": false,
1465                          "optional": false,
1466                          "loc": {
1467                            "start": {
1468                              "line": 1,
1469                              "column": 1,
1470                              "program": null
1471                            },
1472                            "end": {
1473                              "line": 1,
1474                              "column": 1,
1475                              "program": null
1476                            }
1477                          }
1478                        },
1479                        "arguments": [],
1480                        "optional": false,
1481                        "loc": {
1482                          "start": {
1483                            "line": 1,
1484                            "column": 1,
1485                            "program": null
1486                          },
1487                          "end": {
1488                            "line": 1,
1489                            "column": 1,
1490                            "program": null
1491                          }
1492                        }
1493                      },
1494                      "loc": {
1495                        "start": {
1496                          "line": 1,
1497                          "column": 1,
1498                          "program": null
1499                        },
1500                        "end": {
1501                          "line": 1,
1502                          "column": 1,
1503                          "program": null
1504                        }
1505                      }
1506                    }
1507                  ],
1508                  "loc": {
1509                    "start": {
1510                      "line": 1,
1511                      "column": 1,
1512                      "program": null
1513                    },
1514                    "end": {
1515                      "line": 1,
1516                      "column": 1,
1517                      "program": null
1518                    }
1519                  }
1520                },
1521                "loc": {
1522                  "start": {
1523                    "line": 1,
1524                    "column": 1,
1525                    "program": null
1526                  },
1527                  "end": {
1528                    "line": 1,
1529                    "column": 1,
1530                    "program": null
1531                  }
1532                }
1533              },
1534              "loc": {
1535                "start": {
1536                  "line": 1,
1537                  "column": 1,
1538                  "program": null
1539                },
1540                "end": {
1541                  "line": 1,
1542                  "column": 1,
1543                  "program": null
1544                }
1545              }
1546            },
1547            "loc": {
1548              "start": {
1549                "line": 1,
1550                "column": 1,
1551                "program": null
1552              },
1553              "end": {
1554                "line": 1,
1555                "column": 1,
1556                "program": null
1557              }
1558            }
1559          },
1560          {
1561            "type": "MethodDefinition",
1562            "key": {
1563              "type": "Identifier",
1564              "name": "$_invoke",
1565              "decorators": [],
1566              "loc": {
1567                "start": {
1568                  "line": 1,
1569                  "column": 1,
1570                  "program": null
1571                },
1572                "end": {
1573                  "line": 1,
1574                  "column": 1,
1575                  "program": null
1576                }
1577              }
1578            },
1579            "kind": "method",
1580            "accessibility": "public",
1581            "static": true,
1582            "optional": false,
1583            "computed": false,
1584            "value": {
1585              "type": "FunctionExpression",
1586              "function": {
1587                "type": "ScriptFunction",
1588                "id": {
1589                  "type": "Identifier",
1590                  "name": "$_invoke",
1591                  "decorators": [],
1592                  "loc": {
1593                    "start": {
1594                      "line": 1,
1595                      "column": 1,
1596                      "program": null
1597                    },
1598                    "end": {
1599                      "line": 1,
1600                      "column": 1,
1601                      "program": null
1602                    }
1603                  }
1604                },
1605                "generator": false,
1606                "async": false,
1607                "expression": false,
1608                "params": [
1609                  {
1610                    "type": "ETSParameterExpression",
1611                    "name": {
1612                      "type": "Identifier",
1613                      "name": "obj",
1614                      "typeAnnotation": {
1615                        "type": "OpaqueType",
1616                        "loc": {
1617                          "start": {
1618                            "line": 1,
1619                            "column": 1,
1620                            "program": null
1621                          },
1622                          "end": {
1623                            "line": 1,
1624                            "column": 1,
1625                            "program": null
1626                          }
1627                        }
1628                      },
1629                      "decorators": [],
1630                      "loc": {
1631                        "start": {
1632                          "line": 1,
1633                          "column": 1,
1634                          "program": null
1635                        },
1636                        "end": {
1637                          "line": 1,
1638                          "column": 1,
1639                          "program": null
1640                        }
1641                      }
1642                    },
1643                    "loc": {
1644                      "start": {
1645                        "line": 1,
1646                        "column": 1,
1647                        "program": null
1648                      },
1649                      "end": {
1650                        "line": 1,
1651                        "column": 1,
1652                        "program": null
1653                      }
1654                    }
1655                  },
1656                  {
1657                    "type": "ETSParameterExpression",
1658                    "name": {
1659                      "type": "Identifier",
1660                      "name": "qname_start",
1661                      "typeAnnotation": {
1662                        "type": "ETSPrimitiveType",
1663                        "loc": {
1664                          "start": {
1665                            "line": 1,
1666                            "column": 1,
1667                            "program": null
1668                          },
1669                          "end": {
1670                            "line": 1,
1671                            "column": 1,
1672                            "program": null
1673                          }
1674                        }
1675                      },
1676                      "decorators": [],
1677                      "loc": {
1678                        "start": {
1679                          "line": 1,
1680                          "column": 1,
1681                          "program": null
1682                        },
1683                        "end": {
1684                          "line": 1,
1685                          "column": 1,
1686                          "program": null
1687                        }
1688                      }
1689                    },
1690                    "loc": {
1691                      "start": {
1692                        "line": 1,
1693                        "column": 1,
1694                        "program": null
1695                      },
1696                      "end": {
1697                        "line": 1,
1698                        "column": 1,
1699                        "program": null
1700                      }
1701                    }
1702                  },
1703                  {
1704                    "type": "ETSParameterExpression",
1705                    "name": {
1706                      "type": "Identifier",
1707                      "name": "qname_len",
1708                      "typeAnnotation": {
1709                        "type": "ETSPrimitiveType",
1710                        "loc": {
1711                          "start": {
1712                            "line": 1,
1713                            "column": 1,
1714                            "program": null
1715                          },
1716                          "end": {
1717                            "line": 1,
1718                            "column": 1,
1719                            "program": null
1720                          }
1721                        }
1722                      },
1723                      "decorators": [],
1724                      "loc": {
1725                        "start": {
1726                          "line": 1,
1727                          "column": 1,
1728                          "program": null
1729                        },
1730                        "end": {
1731                          "line": 1,
1732                          "column": 1,
1733                          "program": null
1734                        }
1735                      }
1736                    },
1737                    "loc": {
1738                      "start": {
1739                        "line": 1,
1740                        "column": 1,
1741                        "program": null
1742                      },
1743                      "end": {
1744                        "line": 1,
1745                        "column": 1,
1746                        "program": null
1747                      }
1748                    }
1749                  }
1750                ],
1751                "returnType": {
1752                  "type": "OpaqueType",
1753                  "loc": {
1754                    "start": {
1755                      "line": 1,
1756                      "column": 1,
1757                      "program": null
1758                    },
1759                    "end": {
1760                      "line": 1,
1761                      "column": 1,
1762                      "program": null
1763                    }
1764                  }
1765                },
1766                "loc": {
1767                  "start": {
1768                    "line": 1,
1769                    "column": 1,
1770                    "program": null
1771                  },
1772                  "end": {
1773                    "line": 1,
1774                    "column": 1,
1775                    "program": null
1776                  }
1777                }
1778              },
1779              "loc": {
1780                "start": {
1781                  "line": 1,
1782                  "column": 1,
1783                  "program": null
1784                },
1785                "end": {
1786                  "line": 1,
1787                  "column": 1,
1788                  "program": null
1789                }
1790              }
1791            },
1792            "overloads": [
1793              {
1794                "type": "MethodDefinition",
1795                "key": {
1796                  "type": "Identifier",
1797                  "name": "$_invoke",
1798                  "decorators": [],
1799                  "loc": {
1800                    "start": {
1801                      "line": 1,
1802                      "column": 1,
1803                      "program": null
1804                    },
1805                    "end": {
1806                      "line": 1,
1807                      "column": 1,
1808                      "program": null
1809                    }
1810                  }
1811                },
1812                "kind": "method",
1813                "accessibility": "public",
1814                "static": true,
1815                "optional": false,
1816                "computed": false,
1817                "value": {
1818                  "type": "FunctionExpression",
1819                  "function": {
1820                    "type": "ScriptFunction",
1821                    "id": {
1822                      "type": "Identifier",
1823                      "name": "$_invoke",
1824                      "decorators": [],
1825                      "loc": {
1826                        "start": {
1827                          "line": 1,
1828                          "column": 1,
1829                          "program": null
1830                        },
1831                        "end": {
1832                          "line": 1,
1833                          "column": 1,
1834                          "program": null
1835                        }
1836                      }
1837                    },
1838                    "generator": false,
1839                    "async": false,
1840                    "expression": false,
1841                    "params": [
1842                      {
1843                        "type": "ETSParameterExpression",
1844                        "name": {
1845                          "type": "Identifier",
1846                          "name": "obj",
1847                          "typeAnnotation": {
1848                            "type": "OpaqueType",
1849                            "loc": {
1850                              "start": {
1851                                "line": 1,
1852                                "column": 1,
1853                                "program": null
1854                              },
1855                              "end": {
1856                                "line": 1,
1857                                "column": 1,
1858                                "program": null
1859                              }
1860                            }
1861                          },
1862                          "decorators": [],
1863                          "loc": {
1864                            "start": {
1865                              "line": 1,
1866                              "column": 1,
1867                              "program": null
1868                            },
1869                            "end": {
1870                              "line": 1,
1871                              "column": 1,
1872                              "program": null
1873                            }
1874                          }
1875                        },
1876                        "loc": {
1877                          "start": {
1878                            "line": 1,
1879                            "column": 1,
1880                            "program": null
1881                          },
1882                          "end": {
1883                            "line": 1,
1884                            "column": 1,
1885                            "program": null
1886                          }
1887                        }
1888                      },
1889                      {
1890                        "type": "ETSParameterExpression",
1891                        "name": {
1892                          "type": "Identifier",
1893                          "name": "qname_start",
1894                          "typeAnnotation": {
1895                            "type": "ETSPrimitiveType",
1896                            "loc": {
1897                              "start": {
1898                                "line": 1,
1899                                "column": 1,
1900                                "program": null
1901                              },
1902                              "end": {
1903                                "line": 1,
1904                                "column": 1,
1905                                "program": null
1906                              }
1907                            }
1908                          },
1909                          "decorators": [],
1910                          "loc": {
1911                            "start": {
1912                              "line": 1,
1913                              "column": 1,
1914                              "program": null
1915                            },
1916                            "end": {
1917                              "line": 1,
1918                              "column": 1,
1919                              "program": null
1920                            }
1921                          }
1922                        },
1923                        "loc": {
1924                          "start": {
1925                            "line": 1,
1926                            "column": 1,
1927                            "program": null
1928                          },
1929                          "end": {
1930                            "line": 1,
1931                            "column": 1,
1932                            "program": null
1933                          }
1934                        }
1935                      },
1936                      {
1937                        "type": "ETSParameterExpression",
1938                        "name": {
1939                          "type": "Identifier",
1940                          "name": "qname_len",
1941                          "typeAnnotation": {
1942                            "type": "ETSPrimitiveType",
1943                            "loc": {
1944                              "start": {
1945                                "line": 1,
1946                                "column": 1,
1947                                "program": null
1948                              },
1949                              "end": {
1950                                "line": 1,
1951                                "column": 1,
1952                                "program": null
1953                              }
1954                            }
1955                          },
1956                          "decorators": [],
1957                          "loc": {
1958                            "start": {
1959                              "line": 1,
1960                              "column": 1,
1961                              "program": null
1962                            },
1963                            "end": {
1964                              "line": 1,
1965                              "column": 1,
1966                              "program": null
1967                            }
1968                          }
1969                        },
1970                        "loc": {
1971                          "start": {
1972                            "line": 1,
1973                            "column": 1,
1974                            "program": null
1975                          },
1976                          "end": {
1977                            "line": 1,
1978                            "column": 1,
1979                            "program": null
1980                          }
1981                        }
1982                      },
1983                      {
1984                        "type": "ETSParameterExpression",
1985                        "name": {
1986                          "type": "Identifier",
1987                          "name": "p0",
1988                          "typeAnnotation": {
1989                            "type": "OpaqueType",
1990                            "loc": {
1991                              "start": {
1992                                "line": 1,
1993                                "column": 1,
1994                                "program": null
1995                              },
1996                              "end": {
1997                                "line": 1,
1998                                "column": 1,
1999                                "program": null
2000                              }
2001                            }
2002                          },
2003                          "decorators": [],
2004                          "loc": {
2005                            "start": {
2006                              "line": 1,
2007                              "column": 1,
2008                              "program": null
2009                            },
2010                            "end": {
2011                              "line": 1,
2012                              "column": 1,
2013                              "program": null
2014                            }
2015                          }
2016                        },
2017                        "loc": {
2018                          "start": {
2019                            "line": 1,
2020                            "column": 1,
2021                            "program": null
2022                          },
2023                          "end": {
2024                            "line": 1,
2025                            "column": 1,
2026                            "program": null
2027                          }
2028                        }
2029                      }
2030                    ],
2031                    "returnType": {
2032                      "type": "OpaqueType",
2033                      "loc": {
2034                        "start": {
2035                          "line": 1,
2036                          "column": 1,
2037                          "program": null
2038                        },
2039                        "end": {
2040                          "line": 1,
2041                          "column": 1,
2042                          "program": null
2043                        }
2044                      }
2045                    },
2046                    "loc": {
2047                      "start": {
2048                        "line": 1,
2049                        "column": 1,
2050                        "program": null
2051                      },
2052                      "end": {
2053                        "line": 1,
2054                        "column": 1,
2055                        "program": null
2056                      }
2057                    }
2058                  },
2059                  "loc": {
2060                    "start": {
2061                      "line": 1,
2062                      "column": 1,
2063                      "program": null
2064                    },
2065                    "end": {
2066                      "line": 1,
2067                      "column": 1,
2068                      "program": null
2069                    }
2070                  }
2071                },
2072                "overloads": [],
2073                "decorators": [],
2074                "loc": {
2075                  "start": {
2076                    "line": 1,
2077                    "column": 1,
2078                    "program": null
2079                  },
2080                  "end": {
2081                    "line": 1,
2082                    "column": 1,
2083                    "program": null
2084                  }
2085                }
2086              }
2087            ],
2088            "decorators": [],
2089            "loc": {
2090              "start": {
2091                "line": 1,
2092                "column": 1,
2093                "program": null
2094              },
2095              "end": {
2096                "line": 1,
2097                "column": 1,
2098                "program": null
2099              }
2100            }
2101          },
2102          {
2103            "type": "MethodDefinition",
2104            "key": {
2105              "type": "Identifier",
2106              "name": "$_invoke",
2107              "decorators": [],
2108              "loc": {
2109                "start": {
2110                  "line": 1,
2111                  "column": 1,
2112                  "program": null
2113                },
2114                "end": {
2115                  "line": 1,
2116                  "column": 1,
2117                  "program": null
2118                }
2119              }
2120            },
2121            "kind": "method",
2122            "accessibility": "public",
2123            "static": true,
2124            "optional": false,
2125            "computed": false,
2126            "value": {
2127              "type": "FunctionExpression",
2128              "function": {
2129                "type": "ScriptFunction",
2130                "id": {
2131                  "type": "Identifier",
2132                  "name": "$_invoke",
2133                  "decorators": [],
2134                  "loc": {
2135                    "start": {
2136                      "line": 1,
2137                      "column": 1,
2138                      "program": null
2139                    },
2140                    "end": {
2141                      "line": 1,
2142                      "column": 1,
2143                      "program": null
2144                    }
2145                  }
2146                },
2147                "generator": false,
2148                "async": false,
2149                "expression": false,
2150                "params": [
2151                  {
2152                    "type": "ETSParameterExpression",
2153                    "name": {
2154                      "type": "Identifier",
2155                      "name": "obj",
2156                      "typeAnnotation": {
2157                        "type": "OpaqueType",
2158                        "loc": {
2159                          "start": {
2160                            "line": 1,
2161                            "column": 1,
2162                            "program": null
2163                          },
2164                          "end": {
2165                            "line": 1,
2166                            "column": 1,
2167                            "program": null
2168                          }
2169                        }
2170                      },
2171                      "decorators": [],
2172                      "loc": {
2173                        "start": {
2174                          "line": 1,
2175                          "column": 1,
2176                          "program": null
2177                        },
2178                        "end": {
2179                          "line": 1,
2180                          "column": 1,
2181                          "program": null
2182                        }
2183                      }
2184                    },
2185                    "loc": {
2186                      "start": {
2187                        "line": 1,
2188                        "column": 1,
2189                        "program": null
2190                      },
2191                      "end": {
2192                        "line": 1,
2193                        "column": 1,
2194                        "program": null
2195                      }
2196                    }
2197                  },
2198                  {
2199                    "type": "ETSParameterExpression",
2200                    "name": {
2201                      "type": "Identifier",
2202                      "name": "qname_start",
2203                      "typeAnnotation": {
2204                        "type": "ETSPrimitiveType",
2205                        "loc": {
2206                          "start": {
2207                            "line": 1,
2208                            "column": 1,
2209                            "program": null
2210                          },
2211                          "end": {
2212                            "line": 1,
2213                            "column": 1,
2214                            "program": null
2215                          }
2216                        }
2217                      },
2218                      "decorators": [],
2219                      "loc": {
2220                        "start": {
2221                          "line": 1,
2222                          "column": 1,
2223                          "program": null
2224                        },
2225                        "end": {
2226                          "line": 1,
2227                          "column": 1,
2228                          "program": null
2229                        }
2230                      }
2231                    },
2232                    "loc": {
2233                      "start": {
2234                        "line": 1,
2235                        "column": 1,
2236                        "program": null
2237                      },
2238                      "end": {
2239                        "line": 1,
2240                        "column": 1,
2241                        "program": null
2242                      }
2243                    }
2244                  },
2245                  {
2246                    "type": "ETSParameterExpression",
2247                    "name": {
2248                      "type": "Identifier",
2249                      "name": "qname_len",
2250                      "typeAnnotation": {
2251                        "type": "ETSPrimitiveType",
2252                        "loc": {
2253                          "start": {
2254                            "line": 1,
2255                            "column": 1,
2256                            "program": null
2257                          },
2258                          "end": {
2259                            "line": 1,
2260                            "column": 1,
2261                            "program": null
2262                          }
2263                        }
2264                      },
2265                      "decorators": [],
2266                      "loc": {
2267                        "start": {
2268                          "line": 1,
2269                          "column": 1,
2270                          "program": null
2271                        },
2272                        "end": {
2273                          "line": 1,
2274                          "column": 1,
2275                          "program": null
2276                        }
2277                      }
2278                    },
2279                    "loc": {
2280                      "start": {
2281                        "line": 1,
2282                        "column": 1,
2283                        "program": null
2284                      },
2285                      "end": {
2286                        "line": 1,
2287                        "column": 1,
2288                        "program": null
2289                      }
2290                    }
2291                  },
2292                  {
2293                    "type": "ETSParameterExpression",
2294                    "name": {
2295                      "type": "Identifier",
2296                      "name": "p0",
2297                      "typeAnnotation": {
2298                        "type": "OpaqueType",
2299                        "loc": {
2300                          "start": {
2301                            "line": 1,
2302                            "column": 1,
2303                            "program": null
2304                          },
2305                          "end": {
2306                            "line": 1,
2307                            "column": 1,
2308                            "program": null
2309                          }
2310                        }
2311                      },
2312                      "decorators": [],
2313                      "loc": {
2314                        "start": {
2315                          "line": 1,
2316                          "column": 1,
2317                          "program": null
2318                        },
2319                        "end": {
2320                          "line": 1,
2321                          "column": 1,
2322                          "program": null
2323                        }
2324                      }
2325                    },
2326                    "loc": {
2327                      "start": {
2328                        "line": 1,
2329                        "column": 1,
2330                        "program": null
2331                      },
2332                      "end": {
2333                        "line": 1,
2334                        "column": 1,
2335                        "program": null
2336                      }
2337                    }
2338                  }
2339                ],
2340                "returnType": {
2341                  "type": "OpaqueType",
2342                  "loc": {
2343                    "start": {
2344                      "line": 1,
2345                      "column": 1,
2346                      "program": null
2347                    },
2348                    "end": {
2349                      "line": 1,
2350                      "column": 1,
2351                      "program": null
2352                    }
2353                  }
2354                },
2355                "loc": {
2356                  "start": {
2357                    "line": 1,
2358                    "column": 1,
2359                    "program": null
2360                  },
2361                  "end": {
2362                    "line": 1,
2363                    "column": 1,
2364                    "program": null
2365                  }
2366                }
2367              },
2368              "loc": {
2369                "start": {
2370                  "line": 1,
2371                  "column": 1,
2372                  "program": null
2373                },
2374                "end": {
2375                  "line": 1,
2376                  "column": 1,
2377                  "program": null
2378                }
2379              }
2380            },
2381            "overloads": [],
2382            "decorators": [],
2383            "loc": {
2384              "start": {
2385                "line": 1,
2386                "column": 1,
2387                "program": null
2388              },
2389              "end": {
2390                "line": 1,
2391                "column": 1,
2392                "program": null
2393              }
2394            }
2395          }
2396        ],
2397        "loc": {
2398          "start": {
2399            "line": 1,
2400            "column": 1,
2401            "program": null
2402          },
2403          "end": {
2404            "line": 1,
2405            "column": 1,
2406            "program": null
2407          }
2408        }
2409      },
2410      "loc": {
2411        "start": {
2412          "line": 1,
2413          "column": 1,
2414          "program": null
2415        },
2416        "end": {
2417          "line": 1,
2418          "column": 1,
2419          "program": null
2420        }
2421      }
2422    }
2423  ],
2424  "loc": {
2425    "start": {
2426      "line": 1,
2427      "column": 1,
2428      "program": "dynamic_call.ets"
2429    },
2430    "end": {
2431      "line": 26,
2432      "column": 1,
2433      "program": "dynamic_call.ets"
2434    }
2435  }
2436}
2437