• 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": "test_assert",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 16,
14              "column": 7,
15              "program": "assert.ets"
16            },
17            "end": {
18              "line": 16,
19              "column": 18,
20              "program": "assert.ets"
21            }
22          }
23        },
24        "superClass": null,
25        "implements": [],
26        "body": [
27          {
28            "type": "MethodDefinition",
29            "key": {
30              "type": "Identifier",
31              "name": "test",
32              "decorators": [],
33              "loc": {
34                "start": {
35                  "line": 17,
36                  "column": 5,
37                  "program": "assert.ets"
38                },
39                "end": {
40                  "line": 17,
41                  "column": 9,
42                  "program": "assert.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": "test",
58                  "decorators": [],
59                  "loc": {
60                    "start": {
61                      "line": 17,
62                      "column": 5,
63                      "program": "assert.ets"
64                    },
65                    "end": {
66                      "line": 17,
67                      "column": 9,
68                      "program": "assert.ets"
69                    }
70                  }
71                },
72                "generator": false,
73                "async": false,
74                "expression": false,
75                "params": [
76                  {
77                    "type": "ETSParameterExpression",
78                    "name": {
79                      "type": "Identifier",
80                      "name": "x",
81                      "typeAnnotation": {
82                        "type": "ETSPrimitiveType",
83                        "loc": {
84                          "start": {
85                            "line": 17,
86                            "column": 14,
87                            "program": "assert.ets"
88                          },
89                          "end": {
90                            "line": 17,
91                            "column": 17,
92                            "program": "assert.ets"
93                          }
94                        }
95                      },
96                      "decorators": [],
97                      "loc": {
98                        "start": {
99                          "line": 17,
100                          "column": 10,
101                          "program": "assert.ets"
102                        },
103                        "end": {
104                          "line": 17,
105                          "column": 17,
106                          "program": "assert.ets"
107                        }
108                      }
109                    },
110                    "loc": {
111                      "start": {
112                        "line": 17,
113                        "column": 10,
114                        "program": "assert.ets"
115                      },
116                      "end": {
117                        "line": 17,
118                        "column": 17,
119                        "program": "assert.ets"
120                      }
121                    }
122                  }
123                ],
124                "returnType": {
125                  "type": "ETSPrimitiveType",
126                  "loc": {
127                    "start": {
128                      "line": 17,
129                      "column": 20,
130                      "program": "assert.ets"
131                    },
132                    "end": {
133                      "line": 17,
134                      "column": 24,
135                      "program": "assert.ets"
136                    }
137                  }
138                },
139                "body": {
140                  "type": "BlockStatement",
141                  "statements": [
142                    {
143                      "type": "ExpressionStatement",
144                      "expression": {
145                        "type": "CallExpression",
146                        "callee": {
147                          "type": "Identifier",
148                          "name": "assertLT",
149                          "decorators": [],
150                          "loc": {
151                            "start": {
152                              "line": 18,
153                              "column": 9,
154                              "program": "assert.ets"
155                            },
156                            "end": {
157                              "line": 18,
158                              "column": 17,
159                              "program": "assert.ets"
160                            }
161                          }
162                        },
163                        "arguments": [
164                          {
165                            "type": "NumberLiteral",
166                            "value": 10,
167                            "loc": {
168                              "start": {
169                                "line": 18,
170                                "column": 18,
171                                "program": "assert.ets"
172                              },
173                              "end": {
174                                "line": 18,
175                                "column": 20,
176                                "program": "assert.ets"
177                              }
178                            }
179                          },
180                          {
181                            "type": "Identifier",
182                            "name": "x",
183                            "decorators": [],
184                            "loc": {
185                              "start": {
186                                "line": 18,
187                                "column": 22,
188                                "program": "assert.ets"
189                              },
190                              "end": {
191                                "line": 18,
192                                "column": 23,
193                                "program": "assert.ets"
194                              }
195                            }
196                          }
197                        ],
198                        "optional": false,
199                        "loc": {
200                          "start": {
201                            "line": 18,
202                            "column": 9,
203                            "program": "assert.ets"
204                          },
205                          "end": {
206                            "line": 18,
207                            "column": 24,
208                            "program": "assert.ets"
209                          }
210                        }
211                      },
212                      "loc": {
213                        "start": {
214                          "line": 18,
215                          "column": 9,
216                          "program": "assert.ets"
217                        },
218                        "end": {
219                          "line": 18,
220                          "column": 25,
221                          "program": "assert.ets"
222                        }
223                      }
224                    },
225                    {
226                      "type": "ExpressionStatement",
227                      "expression": {
228                        "type": "CallExpression",
229                        "callee": {
230                          "type": "Identifier",
231                          "name": "assertNE",
232                          "decorators": [],
233                          "loc": {
234                            "start": {
235                              "line": 19,
236                              "column": 9,
237                              "program": "assert.ets"
238                            },
239                            "end": {
240                              "line": 19,
241                              "column": 17,
242                              "program": "assert.ets"
243                            }
244                          }
245                        },
246                        "arguments": [
247                          {
248                            "type": "Identifier",
249                            "name": "x",
250                            "decorators": [],
251                            "loc": {
252                              "start": {
253                                "line": 19,
254                                "column": 18,
255                                "program": "assert.ets"
256                              },
257                              "end": {
258                                "line": 19,
259                                "column": 19,
260                                "program": "assert.ets"
261                              }
262                            }
263                          },
264                          {
265                            "type": "NumberLiteral",
266                            "value": 2,
267                            "loc": {
268                              "start": {
269                                "line": 19,
270                                "column": 21,
271                                "program": "assert.ets"
272                              },
273                              "end": {
274                                "line": 19,
275                                "column": 22,
276                                "program": "assert.ets"
277                              }
278                            }
279                          }
280                        ],
281                        "optional": false,
282                        "loc": {
283                          "start": {
284                            "line": 19,
285                            "column": 9,
286                            "program": "assert.ets"
287                          },
288                          "end": {
289                            "line": 19,
290                            "column": 23,
291                            "program": "assert.ets"
292                          }
293                        }
294                      },
295                      "loc": {
296                        "start": {
297                          "line": 19,
298                          "column": 9,
299                          "program": "assert.ets"
300                        },
301                        "end": {
302                          "line": 19,
303                          "column": 24,
304                          "program": "assert.ets"
305                        }
306                      }
307                    },
308                    {
309                      "type": "ExpressionStatement",
310                      "expression": {
311                        "type": "CallExpression",
312                        "callee": {
313                          "type": "Identifier",
314                          "name": "assertTrue",
315                          "decorators": [],
316                          "loc": {
317                            "start": {
318                              "line": 20,
319                              "column": 9,
320                              "program": "assert.ets"
321                            },
322                            "end": {
323                              "line": 20,
324                              "column": 19,
325                              "program": "assert.ets"
326                            }
327                          }
328                        },
329                        "arguments": [
330                          {
331                            "type": "LogicalExpression",
332                            "operator": "||",
333                            "left": {
334                              "type": "BinaryExpression",
335                              "operator": ">",
336                              "left": {
337                                "type": "Identifier",
338                                "name": "x",
339                                "decorators": [],
340                                "loc": {
341                                  "start": {
342                                    "line": 20,
343                                    "column": 20,
344                                    "program": "assert.ets"
345                                  },
346                                  "end": {
347                                    "line": 20,
348                                    "column": 21,
349                                    "program": "assert.ets"
350                                  }
351                                }
352                              },
353                              "right": {
354                                "type": "NumberLiteral",
355                                "value": 10,
356                                "loc": {
357                                  "start": {
358                                    "line": 20,
359                                    "column": 24,
360                                    "program": "assert.ets"
361                                  },
362                                  "end": {
363                                    "line": 20,
364                                    "column": 26,
365                                    "program": "assert.ets"
366                                  }
367                                }
368                              },
369                              "loc": {
370                                "start": {
371                                  "line": 20,
372                                  "column": 20,
373                                  "program": "assert.ets"
374                                },
375                                "end": {
376                                  "line": 20,
377                                  "column": 26,
378                                  "program": "assert.ets"
379                                }
380                              }
381                            },
382                            "right": {
383                              "type": "BinaryExpression",
384                              "operator": "<",
385                              "left": {
386                                "type": "Identifier",
387                                "name": "x",
388                                "decorators": [],
389                                "loc": {
390                                  "start": {
391                                    "line": 20,
392                                    "column": 30,
393                                    "program": "assert.ets"
394                                  },
395                                  "end": {
396                                    "line": 20,
397                                    "column": 31,
398                                    "program": "assert.ets"
399                                  }
400                                }
401                              },
402                              "right": {
403                                "type": "NumberLiteral",
404                                "value": 3,
405                                "loc": {
406                                  "start": {
407                                    "line": 20,
408                                    "column": 34,
409                                    "program": "assert.ets"
410                                  },
411                                  "end": {
412                                    "line": 20,
413                                    "column": 35,
414                                    "program": "assert.ets"
415                                  }
416                                }
417                              },
418                              "loc": {
419                                "start": {
420                                  "line": 20,
421                                  "column": 30,
422                                  "program": "assert.ets"
423                                },
424                                "end": {
425                                  "line": 20,
426                                  "column": 35,
427                                  "program": "assert.ets"
428                                }
429                              }
430                            },
431                            "loc": {
432                              "start": {
433                                "line": 20,
434                                "column": 20,
435                                "program": "assert.ets"
436                              },
437                              "end": {
438                                "line": 20,
439                                "column": 35,
440                                "program": "assert.ets"
441                              }
442                            }
443                          },
444                          {
445                            "type": "StringLiteral",
446                            "value": "inside interval!",
447                            "loc": {
448                              "start": {
449                                "line": 20,
450                                "column": 38,
451                                "program": "assert.ets"
452                              },
453                              "end": {
454                                "line": 20,
455                                "column": 56,
456                                "program": "assert.ets"
457                              }
458                            }
459                          }
460                        ],
461                        "optional": false,
462                        "loc": {
463                          "start": {
464                            "line": 20,
465                            "column": 9,
466                            "program": "assert.ets"
467                          },
468                          "end": {
469                            "line": 20,
470                            "column": 57,
471                            "program": "assert.ets"
472                          }
473                        }
474                      },
475                      "loc": {
476                        "start": {
477                          "line": 20,
478                          "column": 9,
479                          "program": "assert.ets"
480                        },
481                        "end": {
482                          "line": 20,
483                          "column": 58,
484                          "program": "assert.ets"
485                        }
486                      }
487                    },
488                    {
489                      "type": "ExpressionStatement",
490                      "expression": {
491                        "type": "CallExpression",
492                        "callee": {
493                          "type": "Identifier",
494                          "name": "assertTrue",
495                          "decorators": [],
496                          "loc": {
497                            "start": {
498                              "line": 21,
499                              "column": 9,
500                              "program": "assert.ets"
501                            },
502                            "end": {
503                              "line": 21,
504                              "column": 19,
505                              "program": "assert.ets"
506                            }
507                          }
508                        },
509                        "arguments": [
510                          {
511                            "type": "LogicalExpression",
512                            "operator": "&&",
513                            "left": {
514                              "type": "BinaryExpression",
515                              "operator": "<",
516                              "left": {
517                                "type": "Identifier",
518                                "name": "x",
519                                "decorators": [],
520                                "loc": {
521                                  "start": {
522                                    "line": 21,
523                                    "column": 21,
524                                    "program": "assert.ets"
525                                  },
526                                  "end": {
527                                    "line": 21,
528                                    "column": 22,
529                                    "program": "assert.ets"
530                                  }
531                                }
532                              },
533                              "right": {
534                                "type": "NumberLiteral",
535                                "value": 10,
536                                "loc": {
537                                  "start": {
538                                    "line": 21,
539                                    "column": 25,
540                                    "program": "assert.ets"
541                                  },
542                                  "end": {
543                                    "line": 21,
544                                    "column": 27,
545                                    "program": "assert.ets"
546                                  }
547                                }
548                              },
549                              "loc": {
550                                "start": {
551                                  "line": 21,
552                                  "column": 21,
553                                  "program": "assert.ets"
554                                },
555                                "end": {
556                                  "line": 21,
557                                  "column": 27,
558                                  "program": "assert.ets"
559                                }
560                              }
561                            },
562                            "right": {
563                              "type": "BinaryExpression",
564                              "operator": ">",
565                              "left": {
566                                "type": "Identifier",
567                                "name": "x",
568                                "decorators": [],
569                                "loc": {
570                                  "start": {
571                                    "line": 21,
572                                    "column": 31,
573                                    "program": "assert.ets"
574                                  },
575                                  "end": {
576                                    "line": 21,
577                                    "column": 32,
578                                    "program": "assert.ets"
579                                  }
580                                }
581                              },
582                              "right": {
583                                "type": "NumberLiteral",
584                                "value": 2,
585                                "loc": {
586                                  "start": {
587                                    "line": 21,
588                                    "column": 35,
589                                    "program": "assert.ets"
590                                  },
591                                  "end": {
592                                    "line": 21,
593                                    "column": 36,
594                                    "program": "assert.ets"
595                                  }
596                                }
597                              },
598                              "loc": {
599                                "start": {
600                                  "line": 21,
601                                  "column": 31,
602                                  "program": "assert.ets"
603                                },
604                                "end": {
605                                  "line": 21,
606                                  "column": 36,
607                                  "program": "assert.ets"
608                                }
609                              }
610                            },
611                            "loc": {
612                              "start": {
613                                "line": 21,
614                                "column": 20,
615                                "program": "assert.ets"
616                              },
617                              "end": {
618                                "line": 21,
619                                "column": 37,
620                                "program": "assert.ets"
621                              }
622                            }
623                          },
624                          {
625                            "type": "StringLiteral",
626                            "value": "outside interval!",
627                            "loc": {
628                              "start": {
629                                "line": 21,
630                                "column": 40,
631                                "program": "assert.ets"
632                              },
633                              "end": {
634                                "line": 21,
635                                "column": 59,
636                                "program": "assert.ets"
637                              }
638                            }
639                          }
640                        ],
641                        "optional": false,
642                        "loc": {
643                          "start": {
644                            "line": 21,
645                            "column": 9,
646                            "program": "assert.ets"
647                          },
648                          "end": {
649                            "line": 21,
650                            "column": 60,
651                            "program": "assert.ets"
652                          }
653                        }
654                      },
655                      "loc": {
656                        "start": {
657                          "line": 21,
658                          "column": 9,
659                          "program": "assert.ets"
660                        },
661                        "end": {
662                          "line": 21,
663                          "column": 61,
664                          "program": "assert.ets"
665                        }
666                      }
667                    }
668                  ],
669                  "loc": {
670                    "start": {
671                      "line": 17,
672                      "column": 25,
673                      "program": "assert.ets"
674                    },
675                    "end": {
676                      "line": 22,
677                      "column": 6,
678                      "program": "assert.ets"
679                    }
680                  }
681                },
682                "loc": {
683                  "start": {
684                    "line": 17,
685                    "column": 9,
686                    "program": "assert.ets"
687                  },
688                  "end": {
689                    "line": 22,
690                    "column": 6,
691                    "program": "assert.ets"
692                  }
693                }
694              },
695              "loc": {
696                "start": {
697                  "line": 17,
698                  "column": 9,
699                  "program": "assert.ets"
700                },
701                "end": {
702                  "line": 22,
703                  "column": 6,
704                  "program": "assert.ets"
705                }
706              }
707            },
708            "overloads": [],
709            "decorators": [],
710            "loc": {
711              "start": {
712                "line": 17,
713                "column": 5,
714                "program": "assert.ets"
715              },
716              "end": {
717                "line": 22,
718                "column": 6,
719                "program": "assert.ets"
720              }
721            }
722          },
723          {
724            "type": "MethodDefinition",
725            "key": {
726              "type": "Identifier",
727              "name": "constructor",
728              "decorators": [],
729              "loc": {
730                "start": {
731                  "line": 16,
732                  "column": 21,
733                  "program": "assert.ets"
734                },
735                "end": {
736                  "line": 16,
737                  "column": 21,
738                  "program": "assert.ets"
739                }
740              }
741            },
742            "kind": "constructor",
743            "static": false,
744            "optional": false,
745            "computed": false,
746            "value": {
747              "type": "FunctionExpression",
748              "function": {
749                "type": "ScriptFunction",
750                "id": {
751                  "type": "Identifier",
752                  "name": "constructor",
753                  "decorators": [],
754                  "loc": {
755                    "start": {
756                      "line": 16,
757                      "column": 21,
758                      "program": "assert.ets"
759                    },
760                    "end": {
761                      "line": 16,
762                      "column": 21,
763                      "program": "assert.ets"
764                    }
765                  }
766                },
767                "generator": false,
768                "async": false,
769                "expression": false,
770                "params": [],
771                "body": {
772                  "type": "BlockStatement",
773                  "statements": [],
774                  "loc": {
775                    "start": {
776                      "line": 16,
777                      "column": 21,
778                      "program": "assert.ets"
779                    },
780                    "end": {
781                      "line": 16,
782                      "column": 21,
783                      "program": "assert.ets"
784                    }
785                  }
786                },
787                "loc": {
788                  "start": {
789                    "line": 16,
790                    "column": 21,
791                    "program": "assert.ets"
792                  },
793                  "end": {
794                    "line": 16,
795                    "column": 21,
796                    "program": "assert.ets"
797                  }
798                }
799              },
800              "loc": {
801                "start": {
802                  "line": 16,
803                  "column": 21,
804                  "program": "assert.ets"
805                },
806                "end": {
807                  "line": 16,
808                  "column": 21,
809                  "program": "assert.ets"
810                }
811              }
812            },
813            "overloads": [],
814            "decorators": [],
815            "loc": {
816              "start": {
817                "line": 1,
818                "column": 1,
819                "program": null
820              },
821              "end": {
822                "line": 1,
823                "column": 1,
824                "program": null
825              }
826            }
827          }
828        ],
829        "loc": {
830          "start": {
831            "line": 16,
832            "column": 20,
833            "program": "assert.ets"
834          },
835          "end": {
836            "line": 24,
837            "column": 1,
838            "program": "assert.ets"
839          }
840        }
841      },
842      "loc": {
843        "start": {
844          "line": 16,
845          "column": 1,
846          "program": "assert.ets"
847        },
848        "end": {
849          "line": 24,
850          "column": 1,
851          "program": "assert.ets"
852        }
853      }
854    },
855    {
856      "type": "ClassDeclaration",
857      "definition": {
858        "id": {
859          "type": "Identifier",
860          "name": "ETSGLOBAL",
861          "decorators": [],
862          "loc": {
863            "start": {
864              "line": 1,
865              "column": 1,
866              "program": "assert.ets"
867            },
868            "end": {
869              "line": 1,
870              "column": 1,
871              "program": "assert.ets"
872            }
873          }
874        },
875        "superClass": null,
876        "implements": [],
877        "body": [
878          {
879            "type": "MethodDefinition",
880            "key": {
881              "type": "Identifier",
882              "name": "main",
883              "decorators": [],
884              "loc": {
885                "start": {
886                  "line": 1,
887                  "column": 1,
888                  "program": null
889                },
890                "end": {
891                  "line": 1,
892                  "column": 1,
893                  "program": null
894                }
895              }
896            },
897            "kind": "method",
898            "accessibility": "public",
899            "static": true,
900            "optional": false,
901            "computed": false,
902            "value": {
903              "type": "FunctionExpression",
904              "function": {
905                "type": "ScriptFunction",
906                "id": {
907                  "type": "Identifier",
908                  "name": "main",
909                  "decorators": [],
910                  "loc": {
911                    "start": {
912                      "line": 1,
913                      "column": 1,
914                      "program": null
915                    },
916                    "end": {
917                      "line": 1,
918                      "column": 1,
919                      "program": null
920                    }
921                  }
922                },
923                "generator": false,
924                "async": false,
925                "expression": false,
926                "params": [],
927                "body": {
928                  "type": "BlockStatement",
929                  "statements": [],
930                  "loc": {
931                    "start": {
932                      "line": 1,
933                      "column": 1,
934                      "program": null
935                    },
936                    "end": {
937                      "line": 1,
938                      "column": 1,
939                      "program": null
940                    }
941                  }
942                },
943                "loc": {
944                  "start": {
945                    "line": 1,
946                    "column": 1,
947                    "program": null
948                  },
949                  "end": {
950                    "line": 1,
951                    "column": 1,
952                    "program": null
953                  }
954                }
955              },
956              "loc": {
957                "start": {
958                  "line": 1,
959                  "column": 1,
960                  "program": null
961                },
962                "end": {
963                  "line": 1,
964                  "column": 1,
965                  "program": null
966                }
967              }
968            },
969            "overloads": [],
970            "decorators": [],
971            "loc": {
972              "start": {
973                "line": 1,
974                "column": 1,
975                "program": "assert.ets"
976              },
977              "end": {
978                "line": 1,
979                "column": 1,
980                "program": "assert.ets"
981              }
982            }
983          },
984          {
985            "type": "MethodDefinition",
986            "key": {
987              "type": "Identifier",
988              "name": "_$init$_",
989              "decorators": [],
990              "loc": {
991                "start": {
992                  "line": 1,
993                  "column": 1,
994                  "program": null
995                },
996                "end": {
997                  "line": 1,
998                  "column": 1,
999                  "program": null
1000                }
1001              }
1002            },
1003            "kind": "method",
1004            "accessibility": "public",
1005            "static": true,
1006            "optional": false,
1007            "computed": false,
1008            "value": {
1009              "type": "FunctionExpression",
1010              "function": {
1011                "type": "ScriptFunction",
1012                "id": {
1013                  "type": "Identifier",
1014                  "name": "_$init$_",
1015                  "decorators": [],
1016                  "loc": {
1017                    "start": {
1018                      "line": 1,
1019                      "column": 1,
1020                      "program": null
1021                    },
1022                    "end": {
1023                      "line": 1,
1024                      "column": 1,
1025                      "program": null
1026                    }
1027                  }
1028                },
1029                "generator": false,
1030                "async": false,
1031                "expression": false,
1032                "params": [],
1033                "body": {
1034                  "type": "BlockStatement",
1035                  "statements": [],
1036                  "loc": {
1037                    "start": {
1038                      "line": 1,
1039                      "column": 1,
1040                      "program": null
1041                    },
1042                    "end": {
1043                      "line": 1,
1044                      "column": 1,
1045                      "program": null
1046                    }
1047                  }
1048                },
1049                "loc": {
1050                  "start": {
1051                    "line": 1,
1052                    "column": 1,
1053                    "program": null
1054                  },
1055                  "end": {
1056                    "line": 1,
1057                    "column": 1,
1058                    "program": null
1059                  }
1060                }
1061              },
1062              "loc": {
1063                "start": {
1064                  "line": 1,
1065                  "column": 1,
1066                  "program": null
1067                },
1068                "end": {
1069                  "line": 1,
1070                  "column": 1,
1071                  "program": null
1072                }
1073              }
1074            },
1075            "overloads": [],
1076            "decorators": [],
1077            "loc": {
1078              "start": {
1079                "line": 1,
1080                "column": 1,
1081                "program": "assert.ets"
1082              },
1083              "end": {
1084                "line": 1,
1085                "column": 1,
1086                "program": "assert.ets"
1087              }
1088            }
1089          }
1090        ],
1091        "loc": {
1092          "start": {
1093            "line": 1,
1094            "column": 1,
1095            "program": "assert.ets"
1096          },
1097          "end": {
1098            "line": 1,
1099            "column": 1,
1100            "program": "assert.ets"
1101          }
1102        }
1103      },
1104      "loc": {
1105        "start": {
1106          "line": 1,
1107          "column": 1,
1108          "program": "assert.ets"
1109        },
1110        "end": {
1111          "line": 1,
1112          "column": 1,
1113          "program": "assert.ets"
1114        }
1115      }
1116    }
1117  ],
1118  "loc": {
1119    "start": {
1120      "line": 1,
1121      "column": 1,
1122      "program": "assert.ets"
1123    },
1124    "end": {
1125      "line": 24,
1126      "column": 1,
1127      "program": "assert.ets"
1128    }
1129  }
1130}
1131