mirror of
https://github.com/swc-project/swc.git
synced 2024-12-26 15:12:08 +03:00
22472 lines
639 KiB
JSON
22472 lines
639 KiB
JSON
{
|
|
"type": "Script",
|
|
"span": {
|
|
"start": 87,
|
|
"end": 10237,
|
|
"ctxt": 0
|
|
},
|
|
"body": [
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 87,
|
|
"end": 195,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 101,
|
|
"end": 194,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 101,
|
|
"end": 102,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 102,
|
|
"end": 194,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 104,
|
|
"end": 194,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 104,
|
|
"end": 113,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
},
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 116,
|
|
"end": 194,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 123,
|
|
"end": 134,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 126,
|
|
"end": 134,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 128,
|
|
"end": 134,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 135,
|
|
"end": 140,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 137,
|
|
"end": 140,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "any"
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 122,
|
|
"end": 141,
|
|
"ctxt": 0
|
|
}
|
|
},
|
|
{
|
|
"type": "TsIndexSignature",
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 147,
|
|
"end": 158,
|
|
"ctxt": 0
|
|
},
|
|
"value": "key",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 150,
|
|
"end": 158,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 152,
|
|
"end": 158,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 159,
|
|
"end": 164,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 161,
|
|
"end": 164,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "any"
|
|
}
|
|
},
|
|
"readonly": false,
|
|
"static": false,
|
|
"span": {
|
|
"start": 146,
|
|
"end": 165,
|
|
"ctxt": 0
|
|
}
|
|
},
|
|
{
|
|
"type": "TsCallSignatureDeclaration",
|
|
"span": {
|
|
"start": 170,
|
|
"end": 192,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "RestElement",
|
|
"span": {
|
|
"start": 171,
|
|
"end": 185,
|
|
"ctxt": 0
|
|
},
|
|
"rest": {
|
|
"start": 171,
|
|
"end": 174,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 174,
|
|
"end": 178,
|
|
"ctxt": 0
|
|
},
|
|
"value": "args",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 178,
|
|
"end": 185,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsArrayType",
|
|
"span": {
|
|
"start": 180,
|
|
"end": 185,
|
|
"ctxt": 0
|
|
},
|
|
"elemType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 180,
|
|
"end": 183,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "any"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 186,
|
|
"end": 191,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 188,
|
|
"end": 191,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "any"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 197,
|
|
"end": 211,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "let",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 201,
|
|
"end": 210,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 201,
|
|
"end": 202,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 202,
|
|
"end": 210,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 204,
|
|
"end": 210,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 212,
|
|
"end": 223,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 212,
|
|
"end": 222,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 213,
|
|
"end": 214,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 212,
|
|
"end": 222,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 212,
|
|
"end": 213,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 215,
|
|
"end": 222,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 216,
|
|
"end": 221,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 216,
|
|
"end": 217,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 220,
|
|
"end": 221,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 224,
|
|
"end": 237,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 224,
|
|
"end": 236,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 224,
|
|
"end": 234,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 224,
|
|
"end": 225,
|
|
"ctxt": 0
|
|
},
|
|
"value": "a",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 226,
|
|
"end": 234,
|
|
"ctxt": 0
|
|
},
|
|
"value": "toString",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 239,
|
|
"end": 253,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "let",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 243,
|
|
"end": 252,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 243,
|
|
"end": 244,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 244,
|
|
"end": 252,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 246,
|
|
"end": 252,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 254,
|
|
"end": 266,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 254,
|
|
"end": 265,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 254,
|
|
"end": 258,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 255,
|
|
"end": 256,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 254,
|
|
"end": 258,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 254,
|
|
"end": 255,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 257,
|
|
"end": 258,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 258,
|
|
"end": 265,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 259,
|
|
"end": 264,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 259,
|
|
"end": 260,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 263,
|
|
"end": 264,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 267,
|
|
"end": 280,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 267,
|
|
"end": 279,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 267,
|
|
"end": 277,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 267,
|
|
"end": 268,
|
|
"ctxt": 0
|
|
},
|
|
"value": "b",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 269,
|
|
"end": 277,
|
|
"ctxt": 0
|
|
},
|
|
"value": "toString",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 282,
|
|
"end": 296,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "let",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 286,
|
|
"end": 295,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 286,
|
|
"end": 287,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 287,
|
|
"end": 295,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 289,
|
|
"end": 295,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 297,
|
|
"end": 307,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 297,
|
|
"end": 307,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 298,
|
|
"end": 299,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 297,
|
|
"end": 307,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 297,
|
|
"end": 298,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 301,
|
|
"end": 306,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 301,
|
|
"end": 302,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 305,
|
|
"end": 306,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 308,
|
|
"end": 321,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 308,
|
|
"end": 320,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 308,
|
|
"end": 318,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 308,
|
|
"end": 309,
|
|
"ctxt": 0
|
|
},
|
|
"value": "c",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 310,
|
|
"end": 318,
|
|
"ctxt": 0
|
|
},
|
|
"value": "toString",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 323,
|
|
"end": 337,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "let",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 327,
|
|
"end": 336,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 327,
|
|
"end": 328,
|
|
"ctxt": 0
|
|
},
|
|
"value": "d",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 328,
|
|
"end": 336,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 330,
|
|
"end": 336,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 338,
|
|
"end": 350,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 338,
|
|
"end": 349,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 338,
|
|
"end": 342,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 339,
|
|
"end": 340,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 338,
|
|
"end": 342,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 338,
|
|
"end": 339,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 341,
|
|
"end": 342,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 343,
|
|
"end": 348,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 343,
|
|
"end": 344,
|
|
"ctxt": 0
|
|
},
|
|
"value": "d",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 347,
|
|
"end": 348,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 351,
|
|
"end": 364,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 351,
|
|
"end": 363,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 351,
|
|
"end": 361,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 351,
|
|
"end": 352,
|
|
"ctxt": 0
|
|
},
|
|
"value": "d",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 353,
|
|
"end": 361,
|
|
"ctxt": 0
|
|
},
|
|
"value": "toString",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 385,
|
|
"end": 440,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 399,
|
|
"end": 439,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 399,
|
|
"end": 400,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 400,
|
|
"end": 439,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 402,
|
|
"end": 439,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 402,
|
|
"end": 411,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
},
|
|
{
|
|
"type": "TsParenthesizedType",
|
|
"span": {
|
|
"start": 414,
|
|
"end": 439,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsFunctionType",
|
|
"span": {
|
|
"start": 415,
|
|
"end": 438,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 416,
|
|
"end": 422,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 417,
|
|
"end": 422,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 419,
|
|
"end": 422,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "any"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 424,
|
|
"end": 438,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypePredicate",
|
|
"span": {
|
|
"start": 427,
|
|
"end": 438,
|
|
"ctxt": 0
|
|
},
|
|
"asserts": false,
|
|
"paramName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 427,
|
|
"end": 428,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 432,
|
|
"end": 438,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 432,
|
|
"end": 438,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 441,
|
|
"end": 474,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 455,
|
|
"end": 473,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 455,
|
|
"end": 456,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 456,
|
|
"end": 473,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 458,
|
|
"end": 473,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 458,
|
|
"end": 464,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 467,
|
|
"end": 473,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 475,
|
|
"end": 584,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 479,
|
|
"end": 485,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 480,
|
|
"end": 481,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 479,
|
|
"end": 485,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 479,
|
|
"end": 480,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 483,
|
|
"end": 484,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 487,
|
|
"end": 551,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 493,
|
|
"end": 495,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 493,
|
|
"end": 494,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 510,
|
|
"end": 512,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 510,
|
|
"end": 511,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 544,
|
|
"end": 549,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 544,
|
|
"end": 548,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 544,
|
|
"end": 545,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 546,
|
|
"end": 547,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 557,
|
|
"end": 584,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 563,
|
|
"end": 565,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 563,
|
|
"end": 564,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 570,
|
|
"end": 572,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 570,
|
|
"end": 571,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 577,
|
|
"end": 582,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 577,
|
|
"end": 581,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 577,
|
|
"end": 578,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 579,
|
|
"end": 580,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 585,
|
|
"end": 587,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 585,
|
|
"end": 586,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 588,
|
|
"end": 590,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 588,
|
|
"end": 589,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 591,
|
|
"end": 596,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 591,
|
|
"end": 595,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 591,
|
|
"end": 592,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 593,
|
|
"end": 594,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 598,
|
|
"end": 656,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 612,
|
|
"end": 655,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 612,
|
|
"end": 614,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 614,
|
|
"end": 655,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 616,
|
|
"end": 655,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 616,
|
|
"end": 643,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsMethodSignature",
|
|
"span": {
|
|
"start": 618,
|
|
"end": 641,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 618,
|
|
"end": 619,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 620,
|
|
"end": 626,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 621,
|
|
"end": 626,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 623,
|
|
"end": 626,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "any"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeAnn": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 627,
|
|
"end": 640,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypePredicate",
|
|
"span": {
|
|
"start": 629,
|
|
"end": 640,
|
|
"ctxt": 0
|
|
},
|
|
"asserts": false,
|
|
"paramName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 629,
|
|
"end": 630,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 634,
|
|
"end": 640,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 634,
|
|
"end": 640,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 646,
|
|
"end": 655,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 657,
|
|
"end": 798,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 661,
|
|
"end": 669,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 661,
|
|
"end": 666,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 663,
|
|
"end": 664,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 661,
|
|
"end": 666,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 661,
|
|
"end": 663,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 665,
|
|
"end": 666,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 667,
|
|
"end": 668,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 671,
|
|
"end": 753,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 677,
|
|
"end": 679,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 677,
|
|
"end": 678,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 694,
|
|
"end": 699,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 694,
|
|
"end": 698,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 694,
|
|
"end": 696,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 697,
|
|
"end": 698,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 731,
|
|
"end": 737,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 731,
|
|
"end": 736,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 733,
|
|
"end": 734,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 731,
|
|
"end": 736,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 731,
|
|
"end": 733,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 735,
|
|
"end": 736,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 742,
|
|
"end": 751,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 742,
|
|
"end": 750,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 742,
|
|
"end": 747,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 744,
|
|
"end": 745,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 742,
|
|
"end": 747,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 742,
|
|
"end": 744,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 746,
|
|
"end": 747,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 748,
|
|
"end": 749,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 759,
|
|
"end": 798,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 765,
|
|
"end": 767,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 765,
|
|
"end": 766,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 772,
|
|
"end": 775,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 772,
|
|
"end": 774,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 780,
|
|
"end": 786,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 780,
|
|
"end": 785,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 782,
|
|
"end": 783,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 780,
|
|
"end": 785,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 780,
|
|
"end": 782,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 784,
|
|
"end": 785,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 791,
|
|
"end": 796,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 791,
|
|
"end": 795,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 791,
|
|
"end": 793,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 794,
|
|
"end": 795,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 799,
|
|
"end": 801,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 799,
|
|
"end": 800,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 802,
|
|
"end": 805,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 802,
|
|
"end": 804,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 806,
|
|
"end": 812,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 806,
|
|
"end": 811,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 808,
|
|
"end": 809,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 806,
|
|
"end": 811,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 806,
|
|
"end": 808,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 810,
|
|
"end": 811,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 813,
|
|
"end": 818,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 813,
|
|
"end": 817,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 813,
|
|
"end": 815,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o2",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 816,
|
|
"end": 817,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 820,
|
|
"end": 892,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 834,
|
|
"end": 891,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 834,
|
|
"end": 836,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 836,
|
|
"end": 891,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 838,
|
|
"end": 891,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 838,
|
|
"end": 857,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 840,
|
|
"end": 845,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 840,
|
|
"end": 841,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 841,
|
|
"end": 844,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 843,
|
|
"end": 844,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 843,
|
|
"end": 844,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 846,
|
|
"end": 855,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 846,
|
|
"end": 847,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 847,
|
|
"end": 855,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 849,
|
|
"end": 855,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 860,
|
|
"end": 879,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 862,
|
|
"end": 867,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 862,
|
|
"end": 863,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 863,
|
|
"end": 866,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 865,
|
|
"end": 866,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 865,
|
|
"end": 866,
|
|
"ctxt": 0
|
|
},
|
|
"value": 2.0
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 868,
|
|
"end": 877,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 868,
|
|
"end": 869,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 869,
|
|
"end": 877,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 871,
|
|
"end": 877,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 882,
|
|
"end": 891,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 893,
|
|
"end": 980,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 897,
|
|
"end": 908,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 897,
|
|
"end": 902,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 899,
|
|
"end": 900,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 897,
|
|
"end": 902,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 897,
|
|
"end": 899,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 901,
|
|
"end": 902,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 907,
|
|
"end": 908,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 910,
|
|
"end": 942,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 916,
|
|
"end": 919,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 916,
|
|
"end": 918,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 924,
|
|
"end": 929,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 924,
|
|
"end": 928,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 924,
|
|
"end": 926,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 927,
|
|
"end": 928,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 934,
|
|
"end": 940,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 934,
|
|
"end": 939,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 936,
|
|
"end": 937,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 934,
|
|
"end": 939,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 934,
|
|
"end": 936,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 938,
|
|
"end": 939,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 948,
|
|
"end": 980,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 954,
|
|
"end": 957,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 954,
|
|
"end": 956,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 962,
|
|
"end": 968,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 962,
|
|
"end": 967,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 964,
|
|
"end": 965,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 962,
|
|
"end": 967,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 962,
|
|
"end": 964,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 966,
|
|
"end": 967,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 973,
|
|
"end": 978,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 973,
|
|
"end": 977,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 973,
|
|
"end": 975,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 976,
|
|
"end": 977,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 981,
|
|
"end": 984,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 981,
|
|
"end": 983,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 985,
|
|
"end": 991,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 985,
|
|
"end": 990,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 987,
|
|
"end": 988,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 985,
|
|
"end": 990,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 985,
|
|
"end": 987,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 989,
|
|
"end": 990,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 992,
|
|
"end": 997,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 992,
|
|
"end": 996,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 992,
|
|
"end": 994,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o3",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 995,
|
|
"end": 996,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 999,
|
|
"end": 1040,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 1013,
|
|
"end": 1039,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1013,
|
|
"end": 1015,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1015,
|
|
"end": 1039,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1017,
|
|
"end": 1039,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1019,
|
|
"end": 1037,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1019,
|
|
"end": 1020,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": true,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1021,
|
|
"end": 1037,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1023,
|
|
"end": 1037,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1025,
|
|
"end": 1035,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1025,
|
|
"end": 1026,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1026,
|
|
"end": 1035,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1028,
|
|
"end": 1035,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "boolean"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 1041,
|
|
"end": 1170,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1045,
|
|
"end": 1052,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1049,
|
|
"end": 1050,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1045,
|
|
"end": 1052,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1045,
|
|
"end": 1049,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1045,
|
|
"end": 1047,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1048,
|
|
"end": 1049,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1051,
|
|
"end": 1052,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1054,
|
|
"end": 1126,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1060,
|
|
"end": 1065,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1060,
|
|
"end": 1064,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1060,
|
|
"end": 1062,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1063,
|
|
"end": 1064,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1088,
|
|
"end": 1095,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1088,
|
|
"end": 1094,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1088,
|
|
"end": 1092,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1088,
|
|
"end": 1090,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1091,
|
|
"end": 1092,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1093,
|
|
"end": 1094,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1108,
|
|
"end": 1116,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1108,
|
|
"end": 1115,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1112,
|
|
"end": 1113,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1108,
|
|
"end": 1115,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1108,
|
|
"end": 1112,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1108,
|
|
"end": 1110,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1111,
|
|
"end": 1112,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1114,
|
|
"end": 1115,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1132,
|
|
"end": 1170,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1138,
|
|
"end": 1143,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1138,
|
|
"end": 1142,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1138,
|
|
"end": 1140,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1141,
|
|
"end": 1142,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1148,
|
|
"end": 1156,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1148,
|
|
"end": 1155,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1152,
|
|
"end": 1153,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1148,
|
|
"end": 1155,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1148,
|
|
"end": 1152,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1148,
|
|
"end": 1150,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1151,
|
|
"end": 1152,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1154,
|
|
"end": 1155,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1161,
|
|
"end": 1168,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1161,
|
|
"end": 1167,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1161,
|
|
"end": 1165,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1161,
|
|
"end": 1163,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1164,
|
|
"end": 1165,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1166,
|
|
"end": 1167,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1171,
|
|
"end": 1176,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1171,
|
|
"end": 1175,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1171,
|
|
"end": 1173,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1174,
|
|
"end": 1175,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1177,
|
|
"end": 1185,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1177,
|
|
"end": 1184,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1181,
|
|
"end": 1182,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1177,
|
|
"end": 1184,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1177,
|
|
"end": 1181,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1177,
|
|
"end": 1179,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1180,
|
|
"end": 1181,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1183,
|
|
"end": 1184,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1186,
|
|
"end": 1193,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1186,
|
|
"end": 1192,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1186,
|
|
"end": 1190,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1186,
|
|
"end": 1188,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o4",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1189,
|
|
"end": 1190,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1191,
|
|
"end": 1192,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 1195,
|
|
"end": 1251,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 1209,
|
|
"end": 1250,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1209,
|
|
"end": 1211,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1211,
|
|
"end": 1250,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1213,
|
|
"end": 1250,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1215,
|
|
"end": 1248,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1215,
|
|
"end": 1216,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": true,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1217,
|
|
"end": 1248,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1219,
|
|
"end": 1248,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1221,
|
|
"end": 1246,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1221,
|
|
"end": 1222,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1222,
|
|
"end": 1246,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1224,
|
|
"end": 1246,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1226,
|
|
"end": 1244,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1226,
|
|
"end": 1227,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": true,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1228,
|
|
"end": 1244,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 1230,
|
|
"end": 1244,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1232,
|
|
"end": 1242,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1232,
|
|
"end": 1233,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1233,
|
|
"end": 1242,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1235,
|
|
"end": 1242,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "boolean"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 1252,
|
|
"end": 1502,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1268,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1265,
|
|
"end": 1266,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1268,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1265,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1263,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1260,
|
|
"end": 1261,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1263,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1260,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1256,
|
|
"end": 1258,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1259,
|
|
"end": 1260,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1262,
|
|
"end": 1263,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1264,
|
|
"end": 1265,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1267,
|
|
"end": 1268,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1270,
|
|
"end": 1409,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1276,
|
|
"end": 1281,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1276,
|
|
"end": 1280,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1276,
|
|
"end": 1278,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1279,
|
|
"end": 1280,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1286,
|
|
"end": 1293,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1286,
|
|
"end": 1292,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1286,
|
|
"end": 1290,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1286,
|
|
"end": 1288,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1289,
|
|
"end": 1290,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1291,
|
|
"end": 1292,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1298,
|
|
"end": 1307,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1298,
|
|
"end": 1306,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1298,
|
|
"end": 1304,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1298,
|
|
"end": 1302,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1298,
|
|
"end": 1300,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1301,
|
|
"end": 1302,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1303,
|
|
"end": 1304,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1305,
|
|
"end": 1306,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1312,
|
|
"end": 1323,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1312,
|
|
"end": 1322,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1312,
|
|
"end": 1320,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1312,
|
|
"end": 1318,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1312,
|
|
"end": 1316,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1312,
|
|
"end": 1314,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1315,
|
|
"end": 1316,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1317,
|
|
"end": 1318,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1319,
|
|
"end": 1320,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1321,
|
|
"end": 1322,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1336,
|
|
"end": 1348,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1336,
|
|
"end": 1347,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1344,
|
|
"end": 1345,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1336,
|
|
"end": 1347,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1336,
|
|
"end": 1344,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1336,
|
|
"end": 1342,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1336,
|
|
"end": 1340,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1336,
|
|
"end": 1338,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1339,
|
|
"end": 1340,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1341,
|
|
"end": 1342,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1343,
|
|
"end": 1344,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1346,
|
|
"end": 1347,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1361,
|
|
"end": 1373,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1361,
|
|
"end": 1372,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1361,
|
|
"end": 1370,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1361,
|
|
"end": 1368,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1365,
|
|
"end": 1366,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1361,
|
|
"end": 1368,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1361,
|
|
"end": 1365,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1361,
|
|
"end": 1363,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1364,
|
|
"end": 1365,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1367,
|
|
"end": 1368,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1369,
|
|
"end": 1370,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1371,
|
|
"end": 1372,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1386,
|
|
"end": 1399,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1386,
|
|
"end": 1398,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1395,
|
|
"end": 1396,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1386,
|
|
"end": 1398,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1386,
|
|
"end": 1395,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1386,
|
|
"end": 1393,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1390,
|
|
"end": 1391,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1386,
|
|
"end": 1393,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1386,
|
|
"end": 1390,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1386,
|
|
"end": 1388,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1389,
|
|
"end": 1390,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1392,
|
|
"end": 1393,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1394,
|
|
"end": 1395,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1397,
|
|
"end": 1398,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1415,
|
|
"end": 1502,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1421,
|
|
"end": 1426,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1421,
|
|
"end": 1425,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1421,
|
|
"end": 1423,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1424,
|
|
"end": 1425,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1431,
|
|
"end": 1439,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1431,
|
|
"end": 1438,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1435,
|
|
"end": 1436,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1431,
|
|
"end": 1438,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1431,
|
|
"end": 1435,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1431,
|
|
"end": 1433,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1434,
|
|
"end": 1435,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1437,
|
|
"end": 1438,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1444,
|
|
"end": 1454,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1444,
|
|
"end": 1453,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1444,
|
|
"end": 1451,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1448,
|
|
"end": 1449,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1444,
|
|
"end": 1451,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1444,
|
|
"end": 1448,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1444,
|
|
"end": 1446,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1447,
|
|
"end": 1448,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1450,
|
|
"end": 1451,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1452,
|
|
"end": 1453,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1459,
|
|
"end": 1472,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1459,
|
|
"end": 1471,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1468,
|
|
"end": 1469,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1459,
|
|
"end": 1471,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1459,
|
|
"end": 1468,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1459,
|
|
"end": 1466,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1463,
|
|
"end": 1464,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1459,
|
|
"end": 1466,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1459,
|
|
"end": 1463,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1459,
|
|
"end": 1461,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1462,
|
|
"end": 1463,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1465,
|
|
"end": 1466,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1467,
|
|
"end": 1468,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1470,
|
|
"end": 1471,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1477,
|
|
"end": 1484,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1477,
|
|
"end": 1483,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1477,
|
|
"end": 1481,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1477,
|
|
"end": 1479,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1480,
|
|
"end": 1481,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1482,
|
|
"end": 1483,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1489,
|
|
"end": 1500,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1489,
|
|
"end": 1499,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1489,
|
|
"end": 1497,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1489,
|
|
"end": 1495,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1489,
|
|
"end": 1493,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1489,
|
|
"end": 1491,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1492,
|
|
"end": 1493,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1494,
|
|
"end": 1495,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1496,
|
|
"end": 1497,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1498,
|
|
"end": 1499,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1503,
|
|
"end": 1508,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1503,
|
|
"end": 1507,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1503,
|
|
"end": 1505,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1506,
|
|
"end": 1507,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1509,
|
|
"end": 1517,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1509,
|
|
"end": 1516,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1513,
|
|
"end": 1514,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1509,
|
|
"end": 1516,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1509,
|
|
"end": 1513,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1509,
|
|
"end": 1511,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1512,
|
|
"end": 1513,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1515,
|
|
"end": 1516,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1518,
|
|
"end": 1528,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1518,
|
|
"end": 1527,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1518,
|
|
"end": 1525,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1522,
|
|
"end": 1523,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1518,
|
|
"end": 1525,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1518,
|
|
"end": 1522,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1518,
|
|
"end": 1520,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1521,
|
|
"end": 1522,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1524,
|
|
"end": 1525,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1526,
|
|
"end": 1527,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1529,
|
|
"end": 1542,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1529,
|
|
"end": 1541,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1538,
|
|
"end": 1539,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1529,
|
|
"end": 1541,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1529,
|
|
"end": 1538,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1529,
|
|
"end": 1536,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1533,
|
|
"end": 1534,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1529,
|
|
"end": 1536,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1529,
|
|
"end": 1533,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1529,
|
|
"end": 1531,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1532,
|
|
"end": 1533,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1535,
|
|
"end": 1536,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1537,
|
|
"end": 1538,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1540,
|
|
"end": 1541,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1543,
|
|
"end": 1550,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1543,
|
|
"end": 1549,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1543,
|
|
"end": 1547,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1543,
|
|
"end": 1545,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1546,
|
|
"end": 1547,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1548,
|
|
"end": 1549,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1551,
|
|
"end": 1562,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1551,
|
|
"end": 1561,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1551,
|
|
"end": 1559,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1551,
|
|
"end": 1557,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1551,
|
|
"end": 1555,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1551,
|
|
"end": 1553,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o5",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1554,
|
|
"end": 1555,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1556,
|
|
"end": 1557,
|
|
"ctxt": 0
|
|
},
|
|
"value": "y",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1558,
|
|
"end": 1559,
|
|
"ctxt": 0
|
|
},
|
|
"value": "z",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1560,
|
|
"end": 1561,
|
|
"ctxt": 0
|
|
},
|
|
"value": "w",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsInterfaceDeclaration",
|
|
"span": {
|
|
"start": 1564,
|
|
"end": 1608,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1574,
|
|
"end": 1578,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Base",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"typeParams": null,
|
|
"extends": [],
|
|
"body": {
|
|
"type": "TsInterfaceBody",
|
|
"span": {
|
|
"start": 1579,
|
|
"end": 1608,
|
|
"ctxt": 0
|
|
},
|
|
"body": [
|
|
{
|
|
"type": "TsMethodSignature",
|
|
"span": {
|
|
"start": 1585,
|
|
"end": 1606,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1585,
|
|
"end": 1586,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"params": [],
|
|
"typeAnn": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1588,
|
|
"end": 1605,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypePredicate",
|
|
"span": {
|
|
"start": 1590,
|
|
"end": 1605,
|
|
"ctxt": 0
|
|
},
|
|
"asserts": false,
|
|
"paramName": {
|
|
"type": "TsThisType",
|
|
"span": {
|
|
"start": 1590,
|
|
"end": 1594,
|
|
"ctxt": 0
|
|
}
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1598,
|
|
"end": 1605,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1598,
|
|
"end": 1605,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1598,
|
|
"end": 1605,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Derived",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "TsInterfaceDeclaration",
|
|
"span": {
|
|
"start": 1610,
|
|
"end": 1659,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1620,
|
|
"end": 1627,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Derived",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"typeParams": null,
|
|
"extends": [
|
|
{
|
|
"type": "TsExpressionWithTypeArguments",
|
|
"span": {
|
|
"start": 1636,
|
|
"end": 1640,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1636,
|
|
"end": 1640,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Base",
|
|
"optional": false
|
|
},
|
|
"typeArguments": null
|
|
}
|
|
],
|
|
"body": {
|
|
"type": "TsInterfaceBody",
|
|
"span": {
|
|
"start": 1641,
|
|
"end": 1659,
|
|
"ctxt": 0
|
|
},
|
|
"body": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 1647,
|
|
"end": 1657,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1647,
|
|
"end": 1648,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1648,
|
|
"end": 1656,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1650,
|
|
"end": 1656,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 1661,
|
|
"end": 1696,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 1675,
|
|
"end": 1695,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1675,
|
|
"end": 1677,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1677,
|
|
"end": 1695,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 1679,
|
|
"end": 1695,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1679,
|
|
"end": 1683,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1679,
|
|
"end": 1683,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Base",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1686,
|
|
"end": 1695,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 1697,
|
|
"end": 1780,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 1701,
|
|
"end": 1708,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1701,
|
|
"end": 1706,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1703,
|
|
"end": 1704,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1701,
|
|
"end": 1706,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1701,
|
|
"end": 1703,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1705,
|
|
"end": 1706,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1710,
|
|
"end": 1742,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1716,
|
|
"end": 1719,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1716,
|
|
"end": 1718,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1735,
|
|
"end": 1740,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1735,
|
|
"end": 1739,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1735,
|
|
"end": 1737,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1738,
|
|
"end": 1739,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 1748,
|
|
"end": 1780,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1754,
|
|
"end": 1757,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1754,
|
|
"end": 1756,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1762,
|
|
"end": 1768,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1762,
|
|
"end": 1767,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1764,
|
|
"end": 1765,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1762,
|
|
"end": 1767,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1762,
|
|
"end": 1764,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1766,
|
|
"end": 1767,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1773,
|
|
"end": 1778,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1773,
|
|
"end": 1777,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1773,
|
|
"end": 1775,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1776,
|
|
"end": 1777,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1781,
|
|
"end": 1784,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1781,
|
|
"end": 1783,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1785,
|
|
"end": 1791,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 1785,
|
|
"end": 1790,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 1787,
|
|
"end": 1788,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1785,
|
|
"end": 1790,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1785,
|
|
"end": 1787,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1789,
|
|
"end": 1790,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 1792,
|
|
"end": 1797,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 1792,
|
|
"end": 1796,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1792,
|
|
"end": 1794,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o6",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1795,
|
|
"end": 1796,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 1810,
|
|
"end": 1884,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 1824,
|
|
"end": 1883,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1824,
|
|
"end": 1833,
|
|
"ctxt": 0
|
|
},
|
|
"value": "isDefined",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1833,
|
|
"end": 1883,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsFunctionType",
|
|
"span": {
|
|
"start": 1835,
|
|
"end": 1883,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1839,
|
|
"end": 1847,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1844,
|
|
"end": 1847,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1846,
|
|
"end": 1847,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1846,
|
|
"end": 1847,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeParams": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 1835,
|
|
"end": 1838,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 1836,
|
|
"end": 1837,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1836,
|
|
"end": 1837,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1849,
|
|
"end": 1883,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypePredicate",
|
|
"span": {
|
|
"start": 1852,
|
|
"end": 1883,
|
|
"ctxt": 0
|
|
},
|
|
"asserts": true,
|
|
"paramName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1860,
|
|
"end": 1865,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1869,
|
|
"end": 1883,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1869,
|
|
"end": 1883,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1869,
|
|
"end": 1880,
|
|
"ctxt": 0
|
|
},
|
|
"value": "NonNullable",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 1880,
|
|
"end": 1883,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 1881,
|
|
"end": 1882,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1881,
|
|
"end": 1882,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 1885,
|
|
"end": 1953,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 1899,
|
|
"end": 1952,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1899,
|
|
"end": 1907,
|
|
"ctxt": 0
|
|
},
|
|
"value": "isString",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1907,
|
|
"end": 1952,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsFunctionType",
|
|
"span": {
|
|
"start": 1909,
|
|
"end": 1952,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1910,
|
|
"end": 1924,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1915,
|
|
"end": 1924,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1917,
|
|
"end": 1924,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "unknown"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1926,
|
|
"end": 1952,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypePredicate",
|
|
"span": {
|
|
"start": 1929,
|
|
"end": 1952,
|
|
"ctxt": 0
|
|
},
|
|
"asserts": true,
|
|
"paramName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1937,
|
|
"end": 1942,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1946,
|
|
"end": 1952,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1946,
|
|
"end": 1952,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 1954,
|
|
"end": 2041,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 1968,
|
|
"end": 2040,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1968,
|
|
"end": 1981,
|
|
"ctxt": 0
|
|
},
|
|
"value": "maybeIsString",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 1981,
|
|
"end": 2040,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 1983,
|
|
"end": 2040,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 1983,
|
|
"end": 1992,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
},
|
|
{
|
|
"type": "TsParenthesizedType",
|
|
"span": {
|
|
"start": 1995,
|
|
"end": 2040,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsFunctionType",
|
|
"span": {
|
|
"start": 1996,
|
|
"end": 2039,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 1997,
|
|
"end": 2011,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2002,
|
|
"end": 2011,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2004,
|
|
"end": 2011,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "unknown"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2013,
|
|
"end": 2039,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypePredicate",
|
|
"span": {
|
|
"start": 2016,
|
|
"end": 2039,
|
|
"ctxt": 0
|
|
},
|
|
"asserts": true,
|
|
"paramName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2024,
|
|
"end": 2029,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2033,
|
|
"end": 2039,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2033,
|
|
"end": 2039,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 2042,
|
|
"end": 2094,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 2056,
|
|
"end": 2093,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2056,
|
|
"end": 2066,
|
|
"ctxt": 0
|
|
},
|
|
"value": "maybeNever",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2066,
|
|
"end": 2093,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 2068,
|
|
"end": 2093,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2068,
|
|
"end": 2077,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
},
|
|
{
|
|
"type": "TsParenthesizedType",
|
|
"span": {
|
|
"start": 2080,
|
|
"end": 2093,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsFunctionType",
|
|
"span": {
|
|
"start": 2081,
|
|
"end": 2092,
|
|
"ctxt": 0
|
|
},
|
|
"params": [],
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2084,
|
|
"end": 2092,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2087,
|
|
"end": 2092,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "never"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2105,
|
|
"end": 2108,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f01",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2109,
|
|
"end": 2119,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2109,
|
|
"end": 2119,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2110,
|
|
"end": 2119,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2112,
|
|
"end": 2119,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "unknown"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 2096,
|
|
"end": 2401,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2121,
|
|
"end": 2401,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2127,
|
|
"end": 2180,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2131,
|
|
"end": 2137,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2132,
|
|
"end": 2137,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "BooleanLiteral",
|
|
"span": {
|
|
"start": 2133,
|
|
"end": 2137,
|
|
"ctxt": 0
|
|
},
|
|
"value": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2139,
|
|
"end": 2180,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2149,
|
|
"end": 2163,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2149,
|
|
"end": 2162,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2157,
|
|
"end": 2158,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2149,
|
|
"end": 2162,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2149,
|
|
"end": 2157,
|
|
"ctxt": 0
|
|
},
|
|
"value": "isString",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2160,
|
|
"end": 2161,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2172,
|
|
"end": 2174,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2172,
|
|
"end": 2173,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2185,
|
|
"end": 2243,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2189,
|
|
"end": 2195,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2190,
|
|
"end": 2195,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "BooleanLiteral",
|
|
"span": {
|
|
"start": 2191,
|
|
"end": 2195,
|
|
"ctxt": 0
|
|
},
|
|
"value": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2197,
|
|
"end": 2243,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2207,
|
|
"end": 2226,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2207,
|
|
"end": 2225,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2220,
|
|
"end": 2221,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2207,
|
|
"end": 2225,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2207,
|
|
"end": 2220,
|
|
"ctxt": 0
|
|
},
|
|
"value": "maybeIsString",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2223,
|
|
"end": 2224,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2235,
|
|
"end": 2237,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2235,
|
|
"end": 2236,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2248,
|
|
"end": 2340,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2252,
|
|
"end": 2258,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2253,
|
|
"end": 2258,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "BooleanLiteral",
|
|
"span": {
|
|
"start": 2254,
|
|
"end": 2258,
|
|
"ctxt": 0
|
|
},
|
|
"value": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2260,
|
|
"end": 2340,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2270,
|
|
"end": 2295,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2270,
|
|
"end": 2294,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2270,
|
|
"end": 2279,
|
|
"ctxt": 0
|
|
},
|
|
"value": "isDefined",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2280,
|
|
"end": 2293,
|
|
"ctxt": 0
|
|
},
|
|
"value": "maybeIsString",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2304,
|
|
"end": 2323,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2304,
|
|
"end": 2322,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2317,
|
|
"end": 2318,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2304,
|
|
"end": 2322,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2304,
|
|
"end": 2317,
|
|
"ctxt": 0
|
|
},
|
|
"value": "maybeIsString",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2320,
|
|
"end": 2321,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2332,
|
|
"end": 2334,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2332,
|
|
"end": 2333,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2345,
|
|
"end": 2399,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2349,
|
|
"end": 2355,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 2350,
|
|
"end": 2355,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "BooleanLiteral",
|
|
"span": {
|
|
"start": 2351,
|
|
"end": 2355,
|
|
"ctxt": 0
|
|
},
|
|
"value": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2357,
|
|
"end": 2399,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2367,
|
|
"end": 2382,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2367,
|
|
"end": 2381,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2377,
|
|
"end": 2378,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2367,
|
|
"end": 2381,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2367,
|
|
"end": 2377,
|
|
"ctxt": 0
|
|
},
|
|
"value": "maybeNever",
|
|
"optional": false
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2391,
|
|
"end": 2393,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2391,
|
|
"end": 2392,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 2403,
|
|
"end": 2469,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2408,
|
|
"end": 2413,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 2416,
|
|
"end": 2468,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 2418,
|
|
"end": 2439,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2418,
|
|
"end": 2421,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2421,
|
|
"end": 2438,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 2423,
|
|
"end": 2438,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2423,
|
|
"end": 2429,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2432,
|
|
"end": 2438,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsMethodSignature",
|
|
"span": {
|
|
"start": 2440,
|
|
"end": 2454,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2440,
|
|
"end": 2443,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"params": [],
|
|
"typeAnn": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2445,
|
|
"end": 2453,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2447,
|
|
"end": 2453,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 2455,
|
|
"end": 2466,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2455,
|
|
"end": 2458,
|
|
"ctxt": 0
|
|
},
|
|
"value": "baz",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2458,
|
|
"end": 2466,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2460,
|
|
"end": 2466,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "object"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2480,
|
|
"end": 2483,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f10",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2484,
|
|
"end": 2504,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2484,
|
|
"end": 2504,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2485,
|
|
"end": 2504,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 2487,
|
|
"end": 2504,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2487,
|
|
"end": 2492,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2487,
|
|
"end": 2492,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2495,
|
|
"end": 2504,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2506,
|
|
"end": 2519,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2506,
|
|
"end": 2519,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2511,
|
|
"end": 2519,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2513,
|
|
"end": 2519,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 2471,
|
|
"end": 2833,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2521,
|
|
"end": 2833,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2527,
|
|
"end": 2571,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2531,
|
|
"end": 2547,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2531,
|
|
"end": 2537,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2532,
|
|
"end": 2533,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2531,
|
|
"end": 2537,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2531,
|
|
"end": 2532,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2534,
|
|
"end": 2537,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2542,
|
|
"end": 2547,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2549,
|
|
"end": 2571,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2559,
|
|
"end": 2565,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2559,
|
|
"end": 2564,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2559,
|
|
"end": 2560,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2561,
|
|
"end": 2564,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2576,
|
|
"end": 2627,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2580,
|
|
"end": 2600,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2580,
|
|
"end": 2590,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2581,
|
|
"end": 2582,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2580,
|
|
"end": 2590,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2580,
|
|
"end": 2581,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2583,
|
|
"end": 2590,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 2584,
|
|
"end": 2589,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2595,
|
|
"end": 2600,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2602,
|
|
"end": 2627,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2612,
|
|
"end": 2621,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2612,
|
|
"end": 2620,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2612,
|
|
"end": 2613,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2613,
|
|
"end": 2620,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 2614,
|
|
"end": 2619,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2632,
|
|
"end": 2678,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2636,
|
|
"end": 2654,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2636,
|
|
"end": 2644,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2636,
|
|
"end": 2642,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2637,
|
|
"end": 2638,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2636,
|
|
"end": 2642,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2636,
|
|
"end": 2637,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2639,
|
|
"end": 2642,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2649,
|
|
"end": 2654,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2656,
|
|
"end": 2678,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2666,
|
|
"end": 2672,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2666,
|
|
"end": 2671,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2666,
|
|
"end": 2667,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2668,
|
|
"end": 2671,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2683,
|
|
"end": 2726,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2687,
|
|
"end": 2702,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2687,
|
|
"end": 2693,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2688,
|
|
"end": 2689,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2687,
|
|
"end": 2693,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2687,
|
|
"end": 2688,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2690,
|
|
"end": 2693,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2697,
|
|
"end": 2702,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2704,
|
|
"end": 2726,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2714,
|
|
"end": 2720,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2714,
|
|
"end": 2719,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2714,
|
|
"end": 2715,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2716,
|
|
"end": 2719,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2731,
|
|
"end": 2781,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2735,
|
|
"end": 2754,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2735,
|
|
"end": 2745,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2736,
|
|
"end": 2737,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2735,
|
|
"end": 2745,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2735,
|
|
"end": 2736,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2738,
|
|
"end": 2745,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 2739,
|
|
"end": 2744,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2749,
|
|
"end": 2754,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2756,
|
|
"end": 2781,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2766,
|
|
"end": 2775,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2766,
|
|
"end": 2774,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2766,
|
|
"end": 2767,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2767,
|
|
"end": 2774,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 2768,
|
|
"end": 2773,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2786,
|
|
"end": 2831,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2790,
|
|
"end": 2807,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2790,
|
|
"end": 2798,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2790,
|
|
"end": 2796,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2791,
|
|
"end": 2792,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2790,
|
|
"end": 2796,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2790,
|
|
"end": 2791,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2793,
|
|
"end": 2796,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2802,
|
|
"end": 2807,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2809,
|
|
"end": 2831,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2819,
|
|
"end": 2825,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2819,
|
|
"end": 2824,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2819,
|
|
"end": 2820,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2821,
|
|
"end": 2824,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2844,
|
|
"end": 2847,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f11",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2848,
|
|
"end": 2863,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2848,
|
|
"end": 2863,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2849,
|
|
"end": 2863,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 2851,
|
|
"end": 2863,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 2851,
|
|
"end": 2856,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2851,
|
|
"end": 2856,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2859,
|
|
"end": 2863,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "null"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 2865,
|
|
"end": 2878,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2865,
|
|
"end": 2878,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 2870,
|
|
"end": 2878,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 2872,
|
|
"end": 2878,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 2835,
|
|
"end": 3192,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2880,
|
|
"end": 3192,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2886,
|
|
"end": 2930,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2890,
|
|
"end": 2906,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2890,
|
|
"end": 2896,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2891,
|
|
"end": 2892,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2890,
|
|
"end": 2896,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2890,
|
|
"end": 2891,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2893,
|
|
"end": 2896,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2901,
|
|
"end": 2906,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2908,
|
|
"end": 2930,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2918,
|
|
"end": 2924,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2918,
|
|
"end": 2923,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2918,
|
|
"end": 2919,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2920,
|
|
"end": 2923,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2935,
|
|
"end": 2986,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2939,
|
|
"end": 2959,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2939,
|
|
"end": 2949,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2940,
|
|
"end": 2941,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2939,
|
|
"end": 2949,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2939,
|
|
"end": 2940,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2942,
|
|
"end": 2949,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 2943,
|
|
"end": 2948,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2954,
|
|
"end": 2959,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 2961,
|
|
"end": 2986,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 2971,
|
|
"end": 2980,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2971,
|
|
"end": 2979,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2971,
|
|
"end": 2972,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 2972,
|
|
"end": 2979,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 2973,
|
|
"end": 2978,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 2991,
|
|
"end": 3037,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 2995,
|
|
"end": 3013,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 2995,
|
|
"end": 3003,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 2995,
|
|
"end": 3001,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 2996,
|
|
"end": 2997,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 2995,
|
|
"end": 3001,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2995,
|
|
"end": 2996,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 2998,
|
|
"end": 3001,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3008,
|
|
"end": 3013,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3015,
|
|
"end": 3037,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3025,
|
|
"end": 3031,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3025,
|
|
"end": 3030,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3025,
|
|
"end": 3026,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3027,
|
|
"end": 3030,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3042,
|
|
"end": 3085,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3046,
|
|
"end": 3061,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3046,
|
|
"end": 3052,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3047,
|
|
"end": 3048,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3046,
|
|
"end": 3052,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3046,
|
|
"end": 3047,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3049,
|
|
"end": 3052,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3056,
|
|
"end": 3061,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3063,
|
|
"end": 3085,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3073,
|
|
"end": 3079,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3073,
|
|
"end": 3078,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3073,
|
|
"end": 3074,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3075,
|
|
"end": 3078,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3090,
|
|
"end": 3140,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3094,
|
|
"end": 3113,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3094,
|
|
"end": 3104,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3095,
|
|
"end": 3096,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3094,
|
|
"end": 3104,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3094,
|
|
"end": 3095,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3097,
|
|
"end": 3104,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3098,
|
|
"end": 3103,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3108,
|
|
"end": 3113,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3115,
|
|
"end": 3140,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3125,
|
|
"end": 3134,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3125,
|
|
"end": 3133,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3125,
|
|
"end": 3126,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3126,
|
|
"end": 3133,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3127,
|
|
"end": 3132,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3145,
|
|
"end": 3190,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3149,
|
|
"end": 3166,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 3149,
|
|
"end": 3157,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3149,
|
|
"end": 3155,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3150,
|
|
"end": 3151,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3149,
|
|
"end": 3155,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3149,
|
|
"end": 3150,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3152,
|
|
"end": 3155,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3161,
|
|
"end": 3166,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3168,
|
|
"end": 3190,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3178,
|
|
"end": 3184,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3178,
|
|
"end": 3183,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3178,
|
|
"end": 3179,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3180,
|
|
"end": 3183,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3203,
|
|
"end": 3206,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f12",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3207,
|
|
"end": 3227,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3207,
|
|
"end": 3227,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3208,
|
|
"end": 3227,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 3210,
|
|
"end": 3227,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3210,
|
|
"end": 3215,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3210,
|
|
"end": 3215,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3218,
|
|
"end": 3227,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3229,
|
|
"end": 3254,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3229,
|
|
"end": 3254,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3234,
|
|
"end": 3254,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 3236,
|
|
"end": 3254,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3236,
|
|
"end": 3242,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3245,
|
|
"end": 3254,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 3194,
|
|
"end": 3628,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3256,
|
|
"end": 3628,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3262,
|
|
"end": 3316,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3266,
|
|
"end": 3282,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3266,
|
|
"end": 3272,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3267,
|
|
"end": 3268,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3266,
|
|
"end": 3272,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3266,
|
|
"end": 3267,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3269,
|
|
"end": 3272,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3277,
|
|
"end": 3282,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3284,
|
|
"end": 3316,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3294,
|
|
"end": 3300,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3294,
|
|
"end": 3299,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3294,
|
|
"end": 3295,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3296,
|
|
"end": 3299,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3321,
|
|
"end": 3382,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3325,
|
|
"end": 3345,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3325,
|
|
"end": 3335,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3326,
|
|
"end": 3327,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3325,
|
|
"end": 3335,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3325,
|
|
"end": 3326,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3328,
|
|
"end": 3335,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3329,
|
|
"end": 3334,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3340,
|
|
"end": 3345,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3347,
|
|
"end": 3382,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3357,
|
|
"end": 3366,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3357,
|
|
"end": 3365,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3357,
|
|
"end": 3358,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3358,
|
|
"end": 3365,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3359,
|
|
"end": 3364,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3387,
|
|
"end": 3443,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3391,
|
|
"end": 3409,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 3391,
|
|
"end": 3399,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3391,
|
|
"end": 3397,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3392,
|
|
"end": 3393,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3391,
|
|
"end": 3397,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3391,
|
|
"end": 3392,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3394,
|
|
"end": 3397,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3404,
|
|
"end": 3409,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3411,
|
|
"end": 3443,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3421,
|
|
"end": 3427,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3421,
|
|
"end": 3426,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3421,
|
|
"end": 3422,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3423,
|
|
"end": 3426,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3448,
|
|
"end": 3501,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3452,
|
|
"end": 3467,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3452,
|
|
"end": 3458,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3453,
|
|
"end": 3454,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3452,
|
|
"end": 3458,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3452,
|
|
"end": 3453,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3455,
|
|
"end": 3458,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3462,
|
|
"end": 3467,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3469,
|
|
"end": 3501,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3479,
|
|
"end": 3485,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3479,
|
|
"end": 3484,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3479,
|
|
"end": 3480,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3481,
|
|
"end": 3484,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3506,
|
|
"end": 3566,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3510,
|
|
"end": 3529,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3510,
|
|
"end": 3520,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3511,
|
|
"end": 3512,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3510,
|
|
"end": 3520,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3510,
|
|
"end": 3511,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3513,
|
|
"end": 3520,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3514,
|
|
"end": 3519,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3524,
|
|
"end": 3529,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3531,
|
|
"end": 3566,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3541,
|
|
"end": 3550,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3541,
|
|
"end": 3549,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3541,
|
|
"end": 3542,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3542,
|
|
"end": 3549,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3543,
|
|
"end": 3548,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3571,
|
|
"end": 3626,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3575,
|
|
"end": 3592,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 3575,
|
|
"end": 3583,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3575,
|
|
"end": 3581,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3576,
|
|
"end": 3577,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3575,
|
|
"end": 3581,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3575,
|
|
"end": 3576,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3578,
|
|
"end": 3581,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3587,
|
|
"end": 3592,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3594,
|
|
"end": 3626,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3604,
|
|
"end": 3610,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3604,
|
|
"end": 3609,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3604,
|
|
"end": 3605,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3606,
|
|
"end": 3609,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3639,
|
|
"end": 3643,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f12a",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3644,
|
|
"end": 3664,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3644,
|
|
"end": 3664,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3645,
|
|
"end": 3664,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 3647,
|
|
"end": 3664,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 3647,
|
|
"end": 3652,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3647,
|
|
"end": 3652,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3655,
|
|
"end": 3664,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 3666,
|
|
"end": 3686,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3666,
|
|
"end": 3686,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 3671,
|
|
"end": 3686,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 3673,
|
|
"end": 3686,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3673,
|
|
"end": 3679,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 3682,
|
|
"end": 3686,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "null"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 3630,
|
|
"end": 4030,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3688,
|
|
"end": 4030,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3694,
|
|
"end": 3738,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3698,
|
|
"end": 3714,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3698,
|
|
"end": 3704,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3699,
|
|
"end": 3700,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3698,
|
|
"end": 3704,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3698,
|
|
"end": 3699,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3701,
|
|
"end": 3704,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3709,
|
|
"end": 3714,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3716,
|
|
"end": 3738,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3726,
|
|
"end": 3732,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3726,
|
|
"end": 3731,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3726,
|
|
"end": 3727,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3728,
|
|
"end": 3731,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3743,
|
|
"end": 3794,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3747,
|
|
"end": 3767,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3747,
|
|
"end": 3757,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3748,
|
|
"end": 3749,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3747,
|
|
"end": 3757,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3747,
|
|
"end": 3748,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3750,
|
|
"end": 3757,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3751,
|
|
"end": 3756,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3762,
|
|
"end": 3767,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3769,
|
|
"end": 3794,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3779,
|
|
"end": 3788,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3779,
|
|
"end": 3787,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3779,
|
|
"end": 3780,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3780,
|
|
"end": 3787,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3781,
|
|
"end": 3786,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3799,
|
|
"end": 3845,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3803,
|
|
"end": 3821,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 3803,
|
|
"end": 3811,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3803,
|
|
"end": 3809,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3804,
|
|
"end": 3805,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3803,
|
|
"end": 3809,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3803,
|
|
"end": 3804,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3806,
|
|
"end": 3809,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3816,
|
|
"end": 3821,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3823,
|
|
"end": 3845,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3833,
|
|
"end": 3839,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3833,
|
|
"end": 3838,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3833,
|
|
"end": 3834,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3835,
|
|
"end": 3838,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3850,
|
|
"end": 3903,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3854,
|
|
"end": 3869,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3854,
|
|
"end": 3860,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3855,
|
|
"end": 3856,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3854,
|
|
"end": 3860,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3854,
|
|
"end": 3855,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3857,
|
|
"end": 3860,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3864,
|
|
"end": 3869,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3871,
|
|
"end": 3903,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3881,
|
|
"end": 3887,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3881,
|
|
"end": 3886,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3881,
|
|
"end": 3882,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3883,
|
|
"end": 3886,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3908,
|
|
"end": 3968,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3912,
|
|
"end": 3931,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3912,
|
|
"end": 3922,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3913,
|
|
"end": 3914,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3912,
|
|
"end": 3922,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3912,
|
|
"end": 3913,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3915,
|
|
"end": 3922,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3916,
|
|
"end": 3921,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3926,
|
|
"end": 3931,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3933,
|
|
"end": 3968,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 3943,
|
|
"end": 3952,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3943,
|
|
"end": 3951,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3943,
|
|
"end": 3944,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 3944,
|
|
"end": 3951,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 3945,
|
|
"end": 3950,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 3973,
|
|
"end": 4028,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 3977,
|
|
"end": 3994,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 3977,
|
|
"end": 3985,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 3977,
|
|
"end": 3983,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 3978,
|
|
"end": 3979,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 3977,
|
|
"end": 3983,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3977,
|
|
"end": 3978,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3980,
|
|
"end": 3983,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 3989,
|
|
"end": 3994,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 3996,
|
|
"end": 4028,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4006,
|
|
"end": 4012,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4006,
|
|
"end": 4011,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4006,
|
|
"end": 4007,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4008,
|
|
"end": 4011,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4041,
|
|
"end": 4044,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f13",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 4045,
|
|
"end": 4065,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4045,
|
|
"end": 4065,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 4046,
|
|
"end": 4065,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 4048,
|
|
"end": 4065,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4048,
|
|
"end": 4053,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4048,
|
|
"end": 4053,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 4056,
|
|
"end": 4065,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 4032,
|
|
"end": 4403,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4067,
|
|
"end": 4403,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4073,
|
|
"end": 4121,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4077,
|
|
"end": 4097,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4077,
|
|
"end": 4083,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4078,
|
|
"end": 4079,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4077,
|
|
"end": 4083,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4077,
|
|
"end": 4078,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4080,
|
|
"end": 4083,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4088,
|
|
"end": 4097,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4099,
|
|
"end": 4121,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4109,
|
|
"end": 4115,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4109,
|
|
"end": 4114,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4109,
|
|
"end": 4110,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4111,
|
|
"end": 4114,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4126,
|
|
"end": 4181,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4130,
|
|
"end": 4154,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4130,
|
|
"end": 4140,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4131,
|
|
"end": 4132,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4130,
|
|
"end": 4140,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4130,
|
|
"end": 4131,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4133,
|
|
"end": 4140,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4134,
|
|
"end": 4139,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4145,
|
|
"end": 4154,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4156,
|
|
"end": 4181,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4166,
|
|
"end": 4175,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4166,
|
|
"end": 4174,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4166,
|
|
"end": 4167,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4167,
|
|
"end": 4174,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4168,
|
|
"end": 4173,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4186,
|
|
"end": 4236,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4190,
|
|
"end": 4212,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 4190,
|
|
"end": 4198,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4190,
|
|
"end": 4196,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4191,
|
|
"end": 4192,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4190,
|
|
"end": 4196,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4190,
|
|
"end": 4191,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4193,
|
|
"end": 4196,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4203,
|
|
"end": 4212,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4214,
|
|
"end": 4236,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4224,
|
|
"end": 4230,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4224,
|
|
"end": 4229,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4224,
|
|
"end": 4225,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4226,
|
|
"end": 4229,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4241,
|
|
"end": 4288,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4245,
|
|
"end": 4264,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4245,
|
|
"end": 4251,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4246,
|
|
"end": 4247,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4245,
|
|
"end": 4251,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4245,
|
|
"end": 4246,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4248,
|
|
"end": 4251,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4255,
|
|
"end": 4264,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4266,
|
|
"end": 4288,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4276,
|
|
"end": 4282,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4276,
|
|
"end": 4281,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4276,
|
|
"end": 4277,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4278,
|
|
"end": 4281,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4293,
|
|
"end": 4347,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4297,
|
|
"end": 4320,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4297,
|
|
"end": 4307,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4298,
|
|
"end": 4299,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4297,
|
|
"end": 4307,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4297,
|
|
"end": 4298,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4300,
|
|
"end": 4307,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4301,
|
|
"end": 4306,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4311,
|
|
"end": 4320,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4322,
|
|
"end": 4347,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4332,
|
|
"end": 4341,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4332,
|
|
"end": 4340,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4332,
|
|
"end": 4333,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4333,
|
|
"end": 4340,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4334,
|
|
"end": 4339,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4352,
|
|
"end": 4401,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4356,
|
|
"end": 4377,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 4356,
|
|
"end": 4364,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4356,
|
|
"end": 4362,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4357,
|
|
"end": 4358,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4356,
|
|
"end": 4362,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4356,
|
|
"end": 4357,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4359,
|
|
"end": 4362,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4368,
|
|
"end": 4377,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4379,
|
|
"end": 4401,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4389,
|
|
"end": 4395,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4389,
|
|
"end": 4394,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4389,
|
|
"end": 4390,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4391,
|
|
"end": 4394,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4414,
|
|
"end": 4418,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f13a",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 4419,
|
|
"end": 4439,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4419,
|
|
"end": 4439,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 4420,
|
|
"end": 4439,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 4422,
|
|
"end": 4439,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4422,
|
|
"end": 4427,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4422,
|
|
"end": 4427,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 4430,
|
|
"end": 4439,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 4405,
|
|
"end": 4777,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4441,
|
|
"end": 4777,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4447,
|
|
"end": 4500,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4451,
|
|
"end": 4466,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4451,
|
|
"end": 4457,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4452,
|
|
"end": 4453,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4451,
|
|
"end": 4457,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4451,
|
|
"end": 4452,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4454,
|
|
"end": 4457,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NullLiteral",
|
|
"span": {
|
|
"start": 4462,
|
|
"end": 4466,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4468,
|
|
"end": 4500,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4478,
|
|
"end": 4484,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4478,
|
|
"end": 4483,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4478,
|
|
"end": 4479,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4480,
|
|
"end": 4483,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4505,
|
|
"end": 4565,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4509,
|
|
"end": 4528,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4509,
|
|
"end": 4519,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4510,
|
|
"end": 4511,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4509,
|
|
"end": 4519,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4509,
|
|
"end": 4510,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4512,
|
|
"end": 4519,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4513,
|
|
"end": 4518,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NullLiteral",
|
|
"span": {
|
|
"start": 4524,
|
|
"end": 4528,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4530,
|
|
"end": 4565,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4540,
|
|
"end": 4549,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4540,
|
|
"end": 4548,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4540,
|
|
"end": 4541,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4541,
|
|
"end": 4548,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4542,
|
|
"end": 4547,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4570,
|
|
"end": 4625,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4574,
|
|
"end": 4591,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 4574,
|
|
"end": 4582,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4574,
|
|
"end": 4580,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4575,
|
|
"end": 4576,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4574,
|
|
"end": 4580,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4574,
|
|
"end": 4575,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4577,
|
|
"end": 4580,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "NullLiteral",
|
|
"span": {
|
|
"start": 4587,
|
|
"end": 4591,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4593,
|
|
"end": 4625,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4603,
|
|
"end": 4609,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4603,
|
|
"end": 4608,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4603,
|
|
"end": 4604,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4605,
|
|
"end": 4608,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4630,
|
|
"end": 4672,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4634,
|
|
"end": 4648,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4634,
|
|
"end": 4640,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4635,
|
|
"end": 4636,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4634,
|
|
"end": 4640,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4634,
|
|
"end": 4635,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4637,
|
|
"end": 4640,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NullLiteral",
|
|
"span": {
|
|
"start": 4644,
|
|
"end": 4648,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4650,
|
|
"end": 4672,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4660,
|
|
"end": 4666,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4660,
|
|
"end": 4665,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4660,
|
|
"end": 4661,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4662,
|
|
"end": 4665,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4677,
|
|
"end": 4726,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4681,
|
|
"end": 4699,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4681,
|
|
"end": 4691,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4682,
|
|
"end": 4683,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4681,
|
|
"end": 4691,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4681,
|
|
"end": 4682,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4684,
|
|
"end": 4691,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4685,
|
|
"end": 4690,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NullLiteral",
|
|
"span": {
|
|
"start": 4695,
|
|
"end": 4699,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4701,
|
|
"end": 4726,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4711,
|
|
"end": 4720,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4711,
|
|
"end": 4719,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4711,
|
|
"end": 4712,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4712,
|
|
"end": 4719,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4713,
|
|
"end": 4718,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4731,
|
|
"end": 4775,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4735,
|
|
"end": 4751,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 4735,
|
|
"end": 4743,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4735,
|
|
"end": 4741,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4736,
|
|
"end": 4737,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4735,
|
|
"end": 4741,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4735,
|
|
"end": 4736,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4738,
|
|
"end": 4741,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "NullLiteral",
|
|
"span": {
|
|
"start": 4747,
|
|
"end": 4751,
|
|
"ctxt": 0
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4753,
|
|
"end": 4775,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4763,
|
|
"end": 4769,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4763,
|
|
"end": 4768,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4763,
|
|
"end": 4764,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4765,
|
|
"end": 4768,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4788,
|
|
"end": 4791,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f14",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 4792,
|
|
"end": 4807,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4792,
|
|
"end": 4807,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 4793,
|
|
"end": 4807,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 4795,
|
|
"end": 4807,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4795,
|
|
"end": 4800,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4795,
|
|
"end": 4800,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 4803,
|
|
"end": 4807,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "null"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 4779,
|
|
"end": 4980,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4809,
|
|
"end": 4980,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4815,
|
|
"end": 4863,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4819,
|
|
"end": 4839,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4819,
|
|
"end": 4825,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4820,
|
|
"end": 4821,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4819,
|
|
"end": 4825,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4819,
|
|
"end": 4820,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4822,
|
|
"end": 4825,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4830,
|
|
"end": 4839,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4841,
|
|
"end": 4863,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4851,
|
|
"end": 4857,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4851,
|
|
"end": 4856,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4851,
|
|
"end": 4852,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4853,
|
|
"end": 4856,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4868,
|
|
"end": 4923,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4872,
|
|
"end": 4896,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4872,
|
|
"end": 4882,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4873,
|
|
"end": 4874,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4872,
|
|
"end": 4882,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4872,
|
|
"end": 4873,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4875,
|
|
"end": 4882,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4876,
|
|
"end": 4881,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4887,
|
|
"end": 4896,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4898,
|
|
"end": 4923,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4908,
|
|
"end": 4917,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4908,
|
|
"end": 4916,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4908,
|
|
"end": 4909,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 4909,
|
|
"end": 4916,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 4910,
|
|
"end": 4915,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 4928,
|
|
"end": 4978,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 4932,
|
|
"end": 4954,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 4932,
|
|
"end": 4940,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 4932,
|
|
"end": 4938,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 4933,
|
|
"end": 4934,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4932,
|
|
"end": 4938,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4932,
|
|
"end": 4933,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4935,
|
|
"end": 4938,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4945,
|
|
"end": 4954,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 4956,
|
|
"end": 4978,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 4966,
|
|
"end": 4972,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 4966,
|
|
"end": 4971,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4966,
|
|
"end": 4967,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4968,
|
|
"end": 4971,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4991,
|
|
"end": 4994,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f15",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 4995,
|
|
"end": 5015,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4995,
|
|
"end": 5015,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 4996,
|
|
"end": 5015,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 4998,
|
|
"end": 5015,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 4998,
|
|
"end": 5003,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 4998,
|
|
"end": 5003,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 5006,
|
|
"end": 5015,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 5017,
|
|
"end": 5030,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5017,
|
|
"end": 5030,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 5022,
|
|
"end": 5030,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 5024,
|
|
"end": 5030,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 4982,
|
|
"end": 5397,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5032,
|
|
"end": 5397,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5038,
|
|
"end": 5124,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5042,
|
|
"end": 5058,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5042,
|
|
"end": 5048,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5043,
|
|
"end": 5044,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5042,
|
|
"end": 5048,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5042,
|
|
"end": 5043,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5045,
|
|
"end": 5048,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5053,
|
|
"end": 5058,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5060,
|
|
"end": 5082,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5070,
|
|
"end": 5076,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5070,
|
|
"end": 5075,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5070,
|
|
"end": 5071,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5072,
|
|
"end": 5075,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5092,
|
|
"end": 5124,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5102,
|
|
"end": 5108,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5102,
|
|
"end": 5107,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5102,
|
|
"end": 5103,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5104,
|
|
"end": 5107,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5129,
|
|
"end": 5215,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5133,
|
|
"end": 5149,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5133,
|
|
"end": 5139,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5134,
|
|
"end": 5135,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5133,
|
|
"end": 5139,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5133,
|
|
"end": 5134,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5136,
|
|
"end": 5139,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5144,
|
|
"end": 5149,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5151,
|
|
"end": 5183,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5161,
|
|
"end": 5167,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5161,
|
|
"end": 5166,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5161,
|
|
"end": 5162,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5163,
|
|
"end": 5166,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5193,
|
|
"end": 5215,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5203,
|
|
"end": 5209,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5203,
|
|
"end": 5208,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5203,
|
|
"end": 5204,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5205,
|
|
"end": 5208,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5220,
|
|
"end": 5305,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5224,
|
|
"end": 5239,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5224,
|
|
"end": 5230,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5225,
|
|
"end": 5226,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5224,
|
|
"end": 5230,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5224,
|
|
"end": 5225,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5227,
|
|
"end": 5230,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5234,
|
|
"end": 5239,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5241,
|
|
"end": 5263,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5251,
|
|
"end": 5257,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5251,
|
|
"end": 5256,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5251,
|
|
"end": 5252,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5253,
|
|
"end": 5256,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5273,
|
|
"end": 5305,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5283,
|
|
"end": 5289,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5283,
|
|
"end": 5288,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5283,
|
|
"end": 5284,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5285,
|
|
"end": 5288,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5310,
|
|
"end": 5395,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5314,
|
|
"end": 5329,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5314,
|
|
"end": 5320,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5315,
|
|
"end": 5316,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5314,
|
|
"end": 5320,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5314,
|
|
"end": 5315,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5317,
|
|
"end": 5320,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5324,
|
|
"end": 5329,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5331,
|
|
"end": 5363,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5341,
|
|
"end": 5347,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5341,
|
|
"end": 5346,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5341,
|
|
"end": 5342,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5343,
|
|
"end": 5346,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5373,
|
|
"end": 5395,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5383,
|
|
"end": 5389,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5383,
|
|
"end": 5388,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5383,
|
|
"end": 5384,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5385,
|
|
"end": 5388,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5408,
|
|
"end": 5412,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f15a",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 5413,
|
|
"end": 5433,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5413,
|
|
"end": 5433,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 5414,
|
|
"end": 5433,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 5416,
|
|
"end": 5433,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 5416,
|
|
"end": 5421,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5416,
|
|
"end": 5421,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 5424,
|
|
"end": 5433,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 5435,
|
|
"end": 5449,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5435,
|
|
"end": 5449,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 5440,
|
|
"end": 5449,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 5442,
|
|
"end": 5449,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "unknown"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 5399,
|
|
"end": 5856,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5451,
|
|
"end": 5856,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5457,
|
|
"end": 5553,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5461,
|
|
"end": 5477,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5461,
|
|
"end": 5467,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5462,
|
|
"end": 5463,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5461,
|
|
"end": 5467,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5461,
|
|
"end": 5462,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5464,
|
|
"end": 5467,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5472,
|
|
"end": 5477,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5479,
|
|
"end": 5511,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5489,
|
|
"end": 5495,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5489,
|
|
"end": 5494,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5489,
|
|
"end": 5490,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5491,
|
|
"end": 5494,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5521,
|
|
"end": 5553,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5531,
|
|
"end": 5537,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5531,
|
|
"end": 5536,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5531,
|
|
"end": 5532,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5533,
|
|
"end": 5536,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5558,
|
|
"end": 5654,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5562,
|
|
"end": 5578,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5562,
|
|
"end": 5568,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5563,
|
|
"end": 5564,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5562,
|
|
"end": 5568,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5562,
|
|
"end": 5563,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5565,
|
|
"end": 5568,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5573,
|
|
"end": 5578,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5580,
|
|
"end": 5612,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5590,
|
|
"end": 5596,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5590,
|
|
"end": 5595,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5590,
|
|
"end": 5591,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5592,
|
|
"end": 5595,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5622,
|
|
"end": 5654,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5632,
|
|
"end": 5638,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5632,
|
|
"end": 5637,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5632,
|
|
"end": 5633,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5634,
|
|
"end": 5637,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5659,
|
|
"end": 5754,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5663,
|
|
"end": 5678,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5663,
|
|
"end": 5669,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5664,
|
|
"end": 5665,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5663,
|
|
"end": 5669,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5663,
|
|
"end": 5664,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5666,
|
|
"end": 5669,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5673,
|
|
"end": 5678,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5680,
|
|
"end": 5712,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5690,
|
|
"end": 5696,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5690,
|
|
"end": 5695,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5690,
|
|
"end": 5691,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5692,
|
|
"end": 5695,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5722,
|
|
"end": 5754,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5732,
|
|
"end": 5738,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5732,
|
|
"end": 5737,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5732,
|
|
"end": 5733,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5734,
|
|
"end": 5737,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5759,
|
|
"end": 5854,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5763,
|
|
"end": 5778,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5763,
|
|
"end": 5769,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5764,
|
|
"end": 5765,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5763,
|
|
"end": 5769,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5763,
|
|
"end": 5764,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5766,
|
|
"end": 5769,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5773,
|
|
"end": 5778,
|
|
"ctxt": 0
|
|
},
|
|
"value": "value",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5780,
|
|
"end": 5812,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5790,
|
|
"end": 5796,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5790,
|
|
"end": 5795,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5790,
|
|
"end": 5791,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5792,
|
|
"end": 5795,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5822,
|
|
"end": 5854,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5832,
|
|
"end": 5838,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5832,
|
|
"end": 5837,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5832,
|
|
"end": 5833,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5834,
|
|
"end": 5837,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5867,
|
|
"end": 5870,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f16",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 5871,
|
|
"end": 5891,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5871,
|
|
"end": 5891,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 5872,
|
|
"end": 5891,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 5874,
|
|
"end": 5891,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 5874,
|
|
"end": 5879,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5874,
|
|
"end": 5879,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 5882,
|
|
"end": 5891,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 5858,
|
|
"end": 6274,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5893,
|
|
"end": 6274,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5899,
|
|
"end": 5989,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5903,
|
|
"end": 5923,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5903,
|
|
"end": 5909,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5904,
|
|
"end": 5905,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5903,
|
|
"end": 5909,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5903,
|
|
"end": 5904,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5906,
|
|
"end": 5909,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5914,
|
|
"end": 5923,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5925,
|
|
"end": 5957,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5935,
|
|
"end": 5941,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5935,
|
|
"end": 5940,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5935,
|
|
"end": 5936,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5937,
|
|
"end": 5940,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 5967,
|
|
"end": 5989,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 5977,
|
|
"end": 5983,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5977,
|
|
"end": 5982,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5977,
|
|
"end": 5978,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5979,
|
|
"end": 5982,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 5994,
|
|
"end": 6084,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 5998,
|
|
"end": 6018,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 5998,
|
|
"end": 6004,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 5999,
|
|
"end": 6000,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 5998,
|
|
"end": 6004,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 5998,
|
|
"end": 5999,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6001,
|
|
"end": 6004,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6009,
|
|
"end": 6018,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6020,
|
|
"end": 6042,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6030,
|
|
"end": 6036,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6030,
|
|
"end": 6035,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6030,
|
|
"end": 6031,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6032,
|
|
"end": 6035,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6052,
|
|
"end": 6084,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6062,
|
|
"end": 6068,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6062,
|
|
"end": 6067,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6062,
|
|
"end": 6063,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6064,
|
|
"end": 6067,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6089,
|
|
"end": 6178,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6093,
|
|
"end": 6112,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6093,
|
|
"end": 6099,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6094,
|
|
"end": 6095,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6093,
|
|
"end": 6099,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6093,
|
|
"end": 6094,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6096,
|
|
"end": 6099,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6103,
|
|
"end": 6112,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6114,
|
|
"end": 6146,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6124,
|
|
"end": 6130,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6124,
|
|
"end": 6129,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6124,
|
|
"end": 6125,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6126,
|
|
"end": 6129,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6156,
|
|
"end": 6178,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6166,
|
|
"end": 6172,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6166,
|
|
"end": 6171,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6166,
|
|
"end": 6167,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6168,
|
|
"end": 6171,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6183,
|
|
"end": 6272,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6187,
|
|
"end": 6206,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6187,
|
|
"end": 6193,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6188,
|
|
"end": 6189,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6187,
|
|
"end": 6193,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6187,
|
|
"end": 6188,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6190,
|
|
"end": 6193,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6197,
|
|
"end": 6206,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6208,
|
|
"end": 6230,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6218,
|
|
"end": 6224,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6218,
|
|
"end": 6223,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6218,
|
|
"end": 6219,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6220,
|
|
"end": 6223,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6240,
|
|
"end": 6272,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6250,
|
|
"end": 6256,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6250,
|
|
"end": 6255,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6250,
|
|
"end": 6251,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6252,
|
|
"end": 6255,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6285,
|
|
"end": 6288,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f20",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 6289,
|
|
"end": 6309,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6289,
|
|
"end": 6309,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 6290,
|
|
"end": 6309,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 6292,
|
|
"end": 6309,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 6292,
|
|
"end": 6297,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6292,
|
|
"end": 6297,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 6300,
|
|
"end": 6309,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 6276,
|
|
"end": 6556,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6311,
|
|
"end": 6556,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6317,
|
|
"end": 6371,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6321,
|
|
"end": 6347,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 6321,
|
|
"end": 6334,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6328,
|
|
"end": 6334,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6329,
|
|
"end": 6330,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6328,
|
|
"end": 6334,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6328,
|
|
"end": 6329,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6331,
|
|
"end": 6334,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6339,
|
|
"end": 6347,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6349,
|
|
"end": 6371,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6359,
|
|
"end": 6365,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6359,
|
|
"end": 6364,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6359,
|
|
"end": 6360,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6361,
|
|
"end": 6364,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6376,
|
|
"end": 6437,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6380,
|
|
"end": 6410,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 6380,
|
|
"end": 6397,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6387,
|
|
"end": 6397,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6388,
|
|
"end": 6389,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6387,
|
|
"end": 6397,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6387,
|
|
"end": 6388,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 6390,
|
|
"end": 6397,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6391,
|
|
"end": 6396,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6402,
|
|
"end": 6410,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6412,
|
|
"end": 6437,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6422,
|
|
"end": 6431,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6422,
|
|
"end": 6430,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6422,
|
|
"end": 6423,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 6423,
|
|
"end": 6430,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6424,
|
|
"end": 6429,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6442,
|
|
"end": 6498,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6446,
|
|
"end": 6474,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 6446,
|
|
"end": 6461,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 6453,
|
|
"end": 6461,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6453,
|
|
"end": 6459,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6454,
|
|
"end": 6455,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6453,
|
|
"end": 6459,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6453,
|
|
"end": 6454,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6456,
|
|
"end": 6459,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6466,
|
|
"end": 6474,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6476,
|
|
"end": 6498,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6486,
|
|
"end": 6492,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6486,
|
|
"end": 6491,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6486,
|
|
"end": 6487,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6488,
|
|
"end": 6491,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6503,
|
|
"end": 6554,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6507,
|
|
"end": 6530,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "instanceof",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6507,
|
|
"end": 6513,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6508,
|
|
"end": 6509,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6507,
|
|
"end": 6513,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6507,
|
|
"end": 6508,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6510,
|
|
"end": 6513,
|
|
"ctxt": 0
|
|
},
|
|
"value": "baz",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6525,
|
|
"end": 6530,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Error",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6532,
|
|
"end": 6554,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6542,
|
|
"end": 6548,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6542,
|
|
"end": 6547,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6542,
|
|
"end": 6543,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6544,
|
|
"end": 6547,
|
|
"ctxt": 0
|
|
},
|
|
"value": "baz",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6567,
|
|
"end": 6570,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f21",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 6571,
|
|
"end": 6586,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6571,
|
|
"end": 6586,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 6572,
|
|
"end": 6586,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 6574,
|
|
"end": 6586,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 6574,
|
|
"end": 6579,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6574,
|
|
"end": 6579,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 6582,
|
|
"end": 6586,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "null"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 6558,
|
|
"end": 6833,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6588,
|
|
"end": 6833,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6594,
|
|
"end": 6648,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6598,
|
|
"end": 6624,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 6598,
|
|
"end": 6611,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6605,
|
|
"end": 6611,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6606,
|
|
"end": 6607,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6605,
|
|
"end": 6611,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6605,
|
|
"end": 6606,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6608,
|
|
"end": 6611,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6616,
|
|
"end": 6624,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6626,
|
|
"end": 6648,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6636,
|
|
"end": 6642,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6636,
|
|
"end": 6641,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6636,
|
|
"end": 6637,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6638,
|
|
"end": 6641,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6653,
|
|
"end": 6714,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6657,
|
|
"end": 6687,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 6657,
|
|
"end": 6674,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6664,
|
|
"end": 6674,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6665,
|
|
"end": 6666,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6664,
|
|
"end": 6674,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6664,
|
|
"end": 6665,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 6667,
|
|
"end": 6674,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6668,
|
|
"end": 6673,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6679,
|
|
"end": 6687,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6689,
|
|
"end": 6714,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6699,
|
|
"end": 6708,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6699,
|
|
"end": 6707,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6699,
|
|
"end": 6700,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 6700,
|
|
"end": 6707,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6701,
|
|
"end": 6706,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6719,
|
|
"end": 6775,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6723,
|
|
"end": 6751,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 6723,
|
|
"end": 6738,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 6730,
|
|
"end": 6738,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6730,
|
|
"end": 6736,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6731,
|
|
"end": 6732,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6730,
|
|
"end": 6736,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6730,
|
|
"end": 6731,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6733,
|
|
"end": 6736,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"arguments": [],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6743,
|
|
"end": 6751,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6753,
|
|
"end": 6775,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6763,
|
|
"end": 6769,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6763,
|
|
"end": 6768,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6763,
|
|
"end": 6764,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6765,
|
|
"end": 6768,
|
|
"ctxt": 0
|
|
},
|
|
"value": "bar",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6780,
|
|
"end": 6831,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6784,
|
|
"end": 6807,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "instanceof",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6784,
|
|
"end": 6790,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6785,
|
|
"end": 6786,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6784,
|
|
"end": 6790,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6784,
|
|
"end": 6785,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6787,
|
|
"end": 6790,
|
|
"ctxt": 0
|
|
},
|
|
"value": "baz",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6802,
|
|
"end": 6807,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Error",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6809,
|
|
"end": 6831,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6819,
|
|
"end": 6825,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6819,
|
|
"end": 6824,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6819,
|
|
"end": 6820,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6821,
|
|
"end": 6824,
|
|
"ctxt": 0
|
|
},
|
|
"value": "baz",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6844,
|
|
"end": 6847,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f22",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 6848,
|
|
"end": 6868,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6848,
|
|
"end": 6868,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 6849,
|
|
"end": 6868,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 6851,
|
|
"end": 6868,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 6851,
|
|
"end": 6856,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6851,
|
|
"end": 6856,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 6859,
|
|
"end": 6868,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 6835,
|
|
"end": 7275,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6870,
|
|
"end": 7275,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6876,
|
|
"end": 6972,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6880,
|
|
"end": 6906,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 6880,
|
|
"end": 6893,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6887,
|
|
"end": 6893,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6888,
|
|
"end": 6889,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6887,
|
|
"end": 6893,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6887,
|
|
"end": 6888,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6890,
|
|
"end": 6893,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6898,
|
|
"end": 6906,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6908,
|
|
"end": 6930,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6918,
|
|
"end": 6924,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6918,
|
|
"end": 6923,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6918,
|
|
"end": 6919,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6920,
|
|
"end": 6923,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 6940,
|
|
"end": 6972,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 6950,
|
|
"end": 6956,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6950,
|
|
"end": 6955,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6950,
|
|
"end": 6951,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6952,
|
|
"end": 6955,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 6977,
|
|
"end": 7073,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 6981,
|
|
"end": 7007,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 6981,
|
|
"end": 6994,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 6988,
|
|
"end": 6994,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 6989,
|
|
"end": 6990,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 6988,
|
|
"end": 6994,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6988,
|
|
"end": 6989,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 6991,
|
|
"end": 6994,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 6999,
|
|
"end": 7007,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7009,
|
|
"end": 7041,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7019,
|
|
"end": 7025,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7019,
|
|
"end": 7024,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7019,
|
|
"end": 7020,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7021,
|
|
"end": 7024,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7051,
|
|
"end": 7073,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7061,
|
|
"end": 7067,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7061,
|
|
"end": 7066,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7061,
|
|
"end": 7062,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7063,
|
|
"end": 7066,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 7078,
|
|
"end": 7173,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 7082,
|
|
"end": 7107,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7082,
|
|
"end": 7095,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 7089,
|
|
"end": 7095,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 7090,
|
|
"end": 7091,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7089,
|
|
"end": 7095,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7089,
|
|
"end": 7090,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7092,
|
|
"end": 7095,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 7099,
|
|
"end": 7107,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7109,
|
|
"end": 7131,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7119,
|
|
"end": 7125,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7119,
|
|
"end": 7124,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7119,
|
|
"end": 7120,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7121,
|
|
"end": 7124,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7141,
|
|
"end": 7173,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7151,
|
|
"end": 7157,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7151,
|
|
"end": 7156,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7151,
|
|
"end": 7152,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7153,
|
|
"end": 7156,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 7178,
|
|
"end": 7273,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 7182,
|
|
"end": 7207,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7182,
|
|
"end": 7195,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 7189,
|
|
"end": 7195,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 7190,
|
|
"end": 7191,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7189,
|
|
"end": 7195,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7189,
|
|
"end": 7190,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7192,
|
|
"end": 7195,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 7199,
|
|
"end": 7207,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7209,
|
|
"end": 7241,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7219,
|
|
"end": 7225,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7219,
|
|
"end": 7224,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7219,
|
|
"end": 7220,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7221,
|
|
"end": 7224,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7251,
|
|
"end": 7273,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7261,
|
|
"end": 7267,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7261,
|
|
"end": 7266,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7261,
|
|
"end": 7262,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7263,
|
|
"end": 7266,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7286,
|
|
"end": 7289,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f23",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 7290,
|
|
"end": 7310,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7290,
|
|
"end": 7310,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 7291,
|
|
"end": 7310,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 7293,
|
|
"end": 7310,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 7293,
|
|
"end": 7298,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7293,
|
|
"end": 7298,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 7301,
|
|
"end": 7310,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 7277,
|
|
"end": 7729,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7312,
|
|
"end": 7729,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 7318,
|
|
"end": 7417,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 7322,
|
|
"end": 7351,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7322,
|
|
"end": 7335,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 7329,
|
|
"end": 7335,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 7330,
|
|
"end": 7331,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7329,
|
|
"end": 7335,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7329,
|
|
"end": 7330,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7332,
|
|
"end": 7335,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 7340,
|
|
"end": 7351,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7353,
|
|
"end": 7385,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7363,
|
|
"end": 7369,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7363,
|
|
"end": 7368,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7363,
|
|
"end": 7364,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7365,
|
|
"end": 7368,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7395,
|
|
"end": 7417,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7405,
|
|
"end": 7411,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7405,
|
|
"end": 7410,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7405,
|
|
"end": 7406,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7407,
|
|
"end": 7410,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 7422,
|
|
"end": 7521,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 7426,
|
|
"end": 7455,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7426,
|
|
"end": 7439,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 7433,
|
|
"end": 7439,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 7434,
|
|
"end": 7435,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7433,
|
|
"end": 7439,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7433,
|
|
"end": 7434,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7436,
|
|
"end": 7439,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 7444,
|
|
"end": 7455,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7457,
|
|
"end": 7479,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7467,
|
|
"end": 7473,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7467,
|
|
"end": 7472,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7467,
|
|
"end": 7468,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7469,
|
|
"end": 7472,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7489,
|
|
"end": 7521,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7499,
|
|
"end": 7505,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7499,
|
|
"end": 7504,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7499,
|
|
"end": 7500,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7501,
|
|
"end": 7504,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 7526,
|
|
"end": 7624,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 7530,
|
|
"end": 7558,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "==",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7530,
|
|
"end": 7543,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 7537,
|
|
"end": 7543,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 7538,
|
|
"end": 7539,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7537,
|
|
"end": 7543,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7537,
|
|
"end": 7538,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7540,
|
|
"end": 7543,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 7547,
|
|
"end": 7558,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7560,
|
|
"end": 7592,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7570,
|
|
"end": 7576,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7570,
|
|
"end": 7575,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7570,
|
|
"end": 7571,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7572,
|
|
"end": 7575,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7602,
|
|
"end": 7624,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7612,
|
|
"end": 7618,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7612,
|
|
"end": 7617,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7612,
|
|
"end": 7613,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7614,
|
|
"end": 7617,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 7629,
|
|
"end": 7727,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 7633,
|
|
"end": 7661,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!=",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7633,
|
|
"end": 7646,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 7640,
|
|
"end": 7646,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 7641,
|
|
"end": 7642,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7640,
|
|
"end": 7646,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7640,
|
|
"end": 7641,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7643,
|
|
"end": 7646,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 7650,
|
|
"end": 7661,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7663,
|
|
"end": 7685,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7673,
|
|
"end": 7679,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7673,
|
|
"end": 7678,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7673,
|
|
"end": 7674,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7675,
|
|
"end": 7678,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7695,
|
|
"end": 7727,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7705,
|
|
"end": 7711,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7705,
|
|
"end": 7710,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7705,
|
|
"end": 7706,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7707,
|
|
"end": 7710,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7748,
|
|
"end": 7754,
|
|
"ctxt": 0
|
|
},
|
|
"value": "assert",
|
|
"optional": false
|
|
},
|
|
"declare": true,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 7755,
|
|
"end": 7765,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7755,
|
|
"end": 7765,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 7756,
|
|
"end": 7765,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 7758,
|
|
"end": 7765,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "unknown"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 7731,
|
|
"end": 7778,
|
|
"ctxt": 0
|
|
},
|
|
"body": null,
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 7766,
|
|
"end": 7777,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypePredicate",
|
|
"span": {
|
|
"start": 7768,
|
|
"end": 7777,
|
|
"ctxt": 0
|
|
},
|
|
"asserts": true,
|
|
"paramName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7776,
|
|
"end": 7777,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"typeAnnotation": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7796,
|
|
"end": 7809,
|
|
"ctxt": 0
|
|
},
|
|
"value": "assertNonNull",
|
|
"optional": false
|
|
},
|
|
"declare": true,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 7813,
|
|
"end": 7817,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7813,
|
|
"end": 7817,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 7814,
|
|
"end": 7817,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 7816,
|
|
"end": 7817,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7816,
|
|
"end": 7817,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 7779,
|
|
"end": 7848,
|
|
"ctxt": 0
|
|
},
|
|
"body": null,
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": {
|
|
"type": "TsTypeParameterDeclaration",
|
|
"span": {
|
|
"start": 7809,
|
|
"end": 7812,
|
|
"ctxt": 0
|
|
},
|
|
"parameters": [
|
|
{
|
|
"type": "TsTypeParameter",
|
|
"span": {
|
|
"start": 7810,
|
|
"end": 7811,
|
|
"ctxt": 0
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7810,
|
|
"end": 7811,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"constraint": null,
|
|
"default": null
|
|
}
|
|
]
|
|
},
|
|
"returnType": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 7818,
|
|
"end": 7847,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypePredicate",
|
|
"span": {
|
|
"start": 7820,
|
|
"end": 7847,
|
|
"ctxt": 0
|
|
},
|
|
"asserts": true,
|
|
"paramName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7828,
|
|
"end": 7829,
|
|
"ctxt": 0
|
|
},
|
|
"value": "x",
|
|
"optional": false
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 7833,
|
|
"end": 7847,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 7833,
|
|
"end": 7847,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7833,
|
|
"end": 7844,
|
|
"ctxt": 0
|
|
},
|
|
"value": "NonNullable",
|
|
"optional": false
|
|
},
|
|
"typeParams": {
|
|
"type": "TsTypeParameterInstantiation",
|
|
"span": {
|
|
"start": 7844,
|
|
"end": 7847,
|
|
"ctxt": 0
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 7845,
|
|
"end": 7846,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7845,
|
|
"end": 7846,
|
|
"ctxt": 0
|
|
},
|
|
"value": "T",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7859,
|
|
"end": 7862,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f30",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 7863,
|
|
"end": 7883,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7863,
|
|
"end": 7883,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 7864,
|
|
"end": 7883,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 7866,
|
|
"end": 7883,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 7866,
|
|
"end": 7871,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7866,
|
|
"end": 7871,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 7874,
|
|
"end": 7883,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 7850,
|
|
"end": 8174,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7885,
|
|
"end": 8174,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 7891,
|
|
"end": 7949,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7895,
|
|
"end": 7901,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7896,
|
|
"end": 7901,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "BooleanLiteral",
|
|
"span": {
|
|
"start": 7897,
|
|
"end": 7901,
|
|
"ctxt": 0
|
|
},
|
|
"value": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7903,
|
|
"end": 7949,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7913,
|
|
"end": 7928,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 7913,
|
|
"end": 7927,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7913,
|
|
"end": 7919,
|
|
"ctxt": 0
|
|
},
|
|
"value": "assert",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 7920,
|
|
"end": 7926,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 7921,
|
|
"end": 7922,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7920,
|
|
"end": 7926,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7920,
|
|
"end": 7921,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7923,
|
|
"end": 7926,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7937,
|
|
"end": 7943,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7937,
|
|
"end": 7942,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7937,
|
|
"end": 7938,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7939,
|
|
"end": 7942,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 7954,
|
|
"end": 8019,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7958,
|
|
"end": 7964,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 7959,
|
|
"end": 7964,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "BooleanLiteral",
|
|
"span": {
|
|
"start": 7960,
|
|
"end": 7964,
|
|
"ctxt": 0
|
|
},
|
|
"value": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 7966,
|
|
"end": 8019,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 7976,
|
|
"end": 7998,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 7976,
|
|
"end": 7997,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7976,
|
|
"end": 7982,
|
|
"ctxt": 0
|
|
},
|
|
"value": "assert",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 7983,
|
|
"end": 7996,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 7983,
|
|
"end": 7989,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 7984,
|
|
"end": 7985,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 7983,
|
|
"end": 7989,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7983,
|
|
"end": 7984,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 7986,
|
|
"end": 7989,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 7994,
|
|
"end": 7996,
|
|
"ctxt": 0
|
|
},
|
|
"value": 42.0
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8007,
|
|
"end": 8013,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8007,
|
|
"end": 8012,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8007,
|
|
"end": 8008,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8009,
|
|
"end": 8012,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 8024,
|
|
"end": 8102,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 8028,
|
|
"end": 8034,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 8029,
|
|
"end": 8034,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "BooleanLiteral",
|
|
"span": {
|
|
"start": 8030,
|
|
"end": 8034,
|
|
"ctxt": 0
|
|
},
|
|
"value": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 8036,
|
|
"end": 8102,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8046,
|
|
"end": 8081,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 8046,
|
|
"end": 8080,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8046,
|
|
"end": 8052,
|
|
"ctxt": 0
|
|
},
|
|
"value": "assert",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 8053,
|
|
"end": 8079,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 8053,
|
|
"end": 8066,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 8060,
|
|
"end": 8066,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 8061,
|
|
"end": 8062,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8060,
|
|
"end": 8066,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8060,
|
|
"end": 8061,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8063,
|
|
"end": 8066,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 8071,
|
|
"end": 8079,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8090,
|
|
"end": 8096,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8090,
|
|
"end": 8095,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8090,
|
|
"end": 8091,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8092,
|
|
"end": 8095,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 8107,
|
|
"end": 8172,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 8111,
|
|
"end": 8117,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 8112,
|
|
"end": 8117,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!",
|
|
"argument": {
|
|
"type": "BooleanLiteral",
|
|
"span": {
|
|
"start": 8113,
|
|
"end": 8117,
|
|
"ctxt": 0
|
|
},
|
|
"value": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 8119,
|
|
"end": 8172,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8129,
|
|
"end": 8151,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 8129,
|
|
"end": 8150,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8129,
|
|
"end": 8142,
|
|
"ctxt": 0
|
|
},
|
|
"value": "assertNonNull",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 8143,
|
|
"end": 8149,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 8144,
|
|
"end": 8145,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8143,
|
|
"end": 8149,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8143,
|
|
"end": 8144,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8146,
|
|
"end": 8149,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8160,
|
|
"end": 8166,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8160,
|
|
"end": 8165,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8160,
|
|
"end": 8161,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8162,
|
|
"end": 8165,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8185,
|
|
"end": 8188,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f40",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 8189,
|
|
"end": 8209,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8189,
|
|
"end": 8209,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 8190,
|
|
"end": 8209,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 8192,
|
|
"end": 8209,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 8192,
|
|
"end": 8197,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8192,
|
|
"end": 8197,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 8200,
|
|
"end": 8209,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 8176,
|
|
"end": 8492,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 8211,
|
|
"end": 8492,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "SwitchStatement",
|
|
"span": {
|
|
"start": 8217,
|
|
"end": 8490,
|
|
"ctxt": 0
|
|
},
|
|
"discriminant": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 8225,
|
|
"end": 8231,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 8226,
|
|
"end": 8227,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8225,
|
|
"end": 8231,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8225,
|
|
"end": 8226,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8228,
|
|
"end": 8231,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"cases": [
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 8243,
|
|
"end": 8292,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 8248,
|
|
"end": 8253,
|
|
"ctxt": 0
|
|
},
|
|
"value": "abc",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
},
|
|
"consequent": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8267,
|
|
"end": 8273,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8267,
|
|
"end": 8272,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8267,
|
|
"end": 8268,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8269,
|
|
"end": 8272,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "BreakStatement",
|
|
"span": {
|
|
"start": 8286,
|
|
"end": 8292,
|
|
"ctxt": 0
|
|
},
|
|
"label": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 8301,
|
|
"end": 8347,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 8306,
|
|
"end": 8308,
|
|
"ctxt": 0
|
|
},
|
|
"value": 42.0
|
|
},
|
|
"consequent": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8322,
|
|
"end": 8328,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8322,
|
|
"end": 8327,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8322,
|
|
"end": 8323,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8324,
|
|
"end": 8327,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "BreakStatement",
|
|
"span": {
|
|
"start": 8341,
|
|
"end": 8347,
|
|
"ctxt": 0
|
|
},
|
|
"label": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 8356,
|
|
"end": 8419,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8361,
|
|
"end": 8370,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
},
|
|
"consequent": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8384,
|
|
"end": 8390,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8384,
|
|
"end": 8389,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8384,
|
|
"end": 8385,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8386,
|
|
"end": 8389,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "BreakStatement",
|
|
"span": {
|
|
"start": 8413,
|
|
"end": 8419,
|
|
"ctxt": 0
|
|
},
|
|
"label": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 8428,
|
|
"end": 8484,
|
|
"ctxt": 0
|
|
},
|
|
"test": null,
|
|
"consequent": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8449,
|
|
"end": 8455,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8449,
|
|
"end": 8454,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8449,
|
|
"end": 8450,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8451,
|
|
"end": 8454,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "BreakStatement",
|
|
"span": {
|
|
"start": 8478,
|
|
"end": 8484,
|
|
"ctxt": 0
|
|
},
|
|
"label": null
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8503,
|
|
"end": 8506,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f41",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 8507,
|
|
"end": 8527,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8507,
|
|
"end": 8527,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 8508,
|
|
"end": 8527,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 8510,
|
|
"end": 8527,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 8510,
|
|
"end": 8515,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8510,
|
|
"end": 8515,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Thing",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 8518,
|
|
"end": 8527,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 8494,
|
|
"end": 8828,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 8529,
|
|
"end": 8828,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "SwitchStatement",
|
|
"span": {
|
|
"start": 8535,
|
|
"end": 8826,
|
|
"ctxt": 0
|
|
},
|
|
"discriminant": {
|
|
"type": "UnaryExpression",
|
|
"span": {
|
|
"start": 8543,
|
|
"end": 8556,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "typeof",
|
|
"argument": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 8550,
|
|
"end": 8556,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 8551,
|
|
"end": 8552,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8550,
|
|
"end": 8556,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8550,
|
|
"end": 8551,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8553,
|
|
"end": 8556,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"cases": [
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 8568,
|
|
"end": 8620,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 8573,
|
|
"end": 8581,
|
|
"ctxt": 0
|
|
},
|
|
"value": "string",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
},
|
|
"consequent": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8595,
|
|
"end": 8601,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8595,
|
|
"end": 8600,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8595,
|
|
"end": 8596,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8597,
|
|
"end": 8600,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "BreakStatement",
|
|
"span": {
|
|
"start": 8614,
|
|
"end": 8620,
|
|
"ctxt": 0
|
|
},
|
|
"label": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 8629,
|
|
"end": 8681,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 8634,
|
|
"end": 8642,
|
|
"ctxt": 0
|
|
},
|
|
"value": "number",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
},
|
|
"consequent": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8656,
|
|
"end": 8662,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8656,
|
|
"end": 8661,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8656,
|
|
"end": 8657,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8658,
|
|
"end": 8661,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "BreakStatement",
|
|
"span": {
|
|
"start": 8675,
|
|
"end": 8681,
|
|
"ctxt": 0
|
|
},
|
|
"label": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 8690,
|
|
"end": 8755,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 8695,
|
|
"end": 8706,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
},
|
|
"consequent": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8720,
|
|
"end": 8726,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8720,
|
|
"end": 8725,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8720,
|
|
"end": 8721,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8722,
|
|
"end": 8725,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "BreakStatement",
|
|
"span": {
|
|
"start": 8749,
|
|
"end": 8755,
|
|
"ctxt": 0
|
|
},
|
|
"label": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 8764,
|
|
"end": 8820,
|
|
"ctxt": 0
|
|
},
|
|
"test": null,
|
|
"consequent": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 8785,
|
|
"end": 8791,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 8785,
|
|
"end": 8790,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8785,
|
|
"end": 8786,
|
|
"ctxt": 0
|
|
},
|
|
"value": "o",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8787,
|
|
"end": 8790,
|
|
"ctxt": 0
|
|
},
|
|
"value": "foo",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "BreakStatement",
|
|
"span": {
|
|
"start": 8814,
|
|
"end": 8820,
|
|
"ctxt": 0
|
|
},
|
|
"label": null
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 8853,
|
|
"end": 8965,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8858,
|
|
"end": 8863,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Shape",
|
|
"optional": false
|
|
},
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 8870,
|
|
"end": 8965,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 8872,
|
|
"end": 8924,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 8874,
|
|
"end": 8892,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8874,
|
|
"end": 8878,
|
|
"ctxt": 0
|
|
},
|
|
"value": "type",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 8878,
|
|
"end": 8891,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 8880,
|
|
"end": 8891,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 8880,
|
|
"end": 8891,
|
|
"ctxt": 0
|
|
},
|
|
"value": "rectangle",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 8893,
|
|
"end": 8907,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8893,
|
|
"end": 8898,
|
|
"ctxt": 0
|
|
},
|
|
"value": "width",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 8898,
|
|
"end": 8906,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 8900,
|
|
"end": 8906,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 8908,
|
|
"end": 8922,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8908,
|
|
"end": 8914,
|
|
"ctxt": 0
|
|
},
|
|
"value": "height",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 8914,
|
|
"end": 8922,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 8916,
|
|
"end": 8922,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 8931,
|
|
"end": 8965,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 8933,
|
|
"end": 8948,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8933,
|
|
"end": 8937,
|
|
"ctxt": 0
|
|
},
|
|
"value": "type",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 8937,
|
|
"end": 8947,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 8939,
|
|
"end": 8947,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 8939,
|
|
"end": 8947,
|
|
"ctxt": 0
|
|
},
|
|
"value": "circle",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 8949,
|
|
"end": 8963,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8949,
|
|
"end": 8955,
|
|
"ctxt": 0
|
|
},
|
|
"value": "radius",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 8955,
|
|
"end": 8963,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 8957,
|
|
"end": 8963,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8976,
|
|
"end": 8983,
|
|
"ctxt": 0
|
|
},
|
|
"value": "getArea",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 8984,
|
|
"end": 8997,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8984,
|
|
"end": 8997,
|
|
"ctxt": 0
|
|
},
|
|
"value": "shape",
|
|
"optional": true,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 8990,
|
|
"end": 8997,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 8992,
|
|
"end": 8997,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 8992,
|
|
"end": 8997,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Shape",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 8967,
|
|
"end": 9215,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 8999,
|
|
"end": 9215,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "SwitchStatement",
|
|
"span": {
|
|
"start": 9005,
|
|
"end": 9213,
|
|
"ctxt": 0
|
|
},
|
|
"discriminant": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 9013,
|
|
"end": 9024,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 9018,
|
|
"end": 9019,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9013,
|
|
"end": 9024,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9013,
|
|
"end": 9018,
|
|
"ctxt": 0
|
|
},
|
|
"value": "shape",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9020,
|
|
"end": 9024,
|
|
"ctxt": 0
|
|
},
|
|
"value": "type",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"cases": [
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 9036,
|
|
"end": 9097,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 9041,
|
|
"end": 9049,
|
|
"ctxt": 0
|
|
},
|
|
"value": "circle",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
},
|
|
"consequent": [
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 9063,
|
|
"end": 9097,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 9070,
|
|
"end": 9097,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "*",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9070,
|
|
"end": 9077,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9070,
|
|
"end": 9074,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Math",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9075,
|
|
"end": 9077,
|
|
"ctxt": 0
|
|
},
|
|
"value": "PI",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 9080,
|
|
"end": 9097,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "**",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9080,
|
|
"end": 9092,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9080,
|
|
"end": 9085,
|
|
"ctxt": 0
|
|
},
|
|
"value": "shape",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9086,
|
|
"end": 9092,
|
|
"ctxt": 0
|
|
},
|
|
"value": "radius",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 9096,
|
|
"end": 9097,
|
|
"ctxt": 0
|
|
},
|
|
"value": 2.0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 9106,
|
|
"end": 9169,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 9111,
|
|
"end": 9122,
|
|
"ctxt": 0
|
|
},
|
|
"value": "rectangle",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
},
|
|
"consequent": [
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 9136,
|
|
"end": 9169,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 9143,
|
|
"end": 9169,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "*",
|
|
"left": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9143,
|
|
"end": 9154,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9143,
|
|
"end": 9148,
|
|
"ctxt": 0
|
|
},
|
|
"value": "shape",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9149,
|
|
"end": 9154,
|
|
"ctxt": 0
|
|
},
|
|
"value": "width",
|
|
"optional": false
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9157,
|
|
"end": 9169,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9157,
|
|
"end": 9162,
|
|
"ctxt": 0
|
|
},
|
|
"value": "shape",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9163,
|
|
"end": 9169,
|
|
"ctxt": 0
|
|
},
|
|
"value": "height",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SwitchCase",
|
|
"span": {
|
|
"start": 9178,
|
|
"end": 9207,
|
|
"ctxt": 0
|
|
},
|
|
"test": null,
|
|
"consequent": [
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 9199,
|
|
"end": 9207,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 9206,
|
|
"end": 9207,
|
|
"ctxt": 0
|
|
},
|
|
"value": 0.0
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": null
|
|
},
|
|
{
|
|
"type": "TsTypeAliasDeclaration",
|
|
"span": {
|
|
"start": 9217,
|
|
"end": 9315,
|
|
"ctxt": 0
|
|
},
|
|
"declare": false,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9222,
|
|
"end": 9229,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Feature",
|
|
"optional": false
|
|
},
|
|
"typeParams": null,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 9232,
|
|
"end": 9314,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 9236,
|
|
"end": 9247,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9236,
|
|
"end": 9238,
|
|
"ctxt": 0
|
|
},
|
|
"value": "id",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9238,
|
|
"end": 9246,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9240,
|
|
"end": 9246,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 9250,
|
|
"end": 9312,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9250,
|
|
"end": 9258,
|
|
"ctxt": 0
|
|
},
|
|
"value": "geometry",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": true,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9259,
|
|
"end": 9311,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 9261,
|
|
"end": 9311,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 9267,
|
|
"end": 9280,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9267,
|
|
"end": 9271,
|
|
"ctxt": 0
|
|
},
|
|
"value": "type",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9271,
|
|
"end": 9279,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9273,
|
|
"end": 9279,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "string"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 9285,
|
|
"end": 9307,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9285,
|
|
"end": 9296,
|
|
"ctxt": 0
|
|
},
|
|
"value": "coordinates",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9296,
|
|
"end": 9306,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsArrayType",
|
|
"span": {
|
|
"start": 9298,
|
|
"end": 9306,
|
|
"ctxt": 0
|
|
},
|
|
"elemType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9298,
|
|
"end": 9304,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9327,
|
|
"end": 9345,
|
|
"ctxt": 0
|
|
},
|
|
"value": "extractCoordinates",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 9346,
|
|
"end": 9356,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9346,
|
|
"end": 9356,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9347,
|
|
"end": 9356,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 9349,
|
|
"end": 9356,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9349,
|
|
"end": 9356,
|
|
"ctxt": 0
|
|
},
|
|
"value": "Feature",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 9318,
|
|
"end": 9470,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 9368,
|
|
"end": 9470,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 9374,
|
|
"end": 9433,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 9378,
|
|
"end": 9405,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 9378,
|
|
"end": 9394,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 9388,
|
|
"end": 9389,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9378,
|
|
"end": 9394,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9378,
|
|
"end": 9388,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9378,
|
|
"end": 9379,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9380,
|
|
"end": 9388,
|
|
"ctxt": 0
|
|
},
|
|
"value": "geometry",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9390,
|
|
"end": 9394,
|
|
"ctxt": 0
|
|
},
|
|
"value": "type",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 9399,
|
|
"end": 9405,
|
|
"ctxt": 0
|
|
},
|
|
"value": "test",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 9407,
|
|
"end": 9433,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 9417,
|
|
"end": 9427,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "ArrayExpression",
|
|
"span": {
|
|
"start": 9424,
|
|
"end": 9426,
|
|
"ctxt": 0
|
|
},
|
|
"elements": []
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
},
|
|
{
|
|
"type": "ReturnStatement",
|
|
"span": {
|
|
"start": 9438,
|
|
"end": 9468,
|
|
"ctxt": 0
|
|
},
|
|
"argument": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9445,
|
|
"end": 9467,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9445,
|
|
"end": 9455,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9445,
|
|
"end": 9446,
|
|
"ctxt": 0
|
|
},
|
|
"value": "f",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9447,
|
|
"end": 9455,
|
|
"ctxt": 0
|
|
},
|
|
"value": "geometry",
|
|
"optional": false
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9456,
|
|
"end": 9467,
|
|
"ctxt": 0
|
|
},
|
|
"value": "coordinates",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9357,
|
|
"end": 9367,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsArrayType",
|
|
"span": {
|
|
"start": 9359,
|
|
"end": 9367,
|
|
"ctxt": 0
|
|
},
|
|
"elemType": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9359,
|
|
"end": 9365,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "number"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsInterfaceDeclaration",
|
|
"span": {
|
|
"start": 9494,
|
|
"end": 9545,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9504,
|
|
"end": 9514,
|
|
"ctxt": 0
|
|
},
|
|
"value": "SomeObject",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"typeParams": null,
|
|
"extends": [],
|
|
"body": {
|
|
"type": "TsInterfaceBody",
|
|
"span": {
|
|
"start": 9515,
|
|
"end": 9545,
|
|
"ctxt": 0
|
|
},
|
|
"body": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 9521,
|
|
"end": 9543,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9521,
|
|
"end": 9533,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someProperty",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9533,
|
|
"end": 9542,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9535,
|
|
"end": 9542,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "unknown"
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 9547,
|
|
"end": 9589,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "let",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 9551,
|
|
"end": 9588,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9551,
|
|
"end": 9567,
|
|
"ctxt": 0
|
|
},
|
|
"value": "lastSomeProperty",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9567,
|
|
"end": 9588,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 9569,
|
|
"end": 9588,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9569,
|
|
"end": 9576,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "unknown"
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9579,
|
|
"end": 9588,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "FunctionDeclaration",
|
|
"identifier": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9600,
|
|
"end": 9612,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someFunction",
|
|
"optional": false
|
|
},
|
|
"declare": false,
|
|
"params": [
|
|
{
|
|
"type": "Parameter",
|
|
"span": {
|
|
"start": 9613,
|
|
"end": 9655,
|
|
"ctxt": 0
|
|
},
|
|
"decorators": [],
|
|
"pat": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9613,
|
|
"end": 9655,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someOptionalObject",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9631,
|
|
"end": 9655,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 9633,
|
|
"end": 9655,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 9633,
|
|
"end": 9643,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9633,
|
|
"end": 9643,
|
|
"ctxt": 0
|
|
},
|
|
"value": "SomeObject",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
},
|
|
{
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9646,
|
|
"end": 9655,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "undefined"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"decorators": [],
|
|
"span": {
|
|
"start": 9591,
|
|
"end": 9903,
|
|
"ctxt": 0
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 9663,
|
|
"end": 9903,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 9669,
|
|
"end": 9901,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 9673,
|
|
"end": 9726,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "!==",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 9673,
|
|
"end": 9705,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 9691,
|
|
"end": 9692,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9673,
|
|
"end": 9705,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9673,
|
|
"end": 9691,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someOptionalObject",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9693,
|
|
"end": 9705,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someProperty",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9710,
|
|
"end": 9726,
|
|
"ctxt": 0
|
|
},
|
|
"value": "lastSomeProperty",
|
|
"optional": false
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 9728,
|
|
"end": 9901,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 9738,
|
|
"end": 9770,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 9738,
|
|
"end": 9769,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9738,
|
|
"end": 9749,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9738,
|
|
"end": 9745,
|
|
"ctxt": 0
|
|
},
|
|
"value": "console",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9746,
|
|
"end": 9749,
|
|
"ctxt": 0
|
|
},
|
|
"value": "log",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9750,
|
|
"end": 9768,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someOptionalObject",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 9779,
|
|
"end": 9824,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 9779,
|
|
"end": 9823,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9779,
|
|
"end": 9790,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9779,
|
|
"end": 9786,
|
|
"ctxt": 0
|
|
},
|
|
"value": "console",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9787,
|
|
"end": 9790,
|
|
"ctxt": 0
|
|
},
|
|
"value": "log",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9791,
|
|
"end": 9822,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9791,
|
|
"end": 9809,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someOptionalObject",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9810,
|
|
"end": 9822,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someProperty",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 9843,
|
|
"end": 9895,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 9843,
|
|
"end": 9894,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9843,
|
|
"end": 9859,
|
|
"ctxt": 0
|
|
},
|
|
"value": "lastSomeProperty",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 9862,
|
|
"end": 9894,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 9880,
|
|
"end": 9881,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 9862,
|
|
"end": 9894,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9862,
|
|
"end": 9880,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someOptionalObject",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9882,
|
|
"end": 9894,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someProperty",
|
|
"optional": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
},
|
|
"generator": false,
|
|
"async": false,
|
|
"typeParameters": null,
|
|
"returnType": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9656,
|
|
"end": 9662,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsKeywordType",
|
|
"span": {
|
|
"start": 9658,
|
|
"end": 9662,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "void"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 9905,
|
|
"end": 9961,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 9911,
|
|
"end": 9960,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9911,
|
|
"end": 9921,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someObject",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 9921,
|
|
"end": 9933,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsTypeReference",
|
|
"span": {
|
|
"start": 9923,
|
|
"end": 9933,
|
|
"ctxt": 0
|
|
},
|
|
"typeName": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9923,
|
|
"end": 9933,
|
|
"ctxt": 0
|
|
},
|
|
"value": "SomeObject",
|
|
"optional": false
|
|
},
|
|
"typeParams": null
|
|
}
|
|
}
|
|
},
|
|
"init": {
|
|
"type": "ObjectExpression",
|
|
"span": {
|
|
"start": 9936,
|
|
"end": 9960,
|
|
"ctxt": 0
|
|
},
|
|
"properties": [
|
|
{
|
|
"type": "KeyValueProperty",
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9942,
|
|
"end": 9954,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someProperty",
|
|
"optional": false
|
|
},
|
|
"value": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 9956,
|
|
"end": 9958,
|
|
"ctxt": 0
|
|
},
|
|
"value": 42.0
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 9963,
|
|
"end": 9988,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 9963,
|
|
"end": 9987,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9963,
|
|
"end": 9975,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someFunction",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9976,
|
|
"end": 9986,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someObject",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 9989,
|
|
"end": 10013,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 9989,
|
|
"end": 10012,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 9989,
|
|
"end": 10001,
|
|
"ctxt": 0
|
|
},
|
|
"value": "someFunction",
|
|
"optional": false
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10002,
|
|
"end": 10011,
|
|
"ctxt": 0
|
|
},
|
|
"value": "undefined",
|
|
"optional": false
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 10037,
|
|
"end": 10047,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "let",
|
|
"declare": false,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 10041,
|
|
"end": 10046,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10041,
|
|
"end": 10042,
|
|
"ctxt": 0
|
|
},
|
|
"value": "i",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"init": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 10045,
|
|
"end": 10046,
|
|
"ctxt": 0
|
|
},
|
|
"value": 0.0
|
|
},
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "VariableDeclaration",
|
|
"span": {
|
|
"start": 10048,
|
|
"end": 10097,
|
|
"ctxt": 0
|
|
},
|
|
"kind": "const",
|
|
"declare": true,
|
|
"declarations": [
|
|
{
|
|
"type": "VariableDeclarator",
|
|
"span": {
|
|
"start": 10062,
|
|
"end": 10096,
|
|
"ctxt": 0
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10062,
|
|
"end": 10065,
|
|
"ctxt": 0
|
|
},
|
|
"value": "arr",
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 10065,
|
|
"end": 10096,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsArrayType",
|
|
"span": {
|
|
"start": 10067,
|
|
"end": 10096,
|
|
"ctxt": 0
|
|
},
|
|
"elemType": {
|
|
"type": "TsTypeLiteral",
|
|
"span": {
|
|
"start": 10067,
|
|
"end": 10094,
|
|
"ctxt": 0
|
|
},
|
|
"members": [
|
|
{
|
|
"type": "TsPropertySignature",
|
|
"span": {
|
|
"start": 10069,
|
|
"end": 10092,
|
|
"ctxt": 0
|
|
},
|
|
"readonly": false,
|
|
"key": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10069,
|
|
"end": 10072,
|
|
"ctxt": 0
|
|
},
|
|
"value": "tag",
|
|
"optional": false
|
|
},
|
|
"computed": false,
|
|
"optional": false,
|
|
"init": null,
|
|
"params": [],
|
|
"typeAnnotation": {
|
|
"type": "TsTypeAnnotation",
|
|
"span": {
|
|
"start": 10072,
|
|
"end": 10092,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsParenthesizedType",
|
|
"span": {
|
|
"start": 10074,
|
|
"end": 10092,
|
|
"ctxt": 0
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "TsUnionType",
|
|
"span": {
|
|
"start": 10075,
|
|
"end": 10091,
|
|
"ctxt": 0
|
|
},
|
|
"types": [
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 10075,
|
|
"end": 10081,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 10075,
|
|
"end": 10081,
|
|
"ctxt": 0
|
|
},
|
|
"value": "left",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "TsLiteralType",
|
|
"span": {
|
|
"start": 10084,
|
|
"end": 10091,
|
|
"ctxt": 0
|
|
},
|
|
"literal": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 10084,
|
|
"end": 10091,
|
|
"ctxt": 0
|
|
},
|
|
"value": "right",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"typeParams": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"init": null,
|
|
"definite": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "WhileStatement",
|
|
"span": {
|
|
"start": 10099,
|
|
"end": 10237,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 10106,
|
|
"end": 10128,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 10106,
|
|
"end": 10117,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 10112,
|
|
"end": 10113,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 10106,
|
|
"end": 10117,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 10106,
|
|
"end": 10112,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10106,
|
|
"end": 10109,
|
|
"ctxt": 0
|
|
},
|
|
"value": "arr",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 10109,
|
|
"end": 10112,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10110,
|
|
"end": 10111,
|
|
"ctxt": 0
|
|
},
|
|
"value": "i",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10114,
|
|
"end": 10117,
|
|
"ctxt": 0
|
|
},
|
|
"value": "tag",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 10122,
|
|
"end": 10128,
|
|
"ctxt": 0
|
|
},
|
|
"value": "left",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"body": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 10130,
|
|
"end": 10237,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 10136,
|
|
"end": 10143,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "AssignmentExpression",
|
|
"span": {
|
|
"start": 10136,
|
|
"end": 10142,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "+=",
|
|
"left": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10136,
|
|
"end": 10137,
|
|
"ctxt": 0
|
|
},
|
|
"value": "i",
|
|
"optional": false,
|
|
"typeAnnotation": null
|
|
},
|
|
"right": {
|
|
"type": "NumericLiteral",
|
|
"span": {
|
|
"start": 10141,
|
|
"end": 10142,
|
|
"ctxt": 0
|
|
},
|
|
"value": 1.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "IfStatement",
|
|
"span": {
|
|
"start": 10148,
|
|
"end": 10235,
|
|
"ctxt": 0
|
|
},
|
|
"test": {
|
|
"type": "BinaryExpression",
|
|
"span": {
|
|
"start": 10152,
|
|
"end": 10175,
|
|
"ctxt": 0
|
|
},
|
|
"operator": "===",
|
|
"left": {
|
|
"type": "OptionalChainingExpression",
|
|
"span": {
|
|
"start": 10152,
|
|
"end": 10163,
|
|
"ctxt": 0
|
|
},
|
|
"questionDotToken": {
|
|
"start": 10158,
|
|
"end": 10159,
|
|
"ctxt": 0
|
|
},
|
|
"base": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 10152,
|
|
"end": 10163,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 10152,
|
|
"end": 10158,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10152,
|
|
"end": 10155,
|
|
"ctxt": 0
|
|
},
|
|
"value": "arr",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Computed",
|
|
"span": {
|
|
"start": 10155,
|
|
"end": 10158,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10156,
|
|
"end": 10157,
|
|
"ctxt": 0
|
|
},
|
|
"value": "i",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10160,
|
|
"end": 10163,
|
|
"ctxt": 0
|
|
},
|
|
"value": "tag",
|
|
"optional": false
|
|
}
|
|
}
|
|
},
|
|
"right": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 10168,
|
|
"end": 10175,
|
|
"ctxt": 0
|
|
},
|
|
"value": "right",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
},
|
|
"consequent": {
|
|
"type": "BlockStatement",
|
|
"span": {
|
|
"start": 10177,
|
|
"end": 10235,
|
|
"ctxt": 0
|
|
},
|
|
"stmts": [
|
|
{
|
|
"type": "ExpressionStatement",
|
|
"span": {
|
|
"start": 10187,
|
|
"end": 10229,
|
|
"ctxt": 0
|
|
},
|
|
"expression": {
|
|
"type": "CallExpression",
|
|
"span": {
|
|
"start": 10187,
|
|
"end": 10228,
|
|
"ctxt": 0
|
|
},
|
|
"callee": {
|
|
"type": "MemberExpression",
|
|
"span": {
|
|
"start": 10187,
|
|
"end": 10198,
|
|
"ctxt": 0
|
|
},
|
|
"object": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10187,
|
|
"end": 10194,
|
|
"ctxt": 0
|
|
},
|
|
"value": "console",
|
|
"optional": false
|
|
},
|
|
"property": {
|
|
"type": "Identifier",
|
|
"span": {
|
|
"start": 10195,
|
|
"end": 10198,
|
|
"ctxt": 0
|
|
},
|
|
"value": "log",
|
|
"optional": false
|
|
}
|
|
},
|
|
"arguments": [
|
|
{
|
|
"spread": null,
|
|
"expression": {
|
|
"type": "StringLiteral",
|
|
"span": {
|
|
"start": 10199,
|
|
"end": 10227,
|
|
"ctxt": 0
|
|
},
|
|
"value": "I should ALSO be reachable",
|
|
"hasEscape": false,
|
|
"kind": {
|
|
"type": "normal",
|
|
"containsQuote": true
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"typeArguments": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"alternate": null
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"interpreter": null
|
|
}
|