swc/crates/swc_ecma_parser/tests/tsc/jsDeclarationsClasses.json
2022-04-05 12:46:35 +00:00

2747 lines
71 KiB
JSON

{
"type": "Module",
"span": {
"start": 115,
"end": 2823,
"ctxt": 0
},
"body": [
{
"type": "ExportDeclaration",
"span": {
"start": 115,
"end": 132,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 128,
"end": 129,
"ctxt": 0
},
"value": "A",
"optional": false
},
"declare": false,
"span": {
"start": 122,
"end": 132,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 134,
"end": 176,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 147,
"end": 148,
"ctxt": 0
},
"value": "B",
"optional": false
},
"declare": false,
"span": {
"start": 141,
"end": 176,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 155,
"end": 174,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 162,
"end": 165,
"ctxt": 0
},
"value": "cat",
"optional": false
},
"value": {
"type": "StringLiteral",
"span": {
"start": 168,
"end": 173,
"ctxt": 0
},
"value": "cat",
"raw": "\"cat\""
},
"typeAnnotation": null,
"isStatic": true,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 178,
"end": 222,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 191,
"end": 192,
"ctxt": 0
},
"value": "C",
"optional": false
},
"declare": false,
"span": {
"start": 185,
"end": 222,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 199,
"end": 220,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 206,
"end": 209,
"ctxt": 0
},
"value": "Cls",
"optional": false
},
"value": {
"type": "ClassExpression",
"identifier": null,
"span": {
"start": 212,
"end": 220,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
"typeAnnotation": null,
"isStatic": true,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 224,
"end": 333,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 237,
"end": 238,
"ctxt": 0
},
"value": "D",
"optional": false
},
"declare": false,
"span": {
"start": 231,
"end": 333,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "Constructor",
"span": {
"start": 311,
"end": 331,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 311,
"end": 322,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [
{
"type": "Parameter",
"span": {
"start": 323,
"end": 324,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 323,
"end": 324,
"ctxt": 0
},
"value": "a",
"optional": false,
"typeAnnotation": null
}
},
{
"type": "Parameter",
"span": {
"start": 326,
"end": 327,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 326,
"end": 327,
"ctxt": 0
},
"value": "b",
"optional": false,
"typeAnnotation": null
}
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 329,
"end": 331,
"ctxt": 0
},
"stmts": []
},
"accessibility": null,
"isOptional": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 360,
"end": 1559,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 373,
"end": 374,
"ctxt": 0
},
"value": "E",
"optional": false
},
"declare": false,
"span": {
"start": 367,
"end": 1559,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 418,
"end": 424,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 418,
"end": 423,
"ctxt": 0
},
"value": "field",
"optional": false
},
"value": null,
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "ClassProperty",
"span": {
"start": 578,
"end": 592,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 578,
"end": 591,
"ctxt": 0
},
"value": "readonlyField",
"optional": false
},
"value": null,
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "ClassProperty",
"span": {
"start": 598,
"end": 620,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 598,
"end": 614,
"ctxt": 0
},
"value": "initializedField",
"optional": false
},
"value": {
"type": "NumericLiteral",
"span": {
"start": 617,
"end": 619,
"ctxt": 0
},
"value": 12.0,
"raw": "12"
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "ClassMethod",
"span": {
"start": 661,
"end": 704,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 665,
"end": 667,
"ctxt": 0
},
"value": "f1",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 661,
"end": 704,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 670,
"end": 704,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 672,
"end": 702,
"ctxt": 0
},
"argument": {
"type": "ParenthesisExpression",
"span": {
"start": 695,
"end": 701,
"ctxt": 0
},
"expression": {
"type": "NullLiteral",
"span": {
"start": 696,
"end": 700,
"ctxt": 0
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "getter",
"isStatic": false,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 747,
"end": 760,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 751,
"end": 753,
"ctxt": 0
},
"value": "f1",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 754,
"end": 756,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 754,
"end": 756,
"ctxt": 0
},
"value": "_p",
"optional": false,
"typeAnnotation": null
}
}
],
"decorators": [],
"span": {
"start": 747,
"end": 760,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 758,
"end": 760,
"ctxt": 0
},
"stmts": []
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "setter",
"isStatic": false,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 801,
"end": 844,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 805,
"end": 807,
"ctxt": 0
},
"value": "f2",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 801,
"end": 844,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 810,
"end": 844,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 812,
"end": 842,
"ctxt": 0
},
"argument": {
"type": "ParenthesisExpression",
"span": {
"start": 835,
"end": 841,
"ctxt": 0
},
"expression": {
"type": "NullLiteral",
"span": {
"start": 836,
"end": 840,
"ctxt": 0
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "getter",
"isStatic": false,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 887,
"end": 900,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 891,
"end": 893,
"ctxt": 0
},
"value": "f3",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 894,
"end": 896,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 894,
"end": 896,
"ctxt": 0
},
"value": "_p",
"optional": false,
"typeAnnotation": null
}
}
],
"decorators": [],
"span": {
"start": 887,
"end": 900,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 898,
"end": 900,
"ctxt": 0
},
"stmts": []
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "setter",
"isStatic": false,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "Constructor",
"span": {
"start": 962,
"end": 982,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 962,
"end": 973,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [
{
"type": "Parameter",
"span": {
"start": 974,
"end": 975,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 974,
"end": 975,
"ctxt": 0
},
"value": "a",
"optional": false,
"typeAnnotation": null
}
},
{
"type": "Parameter",
"span": {
"start": 977,
"end": 978,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 977,
"end": 978,
"ctxt": 0
},
"value": "b",
"optional": false,
"typeAnnotation": null
}
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 980,
"end": 982,
"ctxt": 0
},
"stmts": []
},
"accessibility": null,
"isOptional": false
},
{
"type": "ClassProperty",
"span": {
"start": 1027,
"end": 1046,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1034,
"end": 1045,
"ctxt": 0
},
"value": "staticField",
"optional": false
},
"value": null,
"typeAnnotation": null,
"isStatic": true,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "ClassProperty",
"span": {
"start": 1201,
"end": 1228,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1208,
"end": 1227,
"ctxt": 0
},
"value": "staticReadonlyField",
"optional": false
},
"value": null,
"typeAnnotation": null,
"isStatic": true,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "ClassProperty",
"span": {
"start": 1234,
"end": 1269,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1241,
"end": 1263,
"ctxt": 0
},
"value": "staticInitializedField",
"optional": false
},
"value": {
"type": "NumericLiteral",
"span": {
"start": 1266,
"end": 1268,
"ctxt": 0
},
"value": 12.0,
"raw": "12"
},
"typeAnnotation": null,
"isStatic": true,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "ClassMethod",
"span": {
"start": 1315,
"end": 1345,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1326,
"end": 1328,
"ctxt": 0
},
"value": "s1",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 1315,
"end": 1345,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1331,
"end": 1345,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 1333,
"end": 1343,
"ctxt": 0
},
"argument": {
"type": "StringLiteral",
"span": {
"start": 1340,
"end": 1342,
"ctxt": 0
},
"value": "",
"raw": "\"\""
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "getter",
"isStatic": true,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 1393,
"end": 1413,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1404,
"end": 1406,
"ctxt": 0
},
"value": "s1",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 1407,
"end": 1409,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 1407,
"end": 1409,
"ctxt": 0
},
"value": "_p",
"optional": false,
"typeAnnotation": null
}
}
],
"decorators": [],
"span": {
"start": 1393,
"end": 1413,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1411,
"end": 1413,
"ctxt": 0
},
"stmts": []
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "setter",
"isStatic": true,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 1459,
"end": 1489,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1470,
"end": 1472,
"ctxt": 0
},
"value": "s2",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 1459,
"end": 1489,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1475,
"end": 1489,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 1477,
"end": 1487,
"ctxt": 0
},
"argument": {
"type": "StringLiteral",
"span": {
"start": 1484,
"end": 1486,
"ctxt": 0
},
"value": "",
"raw": "\"\""
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "getter",
"isStatic": true,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 1537,
"end": 1557,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1548,
"end": 1550,
"ctxt": 0
},
"value": "s3",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 1551,
"end": 1553,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 1551,
"end": 1553,
"ctxt": 0
},
"value": "_p",
"optional": false,
"typeAnnotation": null
}
}
],
"decorators": [],
"span": {
"start": 1537,
"end": 1557,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1555,
"end": 1557,
"ctxt": 0
},
"stmts": []
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "setter",
"isStatic": true,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 1586,
"end": 1859,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1599,
"end": 1600,
"ctxt": 0
},
"value": "F",
"optional": false
},
"declare": false,
"span": {
"start": 1593,
"end": 1859,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 1644,
"end": 1650,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1644,
"end": 1649,
"ctxt": 0
},
"value": "field",
"optional": false
},
"value": null,
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "Constructor",
"span": {
"start": 1711,
"end": 1731,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1711,
"end": 1722,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [
{
"type": "Parameter",
"span": {
"start": 1723,
"end": 1724,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 1723,
"end": 1724,
"ctxt": 0
},
"value": "a",
"optional": false,
"typeAnnotation": null
}
},
{
"type": "Parameter",
"span": {
"start": 1726,
"end": 1727,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 1726,
"end": 1727,
"ctxt": 0
},
"value": "b",
"optional": false,
"typeAnnotation": null
}
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 1729,
"end": 1731,
"ctxt": 0
},
"stmts": []
},
"accessibility": null,
"isOptional": false
},
{
"type": "ClassMethod",
"span": {
"start": 1814,
"end": 1857,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1821,
"end": 1827,
"ctxt": 0
},
"value": "create",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 1828,
"end": 1829,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 1828,
"end": 1829,
"ctxt": 0
},
"value": "a",
"optional": false,
"typeAnnotation": null
}
},
{
"type": "Parameter",
"span": {
"start": 1831,
"end": 1832,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 1831,
"end": 1832,
"ctxt": 0
},
"value": "b",
"optional": false,
"typeAnnotation": null
}
}
],
"decorators": [],
"span": {
"start": 1814,
"end": 1857,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1834,
"end": 1857,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 1836,
"end": 1855,
"ctxt": 0
},
"argument": {
"type": "NewExpression",
"span": {
"start": 1843,
"end": 1854,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 1847,
"end": 1848,
"ctxt": 0
},
"value": "F",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 1849,
"end": 1850,
"ctxt": 0
},
"value": "a",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 1852,
"end": 1853,
"ctxt": 0
},
"value": "b",
"optional": false
}
}
],
"typeArguments": null
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": true,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1867,
"end": 1868,
"ctxt": 0
},
"value": "G",
"optional": false
},
"declare": false,
"span": {
"start": 1861,
"end": 1871,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ExportNamedDeclaration",
"span": {
"start": 1873,
"end": 1886,
"ctxt": 0
},
"specifiers": [
{
"type": "ExportSpecifier",
"span": {
"start": 1882,
"end": 1883,
"ctxt": 0
},
"orig": {
"type": "Identifier",
"span": {
"start": 1882,
"end": 1883,
"ctxt": 0
},
"value": "G",
"optional": false
},
"exported": null,
"isTypeOnly": false
}
],
"source": null,
"typeOnly": false,
"asserts": null
},
{
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1894,
"end": 1896,
"ctxt": 0
},
"value": "HH",
"optional": false
},
"declare": false,
"span": {
"start": 1888,
"end": 1899,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
},
{
"type": "ExportNamedDeclaration",
"span": {
"start": 1901,
"end": 1920,
"ctxt": 0
},
"specifiers": [
{
"type": "ExportSpecifier",
"span": {
"start": 1910,
"end": 1917,
"ctxt": 0
},
"orig": {
"type": "Identifier",
"span": {
"start": 1910,
"end": 1912,
"ctxt": 0
},
"value": "HH",
"optional": false
},
"exported": {
"type": "Identifier",
"span": {
"start": 1916,
"end": 1917,
"ctxt": 0
},
"value": "H",
"optional": false
},
"isTypeOnly": false
}
],
"source": null,
"typeOnly": false,
"asserts": null
},
{
"type": "ExportDeclaration",
"span": {
"start": 1922,
"end": 1939,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1935,
"end": 1936,
"ctxt": 0
},
"value": "I",
"optional": false
},
"declare": false,
"span": {
"start": 1929,
"end": 1939,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportNamedDeclaration",
"span": {
"start": 1940,
"end": 1959,
"ctxt": 0
},
"specifiers": [
{
"type": "ExportSpecifier",
"span": {
"start": 1949,
"end": 1956,
"ctxt": 0
},
"orig": {
"type": "Identifier",
"span": {
"start": 1949,
"end": 1950,
"ctxt": 0
},
"value": "I",
"optional": false
},
"exported": {
"type": "Identifier",
"span": {
"start": 1954,
"end": 1956,
"ctxt": 0
},
"value": "II",
"optional": false
},
"isTypeOnly": false
}
],
"source": null,
"typeOnly": false,
"asserts": null
},
{
"type": "ExportNamedDeclaration",
"span": {
"start": 1961,
"end": 1980,
"ctxt": 0
},
"specifiers": [
{
"type": "ExportSpecifier",
"span": {
"start": 1970,
"end": 1977,
"ctxt": 0
},
"orig": {
"type": "Identifier",
"span": {
"start": 1970,
"end": 1971,
"ctxt": 0
},
"value": "J",
"optional": false
},
"exported": {
"type": "Identifier",
"span": {
"start": 1975,
"end": 1977,
"ctxt": 0
},
"value": "JJ",
"optional": false
},
"isTypeOnly": false
}
],
"source": null,
"typeOnly": false,
"asserts": null
},
{
"type": "ExportDeclaration",
"span": {
"start": 1981,
"end": 1998,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 1994,
"end": 1995,
"ctxt": 0
},
"value": "J",
"optional": false
},
"declare": false,
"span": {
"start": 1988,
"end": 1998,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 2001,
"end": 2137,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2014,
"end": 2015,
"ctxt": 0
},
"value": "K",
"optional": false
},
"declare": false,
"span": {
"start": 2008,
"end": 2137,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "Constructor",
"span": {
"start": 2022,
"end": 2089,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2022,
"end": 2033,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 2036,
"end": 2089,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 2046,
"end": 2059,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 2046,
"end": 2058,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 2046,
"end": 2053,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2046,
"end": 2050,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2051,
"end": 2053,
"ctxt": 0
},
"value": "p1",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 2056,
"end": 2058,
"ctxt": 0
},
"value": 12.0,
"raw": "12"
}
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 2068,
"end": 2083,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 2068,
"end": 2082,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 2068,
"end": 2075,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2068,
"end": 2072,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2073,
"end": 2075,
"ctxt": 0
},
"value": "p2",
"optional": false
}
},
"right": {
"type": "StringLiteral",
"span": {
"start": 2078,
"end": 2082,
"ctxt": 0
},
"value": "ok",
"raw": "\"ok\""
}
}
}
]
},
"accessibility": null,
"isOptional": false
},
{
"type": "ClassMethod",
"span": {
"start": 2095,
"end": 2135,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2095,
"end": 2101,
"ctxt": 0
},
"value": "method",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 2095,
"end": 2135,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2104,
"end": 2135,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 2114,
"end": 2129,
"ctxt": 0
},
"argument": {
"type": "MemberExpression",
"span": {
"start": 2121,
"end": 2128,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2121,
"end": 2125,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2126,
"end": 2128,
"ctxt": 0
},
"value": "p1",
"optional": false
}
}
}
]
},
"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": "ExportDeclaration",
"span": {
"start": 2139,
"end": 2166,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2152,
"end": 2153,
"ctxt": 0
},
"value": "L",
"optional": false
},
"declare": false,
"span": {
"start": 2146,
"end": 2166,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": {
"type": "Identifier",
"span": {
"start": 2162,
"end": 2163,
"ctxt": 0
},
"value": "K",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 2168,
"end": 2249,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2181,
"end": 2182,
"ctxt": 0
},
"value": "M",
"optional": false
},
"declare": false,
"span": {
"start": 2175,
"end": 2249,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "Constructor",
"span": {
"start": 2202,
"end": 2247,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2202,
"end": 2213,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [],
"body": {
"type": "BlockStatement",
"span": {
"start": 2216,
"end": 2247,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 2226,
"end": 2241,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 2226,
"end": 2240,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 2226,
"end": 2235,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2226,
"end": 2230,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2231,
"end": 2235,
"ctxt": 0
},
"value": "prop",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 2238,
"end": 2240,
"ctxt": 0
},
"value": 12.0,
"raw": "12"
}
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "NullLiteral",
"span": {
"start": 2191,
"end": 2195,
"ctxt": 0
}
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 2275,
"end": 2422,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2288,
"end": 2289,
"ctxt": 0
},
"value": "N",
"optional": false
},
"declare": false,
"span": {
"start": 2282,
"end": 2422,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "Constructor",
"span": {
"start": 2347,
"end": 2420,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2347,
"end": 2358,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [
{
"type": "Parameter",
"span": {
"start": 2359,
"end": 2364,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 2359,
"end": 2364,
"ctxt": 0
},
"value": "param",
"optional": false,
"typeAnnotation": null
}
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 2366,
"end": 2420,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 2376,
"end": 2384,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2376,
"end": 2383,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 2376,
"end": 2381,
"ctxt": 0
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 2393,
"end": 2414,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 2393,
"end": 2413,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 2393,
"end": 2405,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2393,
"end": 2397,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2398,
"end": 2405,
"ctxt": 0
},
"value": "another",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 2408,
"end": 2413,
"ctxt": 0
},
"value": "param",
"optional": false
}
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2298,
"end": 2299,
"ctxt": 0
},
"value": "L",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 2466,
"end": 2619,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2479,
"end": 2480,
"ctxt": 0
},
"value": "O",
"optional": false
},
"declare": false,
"span": {
"start": 2473,
"end": 2619,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "Constructor",
"span": {
"start": 2538,
"end": 2617,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2538,
"end": 2549,
"ctxt": 0
},
"value": "constructor",
"optional": false
},
"params": [
{
"type": "Parameter",
"span": {
"start": 2550,
"end": 2555,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 2550,
"end": 2555,
"ctxt": 0
},
"value": "param",
"optional": false,
"typeAnnotation": null
}
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 2557,
"end": 2617,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 2567,
"end": 2580,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2567,
"end": 2579,
"ctxt": 0
},
"callee": {
"type": "Super",
"span": {
"start": 2567,
"end": 2572,
"ctxt": 0
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 2573,
"end": 2578,
"ctxt": 0
},
"value": "param",
"optional": false
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 2589,
"end": 2611,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 2589,
"end": 2610,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 2589,
"end": 2602,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2589,
"end": 2593,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2594,
"end": 2602,
"ctxt": 0
},
"value": "another2",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 2605,
"end": 2610,
"ctxt": 0
},
"value": "param",
"optional": false
}
}
}
]
},
"accessibility": null,
"isOptional": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2489,
"end": 2490,
"ctxt": 0
},
"value": "N",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "VariableDeclaration",
"span": {
"start": 2621,
"end": 2652,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 2625,
"end": 2651,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 2625,
"end": 2626,
"ctxt": 0
},
"value": "x",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ParenthesisExpression",
"span": {
"start": 2645,
"end": 2651,
"ctxt": 0
},
"expression": {
"type": "NullLiteral",
"span": {
"start": 2646,
"end": 2650,
"ctxt": 0
}
}
},
"definite": false
}
]
},
{
"type": "ExportDeclaration",
"span": {
"start": 2654,
"end": 2692,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2667,
"end": 2679,
"ctxt": 0
},
"value": "VariableBase",
"optional": false
},
"declare": false,
"span": {
"start": 2661,
"end": 2692,
"ctxt": 0
},
"decorators": [],
"body": [],
"superClass": {
"type": "Identifier",
"span": {
"start": 2688,
"end": 2689,
"ctxt": 0
},
"value": "x",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 2694,
"end": 2750,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2707,
"end": 2717,
"ctxt": 0
},
"value": "HasStatics",
"optional": false
},
"declare": false,
"span": {
"start": 2701,
"end": 2750,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassMethod",
"span": {
"start": 2724,
"end": 2748,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2731,
"end": 2743,
"ctxt": 0
},
"value": "staticMethod",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 2724,
"end": 2748,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2746,
"end": 2748,
"ctxt": 0
},
"stmts": []
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": true,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 2752,
"end": 2823,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 2765,
"end": 2779,
"ctxt": 0
},
"value": "ExtendsStatics",
"optional": false
},
"declare": false,
"span": {
"start": 2759,
"end": 2823,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassMethod",
"span": {
"start": 2805,
"end": 2821,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2812,
"end": 2816,
"ctxt": 0
},
"value": "also",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 2805,
"end": 2821,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2819,
"end": 2821,
"ctxt": 0
},
"stmts": []
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": true,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
}
],
"superClass": {
"type": "Identifier",
"span": {
"start": 2788,
"end": 2798,
"ctxt": 0
},
"value": "HasStatics",
"optional": false
},
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
}
],
"interpreter": null
}