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