swc/crates/swc_ecma_parser/tests/tsc/derivedClassSuperProperties.json

8968 lines
271 KiB
JSON

{
"type": "Script",
"span": {
"start": 51,
"end": 7733,
"ctxt": 0
},
"body": [
{
"type": "VariableDeclaration",
"span": {
"start": 51,
"end": 79,
"ctxt": 0
},
"kind": "const",
"declare": true,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 65,
"end": 78,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 65,
"end": 73,
"ctxt": 0
},
"value": "decorate",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 73,
"end": 78,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 75,
"end": 78,
"ctxt": 0
},
"kind": "any"
}
}
},
"init": null,
"definite": false
}
]
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 87,
"end": 91,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"declare": false,
"span": {
"start": 81,
"end": 153,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "Constructor",
"span": {
"start": 98,
"end": 117,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 98,
"end": 109,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [
{
"type": "Parameter",
"span": {
"start": 110,
"end": 112,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 110,
"end": 111,
"ctxt": 0
},
"value": "a",
"optional": true,
"typeAnnotation": null
}
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 114,
"end": 117,
"ctxt": 0
},
"stmts": []
},
"accessibility": null,
"isOptional": false
},
{
"type": "ClassMethod",
"span": {
"start": 123,
"end": 151,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 123,
"end": 139,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 140,
"end": 146,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 140,
"end": 145,
"ctxt": 0
},
"value": "param",
"optional": true,
"typeAnnotation": null
}
}
],
"decorators": [],
"span": {
"start": 123,
"end": 151,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 148,
"end": 151,
"ctxt": 0
},
"stmts": []
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 161,
"end": 169,
"ctxt": 0
},
"value": "Derived1",
"optional": false
},
"declare": false,
"span": {
"start": 155,
"end": 280,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 189,
"end": 201,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 189,
"end": 193,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 196,
"end": 200,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 206,
"end": 278,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 206,
"end": 217,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 220,
"end": 278,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 230,
"end": 255,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 230,
"end": 254,
"ctxt": 0
},
"callee": {
"type": "SuperPropExpression",
"span": {
"start": 230,
"end": 252,
"ctxt": 0
},
"obj": {
"type": "Super",
"span": {
"start": 230,
"end": 235,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 236,
"end": 252,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 264,
"end": 272,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 264,
"end": 271,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 264,
"end": 269,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 178,
"end": 182,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 288,
"end": 296,
"ctxt": 0
},
"value": "Derived2",
"optional": false
},
"declare": false,
"span": {
"start": 282,
"end": 411,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 316,
"end": 328,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 316,
"end": 320,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 323,
"end": 327,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 333,
"end": 409,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 333,
"end": 344,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 347,
"end": 409,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 357,
"end": 386,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 357,
"end": 385,
"ctxt": 0
},
"callee": {
"type": "SuperPropExpression",
"span": {
"start": 357,
"end": 379,
"ctxt": 0
},
"obj": {
"type": "Super",
"span": {
"start": 357,
"end": 362,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 363,
"end": 379,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 380,
"end": 384,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 395,
"end": 403,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 395,
"end": 402,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 395,
"end": 400,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 305,
"end": 309,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 419,
"end": 427,
"ctxt": 0
},
"value": "Derived3",
"optional": false
},
"declare": false,
"span": {
"start": 413,
"end": 542,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 447,
"end": 459,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 447,
"end": 451,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 454,
"end": 458,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 464,
"end": 540,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 464,
"end": 475,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 478,
"end": 540,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 488,
"end": 513,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 488,
"end": 512,
"ctxt": 0
},
"callee": {
"type": "SuperPropExpression",
"span": {
"start": 488,
"end": 510,
"ctxt": 0
},
"obj": {
"type": "Super",
"span": {
"start": 488,
"end": 493,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 494,
"end": 510,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 522,
"end": 534,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 522,
"end": 533,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 522,
"end": 527,
"ctxt": 0
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 528,
"end": 532,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 436,
"end": 440,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 550,
"end": 558,
"ctxt": 0
},
"value": "Derived4",
"optional": false
},
"declare": false,
"span": {
"start": 544,
"end": 677,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 578,
"end": 590,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 578,
"end": 582,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 585,
"end": 589,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 595,
"end": 675,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 595,
"end": 606,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 609,
"end": 675,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 619,
"end": 648,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 619,
"end": 647,
"ctxt": 0
},
"callee": {
"type": "SuperPropExpression",
"span": {
"start": 619,
"end": 641,
"ctxt": 0
},
"obj": {
"type": "Super",
"span": {
"start": 619,
"end": 624,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 625,
"end": 641,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 642,
"end": 646,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 657,
"end": 669,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 657,
"end": 668,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 657,
"end": 662,
"ctxt": 0
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 663,
"end": 667,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 567,
"end": 571,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 685,
"end": 693,
"ctxt": 0
},
"value": "Derived5",
"optional": false
},
"declare": false,
"span": {
"start": 679,
"end": 804,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 713,
"end": 725,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 713,
"end": 717,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 720,
"end": 724,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 730,
"end": 802,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 730,
"end": 741,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 744,
"end": 802,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 754,
"end": 762,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 754,
"end": 761,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 754,
"end": 759,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 771,
"end": 796,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 771,
"end": 795,
"ctxt": 0
},
"callee": {
"type": "SuperPropExpression",
"span": {
"start": 771,
"end": 793,
"ctxt": 0
},
"obj": {
"type": "Super",
"span": {
"start": 771,
"end": 776,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 777,
"end": 793,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 702,
"end": 706,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 812,
"end": 820,
"ctxt": 0
},
"value": "Derived6",
"optional": false
},
"declare": false,
"span": {
"start": 806,
"end": 935,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 840,
"end": 852,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 840,
"end": 844,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 847,
"end": 851,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 857,
"end": 933,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 857,
"end": 868,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 871,
"end": 933,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 881,
"end": 893,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 881,
"end": 892,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 881,
"end": 886,
"ctxt": 0
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 887,
"end": 891,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 902,
"end": 927,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 902,
"end": 926,
"ctxt": 0
},
"callee": {
"type": "SuperPropExpression",
"span": {
"start": 902,
"end": 924,
"ctxt": 0
},
"obj": {
"type": "Super",
"span": {
"start": 902,
"end": 907,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 908,
"end": 924,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 829,
"end": 833,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 943,
"end": 951,
"ctxt": 0
},
"value": "Derived7",
"optional": false
},
"declare": false,
"span": {
"start": 937,
"end": 1066,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 971,
"end": 983,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 971,
"end": 975,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 978,
"end": 982,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 988,
"end": 1064,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 988,
"end": 999,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 1002,
"end": 1064,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 1012,
"end": 1020,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1012,
"end": 1019,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 1012,
"end": 1017,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 1029,
"end": 1058,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1029,
"end": 1057,
"ctxt": 0
},
"callee": {
"type": "SuperPropExpression",
"span": {
"start": 1029,
"end": 1051,
"ctxt": 0
},
"obj": {
"type": "Super",
"span": {
"start": 1029,
"end": 1034,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1035,
"end": 1051,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 1052,
"end": 1056,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 960,
"end": 964,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1074,
"end": 1082,
"ctxt": 0
},
"value": "Derived8",
"optional": false
},
"declare": false,
"span": {
"start": 1068,
"end": 1201,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 1102,
"end": 1114,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1102,
"end": 1106,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 1109,
"end": 1113,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 1119,
"end": 1199,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1119,
"end": 1130,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 1133,
"end": 1199,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 1143,
"end": 1155,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1143,
"end": 1154,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 1143,
"end": 1148,
"ctxt": 0
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 1149,
"end": 1153,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 1164,
"end": 1193,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1164,
"end": 1192,
"ctxt": 0
},
"callee": {
"type": "SuperPropExpression",
"span": {
"start": 1164,
"end": 1186,
"ctxt": 0
},
"obj": {
"type": "Super",
"span": {
"start": 1164,
"end": 1169,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1170,
"end": 1186,
"ctxt": 0
},
"value": "receivesAnything",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 1187,
"end": 1191,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 1091,
"end": 1095,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1209,
"end": 1233,
"ctxt": 0
},
"value": "DerivedWithArrowFunction",
"optional": false
},
"declare": false,
"span": {
"start": 1203,
"end": 1334,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 1253,
"end": 1265,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1253,
"end": 1257,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 1260,
"end": 1264,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 1270,
"end": 1332,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1270,
"end": 1281,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 1284,
"end": 1332,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 1294,
"end": 1309,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1294,
"end": 1308,
"ctxt": 0
},
"callee": {
"type": "ParenthesisExpression",
"span": {
"start": 1294,
"end": 1306,
"ctxt": 0
},
"expression": {
"type": "ArrowFunctionExpression",
"span": {
"start": 1295,
"end": 1305,
"ctxt": 0
},
"params": [],
"body": {
"type": "ThisExpression",
"span": {
"start": 1301,
"end": 1305,
"ctxt": 0
}
},
"async": false,
"generator": false,
"typeParameters": null,
"returnType": null
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 1318,
"end": 1326,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1318,
"end": 1325,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 1318,
"end": 1323,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 1242,
"end": 1246,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1342,
"end": 1375,
"ctxt": 0
},
"value": "DerivedWithArrowFunctionParameter",
"optional": false
},
"declare": false,
"span": {
"start": 1336,
"end": 1497,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 1395,
"end": 1407,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1395,
"end": 1399,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 1402,
"end": 1406,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 1412,
"end": 1495,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1412,
"end": 1423,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 1426,
"end": 1495,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 1436,
"end": 1472,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 1442,
"end": 1471,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 1442,
"end": 1448,
"ctxt": 0
},
"value": "lambda",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ArrowFunctionExpression",
"span": {
"start": 1451,
"end": 1471,
"ctxt": 0
},
"params": [
{
"type": "AssignmentPattern",
"span": {
"start": 1452,
"end": 1464,
"ctxt": 0
},
"left": {
"type": "Identifier",
"span": {
"start": 1452,
"end": 1457,
"ctxt": 0
},
"value": "param",
"optional": false,
"typeAnnotation": null
},
"right": {
"type": "ThisExpression",
"span": {
"start": 1460,
"end": 1464,
"ctxt": 0
}
},
"typeAnnotation": null
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 1469,
"end": 1471,
"ctxt": 0
},
"stmts": []
},
"async": false,
"generator": false,
"typeParameters": null,
"returnType": null
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 1481,
"end": 1489,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1481,
"end": 1488,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 1481,
"end": 1486,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 1384,
"end": 1388,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1505,
"end": 1532,
"ctxt": 0
},
"value": "DerivedWithDecoratorOnClass",
"optional": false
},
"declare": false,
"span": {
"start": 1499,
"end": 1663,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 1552,
"end": 1564,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1552,
"end": 1556,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 1559,
"end": 1563,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 1569,
"end": 1661,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1569,
"end": 1580,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 1583,
"end": 1661,
"ctxt": 0
},
"stmts": [
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1623,
"end": 1633,
"ctxt": 0
},
"value": "InnerClass",
"optional": false
},
"declare": false,
"span": {
"start": 1593,
"end": 1637,
"ctxt": 0
},
"decorators": [
{
"type": "Decorator",
"span": {
"start": 1593,
"end": 1608,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1594,
"end": 1608,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 1594,
"end": 1602,
"ctxt": 0
},
"value": "decorate",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 1603,
"end": 1607,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
}
],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ExpressionStatement",
"span": {
"start": 1647,
"end": 1655,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1647,
"end": 1654,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 1647,
"end": 1652,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 1541,
"end": 1545,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1671,
"end": 1704,
"ctxt": 0
},
"value": "DerivedWithDecoratorOnClassMethod",
"optional": false
},
"declare": false,
"span": {
"start": 1665,
"end": 1877,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 1724,
"end": 1736,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1724,
"end": 1728,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 1731,
"end": 1735,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 1741,
"end": 1875,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1741,
"end": 1752,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 1755,
"end": 1875,
"ctxt": 0
},
"stmts": [
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1771,
"end": 1781,
"ctxt": 0
},
"value": "InnerClass",
"optional": false
},
"declare": false,
"span": {
"start": 1765,
"end": 1851,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassMethod",
"span": {
"start": 1796,
"end": 1841,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1824,
"end": 1835,
"ctxt": 0
},
"value": "innerMethod",
"optional": false
},
"function": {
"params": [],
"decorators": [
{
"type": "Decorator",
"span": {
"start": 1796,
"end": 1811,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1797,
"end": 1811,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 1797,
"end": 1805,
"ctxt": 0
},
"value": "decorate",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 1806,
"end": 1810,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
}
],
"span": {
"start": 1796,
"end": 1841,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1838,
"end": 1841,
"ctxt": 0
},
"stmts": []
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ExpressionStatement",
"span": {
"start": 1861,
"end": 1869,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1861,
"end": 1868,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 1861,
"end": 1866,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 1713,
"end": 1717,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1885,
"end": 1920,
"ctxt": 0
},
"value": "DerivedWithDecoratorOnClassProperty",
"optional": false
},
"declare": false,
"span": {
"start": 1879,
"end": 2093,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 1940,
"end": 1952,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1940,
"end": 1944,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 1947,
"end": 1951,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 1957,
"end": 2091,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1957,
"end": 1968,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 1971,
"end": 2091,
"ctxt": 0
},
"stmts": [
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1987,
"end": 1997,
"ctxt": 0
},
"value": "InnerClass",
"optional": false
},
"declare": false,
"span": {
"start": 1981,
"end": 2067,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 2012,
"end": 2057,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2040,
"end": 2049,
"ctxt": 0
},
"value": "innerProp",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 2052,
"end": 2056,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [
{
"type": "Decorator",
"span": {
"start": 2012,
"end": 2027,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2013,
"end": 2027,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 2013,
"end": 2021,
"ctxt": 0
},
"value": "decorate",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ThisExpression",
"span": {
"start": 2022,
"end": 2026,
"ctxt": 0
}
}
}
],
"typeArguments": null
}
}
],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ExpressionStatement",
"span": {
"start": 2077,
"end": 2085,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2077,
"end": 2084,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 2077,
"end": 2082,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 1929,
"end": 1933,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2101,
"end": 2131,
"ctxt": 0
},
"value": "DerivedWithFunctionDeclaration",
"optional": false
},
"declare": false,
"span": {
"start": 2095,
"end": 2276,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 2151,
"end": 2163,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2151,
"end": 2155,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 2158,
"end": 2162,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 2168,
"end": 2274,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2168,
"end": 2179,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 2182,
"end": 2274,
"ctxt": 0
},
"stmts": [
{
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2201,
"end": 2212,
"ctxt": 0
},
"value": "declaration",
"optional": false
},
"declare": false,
"params": [],
"decorators": [],
"span": {
"start": 2192,
"end": 2251,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2215,
"end": 2251,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 2229,
"end": 2241,
"ctxt": 0
},
"argument": {
"type": "ThisExpression",
"span": {
"start": 2236,
"end": 2240,
"ctxt": 0
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
{
"type": "ExpressionStatement",
"span": {
"start": 2260,
"end": 2268,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2260,
"end": 2267,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 2260,
"end": 2265,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2140,
"end": 2144,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2284,
"end": 2326,
"ctxt": 0
},
"value": "DerivedWithFunctionDeclarationAndThisParam",
"optional": false
},
"declare": false,
"span": {
"start": 2278,
"end": 2484,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 2346,
"end": 2358,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2346,
"end": 2350,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 2353,
"end": 2357,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 2363,
"end": 2482,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2363,
"end": 2374,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 2377,
"end": 2482,
"ctxt": 0
},
"stmts": [
{
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2396,
"end": 2407,
"ctxt": 0
},
"value": "declaration",
"optional": false
},
"declare": false,
"params": [
{
"type": "Parameter",
"span": {
"start": 2408,
"end": 2420,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "AssignmentPattern",
"span": {
"start": 2408,
"end": 2420,
"ctxt": 0
},
"left": {
"type": "Identifier",
"span": {
"start": 2408,
"end": 2413,
"ctxt": 0
},
"value": "param",
"optional": false,
"typeAnnotation": null
},
"right": {
"type": "ThisExpression",
"span": {
"start": 2416,
"end": 2420,
"ctxt": 0
}
},
"typeAnnotation": null
}
}
],
"decorators": [],
"span": {
"start": 2387,
"end": 2459,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2422,
"end": 2459,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 2436,
"end": 2449,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 2443,
"end": 2448,
"ctxt": 0
},
"value": "param",
"optional": false
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
{
"type": "ExpressionStatement",
"span": {
"start": 2468,
"end": 2476,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2468,
"end": 2475,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 2468,
"end": 2473,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2335,
"end": 2339,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2492,
"end": 2521,
"ctxt": 0
},
"value": "DerivedWithFunctionExpression",
"optional": false
},
"declare": false,
"span": {
"start": 2486,
"end": 2660,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 2541,
"end": 2553,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2541,
"end": 2545,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 2548,
"end": 2552,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 2558,
"end": 2658,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2558,
"end": 2569,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 2572,
"end": 2658,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 2582,
"end": 2635,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2582,
"end": 2634,
"ctxt": 0
},
"callee": {
"type": "ParenthesisExpression",
"span": {
"start": 2582,
"end": 2632,
"ctxt": 0
},
"expression": {
"type": "FunctionExpression",
"identifier": null,
"params": [],
"decorators": [],
"span": {
"start": 2583,
"end": 2631,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2595,
"end": 2631,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 2609,
"end": 2621,
"ctxt": 0
},
"argument": {
"type": "ThisExpression",
"span": {
"start": 2616,
"end": 2620,
"ctxt": 0
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 2644,
"end": 2652,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2644,
"end": 2651,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 2644,
"end": 2649,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2530,
"end": 2534,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2668,
"end": 2690,
"ctxt": 0
},
"value": "DerivedWithParenthesis",
"optional": false
},
"declare": false,
"span": {
"start": 2662,
"end": 2769,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 2710,
"end": 2722,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2710,
"end": 2714,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 2717,
"end": 2721,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 2727,
"end": 2767,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2727,
"end": 2738,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 2741,
"end": 2767,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 2751,
"end": 2761,
"ctxt": 0
},
"expression": {
"type": "ParenthesisExpression",
"span": {
"start": 2751,
"end": 2760,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2752,
"end": 2759,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 2752,
"end": 2757,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2699,
"end": 2703,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2777,
"end": 2813,
"ctxt": 0
},
"value": "DerivedWithParenthesisAfterStatement",
"optional": false
},
"declare": false,
"span": {
"start": 2771,
"end": 2911,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 2833,
"end": 2845,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2833,
"end": 2837,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 2840,
"end": 2844,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 2850,
"end": 2909,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2850,
"end": 2861,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 2864,
"end": 2909,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 2874,
"end": 2884,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 2874,
"end": 2883,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2874,
"end": 2878,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2879,
"end": 2883,
"ctxt": 0
},
"value": "prop",
"optional": false
}
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 2893,
"end": 2903,
"ctxt": 0
},
"expression": {
"type": "ParenthesisExpression",
"span": {
"start": 2893,
"end": 2902,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2894,
"end": 2901,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 2894,
"end": 2899,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2822,
"end": 2826,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2919,
"end": 2956,
"ctxt": 0
},
"value": "DerivedWithParenthesisBeforeStatement",
"optional": false
},
"declare": false,
"span": {
"start": 2913,
"end": 3054,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 2976,
"end": 2988,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2976,
"end": 2980,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 2983,
"end": 2987,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 2993,
"end": 3052,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2993,
"end": 3004,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 3007,
"end": 3052,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 3017,
"end": 3027,
"ctxt": 0
},
"expression": {
"type": "ParenthesisExpression",
"span": {
"start": 3017,
"end": 3026,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3018,
"end": 3025,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 3018,
"end": 3023,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 3036,
"end": 3046,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 3036,
"end": 3045,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3036,
"end": 3040,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3041,
"end": 3045,
"ctxt": 0
},
"value": "prop",
"optional": false
}
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2965,
"end": 2969,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 3062,
"end": 3089,
"ctxt": 0
},
"value": "DerivedWithClassDeclaration",
"optional": false
},
"declare": false,
"span": {
"start": 3056,
"end": 3415,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 3109,
"end": 3121,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3109,
"end": 3113,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 3116,
"end": 3120,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 3126,
"end": 3413,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3126,
"end": 3137,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 3140,
"end": 3413,
"ctxt": 0
},
"stmts": [
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 3156,
"end": 3166,
"ctxt": 0
},
"value": "InnerClass",
"optional": false
},
"declare": false,
"span": {
"start": 3150,
"end": 3390,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassMethod",
"span": {
"start": 3181,
"end": 3242,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3189,
"end": 3195,
"ctxt": 0
},
"value": "method",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 3181,
"end": 3242,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 3198,
"end": 3242,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 3216,
"end": 3228,
"ctxt": 0
},
"argument": {
"type": "ThisExpression",
"span": {
"start": 3223,
"end": 3227,
"ctxt": 0
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "private",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassProperty",
"span": {
"start": 3255,
"end": 3276,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3263,
"end": 3271,
"ctxt": 0
},
"value": "property",
"optional": false
},
"value": {
"type": "NumericLiteral",
"span": {
"start": 3274,
"end": 3275,
"ctxt": 0
},
"value": 7.0,
"raw": "7"
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": "private",
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 3289,
"end": 3380,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3289,
"end": 3300,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 3303,
"end": 3380,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 3321,
"end": 3335,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 3321,
"end": 3334,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3321,
"end": 3325,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3326,
"end": 3334,
"ctxt": 0
},
"value": "property",
"optional": false
}
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 3352,
"end": 3366,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3352,
"end": 3365,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3352,
"end": 3363,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3352,
"end": 3356,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3357,
"end": 3363,
"ctxt": 0
},
"value": "method",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ExpressionStatement",
"span": {
"start": 3399,
"end": 3407,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3399,
"end": 3406,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 3399,
"end": 3404,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 3098,
"end": 3102,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 3423,
"end": 3465,
"ctxt": 0
},
"value": "DerivedWithClassDeclarationExtendingMember",
"optional": false
},
"declare": false,
"span": {
"start": 3417,
"end": 3853,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 3485,
"end": 3509,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3485,
"end": 3496,
"ctxt": 0
},
"value": "memberClass",
"optional": false
},
"value": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 3499,
"end": 3508,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 3514,
"end": 3851,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3514,
"end": 3525,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 3528,
"end": 3851,
"ctxt": 0
},
"stmts": [
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 3544,
"end": 3554,
"ctxt": 0
},
"value": "InnerClass",
"optional": false
},
"declare": false,
"span": {
"start": 3538,
"end": 3828,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassMethod",
"span": {
"start": 3594,
"end": 3655,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3602,
"end": 3608,
"ctxt": 0
},
"value": "method",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 3594,
"end": 3655,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 3611,
"end": 3655,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 3629,
"end": 3641,
"ctxt": 0
},
"argument": {
"type": "ThisExpression",
"span": {
"start": 3636,
"end": 3640,
"ctxt": 0
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "private",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassProperty",
"span": {
"start": 3668,
"end": 3689,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3676,
"end": 3684,
"ctxt": 0
},
"value": "property",
"optional": false
},
"value": {
"type": "NumericLiteral",
"span": {
"start": 3687,
"end": 3688,
"ctxt": 0
},
"value": 7.0,
"raw": "7"
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": "private",
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 3702,
"end": 3818,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3702,
"end": 3713,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 3716,
"end": 3818,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 3734,
"end": 3742,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3734,
"end": 3741,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 3734,
"end": 3739,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 3759,
"end": 3773,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 3759,
"end": 3772,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3759,
"end": 3763,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3764,
"end": 3772,
"ctxt": 0
},
"value": "property",
"optional": false
}
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 3790,
"end": 3804,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3790,
"end": 3803,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3790,
"end": 3801,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3790,
"end": 3794,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3795,
"end": 3801,
"ctxt": 0
},
"value": "method",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "MemberExpression",
"span": {
"start": 3563,
"end": 3579,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3563,
"end": 3567,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3568,
"end": 3579,
"ctxt": 0
},
"value": "memberClass",
"optional": false
}
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ExpressionStatement",
"span": {
"start": 3837,
"end": 3845,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3837,
"end": 3844,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 3837,
"end": 3842,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 3474,
"end": 3478,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 3861,
"end": 3887,
"ctxt": 0
},
"value": "DerivedWithClassExpression",
"optional": false
},
"declare": false,
"span": {
"start": 3855,
"end": 4216,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 3907,
"end": 3919,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3907,
"end": 3911,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 3914,
"end": 3918,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 3924,
"end": 4214,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3924,
"end": 3935,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 3938,
"end": 4214,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 3948,
"end": 4191,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3948,
"end": 4190,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3948,
"end": 3959,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 3948,
"end": 3955,
"ctxt": 0
},
"value": "console",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 3956,
"end": 3959,
"ctxt": 0
},
"value": "log",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 3960,
"end": 4189,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassMethod",
"span": {
"start": 3980,
"end": 4041,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3988,
"end": 3994,
"ctxt": 0
},
"value": "method",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 3980,
"end": 4041,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 3997,
"end": 4041,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 4015,
"end": 4027,
"ctxt": 0
},
"argument": {
"type": "ThisExpression",
"span": {
"start": 4022,
"end": 4026,
"ctxt": 0
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "private",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassProperty",
"span": {
"start": 4054,
"end": 4075,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4062,
"end": 4070,
"ctxt": 0
},
"value": "property",
"optional": false
},
"value": {
"type": "NumericLiteral",
"span": {
"start": 4073,
"end": 4074,
"ctxt": 0
},
"value": 7.0,
"raw": "7"
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": "private",
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 4088,
"end": 4179,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4088,
"end": 4099,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 4102,
"end": 4179,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 4120,
"end": 4134,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 4120,
"end": 4133,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4120,
"end": 4124,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4125,
"end": 4133,
"ctxt": 0
},
"value": "property",
"optional": false
}
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 4151,
"end": 4165,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4151,
"end": 4164,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4151,
"end": 4162,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4151,
"end": 4155,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4156,
"end": 4162,
"ctxt": 0
},
"value": "method",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 4200,
"end": 4208,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4200,
"end": 4207,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 4200,
"end": 4205,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 3896,
"end": 3900,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 4224,
"end": 4265,
"ctxt": 0
},
"value": "DerivedWithClassExpressionExtendingMember",
"optional": false
},
"declare": false,
"span": {
"start": 4218,
"end": 4411,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 4285,
"end": 4309,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4285,
"end": 4296,
"ctxt": 0
},
"value": "memberClass",
"optional": false
},
"value": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 4299,
"end": 4308,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 4314,
"end": 4409,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4314,
"end": 4325,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 4328,
"end": 4409,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 4338,
"end": 4386,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4338,
"end": 4385,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4338,
"end": 4349,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 4338,
"end": 4345,
"ctxt": 0
},
"value": "console",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 4346,
"end": 4349,
"ctxt": 0
},
"value": "log",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 4350,
"end": 4384,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": {
"type": "MemberExpression",
"span": {
"start": 4364,
"end": 4380,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4364,
"end": 4368,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4369,
"end": 4380,
"ctxt": 0
},
"value": "memberClass",
"optional": false
}
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 4395,
"end": 4403,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4395,
"end": 4402,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 4395,
"end": 4400,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 4274,
"end": 4278,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 4419,
"end": 4452,
"ctxt": 0
},
"value": "DerivedWithDerivedClassExpression",
"optional": false
},
"declare": false,
"span": {
"start": 4413,
"end": 4756,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 4472,
"end": 4484,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4472,
"end": 4476,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 4479,
"end": 4483,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 4489,
"end": 4754,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4489,
"end": 4500,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 4503,
"end": 4754,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 4513,
"end": 4731,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4513,
"end": 4730,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4513,
"end": 4524,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 4513,
"end": 4520,
"ctxt": 0
},
"value": "console",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 4521,
"end": 4524,
"ctxt": 0
},
"value": "log",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 4525,
"end": 4729,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "Constructor",
"span": {
"start": 4558,
"end": 4612,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4558,
"end": 4569,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 4572,
"end": 4612,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 4590,
"end": 4598,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4590,
"end": 4597,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 4590,
"end": 4595,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
},
{
"type": "ClassMethod",
"span": {
"start": 4625,
"end": 4682,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4632,
"end": 4635,
"ctxt": 0
},
"value": "foo",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 4625,
"end": 4682,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 4638,
"end": 4682,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 4656,
"end": 4668,
"ctxt": 0
},
"argument": {
"type": "ThisExpression",
"span": {
"start": 4663,
"end": 4667,
"ctxt": 0
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassProperty",
"span": {
"start": 4695,
"end": 4719,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4702,
"end": 4705,
"ctxt": 0
},
"value": "bar",
"optional": false
},
"value": {
"type": "ArrowFunctionExpression",
"span": {
"start": 4708,
"end": 4718,
"ctxt": 0
},
"params": [],
"body": {
"type": "ThisExpression",
"span": {
"start": 4714,
"end": 4718,
"ctxt": 0
}
},
"async": false,
"generator": false,
"typeParameters": null,
"returnType": null
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 4539,
"end": 4543,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 4740,
"end": 4748,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4740,
"end": 4747,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 4740,
"end": 4745,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 4461,
"end": 4465,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 4764,
"end": 4800,
"ctxt": 0
},
"value": "DerivedWithNewDerivedClassExpression",
"optional": false
},
"declare": false,
"span": {
"start": 4758,
"end": 5003,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 4820,
"end": 4832,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4820,
"end": 4824,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 4827,
"end": 4831,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 4837,
"end": 5001,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4837,
"end": 4848,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 4851,
"end": 5001,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 4861,
"end": 4978,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4861,
"end": 4977,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4861,
"end": 4872,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 4861,
"end": 4868,
"ctxt": 0
},
"value": "console",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 4869,
"end": 4872,
"ctxt": 0
},
"value": "log",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "NewExpression",
"span": {
"start": 4873,
"end": 4976,
"ctxt": 0
},
"callee": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 4877,
"end": 4974,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "Constructor",
"span": {
"start": 4910,
"end": 4964,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4910,
"end": 4921,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 4924,
"end": 4964,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 4942,
"end": 4950,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4942,
"end": 4949,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 4942,
"end": 4947,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 4891,
"end": 4895,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
"arguments": [],
"typeArguments": null
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 4987,
"end": 4995,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4987,
"end": 4994,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 4987,
"end": 4992,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 4809,
"end": 4813,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 5011,
"end": 5037,
"ctxt": 0
},
"value": "DerivedWithObjectAccessors",
"optional": false
},
"declare": false,
"span": {
"start": 5005,
"end": 5296,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 5057,
"end": 5069,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5057,
"end": 5061,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 5064,
"end": 5068,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 5074,
"end": 5294,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5074,
"end": 5085,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 5088,
"end": 5294,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 5098,
"end": 5271,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 5104,
"end": 5270,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 5104,
"end": 5107,
"ctxt": 0
},
"value": "obj",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ObjectExpression",
"span": {
"start": 5110,
"end": 5270,
"ctxt": 0
},
"properties": [
{
"type": "GetterProperty",
"span": {
"start": 5124,
"end": 5179,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5128,
"end": 5132,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"typeAnnotation": null,
"body": {
"type": "BlockStatement",
"span": {
"start": 5135,
"end": 5179,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 5153,
"end": 5165,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 5160,
"end": 5164,
"ctxt": 0
},
"value": true
}
}
]
}
},
{
"type": "SetterProperty",
"span": {
"start": 5193,
"end": 5260,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5197,
"end": 5201,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"param": {
"type": "Identifier",
"span": {
"start": 5202,
"end": 5207,
"ctxt": 0
},
"value": "param",
"optional": false,
"typeAnnotation": null
},
"body": {
"type": "BlockStatement",
"span": {
"start": 5209,
"end": 5260,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 5227,
"end": 5246,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 5227,
"end": 5245,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 5227,
"end": 5237,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5227,
"end": 5231,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5232,
"end": 5237,
"ctxt": 0
},
"value": "_prop",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 5240,
"end": 5245,
"ctxt": 0
},
"value": "param",
"optional": false
}
}
}
]
}
}
]
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 5280,
"end": 5288,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 5280,
"end": 5287,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 5280,
"end": 5285,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 5046,
"end": 5050,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 5304,
"end": 5345,
"ctxt": 0
},
"value": "DerivedWithObjectAccessorsUsingThisInKeys",
"optional": false
},
"declare": false,
"span": {
"start": 5298,
"end": 5659,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 5365,
"end": 5383,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5365,
"end": 5373,
"ctxt": 0
},
"value": "propName",
"optional": false
},
"value": {
"type": "StringLiteral",
"span": {
"start": 5376,
"end": 5382,
"ctxt": 0
},
"value": "prop",
"raw": "\"prop\""
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 5388,
"end": 5657,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5388,
"end": 5399,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 5402,
"end": 5657,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 5412,
"end": 5634,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 5418,
"end": 5633,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 5418,
"end": 5421,
"ctxt": 0
},
"value": "obj",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ObjectExpression",
"span": {
"start": 5424,
"end": 5633,
"ctxt": 0
},
"properties": [
{
"type": "KeyValueProperty",
"key": {
"type": "Identifier",
"span": {
"start": 5438,
"end": 5443,
"ctxt": 0
},
"value": "_prop",
"optional": false
},
"value": {
"type": "StringLiteral",
"span": {
"start": 5445,
"end": 5451,
"ctxt": 0
},
"value": "prop",
"raw": "\"prop\""
}
},
{
"type": "GetterProperty",
"span": {
"start": 5465,
"end": 5531,
"ctxt": 0
},
"key": {
"type": "Computed",
"span": {
"start": 5469,
"end": 5484,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 5470,
"end": 5483,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5470,
"end": 5474,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5475,
"end": 5483,
"ctxt": 0
},
"value": "propName",
"optional": false
}
}
},
"typeAnnotation": null,
"body": {
"type": "BlockStatement",
"span": {
"start": 5487,
"end": 5531,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 5505,
"end": 5517,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 5512,
"end": 5516,
"ctxt": 0
},
"value": true
}
}
]
}
},
{
"type": "SetterProperty",
"span": {
"start": 5545,
"end": 5623,
"ctxt": 0
},
"key": {
"type": "Computed",
"span": {
"start": 5549,
"end": 5564,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 5550,
"end": 5563,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5550,
"end": 5554,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5555,
"end": 5563,
"ctxt": 0
},
"value": "propName",
"optional": false
}
}
},
"param": {
"type": "Identifier",
"span": {
"start": 5565,
"end": 5570,
"ctxt": 0
},
"value": "param",
"optional": false,
"typeAnnotation": null
},
"body": {
"type": "BlockStatement",
"span": {
"start": 5572,
"end": 5623,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 5590,
"end": 5609,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 5590,
"end": 5608,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 5590,
"end": 5600,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5590,
"end": 5594,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5595,
"end": 5600,
"ctxt": 0
},
"value": "_prop",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 5603,
"end": 5608,
"ctxt": 0
},
"value": "param",
"optional": false
}
}
}
]
}
}
]
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 5643,
"end": 5651,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 5643,
"end": 5650,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 5643,
"end": 5648,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 5354,
"end": 5358,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 5667,
"end": 5710,
"ctxt": 0
},
"value": "DerivedWithObjectAccessorsUsingThisInBodies",
"optional": false
},
"declare": false,
"span": {
"start": 5661,
"end": 6008,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 5730,
"end": 5748,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5730,
"end": 5738,
"ctxt": 0
},
"value": "propName",
"optional": false
},
"value": {
"type": "StringLiteral",
"span": {
"start": 5741,
"end": 5747,
"ctxt": 0
},
"value": "prop",
"raw": "\"prop\""
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 5753,
"end": 6006,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5753,
"end": 5764,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 5767,
"end": 6006,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 5777,
"end": 5983,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 5783,
"end": 5982,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 5783,
"end": 5786,
"ctxt": 0
},
"value": "obj",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ObjectExpression",
"span": {
"start": 5789,
"end": 5982,
"ctxt": 0
},
"properties": [
{
"type": "KeyValueProperty",
"key": {
"type": "Identifier",
"span": {
"start": 5803,
"end": 5808,
"ctxt": 0
},
"value": "_prop",
"optional": false
},
"value": {
"type": "StringLiteral",
"span": {
"start": 5810,
"end": 5816,
"ctxt": 0
},
"value": "prop",
"raw": "\"prop\""
}
},
{
"type": "GetterProperty",
"span": {
"start": 5830,
"end": 5891,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5834,
"end": 5838,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"typeAnnotation": null,
"body": {
"type": "BlockStatement",
"span": {
"start": 5841,
"end": 5891,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 5859,
"end": 5877,
"ctxt": 0
},
"argument": {
"type": "MemberExpression",
"span": {
"start": 5866,
"end": 5876,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5866,
"end": 5870,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5871,
"end": 5876,
"ctxt": 0
},
"value": "_prop",
"optional": false
}
}
}
]
}
},
{
"type": "SetterProperty",
"span": {
"start": 5905,
"end": 5972,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5909,
"end": 5913,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"param": {
"type": "Identifier",
"span": {
"start": 5914,
"end": 5919,
"ctxt": 0
},
"value": "param",
"optional": false,
"typeAnnotation": null
},
"body": {
"type": "BlockStatement",
"span": {
"start": 5921,
"end": 5972,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 5939,
"end": 5958,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 5939,
"end": 5957,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 5939,
"end": 5949,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5939,
"end": 5943,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5944,
"end": 5949,
"ctxt": 0
},
"value": "_prop",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 5952,
"end": 5957,
"ctxt": 0
},
"value": "param",
"optional": false
}
}
}
]
}
}
]
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 5992,
"end": 6000,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 5992,
"end": 5999,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 5992,
"end": 5997,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 5719,
"end": 5723,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 6016,
"end": 6053,
"ctxt": 0
},
"value": "DerivedWithObjectComputedPropertyBody",
"optional": false
},
"declare": false,
"span": {
"start": 6010,
"end": 6202,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 6073,
"end": 6091,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6073,
"end": 6081,
"ctxt": 0
},
"value": "propName",
"optional": false
},
"value": {
"type": "StringLiteral",
"span": {
"start": 6084,
"end": 6090,
"ctxt": 0
},
"value": "prop",
"raw": "\"prop\""
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 6096,
"end": 6200,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6096,
"end": 6107,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 6110,
"end": 6200,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 6120,
"end": 6177,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 6126,
"end": 6176,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 6126,
"end": 6129,
"ctxt": 0
},
"value": "obj",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ObjectExpression",
"span": {
"start": 6132,
"end": 6176,
"ctxt": 0
},
"properties": [
{
"type": "KeyValueProperty",
"key": {
"type": "Identifier",
"span": {
"start": 6146,
"end": 6150,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "MemberExpression",
"span": {
"start": 6152,
"end": 6165,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6152,
"end": 6156,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6157,
"end": 6165,
"ctxt": 0
},
"value": "propName",
"optional": false
}
}
}
]
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 6186,
"end": 6194,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 6186,
"end": 6193,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 6186,
"end": 6191,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 6062,
"end": 6066,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 6210,
"end": 6247,
"ctxt": 0
},
"value": "DerivedWithObjectComputedPropertyName",
"optional": false
},
"declare": false,
"span": {
"start": 6204,
"end": 6398,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 6267,
"end": 6285,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6267,
"end": 6275,
"ctxt": 0
},
"value": "propName",
"optional": false
},
"value": {
"type": "StringLiteral",
"span": {
"start": 6278,
"end": 6284,
"ctxt": 0
},
"value": "prop",
"raw": "\"prop\""
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 6290,
"end": 6396,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6290,
"end": 6301,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 6304,
"end": 6396,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 6314,
"end": 6373,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 6320,
"end": 6372,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 6320,
"end": 6323,
"ctxt": 0
},
"value": "obj",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ObjectExpression",
"span": {
"start": 6326,
"end": 6372,
"ctxt": 0
},
"properties": [
{
"type": "KeyValueProperty",
"key": {
"type": "Computed",
"span": {
"start": 6340,
"end": 6355,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 6341,
"end": 6354,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6341,
"end": 6345,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6346,
"end": 6354,
"ctxt": 0
},
"value": "propName",
"optional": false
}
}
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 6357,
"end": 6361,
"ctxt": 0
},
"value": true
}
}
]
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 6382,
"end": 6390,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 6382,
"end": 6389,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 6382,
"end": 6387,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 6256,
"end": 6260,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 6406,
"end": 6429,
"ctxt": 0
},
"value": "DerivedWithObjectMethod",
"optional": false
},
"declare": false,
"span": {
"start": 6400,
"end": 6607,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 6449,
"end": 6461,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6449,
"end": 6453,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 6456,
"end": 6460,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 6466,
"end": 6605,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6466,
"end": 6477,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 6480,
"end": 6605,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 6490,
"end": 6582,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 6496,
"end": 6581,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 6496,
"end": 6499,
"ctxt": 0
},
"value": "obj",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ObjectExpression",
"span": {
"start": 6502,
"end": 6581,
"ctxt": 0
},
"properties": [
{
"type": "MethodProperty",
"key": {
"type": "Identifier",
"span": {
"start": 6516,
"end": 6523,
"ctxt": 0
},
"value": "getProp",
"optional": false
},
"params": [],
"decorators": [],
"span": {
"start": 6516,
"end": 6570,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 6526,
"end": 6570,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 6544,
"end": 6556,
"ctxt": 0
},
"argument": {
"type": "ThisExpression",
"span": {
"start": 6551,
"end": 6555,
"ctxt": 0
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
}
]
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 6591,
"end": 6599,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 6591,
"end": 6598,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 6591,
"end": 6596,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 6438,
"end": 6442,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "VariableDeclaration",
"span": {
"start": 6609,
"end": 6618,
"ctxt": 0
},
"kind": "let",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 6613,
"end": 6614,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 6613,
"end": 6614,
"ctxt": 0
},
"value": "a",
"optional": false,
"typeAnnotation": null
},
"init": null,
"definite": false
},
{
"type": "VariableDeclarator",
"span": {
"start": 6616,
"end": 6617,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 6616,
"end": 6617,
"ctxt": 0
},
"value": "b",
"optional": false,
"typeAnnotation": null
},
"init": null,
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 6620,
"end": 7733,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 6626,
"end": 7733,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 6626,
"end": 6642,
"ctxt": 0
},
"value": "DerivedWithLoops",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ArrayExpression",
"span": {
"start": 6645,
"end": 7733,
"ctxt": 0
},
"elements": [
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 6651,
"end": 6762,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 6680,
"end": 6692,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6680,
"end": 6684,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 6687,
"end": 6691,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 6701,
"end": 6756,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6701,
"end": 6712,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 6715,
"end": 6756,
"ctxt": 0
},
"stmts": [
{
"type": "ForStatement",
"span": {
"start": 6729,
"end": 6746,
"ctxt": 0
},
"init": {
"type": "CallExpression",
"span": {
"start": 6733,
"end": 6740,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 6733,
"end": 6738,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"test": null,
"update": null,
"body": {
"type": "BlockStatement",
"span": {
"start": 6744,
"end": 6746,
"ctxt": 0
},
"stmts": []
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 6665,
"end": 6669,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 6768,
"end": 6881,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 6797,
"end": 6809,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6797,
"end": 6801,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 6804,
"end": 6808,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 6818,
"end": 6875,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6818,
"end": 6829,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 6832,
"end": 6875,
"ctxt": 0
},
"stmts": [
{
"type": "ForStatement",
"span": {
"start": 6846,
"end": 6865,
"ctxt": 0
},
"init": {
"type": "Identifier",
"span": {
"start": 6850,
"end": 6851,
"ctxt": 0
},
"value": "a",
"optional": false
},
"test": {
"type": "CallExpression",
"span": {
"start": 6853,
"end": 6860,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 6853,
"end": 6858,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"update": null,
"body": {
"type": "BlockStatement",
"span": {
"start": 6863,
"end": 6865,
"ctxt": 0
},
"stmts": []
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 6782,
"end": 6786,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 6887,
"end": 7002,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 6916,
"end": 6928,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6916,
"end": 6920,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 6923,
"end": 6927,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 6937,
"end": 6996,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6937,
"end": 6948,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 6951,
"end": 6996,
"ctxt": 0
},
"stmts": [
{
"type": "ForStatement",
"span": {
"start": 6965,
"end": 6986,
"ctxt": 0
},
"init": {
"type": "Identifier",
"span": {
"start": 6969,
"end": 6970,
"ctxt": 0
},
"value": "a",
"optional": false
},
"test": {
"type": "Identifier",
"span": {
"start": 6972,
"end": 6973,
"ctxt": 0
},
"value": "b",
"optional": false
},
"update": {
"type": "CallExpression",
"span": {
"start": 6975,
"end": 6982,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 6975,
"end": 6980,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"body": {
"type": "BlockStatement",
"span": {
"start": 6984,
"end": 6986,
"ctxt": 0
},
"stmts": []
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 6901,
"end": 6905,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 7008,
"end": 7129,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 7037,
"end": 7049,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7037,
"end": 7041,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 7044,
"end": 7048,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 7058,
"end": 7123,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7058,
"end": 7069,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 7072,
"end": 7123,
"ctxt": 0
},
"stmts": [
{
"type": "ForStatement",
"span": {
"start": 7086,
"end": 7113,
"ctxt": 0
},
"init": null,
"test": null,
"update": {
"type": "CallExpression",
"span": {
"start": 7094,
"end": 7101,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 7094,
"end": 7099,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"body": {
"type": "BlockStatement",
"span": {
"start": 7103,
"end": 7113,
"ctxt": 0
},
"stmts": [
{
"type": "BreakStatement",
"span": {
"start": 7105,
"end": 7111,
"ctxt": 0
},
"label": null
}
]
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 7022,
"end": 7026,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 7135,
"end": 7256,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 7164,
"end": 7176,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7164,
"end": 7168,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 7171,
"end": 7175,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 7185,
"end": 7250,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7185,
"end": 7196,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 7199,
"end": 7250,
"ctxt": 0
},
"stmts": [
{
"type": "ForOfStatement",
"span": {
"start": 7213,
"end": 7240,
"ctxt": 0
},
"await": null,
"left": {
"type": "VariableDeclaration",
"span": {
"start": 7218,
"end": 7225,
"ctxt": 0
},
"kind": "const",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 7224,
"end": 7225,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 7224,
"end": 7225,
"ctxt": 0
},
"value": "x",
"optional": false,
"typeAnnotation": null
},
"init": null,
"definite": false
}
]
},
"right": {
"type": "CallExpression",
"span": {
"start": 7229,
"end": 7236,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 7229,
"end": 7234,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"body": {
"type": "BlockStatement",
"span": {
"start": 7238,
"end": 7240,
"ctxt": 0
},
"stmts": []
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 7149,
"end": 7153,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 7262,
"end": 7374,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 7291,
"end": 7303,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7291,
"end": 7295,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 7298,
"end": 7302,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 7312,
"end": 7368,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7312,
"end": 7323,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 7326,
"end": 7368,
"ctxt": 0
},
"stmts": [
{
"type": "WhileStatement",
"span": {
"start": 7340,
"end": 7358,
"ctxt": 0
},
"test": {
"type": "CallExpression",
"span": {
"start": 7347,
"end": 7354,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 7347,
"end": 7352,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"body": {
"type": "BlockStatement",
"span": {
"start": 7356,
"end": 7358,
"ctxt": 0
},
"stmts": []
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 7276,
"end": 7280,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 7380,
"end": 7496,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 7409,
"end": 7421,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7409,
"end": 7413,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 7416,
"end": 7420,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 7430,
"end": 7490,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7430,
"end": 7441,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 7444,
"end": 7490,
"ctxt": 0
},
"stmts": [
{
"type": "DoWhileStatement",
"span": {
"start": 7458,
"end": 7480,
"ctxt": 0
},
"test": {
"type": "CallExpression",
"span": {
"start": 7471,
"end": 7478,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 7471,
"end": 7476,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"body": {
"type": "BlockStatement",
"span": {
"start": 7461,
"end": 7463,
"ctxt": 0
},
"stmts": []
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 7394,
"end": 7398,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 7502,
"end": 7611,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 7531,
"end": 7543,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7531,
"end": 7535,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 7538,
"end": 7542,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 7552,
"end": 7605,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7552,
"end": 7563,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 7566,
"end": 7605,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 7580,
"end": 7595,
"ctxt": 0
},
"test": {
"type": "CallExpression",
"span": {
"start": 7584,
"end": 7591,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 7584,
"end": 7589,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 7593,
"end": 7595,
"ctxt": 0
},
"stmts": []
},
"alternate": null
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 7516,
"end": 7520,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"spread": null,
"expression": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 7617,
"end": 7730,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 7646,
"end": 7658,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7646,
"end": 7650,
"ctxt": 0
},
"value": "prop",
"optional": false
},
"value": {
"type": "BooleanLiteral",
"span": {
"start": 7653,
"end": 7657,
"ctxt": 0
},
"value": true
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 7667,
"end": 7724,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7667,
"end": 7678,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 7681,
"end": 7724,
"ctxt": 0
},
"stmts": [
{
"type": "SwitchStatement",
"span": {
"start": 7695,
"end": 7714,
"ctxt": 0
},
"discriminant": {
"type": "CallExpression",
"span": {
"start": 7703,
"end": 7710,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 7703,
"end": 7708,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
},
"cases": []
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 7631,
"end": 7635,
"ctxt": 0
},
"value": "Base",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
}
]
},
"definite": false
}
]
}
],
"interpreter": null
}