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