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