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