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