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