• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "A",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 16,
14              "column": 7,
15              "program": "callMethodWithNullableParam.ets"
16            },
17            "end": {
18              "line": 16,
19              "column": 8,
20              "program": "callMethodWithNullableParam.ets"
21            }
22          }
23        },
24        "superClass": null,
25        "implements": [],
26        "body": [
27          {
28            "type": "MethodDefinition",
29            "key": {
30              "type": "Identifier",
31              "name": "foo",
32              "decorators": [],
33              "loc": {
34                "start": {
35                  "line": 17,
36                  "column": 5,
37                  "program": "callMethodWithNullableParam.ets"
38                },
39                "end": {
40                  "line": 17,
41                  "column": 8,
42                  "program": "callMethodWithNullableParam.ets"
43                }
44              }
45            },
46            "kind": "method",
47            "accessibility": "public",
48            "static": false,
49            "optional": false,
50            "computed": false,
51            "value": {
52              "type": "FunctionExpression",
53              "function": {
54                "type": "ScriptFunction",
55                "id": {
56                  "type": "Identifier",
57                  "name": "foo",
58                  "decorators": [],
59                  "loc": {
60                    "start": {
61                      "line": 17,
62                      "column": 5,
63                      "program": "callMethodWithNullableParam.ets"
64                    },
65                    "end": {
66                      "line": 17,
67                      "column": 8,
68                      "program": "callMethodWithNullableParam.ets"
69                    }
70                  }
71                },
72                "generator": false,
73                "async": false,
74                "expression": false,
75                "params": [
76                  {
77                    "type": "ETSParameterExpression",
78                    "name": {
79                      "type": "Identifier",
80                      "name": "a",
81                      "typeAnnotation": {
82                        "type": "ETSTypeReference",
83                        "part": {
84                          "type": "ETSTypeReferencePart",
85                          "name": {
86                            "type": "Identifier",
87                            "name": "A",
88                            "decorators": [],
89                            "loc": {
90                              "start": {
91                                "line": 17,
92                                "column": 13,
93                                "program": "callMethodWithNullableParam.ets"
94                              },
95                              "end": {
96                                "line": 17,
97                                "column": 14,
98                                "program": "callMethodWithNullableParam.ets"
99                              }
100                            }
101                          },
102                          "loc": {
103                            "start": {
104                              "line": 17,
105                              "column": 13,
106                              "program": "callMethodWithNullableParam.ets"
107                            },
108                            "end": {
109                              "line": 17,
110                              "column": 15,
111                              "program": "callMethodWithNullableParam.ets"
112                            }
113                          }
114                        },
115                        "loc": {
116                          "start": {
117                            "line": 17,
118                            "column": 13,
119                            "program": "callMethodWithNullableParam.ets"
120                          },
121                          "end": {
122                            "line": 17,
123                            "column": 15,
124                            "program": "callMethodWithNullableParam.ets"
125                          }
126                        }
127                      },
128                      "decorators": [],
129                      "loc": {
130                        "start": {
131                          "line": 17,
132                          "column": 9,
133                          "program": "callMethodWithNullableParam.ets"
134                        },
135                        "end": {
136                          "line": 17,
137                          "column": 15,
138                          "program": "callMethodWithNullableParam.ets"
139                        }
140                      }
141                    },
142                    "loc": {
143                      "start": {
144                        "line": 17,
145                        "column": 9,
146                        "program": "callMethodWithNullableParam.ets"
147                      },
148                      "end": {
149                        "line": 17,
150                        "column": 15,
151                        "program": "callMethodWithNullableParam.ets"
152                      }
153                    }
154                  }
155                ],
156                "returnType": {
157                  "type": "ETSPrimitiveType",
158                  "loc": {
159                    "start": {
160                      "line": 17,
161                      "column": 18,
162                      "program": "callMethodWithNullableParam.ets"
163                    },
164                    "end": {
165                      "line": 17,
166                      "column": 22,
167                      "program": "callMethodWithNullableParam.ets"
168                    }
169                  }
170                },
171                "body": {
172                  "type": "BlockStatement",
173                  "statements": [],
174                  "loc": {
175                    "start": {
176                      "line": 17,
177                      "column": 23,
178                      "program": "callMethodWithNullableParam.ets"
179                    },
180                    "end": {
181                      "line": 17,
182                      "column": 25,
183                      "program": "callMethodWithNullableParam.ets"
184                    }
185                  }
186                },
187                "loc": {
188                  "start": {
189                    "line": 17,
190                    "column": 8,
191                    "program": "callMethodWithNullableParam.ets"
192                  },
193                  "end": {
194                    "line": 17,
195                    "column": 25,
196                    "program": "callMethodWithNullableParam.ets"
197                  }
198                }
199              },
200              "loc": {
201                "start": {
202                  "line": 17,
203                  "column": 8,
204                  "program": "callMethodWithNullableParam.ets"
205                },
206                "end": {
207                  "line": 17,
208                  "column": 25,
209                  "program": "callMethodWithNullableParam.ets"
210                }
211              }
212            },
213            "overloads": [],
214            "decorators": [],
215            "loc": {
216              "start": {
217                "line": 17,
218                "column": 5,
219                "program": "callMethodWithNullableParam.ets"
220              },
221              "end": {
222                "line": 17,
223                "column": 25,
224                "program": "callMethodWithNullableParam.ets"
225              }
226            }
227          },
228          {
229            "type": "MethodDefinition",
230            "key": {
231              "type": "Identifier",
232              "name": "constructor",
233              "decorators": [],
234              "loc": {
235                "start": {
236                  "line": 16,
237                  "column": 10,
238                  "program": "callMethodWithNullableParam.ets"
239                },
240                "end": {
241                  "line": 16,
242                  "column": 10,
243                  "program": "callMethodWithNullableParam.ets"
244                }
245              }
246            },
247            "kind": "constructor",
248            "static": false,
249            "optional": false,
250            "computed": false,
251            "value": {
252              "type": "FunctionExpression",
253              "function": {
254                "type": "ScriptFunction",
255                "id": {
256                  "type": "Identifier",
257                  "name": "constructor",
258                  "decorators": [],
259                  "loc": {
260                    "start": {
261                      "line": 16,
262                      "column": 10,
263                      "program": "callMethodWithNullableParam.ets"
264                    },
265                    "end": {
266                      "line": 16,
267                      "column": 10,
268                      "program": "callMethodWithNullableParam.ets"
269                    }
270                  }
271                },
272                "generator": false,
273                "async": false,
274                "expression": false,
275                "params": [],
276                "body": {
277                  "type": "BlockStatement",
278                  "statements": [],
279                  "loc": {
280                    "start": {
281                      "line": 16,
282                      "column": 10,
283                      "program": "callMethodWithNullableParam.ets"
284                    },
285                    "end": {
286                      "line": 16,
287                      "column": 10,
288                      "program": "callMethodWithNullableParam.ets"
289                    }
290                  }
291                },
292                "loc": {
293                  "start": {
294                    "line": 16,
295                    "column": 10,
296                    "program": "callMethodWithNullableParam.ets"
297                  },
298                  "end": {
299                    "line": 16,
300                    "column": 10,
301                    "program": "callMethodWithNullableParam.ets"
302                  }
303                }
304              },
305              "loc": {
306                "start": {
307                  "line": 16,
308                  "column": 10,
309                  "program": "callMethodWithNullableParam.ets"
310                },
311                "end": {
312                  "line": 16,
313                  "column": 10,
314                  "program": "callMethodWithNullableParam.ets"
315                }
316              }
317            },
318            "overloads": [],
319            "decorators": [],
320            "loc": {
321              "start": {
322                "line": 1,
323                "column": 1,
324                "program": null
325              },
326              "end": {
327                "line": 1,
328                "column": 1,
329                "program": null
330              }
331            }
332          }
333        ],
334        "loc": {
335          "start": {
336            "line": 16,
337            "column": 9,
338            "program": "callMethodWithNullableParam.ets"
339          },
340          "end": {
341            "line": 20,
342            "column": 9,
343            "program": "callMethodWithNullableParam.ets"
344          }
345        }
346      },
347      "loc": {
348        "start": {
349          "line": 16,
350          "column": 1,
351          "program": "callMethodWithNullableParam.ets"
352        },
353        "end": {
354          "line": 20,
355          "column": 9,
356          "program": "callMethodWithNullableParam.ets"
357        }
358      }
359    },
360    {
361      "type": "ClassDeclaration",
362      "definition": {
363        "id": {
364          "type": "Identifier",
365          "name": "ETSGLOBAL",
366          "decorators": [],
367          "loc": {
368            "start": {
369              "line": 1,
370              "column": 1,
371              "program": "callMethodWithNullableParam.ets"
372            },
373            "end": {
374              "line": 1,
375              "column": 1,
376              "program": "callMethodWithNullableParam.ets"
377            }
378          }
379        },
380        "superClass": null,
381        "implements": [],
382        "body": [
383          {
384            "type": "MethodDefinition",
385            "key": {
386              "type": "Identifier",
387              "name": "_$init$_",
388              "decorators": [],
389              "loc": {
390                "start": {
391                  "line": 1,
392                  "column": 1,
393                  "program": null
394                },
395                "end": {
396                  "line": 1,
397                  "column": 1,
398                  "program": null
399                }
400              }
401            },
402            "kind": "method",
403            "accessibility": "public",
404            "static": true,
405            "optional": false,
406            "computed": false,
407            "value": {
408              "type": "FunctionExpression",
409              "function": {
410                "type": "ScriptFunction",
411                "id": {
412                  "type": "Identifier",
413                  "name": "_$init$_",
414                  "decorators": [],
415                  "loc": {
416                    "start": {
417                      "line": 1,
418                      "column": 1,
419                      "program": null
420                    },
421                    "end": {
422                      "line": 1,
423                      "column": 1,
424                      "program": null
425                    }
426                  }
427                },
428                "generator": false,
429                "async": false,
430                "expression": false,
431                "params": [],
432                "body": {
433                  "type": "BlockStatement",
434                  "statements": [],
435                  "loc": {
436                    "start": {
437                      "line": 1,
438                      "column": 1,
439                      "program": null
440                    },
441                    "end": {
442                      "line": 1,
443                      "column": 1,
444                      "program": null
445                    }
446                  }
447                },
448                "loc": {
449                  "start": {
450                    "line": 1,
451                    "column": 1,
452                    "program": null
453                  },
454                  "end": {
455                    "line": 1,
456                    "column": 1,
457                    "program": null
458                  }
459                }
460              },
461              "loc": {
462                "start": {
463                  "line": 1,
464                  "column": 1,
465                  "program": null
466                },
467                "end": {
468                  "line": 1,
469                  "column": 1,
470                  "program": null
471                }
472              }
473            },
474            "overloads": [],
475            "decorators": [],
476            "loc": {
477              "start": {
478                "line": 1,
479                "column": 1,
480                "program": "callMethodWithNullableParam.ets"
481              },
482              "end": {
483                "line": 1,
484                "column": 1,
485                "program": "callMethodWithNullableParam.ets"
486              }
487            }
488          },
489          {
490            "type": "MethodDefinition",
491            "key": {
492              "type": "Identifier",
493              "name": "main",
494              "decorators": [],
495              "loc": {
496                "start": {
497                  "line": 20,
498                  "column": 10,
499                  "program": "callMethodWithNullableParam.ets"
500                },
501                "end": {
502                  "line": 20,
503                  "column": 14,
504                  "program": "callMethodWithNullableParam.ets"
505                }
506              }
507            },
508            "kind": "method",
509            "accessibility": "public",
510            "static": true,
511            "optional": false,
512            "computed": false,
513            "value": {
514              "type": "FunctionExpression",
515              "function": {
516                "type": "ScriptFunction",
517                "id": {
518                  "type": "Identifier",
519                  "name": "main",
520                  "decorators": [],
521                  "loc": {
522                    "start": {
523                      "line": 20,
524                      "column": 10,
525                      "program": "callMethodWithNullableParam.ets"
526                    },
527                    "end": {
528                      "line": 20,
529                      "column": 14,
530                      "program": "callMethodWithNullableParam.ets"
531                    }
532                  }
533                },
534                "generator": false,
535                "async": false,
536                "expression": false,
537                "params": [],
538                "returnType": {
539                  "type": "ETSPrimitiveType",
540                  "loc": {
541                    "start": {
542                      "line": 20,
543                      "column": 18,
544                      "program": "callMethodWithNullableParam.ets"
545                    },
546                    "end": {
547                      "line": 20,
548                      "column": 22,
549                      "program": "callMethodWithNullableParam.ets"
550                    }
551                  }
552                },
553                "body": {
554                  "type": "BlockStatement",
555                  "statements": [
556                    {
557                      "type": "VariableDeclaration",
558                      "declarations": [
559                        {
560                          "type": "VariableDeclarator",
561                          "id": {
562                            "type": "Identifier",
563                            "name": "an",
564                            "typeAnnotation": {
565                              "type": "ETSUnionType",
566                              "types": [
567                                {
568                                  "type": "ETSTypeReference",
569                                  "part": {
570                                    "type": "ETSTypeReferencePart",
571                                    "name": {
572                                      "type": "Identifier",
573                                      "name": "A",
574                                      "decorators": [],
575                                      "loc": {
576                                        "start": {
577                                          "line": 21,
578                                          "column": 14,
579                                          "program": "callMethodWithNullableParam.ets"
580                                        },
581                                        "end": {
582                                          "line": 21,
583                                          "column": 15,
584                                          "program": "callMethodWithNullableParam.ets"
585                                        }
586                                      }
587                                    },
588                                    "loc": {
589                                      "start": {
590                                        "line": 21,
591                                        "column": 14,
592                                        "program": "callMethodWithNullableParam.ets"
593                                      },
594                                      "end": {
595                                        "line": 21,
596                                        "column": 17,
597                                        "program": "callMethodWithNullableParam.ets"
598                                      }
599                                    }
600                                  },
601                                  "loc": {
602                                    "start": {
603                                      "line": 21,
604                                      "column": 14,
605                                      "program": "callMethodWithNullableParam.ets"
606                                    },
607                                    "end": {
608                                      "line": 21,
609                                      "column": 17,
610                                      "program": "callMethodWithNullableParam.ets"
611                                    }
612                                  }
613                                },
614                                {
615                                  "type": "ETSNullType",
616                                  "loc": {
617                                    "start": {
618                                      "line": 21,
619                                      "column": 18,
620                                      "program": "callMethodWithNullableParam.ets"
621                                    },
622                                    "end": {
623                                      "line": 21,
624                                      "column": 22,
625                                      "program": "callMethodWithNullableParam.ets"
626                                    }
627                                  }
628                                }
629                              ],
630                              "loc": {
631                                "start": {
632                                  "line": 21,
633                                  "column": 14,
634                                  "program": "callMethodWithNullableParam.ets"
635                                },
636                                "end": {
637                                  "line": 21,
638                                  "column": 22,
639                                  "program": "callMethodWithNullableParam.ets"
640                                }
641                              }
642                            },
643                            "decorators": [],
644                            "loc": {
645                              "start": {
646                                "line": 21,
647                                "column": 9,
648                                "program": "callMethodWithNullableParam.ets"
649                              },
650                              "end": {
651                                "line": 21,
652                                "column": 11,
653                                "program": "callMethodWithNullableParam.ets"
654                              }
655                            }
656                          },
657                          "init": {
658                            "type": "ETSNewClassInstanceExpression",
659                            "typeReference": {
660                              "type": "ETSTypeReference",
661                              "part": {
662                                "type": "ETSTypeReferencePart",
663                                "name": {
664                                  "type": "Identifier",
665                                  "name": "A",
666                                  "decorators": [],
667                                  "loc": {
668                                    "start": {
669                                      "line": 21,
670                                      "column": 29,
671                                      "program": "callMethodWithNullableParam.ets"
672                                    },
673                                    "end": {
674                                      "line": 21,
675                                      "column": 30,
676                                      "program": "callMethodWithNullableParam.ets"
677                                    }
678                                  }
679                                },
680                                "loc": {
681                                  "start": {
682                                    "line": 21,
683                                    "column": 29,
684                                    "program": "callMethodWithNullableParam.ets"
685                                  },
686                                  "end": {
687                                    "line": 21,
688                                    "column": 31,
689                                    "program": "callMethodWithNullableParam.ets"
690                                  }
691                                }
692                              },
693                              "loc": {
694                                "start": {
695                                  "line": 21,
696                                  "column": 29,
697                                  "program": "callMethodWithNullableParam.ets"
698                                },
699                                "end": {
700                                  "line": 21,
701                                  "column": 31,
702                                  "program": "callMethodWithNullableParam.ets"
703                                }
704                              }
705                            },
706                            "arguments": [],
707                            "loc": {
708                              "start": {
709                                "line": 21,
710                                "column": 25,
711                                "program": "callMethodWithNullableParam.ets"
712                              },
713                              "end": {
714                                "line": 21,
715                                "column": 33,
716                                "program": "callMethodWithNullableParam.ets"
717                              }
718                            }
719                          },
720                          "loc": {
721                            "start": {
722                              "line": 21,
723                              "column": 9,
724                              "program": "callMethodWithNullableParam.ets"
725                            },
726                            "end": {
727                              "line": 21,
728                              "column": 33,
729                              "program": "callMethodWithNullableParam.ets"
730                            }
731                          }
732                        }
733                      ],
734                      "kind": "let",
735                      "loc": {
736                        "start": {
737                          "line": 21,
738                          "column": 5,
739                          "program": "callMethodWithNullableParam.ets"
740                        },
741                        "end": {
742                          "line": 21,
743                          "column": 33,
744                          "program": "callMethodWithNullableParam.ets"
745                        }
746                      }
747                    },
748                    {
749                      "type": "ExpressionStatement",
750                      "expression": {
751                        "type": "CallExpression",
752                        "callee": {
753                          "type": "MemberExpression",
754                          "object": {
755                            "type": "ETSNewClassInstanceExpression",
756                            "typeReference": {
757                              "type": "ETSTypeReference",
758                              "part": {
759                                "type": "ETSTypeReferencePart",
760                                "name": {
761                                  "type": "Identifier",
762                                  "name": "A",
763                                  "decorators": [],
764                                  "loc": {
765                                    "start": {
766                                      "line": 23,
767                                      "column": 9,
768                                      "program": "callMethodWithNullableParam.ets"
769                                    },
770                                    "end": {
771                                      "line": 23,
772                                      "column": 10,
773                                      "program": "callMethodWithNullableParam.ets"
774                                    }
775                                  }
776                                },
777                                "loc": {
778                                  "start": {
779                                    "line": 23,
780                                    "column": 9,
781                                    "program": "callMethodWithNullableParam.ets"
782                                  },
783                                  "end": {
784                                    "line": 23,
785                                    "column": 11,
786                                    "program": "callMethodWithNullableParam.ets"
787                                  }
788                                }
789                              },
790                              "loc": {
791                                "start": {
792                                  "line": 23,
793                                  "column": 9,
794                                  "program": "callMethodWithNullableParam.ets"
795                                },
796                                "end": {
797                                  "line": 23,
798                                  "column": 11,
799                                  "program": "callMethodWithNullableParam.ets"
800                                }
801                              }
802                            },
803                            "arguments": [],
804                            "loc": {
805                              "start": {
806                                "line": 23,
807                                "column": 5,
808                                "program": "callMethodWithNullableParam.ets"
809                              },
810                              "end": {
811                                "line": 23,
812                                "column": 13,
813                                "program": "callMethodWithNullableParam.ets"
814                              }
815                            }
816                          },
817                          "property": {
818                            "type": "Identifier",
819                            "name": "foo",
820                            "decorators": [],
821                            "loc": {
822                              "start": {
823                                "line": 23,
824                                "column": 13,
825                                "program": "callMethodWithNullableParam.ets"
826                              },
827                              "end": {
828                                "line": 23,
829                                "column": 16,
830                                "program": "callMethodWithNullableParam.ets"
831                              }
832                            }
833                          },
834                          "computed": false,
835                          "optional": false,
836                          "loc": {
837                            "start": {
838                              "line": 23,
839                              "column": 5,
840                              "program": "callMethodWithNullableParam.ets"
841                            },
842                            "end": {
843                              "line": 23,
844                              "column": 16,
845                              "program": "callMethodWithNullableParam.ets"
846                            }
847                          }
848                        },
849                        "arguments": [
850                          {
851                            "type": "Identifier",
852                            "name": "an",
853                            "decorators": [],
854                            "loc": {
855                              "start": {
856                                "line": 23,
857                                "column": 17,
858                                "program": "callMethodWithNullableParam.ets"
859                              },
860                              "end": {
861                                "line": 23,
862                                "column": 19,
863                                "program": "callMethodWithNullableParam.ets"
864                              }
865                            }
866                          }
867                        ],
868                        "optional": false,
869                        "loc": {
870                          "start": {
871                            "line": 23,
872                            "column": 5,
873                            "program": "callMethodWithNullableParam.ets"
874                          },
875                          "end": {
876                            "line": 23,
877                            "column": 20,
878                            "program": "callMethodWithNullableParam.ets"
879                          }
880                        }
881                      },
882                      "loc": {
883                        "start": {
884                          "line": 23,
885                          "column": 5,
886                          "program": "callMethodWithNullableParam.ets"
887                        },
888                        "end": {
889                          "line": 23,
890                          "column": 21,
891                          "program": "callMethodWithNullableParam.ets"
892                        }
893                      }
894                    }
895                  ],
896                  "loc": {
897                    "start": {
898                      "line": 20,
899                      "column": 23,
900                      "program": "callMethodWithNullableParam.ets"
901                    },
902                    "end": {
903                      "line": 24,
904                      "column": 2,
905                      "program": "callMethodWithNullableParam.ets"
906                    }
907                  }
908                },
909                "loc": {
910                  "start": {
911                    "line": 20,
912                    "column": 10,
913                    "program": "callMethodWithNullableParam.ets"
914                  },
915                  "end": {
916                    "line": 24,
917                    "column": 2,
918                    "program": "callMethodWithNullableParam.ets"
919                  }
920                }
921              },
922              "loc": {
923                "start": {
924                  "line": 20,
925                  "column": 10,
926                  "program": "callMethodWithNullableParam.ets"
927                },
928                "end": {
929                  "line": 24,
930                  "column": 2,
931                  "program": "callMethodWithNullableParam.ets"
932                }
933              }
934            },
935            "overloads": [],
936            "decorators": [],
937            "loc": {
938              "start": {
939                "line": 20,
940                "column": 1,
941                "program": "callMethodWithNullableParam.ets"
942              },
943              "end": {
944                "line": 24,
945                "column": 2,
946                "program": "callMethodWithNullableParam.ets"
947              }
948            }
949          }
950        ],
951        "loc": {
952          "start": {
953            "line": 1,
954            "column": 1,
955            "program": "callMethodWithNullableParam.ets"
956          },
957          "end": {
958            "line": 1,
959            "column": 1,
960            "program": "callMethodWithNullableParam.ets"
961          }
962        }
963      },
964      "loc": {
965        "start": {
966          "line": 1,
967          "column": 1,
968          "program": "callMethodWithNullableParam.ets"
969        },
970        "end": {
971          "line": 1,
972          "column": 1,
973          "program": "callMethodWithNullableParam.ets"
974        }
975      }
976    }
977  ],
978  "loc": {
979    "start": {
980      "line": 1,
981      "column": 1,
982      "program": "callMethodWithNullableParam.ets"
983    },
984    "end": {
985      "line": 25,
986      "column": 1,
987      "program": "callMethodWithNullableParam.ets"
988    }
989  }
990}
991