• 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": "ETSGLOBAL",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 1,
14              "column": 1,
15              "program": "rethrowingCheck1.ets"
16            },
17            "end": {
18              "line": 1,
19              "column": 1,
20              "program": "rethrowingCheck1.ets"
21            }
22          }
23        },
24        "superClass": null,
25        "implements": [],
26        "body": [
27          {
28            "type": "MethodDefinition",
29            "key": {
30              "type": "Identifier",
31              "name": "main",
32              "decorators": [],
33              "loc": {
34                "start": {
35                  "line": 1,
36                  "column": 1,
37                  "program": null
38                },
39                "end": {
40                  "line": 1,
41                  "column": 1,
42                  "program": null
43                }
44              }
45            },
46            "kind": "method",
47            "accessibility": "public",
48            "static": true,
49            "optional": false,
50            "computed": false,
51            "value": {
52              "type": "FunctionExpression",
53              "function": {
54                "type": "ScriptFunction",
55                "id": {
56                  "type": "Identifier",
57                  "name": "main",
58                  "decorators": [],
59                  "loc": {
60                    "start": {
61                      "line": 1,
62                      "column": 1,
63                      "program": null
64                    },
65                    "end": {
66                      "line": 1,
67                      "column": 1,
68                      "program": null
69                    }
70                  }
71                },
72                "generator": false,
73                "async": false,
74                "expression": false,
75                "params": [],
76                "body": {
77                  "type": "BlockStatement",
78                  "statements": [],
79                  "loc": {
80                    "start": {
81                      "line": 1,
82                      "column": 1,
83                      "program": null
84                    },
85                    "end": {
86                      "line": 1,
87                      "column": 1,
88                      "program": null
89                    }
90                  }
91                },
92                "loc": {
93                  "start": {
94                    "line": 1,
95                    "column": 1,
96                    "program": null
97                  },
98                  "end": {
99                    "line": 1,
100                    "column": 1,
101                    "program": null
102                  }
103                }
104              },
105              "loc": {
106                "start": {
107                  "line": 1,
108                  "column": 1,
109                  "program": null
110                },
111                "end": {
112                  "line": 1,
113                  "column": 1,
114                  "program": null
115                }
116              }
117            },
118            "overloads": [],
119            "decorators": [],
120            "loc": {
121              "start": {
122                "line": 1,
123                "column": 1,
124                "program": "rethrowingCheck1.ets"
125              },
126              "end": {
127                "line": 1,
128                "column": 1,
129                "program": "rethrowingCheck1.ets"
130              }
131            }
132          },
133          {
134            "type": "MethodDefinition",
135            "key": {
136              "type": "Identifier",
137              "name": "_$init$_",
138              "decorators": [],
139              "loc": {
140                "start": {
141                  "line": 1,
142                  "column": 1,
143                  "program": null
144                },
145                "end": {
146                  "line": 1,
147                  "column": 1,
148                  "program": null
149                }
150              }
151            },
152            "kind": "method",
153            "accessibility": "public",
154            "static": true,
155            "optional": false,
156            "computed": false,
157            "value": {
158              "type": "FunctionExpression",
159              "function": {
160                "type": "ScriptFunction",
161                "id": {
162                  "type": "Identifier",
163                  "name": "_$init$_",
164                  "decorators": [],
165                  "loc": {
166                    "start": {
167                      "line": 1,
168                      "column": 1,
169                      "program": null
170                    },
171                    "end": {
172                      "line": 1,
173                      "column": 1,
174                      "program": null
175                    }
176                  }
177                },
178                "generator": false,
179                "async": false,
180                "expression": false,
181                "params": [],
182                "body": {
183                  "type": "BlockStatement",
184                  "statements": [],
185                  "loc": {
186                    "start": {
187                      "line": 1,
188                      "column": 1,
189                      "program": null
190                    },
191                    "end": {
192                      "line": 1,
193                      "column": 1,
194                      "program": null
195                    }
196                  }
197                },
198                "loc": {
199                  "start": {
200                    "line": 1,
201                    "column": 1,
202                    "program": null
203                  },
204                  "end": {
205                    "line": 1,
206                    "column": 1,
207                    "program": null
208                  }
209                }
210              },
211              "loc": {
212                "start": {
213                  "line": 1,
214                  "column": 1,
215                  "program": null
216                },
217                "end": {
218                  "line": 1,
219                  "column": 1,
220                  "program": null
221                }
222              }
223            },
224            "overloads": [],
225            "decorators": [],
226            "loc": {
227              "start": {
228                "line": 1,
229                "column": 1,
230                "program": "rethrowingCheck1.ets"
231              },
232              "end": {
233                "line": 1,
234                "column": 1,
235                "program": "rethrowingCheck1.ets"
236              }
237            }
238          },
239          {
240            "type": "MethodDefinition",
241            "key": {
242              "type": "Identifier",
243              "name": "foo",
244              "decorators": [],
245              "loc": {
246                "start": {
247                  "line": 16,
248                  "column": 10,
249                  "program": "rethrowingCheck1.ets"
250                },
251                "end": {
252                  "line": 16,
253                  "column": 13,
254                  "program": "rethrowingCheck1.ets"
255                }
256              }
257            },
258            "kind": "method",
259            "accessibility": "public",
260            "static": true,
261            "optional": false,
262            "computed": false,
263            "value": {
264              "type": "FunctionExpression",
265              "function": {
266                "type": "ScriptFunction",
267                "id": {
268                  "type": "Identifier",
269                  "name": "foo",
270                  "decorators": [],
271                  "loc": {
272                    "start": {
273                      "line": 16,
274                      "column": 10,
275                      "program": "rethrowingCheck1.ets"
276                    },
277                    "end": {
278                      "line": 16,
279                      "column": 13,
280                      "program": "rethrowingCheck1.ets"
281                    }
282                  }
283                },
284                "generator": false,
285                "async": false,
286                "expression": false,
287                "params": [],
288                "body": {
289                  "type": "BlockStatement",
290                  "statements": [
291                    {
292                      "type": "ThrowStatement",
293                      "argument": {
294                        "type": "ETSNewClassInstanceExpression",
295                        "typeReference": {
296                          "type": "ETSTypeReference",
297                          "part": {
298                            "type": "ETSTypeReferencePart",
299                            "name": {
300                              "type": "Identifier",
301                              "name": "Exception",
302                              "decorators": [],
303                              "loc": {
304                                "start": {
305                                  "line": 17,
306                                  "column": 15,
307                                  "program": "rethrowingCheck1.ets"
308                                },
309                                "end": {
310                                  "line": 17,
311                                  "column": 24,
312                                  "program": "rethrowingCheck1.ets"
313                                }
314                              }
315                            },
316                            "loc": {
317                              "start": {
318                                "line": 17,
319                                "column": 15,
320                                "program": "rethrowingCheck1.ets"
321                              },
322                              "end": {
323                                "line": 17,
324                                "column": 25,
325                                "program": "rethrowingCheck1.ets"
326                              }
327                            }
328                          },
329                          "loc": {
330                            "start": {
331                              "line": 17,
332                              "column": 15,
333                              "program": "rethrowingCheck1.ets"
334                            },
335                            "end": {
336                              "line": 17,
337                              "column": 25,
338                              "program": "rethrowingCheck1.ets"
339                            }
340                          }
341                        },
342                        "arguments": [
343                          {
344                            "type": "StringLiteral",
345                            "value": "I am an exception",
346                            "loc": {
347                              "start": {
348                                "line": 17,
349                                "column": 25,
350                                "program": "rethrowingCheck1.ets"
351                              },
352                              "end": {
353                                "line": 17,
354                                "column": 44,
355                                "program": "rethrowingCheck1.ets"
356                              }
357                            }
358                          }
359                        ],
360                        "loc": {
361                          "start": {
362                            "line": 17,
363                            "column": 11,
364                            "program": "rethrowingCheck1.ets"
365                          },
366                          "end": {
367                            "line": 17,
368                            "column": 46,
369                            "program": "rethrowingCheck1.ets"
370                          }
371                        }
372                      },
373                      "loc": {
374                        "start": {
375                          "line": 17,
376                          "column": 5,
377                          "program": "rethrowingCheck1.ets"
378                        },
379                        "end": {
380                          "line": 17,
381                          "column": 46,
382                          "program": "rethrowingCheck1.ets"
383                        }
384                      }
385                    }
386                  ],
387                  "loc": {
388                    "start": {
389                      "line": 16,
390                      "column": 23,
391                      "program": "rethrowingCheck1.ets"
392                    },
393                    "end": {
394                      "line": 18,
395                      "column": 2,
396                      "program": "rethrowingCheck1.ets"
397                    }
398                  }
399                },
400                "throwMarker": "throws",
401                "loc": {
402                  "start": {
403                    "line": 16,
404                    "column": 10,
405                    "program": "rethrowingCheck1.ets"
406                  },
407                  "end": {
408                    "line": 18,
409                    "column": 2,
410                    "program": "rethrowingCheck1.ets"
411                  }
412                }
413              },
414              "loc": {
415                "start": {
416                  "line": 16,
417                  "column": 10,
418                  "program": "rethrowingCheck1.ets"
419                },
420                "end": {
421                  "line": 18,
422                  "column": 2,
423                  "program": "rethrowingCheck1.ets"
424                }
425              }
426            },
427            "overloads": [],
428            "decorators": [],
429            "loc": {
430              "start": {
431                "line": 16,
432                "column": 1,
433                "program": "rethrowingCheck1.ets"
434              },
435              "end": {
436                "line": 18,
437                "column": 2,
438                "program": "rethrowingCheck1.ets"
439              }
440            }
441          },
442          {
443            "type": "MethodDefinition",
444            "key": {
445              "type": "Identifier",
446              "name": "bar",
447              "decorators": [],
448              "loc": {
449                "start": {
450                  "line": 20,
451                  "column": 10,
452                  "program": "rethrowingCheck1.ets"
453                },
454                "end": {
455                  "line": 20,
456                  "column": 13,
457                  "program": "rethrowingCheck1.ets"
458                }
459              }
460            },
461            "kind": "method",
462            "accessibility": "public",
463            "static": true,
464            "optional": false,
465            "computed": false,
466            "value": {
467              "type": "FunctionExpression",
468              "function": {
469                "type": "ScriptFunction",
470                "id": {
471                  "type": "Identifier",
472                  "name": "bar",
473                  "decorators": [],
474                  "loc": {
475                    "start": {
476                      "line": 20,
477                      "column": 10,
478                      "program": "rethrowingCheck1.ets"
479                    },
480                    "end": {
481                      "line": 20,
482                      "column": 13,
483                      "program": "rethrowingCheck1.ets"
484                    }
485                  }
486                },
487                "generator": false,
488                "async": false,
489                "expression": false,
490                "params": [
491                  {
492                    "type": "ETSParameterExpression",
493                    "name": {
494                      "type": "Identifier",
495                      "name": "a",
496                      "typeAnnotation": {
497                        "type": "ETSFunctionType",
498                        "params": [],
499                        "returnType": {
500                          "type": "ETSPrimitiveType",
501                          "loc": {
502                            "start": {
503                              "line": 20,
504                              "column": 23,
505                              "program": "rethrowingCheck1.ets"
506                            },
507                            "end": {
508                              "line": 20,
509                              "column": 27,
510                              "program": "rethrowingCheck1.ets"
511                            }
512                          }
513                        },
514                        "throwMarker": "throws",
515                        "loc": {
516                          "start": {
517                            "line": 20,
518                            "column": 17,
519                            "program": "rethrowingCheck1.ets"
520                          },
521                          "end": {
522                            "line": 20,
523                            "column": 27,
524                            "program": "rethrowingCheck1.ets"
525                          }
526                        }
527                      },
528                      "decorators": [],
529                      "loc": {
530                        "start": {
531                          "line": 20,
532                          "column": 14,
533                          "program": "rethrowingCheck1.ets"
534                        },
535                        "end": {
536                          "line": 20,
537                          "column": 27,
538                          "program": "rethrowingCheck1.ets"
539                        }
540                      }
541                    },
542                    "loc": {
543                      "start": {
544                        "line": 20,
545                        "column": 14,
546                        "program": "rethrowingCheck1.ets"
547                      },
548                      "end": {
549                        "line": 20,
550                        "column": 27,
551                        "program": "rethrowingCheck1.ets"
552                      }
553                    }
554                  }
555                ],
556                "body": {
557                  "type": "BlockStatement",
558                  "statements": [
559                    {
560                      "type": "TryStatement",
561                      "block": {
562                        "type": "BlockStatement",
563                        "statements": [
564                          {
565                            "type": "ExpressionStatement",
566                            "expression": {
567                              "type": "CallExpression",
568                              "callee": {
569                                "type": "Identifier",
570                                "name": "foo",
571                                "decorators": [],
572                                "loc": {
573                                  "start": {
574                                    "line": 22,
575                                    "column": 9,
576                                    "program": "rethrowingCheck1.ets"
577                                  },
578                                  "end": {
579                                    "line": 22,
580                                    "column": 12,
581                                    "program": "rethrowingCheck1.ets"
582                                  }
583                                }
584                              },
585                              "arguments": [],
586                              "optional": false,
587                              "loc": {
588                                "start": {
589                                  "line": 22,
590                                  "column": 9,
591                                  "program": "rethrowingCheck1.ets"
592                                },
593                                "end": {
594                                  "line": 22,
595                                  "column": 14,
596                                  "program": "rethrowingCheck1.ets"
597                                }
598                              }
599                            },
600                            "loc": {
601                              "start": {
602                                "line": 22,
603                                "column": 9,
604                                "program": "rethrowingCheck1.ets"
605                              },
606                              "end": {
607                                "line": 22,
608                                "column": 15,
609                                "program": "rethrowingCheck1.ets"
610                              }
611                            }
612                          }
613                        ],
614                        "loc": {
615                          "start": {
616                            "line": 21,
617                            "column": 9,
618                            "program": "rethrowingCheck1.ets"
619                          },
620                          "end": {
621                            "line": 23,
622                            "column": 6,
623                            "program": "rethrowingCheck1.ets"
624                          }
625                        }
626                      },
627                      "handler": [
628                        {
629                          "type": "CatchClause",
630                          "body": {
631                            "type": "BlockStatement",
632                            "statements": [],
633                            "loc": {
634                              "start": {
635                                "line": 23,
636                                "column": 17,
637                                "program": "rethrowingCheck1.ets"
638                              },
639                              "end": {
640                                "line": 25,
641                                "column": 6,
642                                "program": "rethrowingCheck1.ets"
643                              }
644                            }
645                          },
646                          "param": {
647                            "type": "Identifier",
648                            "name": "e",
649                            "decorators": [],
650                            "loc": {
651                              "start": {
652                                "line": 23,
653                                "column": 14,
654                                "program": "rethrowingCheck1.ets"
655                              },
656                              "end": {
657                                "line": 23,
658                                "column": 15,
659                                "program": "rethrowingCheck1.ets"
660                              }
661                            }
662                          },
663                          "loc": {
664                            "start": {
665                              "line": 23,
666                              "column": 7,
667                              "program": "rethrowingCheck1.ets"
668                            },
669                            "end": {
670                              "line": 25,
671                              "column": 6,
672                              "program": "rethrowingCheck1.ets"
673                            }
674                          }
675                        }
676                      ],
677                      "finalizer": null,
678                      "loc": {
679                        "start": {
680                          "line": 21,
681                          "column": 5,
682                          "program": "rethrowingCheck1.ets"
683                        },
684                        "end": {
685                          "line": 25,
686                          "column": 6,
687                          "program": "rethrowingCheck1.ets"
688                        }
689                      }
690                    }
691                  ],
692                  "loc": {
693                    "start": {
694                      "line": 20,
695                      "column": 45,
696                      "program": "rethrowingCheck1.ets"
697                    },
698                    "end": {
699                      "line": 26,
700                      "column": 2,
701                      "program": "rethrowingCheck1.ets"
702                    }
703                  }
704                },
705                "throwMarker": "rethrows",
706                "loc": {
707                  "start": {
708                    "line": 20,
709                    "column": 10,
710                    "program": "rethrowingCheck1.ets"
711                  },
712                  "end": {
713                    "line": 26,
714                    "column": 2,
715                    "program": "rethrowingCheck1.ets"
716                  }
717                }
718              },
719              "loc": {
720                "start": {
721                  "line": 20,
722                  "column": 10,
723                  "program": "rethrowingCheck1.ets"
724                },
725                "end": {
726                  "line": 26,
727                  "column": 2,
728                  "program": "rethrowingCheck1.ets"
729                }
730              }
731            },
732            "overloads": [],
733            "decorators": [],
734            "loc": {
735              "start": {
736                "line": 20,
737                "column": 1,
738                "program": "rethrowingCheck1.ets"
739              },
740              "end": {
741                "line": 26,
742                "column": 2,
743                "program": "rethrowingCheck1.ets"
744              }
745            }
746          }
747        ],
748        "loc": {
749          "start": {
750            "line": 1,
751            "column": 1,
752            "program": "rethrowingCheck1.ets"
753          },
754          "end": {
755            "line": 1,
756            "column": 1,
757            "program": "rethrowingCheck1.ets"
758          }
759        }
760      },
761      "loc": {
762        "start": {
763          "line": 1,
764          "column": 1,
765          "program": "rethrowingCheck1.ets"
766        },
767        "end": {
768          "line": 1,
769          "column": 1,
770          "program": "rethrowingCheck1.ets"
771        }
772      }
773    }
774  ],
775  "loc": {
776    "start": {
777      "line": 1,
778      "column": 1,
779      "program": "rethrowingCheck1.ets"
780    },
781    "end": {
782      "line": 27,
783      "column": 1,
784      "program": "rethrowingCheck1.ets"
785    }
786  }
787}
788