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