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

40357 lines
1.8 MiB

{
"type": "Script",
"span": {
"start": 211,
"end": 25295,
"ctxt": 0
},
"body": [
{
"type": "TsModuleDeclaration",
"span": {
"start": 211,
"end": 25295,
"ctxt": 0
},
"declare": false,
"global": false,
"id": {
"type": "Identifier",
"span": {
"start": 218,
"end": 228,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"body": {
"type": "TsModuleBlock",
"span": {
"start": 229,
"end": 25295,
"ctxt": 0
},
"body": [
{
"type": "ExportDeclaration",
"span": {
"start": 235,
"end": 372,
"ctxt": 0
},
"declaration": {
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 251,
"end": 257,
"ctxt": 0
},
"value": "lastOf",
"optional": false
},
"declare": false,
"params": [
{
"type": "Parameter",
"span": {
"start": 258,
"end": 270,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 258,
"end": 270,
"ctxt": 0
},
"value": "items",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 263,
"end": 270,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsArrayType",
"span": {
"start": 265,
"end": 270,
"ctxt": 0
},
"elemType": {
"type": "TsKeywordType",
"span": {
"start": 265,
"end": 268,
"ctxt": 0
},
"kind": "any"
}
}
}
}
}
],
"decorators": [],
"span": {
"start": 242,
"end": 372,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 277,
"end": 372,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 287,
"end": 366,
"ctxt": 0
},
"argument": {
"type": "ConditionalExpression",
"span": {
"start": 294,
"end": 365,
"ctxt": 0
},
"test": {
"type": "ParenthesisExpression",
"span": {
"start": 294,
"end": 332,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 295,
"end": 331,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 295,
"end": 309,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "Identifier",
"span": {
"start": 295,
"end": 300,
"ctxt": 0
},
"value": "items",
"optional": false
},
"right": {
"type": "NullLiteral",
"span": {
"start": 305,
"end": 309,
"ctxt": 0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 313,
"end": 331,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 313,
"end": 325,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 313,
"end": 318,
"ctxt": 0
},
"value": "items",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 319,
"end": 325,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 330,
"end": 331,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"consequent": {
"type": "NullLiteral",
"span": {
"start": 335,
"end": 339,
"ctxt": 0
}
},
"alternate": {
"type": "MemberExpression",
"span": {
"start": 342,
"end": 365,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 342,
"end": 347,
"ctxt": 0
},
"value": "items",
"optional": false
},
"property": {
"type": "Computed",
"span": {
"start": 347,
"end": 365,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 348,
"end": 364,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 348,
"end": 360,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 348,
"end": 353,
"ctxt": 0
},
"value": "items",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 354,
"end": 360,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 363,
"end": 364,
"ctxt": 0
},
"value": 1.0
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 271,
"end": 276,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 273,
"end": 276,
"ctxt": 0
},
"kind": "any"
}
}
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 378,
"end": 466,
"ctxt": 0
},
"declaration": {
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 394,
"end": 397,
"ctxt": 0
},
"value": "max",
"optional": false
},
"declare": false,
"params": [
{
"type": "Parameter",
"span": {
"start": 398,
"end": 407,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 398,
"end": 407,
"ctxt": 0
},
"value": "a",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 399,
"end": 407,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 401,
"end": 407,
"ctxt": 0
},
"kind": "number"
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 409,
"end": 418,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 409,
"end": 418,
"ctxt": 0
},
"value": "b",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 410,
"end": 418,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 412,
"end": 418,
"ctxt": 0
},
"kind": "number"
}
}
}
}
],
"decorators": [],
"span": {
"start": 385,
"end": 466,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 428,
"end": 466,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 438,
"end": 460,
"ctxt": 0
},
"argument": {
"type": "ConditionalExpression",
"span": {
"start": 445,
"end": 459,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 445,
"end": 451,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "Identifier",
"span": {
"start": 445,
"end": 446,
"ctxt": 0
},
"value": "a",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 450,
"end": 451,
"ctxt": 0
},
"value": "b",
"optional": false
}
},
"consequent": {
"type": "Identifier",
"span": {
"start": 454,
"end": 455,
"ctxt": 0
},
"value": "a",
"optional": false
},
"alternate": {
"type": "Identifier",
"span": {
"start": 458,
"end": 459,
"ctxt": 0
},
"value": "b",
"optional": false
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 419,
"end": 427,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 421,
"end": 427,
"ctxt": 0
},
"kind": "number"
}
}
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 472,
"end": 560,
"ctxt": 0
},
"declaration": {
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 488,
"end": 491,
"ctxt": 0
},
"value": "min",
"optional": false
},
"declare": false,
"params": [
{
"type": "Parameter",
"span": {
"start": 492,
"end": 501,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 492,
"end": 501,
"ctxt": 0
},
"value": "a",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 493,
"end": 501,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 495,
"end": 501,
"ctxt": 0
},
"kind": "number"
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 503,
"end": 512,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 503,
"end": 512,
"ctxt": 0
},
"value": "b",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 504,
"end": 512,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 506,
"end": 512,
"ctxt": 0
},
"kind": "number"
}
}
}
}
],
"decorators": [],
"span": {
"start": 479,
"end": 560,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 522,
"end": 560,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 532,
"end": 554,
"ctxt": 0
},
"argument": {
"type": "ConditionalExpression",
"span": {
"start": 539,
"end": 553,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 539,
"end": 545,
"ctxt": 0
},
"operator": "<=",
"left": {
"type": "Identifier",
"span": {
"start": 539,
"end": 540,
"ctxt": 0
},
"value": "a",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 544,
"end": 545,
"ctxt": 0
},
"value": "b",
"optional": false
}
},
"consequent": {
"type": "Identifier",
"span": {
"start": 548,
"end": 549,
"ctxt": 0
},
"value": "a",
"optional": false
},
"alternate": {
"type": "Identifier",
"span": {
"start": 552,
"end": 553,
"ctxt": 0
},
"value": "b",
"optional": false
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 513,
"end": 521,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 515,
"end": 521,
"ctxt": 0
},
"kind": "number"
}
}
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 724,
"end": 19133,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 737,
"end": 744,
"ctxt": 0
},
"value": "AstPath",
"optional": false
},
"declare": false,
"span": {
"start": 731,
"end": 19133,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 755,
"end": 790,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 762,
"end": 766,
"ctxt": 0
},
"value": "asts",
"optional": false
},
"value": {
"type": "ArrayExpression",
"span": {
"start": 787,
"end": 789,
"ctxt": 0
},
"elements": []
},
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 766,
"end": 784,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsArrayType",
"span": {
"start": 768,
"end": 784,
"ctxt": 0
},
"elemType": {
"type": "TsTypeReference",
"span": {
"start": 768,
"end": 782,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 768,
"end": 778,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 779,
"end": 782,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
},
"isStatic": false,
"decorators": [],
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "ClassProperty",
"span": {
"start": 799,
"end": 823,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 806,
"end": 809,
"ctxt": 0
},
"value": "top",
"optional": false
},
"value": {
"type": "UnaryExpression",
"span": {
"start": 820,
"end": 822,
"ctxt": 0
},
"operator": "-",
"argument": {
"type": "NumericLiteral",
"span": {
"start": 821,
"end": 822,
"ctxt": 0
},
"value": 1.0
}
},
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 809,
"end": 817,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 811,
"end": 817,
"ctxt": 0
},
"kind": "number"
}
},
"isStatic": false,
"decorators": [],
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
},
{
"type": "ClassMethod",
"span": {
"start": 833,
"end": 1003,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 840,
"end": 854,
"ctxt": 0
},
"value": "reverseIndexOf",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 855,
"end": 867,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 855,
"end": 867,
"ctxt": 0
},
"value": "items",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 860,
"end": 867,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsArrayType",
"span": {
"start": 862,
"end": 867,
"ctxt": 0
},
"elemType": {
"type": "TsKeywordType",
"span": {
"start": 862,
"end": 865,
"ctxt": 0
},
"kind": "any"
}
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 869,
"end": 882,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 869,
"end": 882,
"ctxt": 0
},
"value": "index",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 874,
"end": 882,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 876,
"end": 882,
"ctxt": 0
},
"kind": "number"
}
}
}
}
],
"decorators": [],
"span": {
"start": 833,
"end": 1003,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 889,
"end": 1003,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 903,
"end": 993,
"ctxt": 0
},
"argument": {
"type": "ConditionalExpression",
"span": {
"start": 910,
"end": 992,
"ctxt": 0
},
"test": {
"type": "ParenthesisExpression",
"span": {
"start": 910,
"end": 951,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 911,
"end": 950,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 911,
"end": 925,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "Identifier",
"span": {
"start": 911,
"end": 916,
"ctxt": 0
},
"value": "items",
"optional": false
},
"right": {
"type": "NullLiteral",
"span": {
"start": 921,
"end": 925,
"ctxt": 0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 929,
"end": 950,
"ctxt": 0
},
"operator": "<=",
"left": {
"type": "MemberExpression",
"span": {
"start": 929,
"end": 941,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 929,
"end": 934,
"ctxt": 0
},
"value": "items",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 935,
"end": 941,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 945,
"end": 950,
"ctxt": 0
},
"value": "index",
"optional": false
}
}
}
},
"consequent": {
"type": "NullLiteral",
"span": {
"start": 954,
"end": 958,
"ctxt": 0
}
},
"alternate": {
"type": "MemberExpression",
"span": {
"start": 961,
"end": 992,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 961,
"end": 966,
"ctxt": 0
},
"value": "items",
"optional": false
},
"property": {
"type": "Computed",
"span": {
"start": 966,
"end": 992,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 967,
"end": 991,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "BinaryExpression",
"span": {
"start": 967,
"end": 987,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 967,
"end": 979,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 967,
"end": 972,
"ctxt": 0
},
"value": "items",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 973,
"end": 979,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 982,
"end": 987,
"ctxt": 0
},
"value": "index",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 990,
"end": 991,
"ctxt": 0
},
"value": 1.0
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 883,
"end": 888,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 885,
"end": 888,
"ctxt": 0
},
"kind": "any"
}
}
},
"kind": "method",
"isStatic": true,
"accessibility": null,
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 1013,
"end": 1217,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1020,
"end": 1025,
"ctxt": 0
},
"value": "clone",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 1013,
"end": 1217,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1037,
"end": 1217,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 1051,
"end": 1077,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 1055,
"end": 1076,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 1055,
"end": 1060,
"ctxt": 0
},
"value": "clone",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "NewExpression",
"span": {
"start": 1063,
"end": 1076,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 1067,
"end": 1074,
"ctxt": 0
},
"value": "AstPath",
"optional": false
},
"arguments": [],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 1090,
"end": 1147,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 1090,
"end": 1146,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 1090,
"end": 1100,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 1090,
"end": 1095,
"ctxt": 0
},
"value": "clone",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 1096,
"end": 1100,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 1103,
"end": 1146,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 1103,
"end": 1116,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 1103,
"end": 1112,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1103,
"end": 1107,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1108,
"end": 1112,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1113,
"end": 1116,
"ctxt": 0
},
"value": "map",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "ArrowFunctionExpression",
"span": {
"start": 1117,
"end": 1145,
"ctxt": 0
},
"params": [
{
"type": "Identifier",
"span": {
"start": 1118,
"end": 1123,
"ctxt": 0
},
"value": "value",
"optional": false,
"typeAnnotation": null
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 1128,
"end": 1145,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 1130,
"end": 1143,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 1137,
"end": 1142,
"ctxt": 0
},
"value": "value",
"optional": false
}
}
]
},
"async": false,
"generator": false,
"typeParameters": null,
"returnType": null
}
}
],
"typeArguments": null
}
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 1160,
"end": 1181,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 1160,
"end": 1180,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 1160,
"end": 1169,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 1160,
"end": 1165,
"ctxt": 0
},
"value": "clone",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 1166,
"end": 1169,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 1172,
"end": 1180,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1172,
"end": 1176,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1177,
"end": 1180,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
{
"type": "ReturnStatement",
"span": {
"start": 1194,
"end": 1207,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 1201,
"end": 1206,
"ctxt": 0
},
"value": "clone",
"optional": false
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 1027,
"end": 1036,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 1029,
"end": 1036,
"ctxt": 0
},
"typeName": {
"type": "Identifier",
"span": {
"start": 1029,
"end": 1036,
"ctxt": 0
},
"value": "AstPath",
"optional": false
},
"typeParams": null
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 1227,
"end": 1452,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1234,
"end": 1237,
"ctxt": 0
},
"value": "pop",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 1227,
"end": 1452,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1256,
"end": 1452,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 1270,
"end": 1292,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 1274,
"end": 1291,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 1274,
"end": 1278,
"ctxt": 0
},
"value": "head",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "CallExpression",
"span": {
"start": 1281,
"end": 1291,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 1281,
"end": 1289,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1281,
"end": 1285,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1286,
"end": 1289,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 1305,
"end": 1315,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1305,
"end": 1314,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 1305,
"end": 1312,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1305,
"end": 1309,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1310,
"end": 1312,
"ctxt": 0
},
"value": "up",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "WhileStatement",
"span": {
"start": 1329,
"end": 1417,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 1336,
"end": 1367,
"ctxt": 0
},
"operator": ">",
"left": {
"type": "MemberExpression",
"span": {
"start": 1336,
"end": 1352,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 1336,
"end": 1345,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1336,
"end": 1340,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1341,
"end": 1345,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1346,
"end": 1352,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 1355,
"end": 1367,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 1355,
"end": 1365,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1355,
"end": 1359,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1360,
"end": 1365,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1369,
"end": 1417,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 1387,
"end": 1403,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1387,
"end": 1402,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 1387,
"end": 1400,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 1387,
"end": 1396,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1387,
"end": 1391,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1392,
"end": 1396,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1397,
"end": 1400,
"ctxt": 0
},
"value": "pop",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
}
},
{
"type": "ReturnStatement",
"span": {
"start": 1430,
"end": 1442,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 1437,
"end": 1441,
"ctxt": 0
},
"value": "head",
"optional": false
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 1239,
"end": 1255,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 1241,
"end": 1255,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 1241,
"end": 1251,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 1252,
"end": 1255,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 1462,
"end": 1681,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1469,
"end": 1473,
"ctxt": 0
},
"value": "push",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 1474,
"end": 1493,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 1474,
"end": 1493,
"ctxt": 0
},
"value": "ast",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 1477,
"end": 1493,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 1479,
"end": 1493,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 1479,
"end": 1489,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 1490,
"end": 1493,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
}
],
"decorators": [],
"span": {
"start": 1462,
"end": 1681,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1495,
"end": 1681,
"ctxt": 0
},
"stmts": [
{
"type": "WhileStatement",
"span": {
"start": 1509,
"end": 1597,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 1516,
"end": 1547,
"ctxt": 0
},
"operator": ">",
"left": {
"type": "MemberExpression",
"span": {
"start": 1516,
"end": 1532,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 1516,
"end": 1525,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1516,
"end": 1520,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1521,
"end": 1525,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1526,
"end": 1532,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 1535,
"end": 1547,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 1535,
"end": 1545,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1535,
"end": 1539,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1540,
"end": 1545,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1549,
"end": 1597,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 1567,
"end": 1583,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1567,
"end": 1582,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 1567,
"end": 1580,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 1567,
"end": 1576,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1567,
"end": 1571,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1572,
"end": 1576,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1577,
"end": 1580,
"ctxt": 0
},
"value": "pop",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 1610,
"end": 1638,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 1610,
"end": 1637,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 1610,
"end": 1618,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1610,
"end": 1614,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1615,
"end": 1618,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 1621,
"end": 1637,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 1621,
"end": 1630,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1621,
"end": 1625,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1626,
"end": 1630,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1631,
"end": 1637,
"ctxt": 0
},
"value": "length",
"optional": false
}
}
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 1651,
"end": 1671,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 1651,
"end": 1670,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 1651,
"end": 1665,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 1651,
"end": 1660,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1651,
"end": 1655,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1656,
"end": 1660,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1661,
"end": 1665,
"ctxt": 0
},
"value": "push",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 1666,
"end": 1669,
"ctxt": 0
},
"value": "ast",
"optional": false
}
}
],
"typeArguments": null
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 1691,
"end": 1827,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1698,
"end": 1700,
"ctxt": 0
},
"value": "up",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 1691,
"end": 1827,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1703,
"end": 1827,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 1717,
"end": 1793,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 1721,
"end": 1735,
"ctxt": 0
},
"operator": "<=",
"left": {
"type": "MemberExpression",
"span": {
"start": 1721,
"end": 1729,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1721,
"end": 1725,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1726,
"end": 1729,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "UnaryExpression",
"span": {
"start": 1733,
"end": 1735,
"ctxt": 0
},
"operator": "-",
"argument": {
"type": "NumericLiteral",
"span": {
"start": 1734,
"end": 1735,
"ctxt": 0
},
"value": 1.0
}
}
},
"consequent": {
"type": "ThrowStatement",
"span": {
"start": 1753,
"end": 1793,
"ctxt": 0
},
"argument": {
"type": "NewExpression",
"span": {
"start": 1759,
"end": 1792,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 1763,
"end": 1768,
"ctxt": 0
},
"value": "Error",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "StringLiteral",
"span": {
"start": 1769,
"end": 1791,
"ctxt": 0
},
"value": "Invalid call to 'up'",
"hasEscape": false,
"kind": {
"type": "normal",
"containsQuote": true
}
}
}
],
"typeArguments": null
}
},
"alternate": null
},
{
"type": "ExpressionStatement",
"span": {
"start": 1806,
"end": 1817,
"ctxt": 0
},
"expression": {
"type": "UpdateExpression",
"span": {
"start": 1806,
"end": 1816,
"ctxt": 0
},
"operator": "--",
"prefix": false,
"argument": {
"type": "MemberExpression",
"span": {
"start": 1806,
"end": 1814,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1806,
"end": 1810,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1811,
"end": 1814,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 1837,
"end": 1994,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 1844,
"end": 1848,
"ctxt": 0
},
"value": "down",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 1837,
"end": 1994,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 1851,
"end": 1994,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 1865,
"end": 1960,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 1869,
"end": 1900,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 1869,
"end": 1877,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1869,
"end": 1873,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1874,
"end": 1877,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 1881,
"end": 1900,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 1881,
"end": 1896,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 1881,
"end": 1889,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1881,
"end": 1885,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1886,
"end": 1889,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1890,
"end": 1896,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 1899,
"end": 1900,
"ctxt": 0
},
"value": 1.0
}
}
},
"consequent": {
"type": "ThrowStatement",
"span": {
"start": 1918,
"end": 1960,
"ctxt": 0
},
"argument": {
"type": "NewExpression",
"span": {
"start": 1924,
"end": 1959,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 1928,
"end": 1933,
"ctxt": 0
},
"value": "Error",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "StringLiteral",
"span": {
"start": 1934,
"end": 1958,
"ctxt": 0
},
"value": "Invalid call to 'down'",
"hasEscape": false,
"kind": {
"type": "normal",
"containsQuote": true
}
}
}
],
"typeArguments": null
}
},
"alternate": null
},
{
"type": "ExpressionStatement",
"span": {
"start": 1973,
"end": 1984,
"ctxt": 0
},
"expression": {
"type": "UpdateExpression",
"span": {
"start": 1973,
"end": 1983,
"ctxt": 0
},
"operator": "++",
"prefix": false,
"argument": {
"type": "MemberExpression",
"span": {
"start": 1973,
"end": 1981,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 1973,
"end": 1977,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 1978,
"end": 1981,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 2004,
"end": 2179,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2011,
"end": 2019,
"ctxt": 0
},
"value": "nodeType",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 2004,
"end": 2179,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2043,
"end": 2179,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 2057,
"end": 2129,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 2061,
"end": 2079,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "CallExpression",
"span": {
"start": 2061,
"end": 2071,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2061,
"end": 2069,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2061,
"end": 2065,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2066,
"end": 2069,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 2075,
"end": 2079,
"ctxt": 0
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 2097,
"end": 2129,
"ctxt": 0
},
"argument": {
"type": "MemberExpression",
"span": {
"start": 2104,
"end": 2128,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 2104,
"end": 2123,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 2104,
"end": 2114,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 2115,
"end": 2123,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2124,
"end": 2128,
"ctxt": 0
},
"value": "None",
"optional": false
}
}
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 2142,
"end": 2169,
"ctxt": 0
},
"argument": {
"type": "MemberExpression",
"span": {
"start": 2149,
"end": 2168,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 2149,
"end": 2159,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2149,
"end": 2157,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2149,
"end": 2153,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2154,
"end": 2157,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 2160,
"end": 2168,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 2021,
"end": 2042,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 2023,
"end": 2042,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 2023,
"end": 2033,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 2034,
"end": 2042,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"typeParams": null
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 2189,
"end": 2318,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2196,
"end": 2199,
"ctxt": 0
},
"value": "ast",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 2189,
"end": 2318,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2202,
"end": 2318,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 2216,
"end": 2308,
"ctxt": 0
},
"argument": {
"type": "TsTypeAssertion",
"span": {
"start": 2223,
"end": 2307,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2239,
"end": 2307,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2239,
"end": 2261,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 2239,
"end": 2246,
"ctxt": 0
},
"value": "AstPath",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 2247,
"end": 2261,
"ctxt": 0
},
"value": "reverseIndexOf",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 2262,
"end": 2271,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2262,
"end": 2266,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2267,
"end": 2271,
"ctxt": 0
},
"value": "asts",
"optional": false
}
}
},
{
"spread": null,
"expression": {
"type": "BinaryExpression",
"span": {
"start": 2273,
"end": 2306,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 2273,
"end": 2289,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 2273,
"end": 2282,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2273,
"end": 2277,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2278,
"end": 2282,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2283,
"end": 2289,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 2292,
"end": 2306,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 2293,
"end": 2305,
"ctxt": 0
},
"operator": "+",
"left": {
"type": "MemberExpression",
"span": {
"start": 2293,
"end": 2301,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2293,
"end": 2297,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2298,
"end": 2301,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 2304,
"end": 2305,
"ctxt": 0
},
"value": 1.0
}
}
}
}
}
],
"typeArguments": null
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 2224,
"end": 2238,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 2224,
"end": 2234,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 2235,
"end": 2238,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 2328,
"end": 2454,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2335,
"end": 2341,
"ctxt": 0
},
"value": "parent",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 2328,
"end": 2454,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2344,
"end": 2454,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 2358,
"end": 2444,
"ctxt": 0
},
"argument": {
"type": "TsTypeAssertion",
"span": {
"start": 2365,
"end": 2443,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2381,
"end": 2443,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2381,
"end": 2403,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 2381,
"end": 2388,
"ctxt": 0
},
"value": "AstPath",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 2389,
"end": 2403,
"ctxt": 0
},
"value": "reverseIndexOf",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 2404,
"end": 2413,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2404,
"end": 2408,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2409,
"end": 2413,
"ctxt": 0
},
"value": "asts",
"optional": false
}
}
},
{
"spread": null,
"expression": {
"type": "BinaryExpression",
"span": {
"start": 2415,
"end": 2442,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 2415,
"end": 2431,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 2415,
"end": 2424,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2415,
"end": 2419,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2420,
"end": 2424,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2425,
"end": 2431,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 2434,
"end": 2442,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2434,
"end": 2438,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2439,
"end": 2442,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
}
],
"typeArguments": null
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 2366,
"end": 2380,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 2366,
"end": 2376,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 2377,
"end": 2380,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 2464,
"end": 2523,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2471,
"end": 2476,
"ctxt": 0
},
"value": "count",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 2464,
"end": 2523,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2479,
"end": 2523,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 2493,
"end": 2513,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 2500,
"end": 2512,
"ctxt": 0
},
"operator": "+",
"left": {
"type": "MemberExpression",
"span": {
"start": 2500,
"end": 2508,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2500,
"end": 2504,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2505,
"end": 2508,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 2511,
"end": 2512,
"ctxt": 0
},
"value": 1.0
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 2533,
"end": 2623,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2540,
"end": 2543,
"ctxt": 0
},
"value": "get",
"optional": false
},
"function": {
"params": [
{
"type": "Parameter",
"span": {
"start": 2544,
"end": 2557,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 2544,
"end": 2557,
"ctxt": 0
},
"value": "index",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 2549,
"end": 2557,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 2551,
"end": 2557,
"ctxt": 0
},
"kind": "number"
}
}
}
}
],
"decorators": [],
"span": {
"start": 2533,
"end": 2623,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2575,
"end": 2623,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 2589,
"end": 2613,
"ctxt": 0
},
"argument": {
"type": "MemberExpression",
"span": {
"start": 2596,
"end": 2612,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 2596,
"end": 2605,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2596,
"end": 2600,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2601,
"end": 2605,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 2605,
"end": 2612,
"ctxt": 0
},
"expression": {
"type": "Identifier",
"span": {
"start": 2606,
"end": 2611,
"ctxt": 0
},
"value": "index",
"optional": false
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 2558,
"end": 2574,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 2560,
"end": 2574,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 2560,
"end": 2570,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 2571,
"end": 2574,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 2633,
"end": 3016,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 2640,
"end": 2653,
"ctxt": 0
},
"value": "isNameOfClass",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 2633,
"end": 3016,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 2665,
"end": 3016,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 2679,
"end": 2759,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 2683,
"end": 2728,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 2683,
"end": 2702,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 2683,
"end": 2693,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2683,
"end": 2691,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2683,
"end": 2687,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2688,
"end": 2691,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 2698,
"end": 2702,
"ctxt": 0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 2706,
"end": 2728,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 2706,
"end": 2719,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2706,
"end": 2717,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2706,
"end": 2710,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2711,
"end": 2717,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 2724,
"end": 2728,
"ctxt": 0
}
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 2746,
"end": 2759,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 2753,
"end": 2758,
"ctxt": 0
},
"value": false
}
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 2773,
"end": 3006,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 2780,
"end": 3005,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 2780,
"end": 2915,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "ParenthesisExpression",
"span": {
"start": 2780,
"end": 2830,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 2781,
"end": 2829,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 2781,
"end": 2800,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 2781,
"end": 2791,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2781,
"end": 2789,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2781,
"end": 2785,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2786,
"end": 2789,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 2792,
"end": 2800,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 2805,
"end": 2829,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 2805,
"end": 2824,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 2805,
"end": 2815,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 2816,
"end": 2824,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2825,
"end": 2829,
"ctxt": 0
},
"value": "Name",
"optional": false
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 2850,
"end": 2915,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 2851,
"end": 2914,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 2851,
"end": 2873,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 2851,
"end": 2864,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2851,
"end": 2862,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2851,
"end": 2855,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2856,
"end": 2862,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 2865,
"end": 2873,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 2878,
"end": 2914,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 2878,
"end": 2897,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 2878,
"end": 2888,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 2889,
"end": 2897,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2898,
"end": 2914,
"ctxt": 0
},
"value": "ClassDeclaration",
"optional": false
}
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 2935,
"end": 3005,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 2936,
"end": 3004,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 2936,
"end": 2989,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 2936,
"end": 2984,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 2937,
"end": 2983,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 2970,
"end": 2983,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2970,
"end": 2981,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2970,
"end": 2974,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2975,
"end": 2981,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 2938,
"end": 2969,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 2938,
"end": 2948,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 2949,
"end": 2969,
"ctxt": 0
},
"value": "InterfaceDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2985,
"end": 2989,
"ctxt": 0
},
"value": "name",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 2994,
"end": 3004,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 2994,
"end": 3002,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 2994,
"end": 2998,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 2999,
"end": 3002,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 2655,
"end": 2664,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 2657,
"end": 2664,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 3026,
"end": 3417,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3033,
"end": 3050,
"ctxt": 0
},
"value": "isNameOfInterface",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 3026,
"end": 3417,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 3062,
"end": 3417,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 3076,
"end": 3156,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 3080,
"end": 3125,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 3080,
"end": 3099,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 3080,
"end": 3090,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3080,
"end": 3088,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3080,
"end": 3084,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3085,
"end": 3088,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 3095,
"end": 3099,
"ctxt": 0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 3103,
"end": 3125,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 3103,
"end": 3116,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3103,
"end": 3114,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3103,
"end": 3107,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3108,
"end": 3114,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 3121,
"end": 3125,
"ctxt": 0
}
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 3143,
"end": 3156,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 3150,
"end": 3155,
"ctxt": 0
},
"value": false
}
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 3170,
"end": 3407,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 3177,
"end": 3406,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 3177,
"end": 3316,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "ParenthesisExpression",
"span": {
"start": 3177,
"end": 3227,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 3178,
"end": 3226,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 3178,
"end": 3197,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 3178,
"end": 3188,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3178,
"end": 3186,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3178,
"end": 3182,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3183,
"end": 3186,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 3189,
"end": 3197,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 3202,
"end": 3226,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 3202,
"end": 3221,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 3202,
"end": 3212,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 3213,
"end": 3221,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3222,
"end": 3226,
"ctxt": 0
},
"value": "Name",
"optional": false
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 3247,
"end": 3316,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 3248,
"end": 3315,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 3248,
"end": 3270,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 3248,
"end": 3261,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3248,
"end": 3259,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3248,
"end": 3252,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3253,
"end": 3259,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 3262,
"end": 3270,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 3275,
"end": 3315,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 3275,
"end": 3294,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 3275,
"end": 3285,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 3286,
"end": 3294,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3295,
"end": 3315,
"ctxt": 0
},
"value": "InterfaceDeclaration",
"optional": false
}
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 3336,
"end": 3406,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 3337,
"end": 3405,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 3337,
"end": 3390,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 3337,
"end": 3385,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 3338,
"end": 3384,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3371,
"end": 3384,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3371,
"end": 3382,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3371,
"end": 3375,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3376,
"end": 3382,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 3339,
"end": 3370,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 3339,
"end": 3349,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 3350,
"end": 3370,
"ctxt": 0
},
"value": "InterfaceDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3386,
"end": 3390,
"ctxt": 0
},
"value": "name",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 3395,
"end": 3405,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3395,
"end": 3403,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3395,
"end": 3399,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3400,
"end": 3403,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 3052,
"end": 3061,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 3054,
"end": 3061,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 3427,
"end": 3789,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3434,
"end": 3450,
"ctxt": 0
},
"value": "isNameOfArgument",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 3427,
"end": 3789,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 3462,
"end": 3789,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 3476,
"end": 3556,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 3480,
"end": 3525,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 3480,
"end": 3499,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 3480,
"end": 3490,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3480,
"end": 3488,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3480,
"end": 3484,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3485,
"end": 3488,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 3495,
"end": 3499,
"ctxt": 0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 3503,
"end": 3525,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 3503,
"end": 3516,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3503,
"end": 3514,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3503,
"end": 3507,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3508,
"end": 3514,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 3521,
"end": 3525,
"ctxt": 0
}
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 3543,
"end": 3556,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 3550,
"end": 3555,
"ctxt": 0
},
"value": false
}
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 3570,
"end": 3779,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 3577,
"end": 3778,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 3577,
"end": 3703,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "ParenthesisExpression",
"span": {
"start": 3577,
"end": 3627,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 3578,
"end": 3626,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 3578,
"end": 3597,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 3578,
"end": 3588,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3578,
"end": 3586,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3578,
"end": 3582,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3583,
"end": 3586,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 3589,
"end": 3597,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 3602,
"end": 3626,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 3602,
"end": 3621,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 3602,
"end": 3612,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 3613,
"end": 3621,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3622,
"end": 3626,
"ctxt": 0
},
"value": "Name",
"optional": false
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 3647,
"end": 3703,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 3648,
"end": 3702,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 3648,
"end": 3670,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 3648,
"end": 3661,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3648,
"end": 3659,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3648,
"end": 3652,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3653,
"end": 3659,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 3662,
"end": 3670,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 3675,
"end": 3702,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 3675,
"end": 3694,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 3675,
"end": 3685,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 3686,
"end": 3694,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3695,
"end": 3702,
"ctxt": 0
},
"value": "ArgDecl",
"optional": false
}
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 3723,
"end": 3778,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 3724,
"end": 3777,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 3724,
"end": 3762,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 3724,
"end": 3759,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 3725,
"end": 3758,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 3745,
"end": 3758,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3745,
"end": 3756,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3745,
"end": 3749,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3750,
"end": 3756,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 3726,
"end": 3744,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 3726,
"end": 3736,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 3737,
"end": 3744,
"ctxt": 0
},
"value": "ArgDecl",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3760,
"end": 3762,
"ctxt": 0
},
"value": "id",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 3767,
"end": 3777,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3767,
"end": 3775,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3767,
"end": 3771,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3772,
"end": 3775,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 3452,
"end": 3461,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 3454,
"end": 3461,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 3799,
"end": 4161,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 3806,
"end": 3822,
"ctxt": 0
},
"value": "isNameOfVariable",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 3799,
"end": 4161,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 3834,
"end": 4161,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 3848,
"end": 3928,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 3852,
"end": 3897,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 3852,
"end": 3871,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 3852,
"end": 3862,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3852,
"end": 3860,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3852,
"end": 3856,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3857,
"end": 3860,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 3867,
"end": 3871,
"ctxt": 0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 3875,
"end": 3897,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 3875,
"end": 3888,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3875,
"end": 3886,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3875,
"end": 3879,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3880,
"end": 3886,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 3893,
"end": 3897,
"ctxt": 0
}
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 3915,
"end": 3928,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 3922,
"end": 3927,
"ctxt": 0
},
"value": false
}
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 3942,
"end": 4151,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 3949,
"end": 4150,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 3949,
"end": 4075,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "ParenthesisExpression",
"span": {
"start": 3949,
"end": 3999,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 3950,
"end": 3998,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 3950,
"end": 3969,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 3950,
"end": 3960,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 3950,
"end": 3958,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 3950,
"end": 3954,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3955,
"end": 3958,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 3961,
"end": 3969,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 3974,
"end": 3998,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 3974,
"end": 3993,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 3974,
"end": 3984,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 3985,
"end": 3993,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 3994,
"end": 3998,
"ctxt": 0
},
"value": "Name",
"optional": false
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 4019,
"end": 4075,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 4020,
"end": 4074,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 4020,
"end": 4042,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 4020,
"end": 4033,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4020,
"end": 4031,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4020,
"end": 4024,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4025,
"end": 4031,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 4034,
"end": 4042,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 4047,
"end": 4074,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 4047,
"end": 4066,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 4047,
"end": 4057,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 4058,
"end": 4066,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4067,
"end": 4074,
"ctxt": 0
},
"value": "VarDecl",
"optional": false
}
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 4095,
"end": 4150,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 4096,
"end": 4149,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 4096,
"end": 4134,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 4096,
"end": 4131,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 4097,
"end": 4130,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4117,
"end": 4130,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4117,
"end": 4128,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4117,
"end": 4121,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4122,
"end": 4128,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 4098,
"end": 4116,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 4098,
"end": 4108,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 4109,
"end": 4116,
"ctxt": 0
},
"value": "VarDecl",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4132,
"end": 4134,
"ctxt": 0
},
"value": "id",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 4139,
"end": 4149,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4139,
"end": 4147,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4139,
"end": 4143,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4144,
"end": 4147,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 3824,
"end": 3833,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 3826,
"end": 3833,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 4171,
"end": 4553,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4178,
"end": 4192,
"ctxt": 0
},
"value": "isNameOfModule",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 4171,
"end": 4553,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 4204,
"end": 4553,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 4218,
"end": 4298,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 4222,
"end": 4267,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 4222,
"end": 4241,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 4222,
"end": 4232,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4222,
"end": 4230,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4222,
"end": 4226,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4227,
"end": 4230,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 4237,
"end": 4241,
"ctxt": 0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 4245,
"end": 4267,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 4245,
"end": 4258,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4245,
"end": 4256,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4245,
"end": 4249,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4250,
"end": 4256,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 4263,
"end": 4267,
"ctxt": 0
}
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 4285,
"end": 4298,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 4292,
"end": 4297,
"ctxt": 0
},
"value": false
}
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 4312,
"end": 4543,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 4319,
"end": 4542,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 4319,
"end": 4455,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "ParenthesisExpression",
"span": {
"start": 4319,
"end": 4369,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 4320,
"end": 4368,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 4320,
"end": 4339,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 4320,
"end": 4330,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4320,
"end": 4328,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4320,
"end": 4324,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4325,
"end": 4328,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 4331,
"end": 4339,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 4344,
"end": 4368,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 4344,
"end": 4363,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 4344,
"end": 4354,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 4355,
"end": 4363,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4364,
"end": 4368,
"ctxt": 0
},
"value": "Name",
"optional": false
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 4389,
"end": 4455,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 4390,
"end": 4454,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 4390,
"end": 4412,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 4390,
"end": 4403,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4390,
"end": 4401,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4390,
"end": 4394,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4395,
"end": 4401,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 4404,
"end": 4412,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 4417,
"end": 4454,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 4417,
"end": 4436,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 4417,
"end": 4427,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 4428,
"end": 4436,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4437,
"end": 4454,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 4475,
"end": 4542,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 4476,
"end": 4541,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 4476,
"end": 4526,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 4476,
"end": 4521,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 4477,
"end": 4520,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4507,
"end": 4520,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4507,
"end": 4518,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4507,
"end": 4511,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4512,
"end": 4518,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 4478,
"end": 4506,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 4478,
"end": 4488,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 4489,
"end": 4506,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4522,
"end": 4526,
"ctxt": 0
},
"value": "name",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 4531,
"end": 4541,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4531,
"end": 4539,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4531,
"end": 4535,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4536,
"end": 4539,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 4194,
"end": 4203,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 4196,
"end": 4203,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 4563,
"end": 4929,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4570,
"end": 4586,
"ctxt": 0
},
"value": "isNameOfFunction",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 4563,
"end": 4929,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 4598,
"end": 4929,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 4612,
"end": 4692,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 4616,
"end": 4661,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 4616,
"end": 4635,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 4616,
"end": 4626,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4616,
"end": 4624,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4616,
"end": 4620,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4621,
"end": 4624,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 4631,
"end": 4635,
"ctxt": 0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 4639,
"end": 4661,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "CallExpression",
"span": {
"start": 4639,
"end": 4652,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4639,
"end": 4650,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4639,
"end": 4643,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4644,
"end": 4650,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NullLiteral",
"span": {
"start": 4657,
"end": 4661,
"ctxt": 0
}
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 4679,
"end": 4692,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 4686,
"end": 4691,
"ctxt": 0
},
"value": false
}
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 4706,
"end": 4919,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 4713,
"end": 4918,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 4713,
"end": 4840,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "ParenthesisExpression",
"span": {
"start": 4713,
"end": 4763,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 4714,
"end": 4762,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 4714,
"end": 4733,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 4714,
"end": 4724,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4714,
"end": 4722,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4714,
"end": 4718,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4719,
"end": 4722,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 4725,
"end": 4733,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 4738,
"end": 4762,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 4738,
"end": 4757,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 4738,
"end": 4748,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 4749,
"end": 4757,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4758,
"end": 4762,
"ctxt": 0
},
"value": "Name",
"optional": false
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 4783,
"end": 4840,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 4784,
"end": 4839,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 4784,
"end": 4806,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 4784,
"end": 4797,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4784,
"end": 4795,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4784,
"end": 4788,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4789,
"end": 4795,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 4798,
"end": 4806,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 4811,
"end": 4839,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 4811,
"end": 4830,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 4811,
"end": 4821,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 4822,
"end": 4830,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4831,
"end": 4839,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 4860,
"end": 4918,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 4861,
"end": 4917,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 4861,
"end": 4902,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 4861,
"end": 4897,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 4862,
"end": 4896,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 4883,
"end": 4896,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4883,
"end": 4894,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4883,
"end": 4887,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4888,
"end": 4894,
"ctxt": 0
},
"value": "parent",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 4863,
"end": 4882,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 4863,
"end": 4873,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 4874,
"end": 4882,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4898,
"end": 4902,
"ctxt": 0
},
"value": "name",
"optional": false
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 4907,
"end": 4917,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 4907,
"end": 4915,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 4907,
"end": 4911,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 4912,
"end": 4915,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 4588,
"end": 4597,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 4590,
"end": 4597,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 4939,
"end": 5274,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 4946,
"end": 4961,
"ctxt": 0
},
"value": "isChildOfScript",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 4939,
"end": 5274,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 4973,
"end": 5274,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 4987,
"end": 5015,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 4991,
"end": 5014,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 4991,
"end": 4994,
"ctxt": 0
},
"value": "ast",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "CallExpression",
"span": {
"start": 4997,
"end": 5014,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 4997,
"end": 5003,
"ctxt": 0
},
"value": "lastOf",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 5004,
"end": 5013,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5004,
"end": 5008,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5009,
"end": 5013,
"ctxt": 0
},
"value": "asts",
"optional": false
}
}
}
],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ReturnStatement",
"span": {
"start": 5028,
"end": 5264,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 5035,
"end": 5263,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5035,
"end": 5180,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5035,
"end": 5099,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5035,
"end": 5052,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 5035,
"end": 5047,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 5035,
"end": 5045,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5035,
"end": 5039,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5040,
"end": 5045,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5051,
"end": 5052,
"ctxt": 0
},
"value": 3.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5072,
"end": 5099,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5072,
"end": 5091,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5072,
"end": 5081,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5072,
"end": 5076,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5077,
"end": 5081,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5081,
"end": 5091,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 5082,
"end": 5090,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5082,
"end": 5086,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5087,
"end": 5090,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"right": {
"type": "Identifier",
"span": {
"start": 5096,
"end": 5099,
"ctxt": 0
},
"value": "ast",
"optional": false
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5119,
"end": 5180,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5119,
"end": 5151,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5119,
"end": 5142,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5119,
"end": 5128,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5119,
"end": 5123,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5124,
"end": 5128,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5128,
"end": 5142,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 5129,
"end": 5141,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 5129,
"end": 5137,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5129,
"end": 5133,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5134,
"end": 5137,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5140,
"end": 5141,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5143,
"end": 5151,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 5156,
"end": 5180,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5156,
"end": 5175,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 5156,
"end": 5166,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 5167,
"end": 5175,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5176,
"end": 5180,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5200,
"end": 5263,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5200,
"end": 5232,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5200,
"end": 5223,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5200,
"end": 5209,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5200,
"end": 5204,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5205,
"end": 5209,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5209,
"end": 5223,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 5210,
"end": 5222,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 5210,
"end": 5218,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5210,
"end": 5214,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5215,
"end": 5218,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5221,
"end": 5222,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5224,
"end": 5232,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 5237,
"end": 5263,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5237,
"end": 5256,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 5237,
"end": 5247,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 5248,
"end": 5256,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5257,
"end": 5263,
"ctxt": 0
},
"value": "Script",
"optional": false
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 4963,
"end": 4972,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 4965,
"end": 4972,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 5284,
"end": 5630,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5291,
"end": 5306,
"ctxt": 0
},
"value": "isChildOfModule",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 5284,
"end": 5630,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 5318,
"end": 5630,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 5332,
"end": 5360,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 5336,
"end": 5359,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 5336,
"end": 5339,
"ctxt": 0
},
"value": "ast",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "CallExpression",
"span": {
"start": 5342,
"end": 5359,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 5342,
"end": 5348,
"ctxt": 0
},
"value": "lastOf",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 5349,
"end": 5358,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5349,
"end": 5353,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5354,
"end": 5358,
"ctxt": 0
},
"value": "asts",
"optional": false
}
}
}
],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ReturnStatement",
"span": {
"start": 5373,
"end": 5620,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 5380,
"end": 5619,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5380,
"end": 5525,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5380,
"end": 5444,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5380,
"end": 5397,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 5380,
"end": 5392,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 5380,
"end": 5390,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5380,
"end": 5384,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5385,
"end": 5390,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5396,
"end": 5397,
"ctxt": 0
},
"value": 3.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5417,
"end": 5444,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5417,
"end": 5436,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5417,
"end": 5426,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5417,
"end": 5421,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5422,
"end": 5426,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5426,
"end": 5436,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 5427,
"end": 5435,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5427,
"end": 5431,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5432,
"end": 5435,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"right": {
"type": "Identifier",
"span": {
"start": 5441,
"end": 5444,
"ctxt": 0
},
"value": "ast",
"optional": false
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5464,
"end": 5525,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5464,
"end": 5496,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5464,
"end": 5487,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5464,
"end": 5473,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5464,
"end": 5468,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5469,
"end": 5473,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5473,
"end": 5487,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 5474,
"end": 5486,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 5474,
"end": 5482,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5474,
"end": 5478,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5479,
"end": 5482,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5485,
"end": 5486,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5488,
"end": 5496,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 5501,
"end": 5525,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5501,
"end": 5520,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 5501,
"end": 5511,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 5512,
"end": 5520,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5521,
"end": 5525,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5545,
"end": 5619,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5545,
"end": 5577,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5545,
"end": 5568,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5545,
"end": 5554,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5545,
"end": 5549,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5550,
"end": 5554,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5554,
"end": 5568,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 5555,
"end": 5567,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 5555,
"end": 5563,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5555,
"end": 5559,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5560,
"end": 5563,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5566,
"end": 5567,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5569,
"end": 5577,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 5582,
"end": 5619,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5582,
"end": 5601,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 5582,
"end": 5592,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 5593,
"end": 5601,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5602,
"end": 5619,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 5308,
"end": 5317,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 5310,
"end": 5317,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 5640,
"end": 5984,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 5647,
"end": 5661,
"ctxt": 0
},
"value": "isChildOfClass",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 5640,
"end": 5984,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 5673,
"end": 5984,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 5687,
"end": 5715,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 5691,
"end": 5714,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 5691,
"end": 5694,
"ctxt": 0
},
"value": "ast",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "CallExpression",
"span": {
"start": 5697,
"end": 5714,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 5697,
"end": 5703,
"ctxt": 0
},
"value": "lastOf",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 5704,
"end": 5713,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5704,
"end": 5708,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5709,
"end": 5713,
"ctxt": 0
},
"value": "asts",
"optional": false
}
}
}
],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ReturnStatement",
"span": {
"start": 5728,
"end": 5974,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 5735,
"end": 5973,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5735,
"end": 5880,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5735,
"end": 5799,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 5735,
"end": 5752,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 5735,
"end": 5747,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 5735,
"end": 5745,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5735,
"end": 5739,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5740,
"end": 5745,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5751,
"end": 5752,
"ctxt": 0
},
"value": 3.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5772,
"end": 5799,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5772,
"end": 5791,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5772,
"end": 5781,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5772,
"end": 5776,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5777,
"end": 5781,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5781,
"end": 5791,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 5782,
"end": 5790,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5782,
"end": 5786,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5787,
"end": 5790,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"right": {
"type": "Identifier",
"span": {
"start": 5796,
"end": 5799,
"ctxt": 0
},
"value": "ast",
"optional": false
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5819,
"end": 5880,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5819,
"end": 5851,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5819,
"end": 5842,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5819,
"end": 5828,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5819,
"end": 5823,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5824,
"end": 5828,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5828,
"end": 5842,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 5829,
"end": 5841,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 5829,
"end": 5837,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5829,
"end": 5833,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5834,
"end": 5837,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5840,
"end": 5841,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5843,
"end": 5851,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 5856,
"end": 5880,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5856,
"end": 5875,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 5856,
"end": 5866,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 5867,
"end": 5875,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5876,
"end": 5880,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 5900,
"end": 5973,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 5900,
"end": 5932,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5900,
"end": 5923,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5900,
"end": 5909,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5900,
"end": 5904,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5905,
"end": 5909,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 5909,
"end": 5923,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 5910,
"end": 5922,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 5910,
"end": 5918,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 5910,
"end": 5914,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5915,
"end": 5918,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 5921,
"end": 5922,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5924,
"end": 5932,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 5937,
"end": 5973,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 5937,
"end": 5956,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 5937,
"end": 5947,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 5948,
"end": 5956,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 5957,
"end": 5973,
"ctxt": 0
},
"value": "ClassDeclaration",
"optional": false
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 5663,
"end": 5672,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 5665,
"end": 5672,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 5994,
"end": 6826,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6001,
"end": 6029,
"ctxt": 0
},
"value": "isArgumentOfClassConstructor",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 5994,
"end": 6826,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 6041,
"end": 6826,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 6055,
"end": 6083,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 6059,
"end": 6082,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 6059,
"end": 6062,
"ctxt": 0
},
"value": "ast",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "CallExpression",
"span": {
"start": 6065,
"end": 6082,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 6065,
"end": 6071,
"ctxt": 0
},
"value": "lastOf",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 6072,
"end": 6081,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6072,
"end": 6076,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6077,
"end": 6081,
"ctxt": 0
},
"value": "asts",
"optional": false
}
}
}
],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ReturnStatement",
"span": {
"start": 6096,
"end": 6816,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6815,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6695,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6589,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6507,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6414,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6333,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6248,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6167,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6103,
"end": 6120,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 6103,
"end": 6115,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 6103,
"end": 6113,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6103,
"end": 6107,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6108,
"end": 6113,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6119,
"end": 6120,
"ctxt": 0
},
"value": 5.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 6140,
"end": 6167,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 6140,
"end": 6159,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6140,
"end": 6149,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6140,
"end": 6144,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6145,
"end": 6149,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6149,
"end": 6159,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 6150,
"end": 6158,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6150,
"end": 6154,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6155,
"end": 6158,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"right": {
"type": "Identifier",
"span": {
"start": 6164,
"end": 6167,
"ctxt": 0
},
"value": "ast",
"optional": false
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 6187,
"end": 6248,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 6187,
"end": 6219,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6187,
"end": 6210,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6187,
"end": 6196,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6187,
"end": 6191,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6192,
"end": 6196,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6196,
"end": 6210,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6197,
"end": 6209,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6197,
"end": 6205,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6197,
"end": 6201,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6202,
"end": 6205,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6208,
"end": 6209,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6211,
"end": 6219,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 6224,
"end": 6248,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6224,
"end": 6243,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 6224,
"end": 6234,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 6235,
"end": 6243,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6244,
"end": 6248,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 6268,
"end": 6333,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 6268,
"end": 6300,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6268,
"end": 6291,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6268,
"end": 6277,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6268,
"end": 6272,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6273,
"end": 6277,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6277,
"end": 6291,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6278,
"end": 6290,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6278,
"end": 6286,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6278,
"end": 6282,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6283,
"end": 6286,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6289,
"end": 6290,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6292,
"end": 6300,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 6305,
"end": 6333,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6305,
"end": 6324,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 6305,
"end": 6315,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 6316,
"end": 6324,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6325,
"end": 6333,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 6353,
"end": 6414,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 6353,
"end": 6385,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6353,
"end": 6376,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6353,
"end": 6362,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6353,
"end": 6357,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6358,
"end": 6362,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6362,
"end": 6376,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6363,
"end": 6375,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6363,
"end": 6371,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6363,
"end": 6367,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6368,
"end": 6371,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6374,
"end": 6375,
"ctxt": 0
},
"value": 3.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6377,
"end": 6385,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 6390,
"end": 6414,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6390,
"end": 6409,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 6390,
"end": 6400,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 6401,
"end": 6409,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6410,
"end": 6414,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 6434,
"end": 6507,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 6434,
"end": 6466,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6434,
"end": 6457,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6434,
"end": 6443,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6434,
"end": 6438,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6439,
"end": 6443,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6443,
"end": 6457,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6444,
"end": 6456,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6444,
"end": 6452,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6444,
"end": 6448,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6449,
"end": 6452,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6455,
"end": 6456,
"ctxt": 0
},
"value": 4.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6458,
"end": 6466,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 6471,
"end": 6507,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6471,
"end": 6490,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 6471,
"end": 6481,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 6482,
"end": 6490,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6491,
"end": 6507,
"ctxt": 0
},
"value": "ClassDeclaration",
"optional": false
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 6527,
"end": 6589,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 6528,
"end": 6588,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 6528,
"end": 6574,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 6529,
"end": 6573,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 6550,
"end": 6573,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6550,
"end": 6559,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6550,
"end": 6554,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6555,
"end": 6559,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6559,
"end": 6573,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6560,
"end": 6572,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6560,
"end": 6568,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6560,
"end": 6564,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6565,
"end": 6568,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6571,
"end": 6572,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 6530,
"end": 6549,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 6530,
"end": 6540,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 6541,
"end": 6549,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6575,
"end": 6588,
"ctxt": 0
},
"value": "isConstructor",
"optional": false
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 6609,
"end": 6695,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6610,
"end": 6694,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 6610,
"end": 6666,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 6610,
"end": 6656,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 6611,
"end": 6655,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 6632,
"end": 6655,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6632,
"end": 6641,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6632,
"end": 6636,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6637,
"end": 6641,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6641,
"end": 6655,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6642,
"end": 6654,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6642,
"end": 6650,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6642,
"end": 6646,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6647,
"end": 6650,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6653,
"end": 6654,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 6612,
"end": 6631,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 6612,
"end": 6622,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 6623,
"end": 6631,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6657,
"end": 6666,
"ctxt": 0
},
"value": "arguments",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 6671,
"end": 6694,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6671,
"end": 6680,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6671,
"end": 6675,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6676,
"end": 6680,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6680,
"end": 6694,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6681,
"end": 6693,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6681,
"end": 6689,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6681,
"end": 6685,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6686,
"end": 6689,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6692,
"end": 6693,
"ctxt": 0
},
"value": 1.0
}
}
}
}
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 6715,
"end": 6815,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6716,
"end": 6814,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 6716,
"end": 6786,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 6716,
"end": 6770,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 6717,
"end": 6769,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 6746,
"end": 6769,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6746,
"end": 6755,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6746,
"end": 6750,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6751,
"end": 6755,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6755,
"end": 6769,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6756,
"end": 6768,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6756,
"end": 6764,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6756,
"end": 6760,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6761,
"end": 6764,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6767,
"end": 6768,
"ctxt": 0
},
"value": 4.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 6718,
"end": 6745,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 6718,
"end": 6728,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 6729,
"end": 6745,
"ctxt": 0
},
"value": "ClassDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6771,
"end": 6786,
"ctxt": 0
},
"value": "constructorDecl",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 6791,
"end": 6814,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6791,
"end": 6800,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6791,
"end": 6795,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6796,
"end": 6800,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6800,
"end": 6814,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 6801,
"end": 6813,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 6801,
"end": 6809,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6801,
"end": 6805,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6806,
"end": 6809,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6812,
"end": 6813,
"ctxt": 0
},
"value": 2.0
}
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 6031,
"end": 6040,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 6033,
"end": 6040,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 6836,
"end": 7188,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 6843,
"end": 6861,
"ctxt": 0
},
"value": "isChildOfInterface",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 6836,
"end": 7188,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 6873,
"end": 7188,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 6887,
"end": 6915,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 6891,
"end": 6914,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 6891,
"end": 6894,
"ctxt": 0
},
"value": "ast",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "CallExpression",
"span": {
"start": 6897,
"end": 6914,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 6897,
"end": 6903,
"ctxt": 0
},
"value": "lastOf",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 6904,
"end": 6913,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6904,
"end": 6908,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6909,
"end": 6913,
"ctxt": 0
},
"value": "asts",
"optional": false
}
}
}
],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ReturnStatement",
"span": {
"start": 6928,
"end": 7178,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 6935,
"end": 7177,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6935,
"end": 7080,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6935,
"end": 6999,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 6935,
"end": 6952,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 6935,
"end": 6947,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 6935,
"end": 6945,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6935,
"end": 6939,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6940,
"end": 6945,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 6951,
"end": 6952,
"ctxt": 0
},
"value": 3.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 6972,
"end": 6999,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 6972,
"end": 6991,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 6972,
"end": 6981,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6972,
"end": 6976,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6977,
"end": 6981,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 6981,
"end": 6991,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 6982,
"end": 6990,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 6982,
"end": 6986,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 6987,
"end": 6990,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"right": {
"type": "Identifier",
"span": {
"start": 6996,
"end": 6999,
"ctxt": 0
},
"value": "ast",
"optional": false
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 7019,
"end": 7080,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 7019,
"end": 7051,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7019,
"end": 7042,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7019,
"end": 7028,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7019,
"end": 7023,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7024,
"end": 7028,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7028,
"end": 7042,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 7029,
"end": 7041,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 7029,
"end": 7037,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7029,
"end": 7033,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7034,
"end": 7037,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7040,
"end": 7041,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7043,
"end": 7051,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 7056,
"end": 7080,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7056,
"end": 7075,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7056,
"end": 7066,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7067,
"end": 7075,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7076,
"end": 7080,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 7100,
"end": 7177,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 7100,
"end": 7132,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7100,
"end": 7123,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7100,
"end": 7109,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7100,
"end": 7104,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7105,
"end": 7109,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7109,
"end": 7123,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 7110,
"end": 7122,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 7110,
"end": 7118,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7110,
"end": 7114,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7115,
"end": 7118,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7121,
"end": 7122,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7124,
"end": 7132,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 7137,
"end": 7177,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7137,
"end": 7156,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7137,
"end": 7147,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7148,
"end": 7156,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7157,
"end": 7177,
"ctxt": 0
},
"value": "InterfaceDeclaration",
"optional": false
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 6863,
"end": 6872,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 6865,
"end": 6872,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 7198,
"end": 7507,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7205,
"end": 7229,
"ctxt": 0
},
"value": "isTopLevelImplicitModule",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 7198,
"end": 7507,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 7232,
"end": 7507,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 7246,
"end": 7497,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 7253,
"end": 7496,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 7253,
"end": 7360,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 7253,
"end": 7270,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 7253,
"end": 7265,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 7253,
"end": 7263,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7253,
"end": 7257,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7258,
"end": 7263,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7269,
"end": 7270,
"ctxt": 0
},
"value": 1.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 7290,
"end": 7360,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 7290,
"end": 7318,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7290,
"end": 7309,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7290,
"end": 7299,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7290,
"end": 7294,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7295,
"end": 7299,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7299,
"end": 7309,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 7300,
"end": 7308,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7300,
"end": 7304,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7305,
"end": 7308,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7310,
"end": 7318,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 7323,
"end": 7360,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7323,
"end": 7342,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7323,
"end": 7333,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7334,
"end": 7342,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7343,
"end": 7360,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
}
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 7380,
"end": 7496,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 7380,
"end": 7398,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7380,
"end": 7390,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7391,
"end": 7398,
"ctxt": 0
},
"value": "hasFlag",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 7399,
"end": 7459,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 7399,
"end": 7450,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 7400,
"end": 7449,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 7430,
"end": 7449,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7430,
"end": 7439,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7430,
"end": 7434,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7435,
"end": 7439,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7439,
"end": 7449,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 7440,
"end": 7448,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7440,
"end": 7444,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7445,
"end": 7448,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 7401,
"end": 7429,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 7401,
"end": 7411,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 7412,
"end": 7429,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7451,
"end": 7459,
"ctxt": 0
},
"value": "modFlags",
"optional": false
}
}
},
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 7461,
"end": 7495,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7461,
"end": 7483,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7461,
"end": 7471,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7472,
"end": 7483,
"ctxt": 0
},
"value": "ModuleFlags",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7484,
"end": 7495,
"ctxt": 0
},
"value": "IsWholeFile",
"optional": false
}
}
}
],
"typeArguments": null
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 7517,
"end": 8032,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 7524,
"end": 7554,
"ctxt": 0
},
"value": "isBodyOfTopLevelImplicitModule",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 7517,
"end": 8032,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 7557,
"end": 8032,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 7571,
"end": 8022,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 7578,
"end": 8021,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 7578,
"end": 7881,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 7578,
"end": 7770,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 7578,
"end": 7676,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 7578,
"end": 7595,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 7578,
"end": 7590,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 7578,
"end": 7588,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7578,
"end": 7582,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7583,
"end": 7588,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7594,
"end": 7595,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 7615,
"end": 7676,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 7615,
"end": 7647,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7615,
"end": 7638,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7615,
"end": 7624,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7615,
"end": 7619,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7620,
"end": 7624,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7624,
"end": 7638,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 7625,
"end": 7637,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 7625,
"end": 7633,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7625,
"end": 7629,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7630,
"end": 7633,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7636,
"end": 7637,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7639,
"end": 7647,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 7652,
"end": 7676,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7652,
"end": 7671,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7652,
"end": 7662,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7663,
"end": 7671,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7672,
"end": 7676,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 7696,
"end": 7770,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 7696,
"end": 7728,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7696,
"end": 7719,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7696,
"end": 7705,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7696,
"end": 7700,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7701,
"end": 7705,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7705,
"end": 7719,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 7706,
"end": 7718,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 7706,
"end": 7714,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7706,
"end": 7710,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7711,
"end": 7714,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7717,
"end": 7718,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7720,
"end": 7728,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 7733,
"end": 7770,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7733,
"end": 7752,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7733,
"end": 7743,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7744,
"end": 7752,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7753,
"end": 7770,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 7791,
"end": 7881,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 7791,
"end": 7854,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 7791,
"end": 7846,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 7792,
"end": 7845,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 7822,
"end": 7845,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7822,
"end": 7831,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7822,
"end": 7826,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7827,
"end": 7831,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7831,
"end": 7845,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 7832,
"end": 7844,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 7832,
"end": 7840,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7832,
"end": 7836,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7837,
"end": 7840,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7843,
"end": 7844,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 7793,
"end": 7821,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 7793,
"end": 7803,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 7804,
"end": 7821,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7847,
"end": 7854,
"ctxt": 0
},
"value": "members",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 7858,
"end": 7881,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7858,
"end": 7867,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7858,
"end": 7862,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7863,
"end": 7867,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7867,
"end": 7881,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 7868,
"end": 7880,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 7868,
"end": 7876,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7868,
"end": 7872,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7873,
"end": 7876,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7879,
"end": 7880,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
},
"right": {
"type": "CallExpression",
"span": {
"start": 7901,
"end": 8021,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 7901,
"end": 7919,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7901,
"end": 7911,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7912,
"end": 7919,
"ctxt": 0
},
"value": "hasFlag",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 7920,
"end": 7984,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 7920,
"end": 7975,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 7921,
"end": 7974,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 7951,
"end": 7974,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7951,
"end": 7960,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7951,
"end": 7955,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7956,
"end": 7960,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 7960,
"end": 7974,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 7961,
"end": 7973,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 7961,
"end": 7969,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 7961,
"end": 7965,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7966,
"end": 7969,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 7972,
"end": 7973,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 7922,
"end": 7950,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 7922,
"end": 7932,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 7933,
"end": 7950,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 7976,
"end": 7984,
"ctxt": 0
},
"value": "modFlags",
"optional": false
}
}
},
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 7986,
"end": 8020,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 7986,
"end": 8008,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 7986,
"end": 7996,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 7997,
"end": 8008,
"ctxt": 0
},
"value": "ModuleFlags",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8009,
"end": 8020,
"ctxt": 0
},
"value": "IsWholeFile",
"optional": false
}
}
}
],
"typeArguments": null
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 8042,
"end": 8303,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 8049,
"end": 8063,
"ctxt": 0
},
"value": "isBodyOfScript",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 8042,
"end": 8303,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 8075,
"end": 8303,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 8089,
"end": 8293,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 8096,
"end": 8292,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 8096,
"end": 8196,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 8096,
"end": 8113,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 8096,
"end": 8108,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 8096,
"end": 8106,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8096,
"end": 8100,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8101,
"end": 8106,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8112,
"end": 8113,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 8133,
"end": 8196,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 8133,
"end": 8165,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8133,
"end": 8156,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8133,
"end": 8142,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8133,
"end": 8137,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8138,
"end": 8142,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8142,
"end": 8156,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8143,
"end": 8155,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8143,
"end": 8151,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8143,
"end": 8147,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8148,
"end": 8151,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8154,
"end": 8155,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8157,
"end": 8165,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 8170,
"end": 8196,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8170,
"end": 8189,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 8170,
"end": 8180,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 8181,
"end": 8189,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8190,
"end": 8196,
"ctxt": 0
},
"value": "Script",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 8217,
"end": 8292,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 8217,
"end": 8265,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 8217,
"end": 8261,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 8218,
"end": 8260,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 8237,
"end": 8260,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8237,
"end": 8246,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8237,
"end": 8241,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8242,
"end": 8246,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8246,
"end": 8260,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8247,
"end": 8259,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8247,
"end": 8255,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8247,
"end": 8251,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8252,
"end": 8255,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8258,
"end": 8259,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 8219,
"end": 8236,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 8219,
"end": 8229,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 8230,
"end": 8236,
"ctxt": 0
},
"value": "Script",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8262,
"end": 8265,
"ctxt": 0
},
"value": "bod",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 8269,
"end": 8292,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8269,
"end": 8278,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8269,
"end": 8273,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8274,
"end": 8278,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8278,
"end": 8292,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8279,
"end": 8291,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8279,
"end": 8287,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8279,
"end": 8283,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8284,
"end": 8287,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8290,
"end": 8291,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 8065,
"end": 8074,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 8067,
"end": 8074,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 8313,
"end": 8588,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 8320,
"end": 8334,
"ctxt": 0
},
"value": "isBodyOfSwitch",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 8313,
"end": 8588,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 8346,
"end": 8588,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 8360,
"end": 8578,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 8367,
"end": 8577,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 8367,
"end": 8467,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 8367,
"end": 8384,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 8367,
"end": 8379,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 8367,
"end": 8377,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8367,
"end": 8371,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8372,
"end": 8377,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8383,
"end": 8384,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 8404,
"end": 8467,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 8404,
"end": 8436,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8404,
"end": 8427,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8404,
"end": 8413,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8404,
"end": 8408,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8409,
"end": 8413,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8413,
"end": 8427,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8414,
"end": 8426,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8414,
"end": 8422,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8414,
"end": 8418,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8419,
"end": 8422,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8425,
"end": 8426,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8428,
"end": 8436,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 8441,
"end": 8467,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8441,
"end": 8460,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 8441,
"end": 8451,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 8452,
"end": 8460,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8461,
"end": 8467,
"ctxt": 0
},
"value": "Switch",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 8488,
"end": 8577,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 8488,
"end": 8550,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 8488,
"end": 8541,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 8489,
"end": 8540,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 8517,
"end": 8540,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8517,
"end": 8526,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8517,
"end": 8521,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8522,
"end": 8526,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8526,
"end": 8540,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8527,
"end": 8539,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8527,
"end": 8535,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8527,
"end": 8531,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8532,
"end": 8535,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8538,
"end": 8539,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 8490,
"end": 8516,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 8490,
"end": 8500,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 8501,
"end": 8516,
"ctxt": 0
},
"value": "SwitchStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8542,
"end": 8550,
"ctxt": 0
},
"value": "caseList",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 8554,
"end": 8577,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8554,
"end": 8563,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8554,
"end": 8558,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8559,
"end": 8563,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8563,
"end": 8577,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8564,
"end": 8576,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8564,
"end": 8572,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8564,
"end": 8568,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8569,
"end": 8572,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8575,
"end": 8576,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 8336,
"end": 8345,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 8338,
"end": 8345,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 8598,
"end": 8885,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 8605,
"end": 8619,
"ctxt": 0
},
"value": "isBodyOfModule",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 8598,
"end": 8885,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 8631,
"end": 8885,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 8645,
"end": 8875,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 8652,
"end": 8874,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 8652,
"end": 8763,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 8652,
"end": 8669,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 8652,
"end": 8664,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 8652,
"end": 8662,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8652,
"end": 8656,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8657,
"end": 8662,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8668,
"end": 8669,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 8689,
"end": 8763,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 8689,
"end": 8721,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8689,
"end": 8712,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8689,
"end": 8698,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8689,
"end": 8693,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8694,
"end": 8698,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8698,
"end": 8712,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8699,
"end": 8711,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8699,
"end": 8707,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8699,
"end": 8703,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8704,
"end": 8707,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8710,
"end": 8711,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8713,
"end": 8721,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 8726,
"end": 8763,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8726,
"end": 8745,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 8726,
"end": 8736,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 8737,
"end": 8745,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8746,
"end": 8763,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 8784,
"end": 8874,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 8784,
"end": 8847,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 8784,
"end": 8839,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 8785,
"end": 8838,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 8815,
"end": 8838,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8815,
"end": 8824,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8815,
"end": 8819,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8820,
"end": 8824,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8824,
"end": 8838,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8825,
"end": 8837,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8825,
"end": 8833,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8825,
"end": 8829,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8830,
"end": 8833,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8836,
"end": 8837,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 8786,
"end": 8814,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 8786,
"end": 8796,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 8797,
"end": 8814,
"ctxt": 0
},
"value": "ModuleDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8840,
"end": 8847,
"ctxt": 0
},
"value": "members",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 8851,
"end": 8874,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8851,
"end": 8860,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8851,
"end": 8855,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8856,
"end": 8860,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8860,
"end": 8874,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8861,
"end": 8873,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8861,
"end": 8869,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8861,
"end": 8865,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8866,
"end": 8869,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8872,
"end": 8873,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 8621,
"end": 8630,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 8623,
"end": 8630,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 8895,
"end": 9179,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 8902,
"end": 8915,
"ctxt": 0
},
"value": "isBodyOfClass",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 8895,
"end": 9179,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 8927,
"end": 9179,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 8941,
"end": 9169,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 8948,
"end": 9168,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 8948,
"end": 9058,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 8948,
"end": 8965,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 8948,
"end": 8960,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 8948,
"end": 8958,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8948,
"end": 8952,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8953,
"end": 8958,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 8964,
"end": 8965,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 8985,
"end": 9058,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 8985,
"end": 9017,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8985,
"end": 9008,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 8985,
"end": 8994,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8985,
"end": 8989,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 8990,
"end": 8994,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 8994,
"end": 9008,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 8995,
"end": 9007,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 8995,
"end": 9003,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 8995,
"end": 8999,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9000,
"end": 9003,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9006,
"end": 9007,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9009,
"end": 9017,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 9022,
"end": 9058,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9022,
"end": 9041,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 9022,
"end": 9032,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 9033,
"end": 9041,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9042,
"end": 9058,
"ctxt": 0
},
"value": "ClassDeclaration",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 9079,
"end": 9168,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 9079,
"end": 9141,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 9079,
"end": 9133,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 9080,
"end": 9132,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 9109,
"end": 9132,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9109,
"end": 9118,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9109,
"end": 9113,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9114,
"end": 9118,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9118,
"end": 9132,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9119,
"end": 9131,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9119,
"end": 9127,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9119,
"end": 9123,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9124,
"end": 9127,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9130,
"end": 9131,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 9081,
"end": 9108,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 9081,
"end": 9091,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 9092,
"end": 9108,
"ctxt": 0
},
"value": "ClassDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9134,
"end": 9141,
"ctxt": 0
},
"value": "members",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 9145,
"end": 9168,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9145,
"end": 9154,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9145,
"end": 9149,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9150,
"end": 9154,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9154,
"end": 9168,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9155,
"end": 9167,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9155,
"end": 9163,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9155,
"end": 9159,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9160,
"end": 9163,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9166,
"end": 9167,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 8917,
"end": 8926,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 8919,
"end": 8926,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 9189,
"end": 9456,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 9196,
"end": 9212,
"ctxt": 0
},
"value": "isBodyOfFunction",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 9189,
"end": 9456,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 9224,
"end": 9456,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 9238,
"end": 9446,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 9245,
"end": 9445,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 9245,
"end": 9347,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 9245,
"end": 9262,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 9245,
"end": 9257,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 9245,
"end": 9255,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9245,
"end": 9249,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9250,
"end": 9255,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9261,
"end": 9262,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 9282,
"end": 9347,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 9282,
"end": 9314,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9282,
"end": 9305,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9282,
"end": 9291,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9282,
"end": 9286,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9287,
"end": 9291,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9291,
"end": 9305,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9292,
"end": 9304,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9292,
"end": 9300,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9292,
"end": 9296,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9297,
"end": 9300,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9303,
"end": 9304,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9306,
"end": 9314,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 9319,
"end": 9347,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9319,
"end": 9338,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 9319,
"end": 9329,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 9330,
"end": 9338,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9339,
"end": 9347,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 9368,
"end": 9445,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 9368,
"end": 9418,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 9368,
"end": 9414,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 9369,
"end": 9413,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 9390,
"end": 9413,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9390,
"end": 9399,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9390,
"end": 9394,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9395,
"end": 9399,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9399,
"end": 9413,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9400,
"end": 9412,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9400,
"end": 9408,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9400,
"end": 9404,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9405,
"end": 9408,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9411,
"end": 9412,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 9370,
"end": 9389,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 9370,
"end": 9380,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 9381,
"end": 9389,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9415,
"end": 9418,
"ctxt": 0
},
"value": "bod",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 9422,
"end": 9445,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9422,
"end": 9431,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9422,
"end": 9426,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9427,
"end": 9431,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9431,
"end": 9445,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9432,
"end": 9444,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9432,
"end": 9440,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9432,
"end": 9436,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9437,
"end": 9440,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9443,
"end": 9444,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 9214,
"end": 9223,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 9216,
"end": 9223,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 9466,
"end": 9762,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 9473,
"end": 9490,
"ctxt": 0
},
"value": "isBodyOfInterface",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 9466,
"end": 9762,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 9502,
"end": 9762,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 9516,
"end": 9752,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 9523,
"end": 9751,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 9523,
"end": 9637,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 9523,
"end": 9540,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 9523,
"end": 9535,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 9523,
"end": 9533,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9523,
"end": 9527,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9528,
"end": 9533,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9539,
"end": 9540,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 9560,
"end": 9637,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 9560,
"end": 9592,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9560,
"end": 9583,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9560,
"end": 9569,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9560,
"end": 9564,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9565,
"end": 9569,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9569,
"end": 9583,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9570,
"end": 9582,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9570,
"end": 9578,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9570,
"end": 9574,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9575,
"end": 9578,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9581,
"end": 9582,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9584,
"end": 9592,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 9597,
"end": 9637,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9597,
"end": 9616,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 9597,
"end": 9607,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 9608,
"end": 9616,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9617,
"end": 9637,
"ctxt": 0
},
"value": "InterfaceDeclaration",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 9658,
"end": 9751,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 9658,
"end": 9724,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 9658,
"end": 9716,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 9659,
"end": 9715,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 9692,
"end": 9715,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9692,
"end": 9701,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9692,
"end": 9696,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9697,
"end": 9701,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9701,
"end": 9715,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9702,
"end": 9714,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9702,
"end": 9710,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9702,
"end": 9706,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9707,
"end": 9710,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9713,
"end": 9714,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 9660,
"end": 9691,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 9660,
"end": 9670,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 9671,
"end": 9691,
"ctxt": 0
},
"value": "InterfaceDeclaration",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9717,
"end": 9724,
"ctxt": 0
},
"value": "members",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 9728,
"end": 9751,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9728,
"end": 9737,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9728,
"end": 9732,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9733,
"end": 9737,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9737,
"end": 9751,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9738,
"end": 9750,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9738,
"end": 9746,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9738,
"end": 9742,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9743,
"end": 9746,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9749,
"end": 9750,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 9492,
"end": 9501,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 9494,
"end": 9501,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 9772,
"end": 10036,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 9779,
"end": 9792,
"ctxt": 0
},
"value": "isBodyOfBlock",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 9772,
"end": 10036,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 9804,
"end": 10036,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 9818,
"end": 10026,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 9825,
"end": 10025,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 9825,
"end": 9924,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 9825,
"end": 9842,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 9825,
"end": 9837,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 9825,
"end": 9835,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9825,
"end": 9829,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9830,
"end": 9835,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9841,
"end": 9842,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 9862,
"end": 9924,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 9862,
"end": 9894,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9862,
"end": 9885,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9862,
"end": 9871,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9862,
"end": 9866,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9867,
"end": 9871,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9871,
"end": 9885,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9872,
"end": 9884,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9872,
"end": 9880,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9872,
"end": 9876,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9877,
"end": 9880,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9883,
"end": 9884,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9886,
"end": 9894,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 9899,
"end": 9924,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9899,
"end": 9918,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 9899,
"end": 9909,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 9910,
"end": 9918,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9919,
"end": 9924,
"ctxt": 0
},
"value": "Block",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 9944,
"end": 10025,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 9944,
"end": 9998,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 9944,
"end": 9987,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 9945,
"end": 9986,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 9963,
"end": 9986,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 9963,
"end": 9972,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9963,
"end": 9967,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9968,
"end": 9972,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 9972,
"end": 9986,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 9973,
"end": 9985,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 9973,
"end": 9981,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 9973,
"end": 9977,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9978,
"end": 9981,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 9984,
"end": 9985,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 9946,
"end": 9962,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 9946,
"end": 9956,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 9957,
"end": 9962,
"ctxt": 0
},
"value": "Block",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 9988,
"end": 9998,
"ctxt": 0
},
"value": "statements",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 10002,
"end": 10025,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10002,
"end": 10011,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10002,
"end": 10006,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10007,
"end": 10011,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10011,
"end": 10025,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10012,
"end": 10024,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10012,
"end": 10020,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10012,
"end": 10016,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10017,
"end": 10020,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10023,
"end": 10024,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 9794,
"end": 9803,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 9796,
"end": 9803,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 10046,
"end": 10307,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 10053,
"end": 10064,
"ctxt": 0
},
"value": "isBodyOfFor",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 10046,
"end": 10307,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 10076,
"end": 10307,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 10090,
"end": 10297,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 10097,
"end": 10296,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 10097,
"end": 10194,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 10097,
"end": 10114,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 10097,
"end": 10109,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 10097,
"end": 10107,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10097,
"end": 10101,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10102,
"end": 10107,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10113,
"end": 10114,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 10134,
"end": 10194,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 10134,
"end": 10166,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10134,
"end": 10157,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10134,
"end": 10143,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10134,
"end": 10138,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10139,
"end": 10143,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10143,
"end": 10157,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10144,
"end": 10156,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10144,
"end": 10152,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10144,
"end": 10148,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10149,
"end": 10152,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10155,
"end": 10156,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10158,
"end": 10166,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 10171,
"end": 10194,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10171,
"end": 10190,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 10171,
"end": 10181,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 10182,
"end": 10190,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10191,
"end": 10194,
"ctxt": 0
},
"value": "For",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 10214,
"end": 10296,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 10214,
"end": 10269,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 10214,
"end": 10264,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 10215,
"end": 10263,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 10240,
"end": 10263,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10240,
"end": 10249,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10240,
"end": 10244,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10245,
"end": 10249,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10249,
"end": 10263,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10250,
"end": 10262,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10250,
"end": 10258,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10250,
"end": 10254,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10255,
"end": 10258,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10261,
"end": 10262,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 10216,
"end": 10239,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 10216,
"end": 10226,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 10227,
"end": 10239,
"ctxt": 0
},
"value": "ForStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10265,
"end": 10269,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 10273,
"end": 10296,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10273,
"end": 10282,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10273,
"end": 10277,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10278,
"end": 10282,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10282,
"end": 10296,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10283,
"end": 10295,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10283,
"end": 10291,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10283,
"end": 10287,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10288,
"end": 10291,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10294,
"end": 10295,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 10066,
"end": 10075,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 10068,
"end": 10075,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 10317,
"end": 10581,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 10324,
"end": 10336,
"ctxt": 0
},
"value": "isBodyOfCase",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 10317,
"end": 10581,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 10348,
"end": 10581,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 10362,
"end": 10571,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 10369,
"end": 10570,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 10369,
"end": 10467,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 10369,
"end": 10386,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 10369,
"end": 10381,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 10369,
"end": 10379,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10369,
"end": 10373,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10374,
"end": 10379,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10385,
"end": 10386,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 10406,
"end": 10467,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 10406,
"end": 10438,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10406,
"end": 10429,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10406,
"end": 10415,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10406,
"end": 10410,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10411,
"end": 10415,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10415,
"end": 10429,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10416,
"end": 10428,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10416,
"end": 10424,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10416,
"end": 10420,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10421,
"end": 10424,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10427,
"end": 10428,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10430,
"end": 10438,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 10443,
"end": 10467,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10443,
"end": 10462,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 10443,
"end": 10453,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 10454,
"end": 10462,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10463,
"end": 10467,
"ctxt": 0
},
"value": "Case",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 10487,
"end": 10570,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 10487,
"end": 10543,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 10487,
"end": 10538,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 10488,
"end": 10537,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 10514,
"end": 10537,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10514,
"end": 10523,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10514,
"end": 10518,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10519,
"end": 10523,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10523,
"end": 10537,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10524,
"end": 10536,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10524,
"end": 10532,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10524,
"end": 10528,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10529,
"end": 10532,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10535,
"end": 10536,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 10489,
"end": 10513,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 10489,
"end": 10499,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 10500,
"end": 10513,
"ctxt": 0
},
"value": "CaseStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10539,
"end": 10543,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 10547,
"end": 10570,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10547,
"end": 10556,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10547,
"end": 10551,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10552,
"end": 10556,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10556,
"end": 10570,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10557,
"end": 10569,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10557,
"end": 10565,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10557,
"end": 10561,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10562,
"end": 10565,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10568,
"end": 10569,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 10338,
"end": 10347,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 10340,
"end": 10347,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 10591,
"end": 10843,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 10598,
"end": 10609,
"ctxt": 0
},
"value": "isBodyOfTry",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 10591,
"end": 10843,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 10621,
"end": 10843,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 10635,
"end": 10833,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 10642,
"end": 10832,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 10642,
"end": 10739,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 10642,
"end": 10659,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 10642,
"end": 10654,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 10642,
"end": 10652,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10642,
"end": 10646,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10647,
"end": 10652,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10658,
"end": 10659,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 10679,
"end": 10739,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 10679,
"end": 10711,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10679,
"end": 10702,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10679,
"end": 10688,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10679,
"end": 10683,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10684,
"end": 10688,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10688,
"end": 10702,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10689,
"end": 10701,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10689,
"end": 10697,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10689,
"end": 10693,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10694,
"end": 10697,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10700,
"end": 10701,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10703,
"end": 10711,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 10716,
"end": 10739,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10716,
"end": 10735,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 10716,
"end": 10726,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 10727,
"end": 10735,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10736,
"end": 10739,
"ctxt": 0
},
"value": "Try",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 10759,
"end": 10832,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 10759,
"end": 10805,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 10759,
"end": 10800,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 10760,
"end": 10799,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 10776,
"end": 10799,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10776,
"end": 10785,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10776,
"end": 10780,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10781,
"end": 10785,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10785,
"end": 10799,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10786,
"end": 10798,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10786,
"end": 10794,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10786,
"end": 10790,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10791,
"end": 10794,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10797,
"end": 10798,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 10761,
"end": 10775,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 10761,
"end": 10771,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 10772,
"end": 10775,
"ctxt": 0
},
"value": "Try",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10801,
"end": 10805,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 10809,
"end": 10832,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10809,
"end": 10818,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10809,
"end": 10813,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10814,
"end": 10818,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10818,
"end": 10832,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10819,
"end": 10831,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10819,
"end": 10827,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10819,
"end": 10823,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10824,
"end": 10827,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10830,
"end": 10831,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 10611,
"end": 10620,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 10613,
"end": 10620,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 10853,
"end": 11111,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 10860,
"end": 10873,
"ctxt": 0
},
"value": "isBodyOfCatch",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 10853,
"end": 11111,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 10885,
"end": 11111,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 10899,
"end": 11101,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 10906,
"end": 11100,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 10906,
"end": 11005,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 10906,
"end": 10923,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 10906,
"end": 10918,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 10906,
"end": 10916,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10906,
"end": 10910,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10911,
"end": 10916,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10922,
"end": 10923,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 10943,
"end": 11005,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 10943,
"end": 10975,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10943,
"end": 10966,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10943,
"end": 10952,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10943,
"end": 10947,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10948,
"end": 10952,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 10952,
"end": 10966,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 10953,
"end": 10965,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 10953,
"end": 10961,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 10953,
"end": 10957,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10958,
"end": 10961,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 10964,
"end": 10965,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 10967,
"end": 10975,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 10980,
"end": 11005,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 10980,
"end": 10999,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 10980,
"end": 10990,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 10991,
"end": 10999,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11000,
"end": 11005,
"ctxt": 0
},
"value": "Catch",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 11025,
"end": 11100,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 11025,
"end": 11073,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 11025,
"end": 11068,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 11026,
"end": 11067,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 11044,
"end": 11067,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11044,
"end": 11053,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11044,
"end": 11048,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11049,
"end": 11053,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11053,
"end": 11067,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11054,
"end": 11066,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11054,
"end": 11062,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11054,
"end": 11058,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11059,
"end": 11062,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11065,
"end": 11066,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 11027,
"end": 11043,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 11027,
"end": 11037,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 11038,
"end": 11043,
"ctxt": 0
},
"value": "Catch",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11069,
"end": 11073,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 11077,
"end": 11100,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11077,
"end": 11086,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11077,
"end": 11081,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11082,
"end": 11086,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11086,
"end": 11100,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11087,
"end": 11099,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11087,
"end": 11095,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11087,
"end": 11091,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11092,
"end": 11095,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11098,
"end": 11099,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 10875,
"end": 10884,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 10877,
"end": 10884,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 11121,
"end": 11394,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 11128,
"end": 11143,
"ctxt": 0
},
"value": "isBodyOfDoWhile",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 11121,
"end": 11394,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 11155,
"end": 11394,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 11169,
"end": 11384,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 11176,
"end": 11383,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 11176,
"end": 11277,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 11176,
"end": 11193,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 11176,
"end": 11188,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 11176,
"end": 11186,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11176,
"end": 11180,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11181,
"end": 11186,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11192,
"end": 11193,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 11213,
"end": 11277,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 11213,
"end": 11245,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11213,
"end": 11236,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11213,
"end": 11222,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11213,
"end": 11217,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11218,
"end": 11222,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11222,
"end": 11236,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11223,
"end": 11235,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11223,
"end": 11231,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11223,
"end": 11227,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11228,
"end": 11231,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11234,
"end": 11235,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11237,
"end": 11245,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 11250,
"end": 11277,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11250,
"end": 11269,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 11250,
"end": 11260,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 11261,
"end": 11269,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11270,
"end": 11277,
"ctxt": 0
},
"value": "DoWhile",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 11297,
"end": 11383,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 11297,
"end": 11356,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 11297,
"end": 11351,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 11298,
"end": 11350,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 11327,
"end": 11350,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11327,
"end": 11336,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11327,
"end": 11331,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11332,
"end": 11336,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11336,
"end": 11350,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11337,
"end": 11349,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11337,
"end": 11345,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11337,
"end": 11341,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11342,
"end": 11345,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11348,
"end": 11349,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 11299,
"end": 11326,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 11299,
"end": 11309,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 11310,
"end": 11326,
"ctxt": 0
},
"value": "DoWhileStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11352,
"end": 11356,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 11360,
"end": 11383,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11360,
"end": 11369,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11360,
"end": 11364,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11365,
"end": 11369,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11369,
"end": 11383,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11370,
"end": 11382,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11370,
"end": 11378,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11370,
"end": 11374,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11375,
"end": 11378,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11381,
"end": 11382,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 11145,
"end": 11154,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 11147,
"end": 11154,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 11404,
"end": 11671,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 11411,
"end": 11424,
"ctxt": 0
},
"value": "isBodyOfWhile",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 11404,
"end": 11671,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 11436,
"end": 11671,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 11450,
"end": 11661,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 11457,
"end": 11660,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 11457,
"end": 11556,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 11457,
"end": 11474,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 11457,
"end": 11469,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 11457,
"end": 11467,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11457,
"end": 11461,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11462,
"end": 11467,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11473,
"end": 11474,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 11494,
"end": 11556,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 11494,
"end": 11526,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11494,
"end": 11517,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11494,
"end": 11503,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11494,
"end": 11498,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11499,
"end": 11503,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11503,
"end": 11517,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11504,
"end": 11516,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11504,
"end": 11512,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11504,
"end": 11508,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11509,
"end": 11512,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11515,
"end": 11516,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11518,
"end": 11526,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 11531,
"end": 11556,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11531,
"end": 11550,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 11531,
"end": 11541,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 11542,
"end": 11550,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11551,
"end": 11556,
"ctxt": 0
},
"value": "While",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 11576,
"end": 11660,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 11576,
"end": 11633,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 11576,
"end": 11628,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 11577,
"end": 11627,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 11604,
"end": 11627,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11604,
"end": 11613,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11604,
"end": 11608,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11609,
"end": 11613,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11613,
"end": 11627,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11614,
"end": 11626,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11614,
"end": 11622,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11614,
"end": 11618,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11619,
"end": 11622,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11625,
"end": 11626,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 11578,
"end": 11603,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 11578,
"end": 11588,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 11589,
"end": 11603,
"ctxt": 0
},
"value": "WhileStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11629,
"end": 11633,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 11637,
"end": 11660,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11637,
"end": 11646,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11637,
"end": 11641,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11642,
"end": 11646,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11646,
"end": 11660,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11647,
"end": 11659,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11647,
"end": 11655,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11647,
"end": 11651,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11652,
"end": 11655,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11658,
"end": 11659,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 11426,
"end": 11435,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 11428,
"end": 11435,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 11681,
"end": 11948,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 11688,
"end": 11701,
"ctxt": 0
},
"value": "isBodyOfForIn",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 11681,
"end": 11948,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 11713,
"end": 11948,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 11727,
"end": 11938,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 11734,
"end": 11937,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 11734,
"end": 11833,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 11734,
"end": 11751,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 11734,
"end": 11746,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 11734,
"end": 11744,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11734,
"end": 11738,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11739,
"end": 11744,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11750,
"end": 11751,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 11771,
"end": 11833,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 11771,
"end": 11803,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11771,
"end": 11794,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11771,
"end": 11780,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11771,
"end": 11775,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11776,
"end": 11780,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11780,
"end": 11794,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11781,
"end": 11793,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11781,
"end": 11789,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11781,
"end": 11785,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11786,
"end": 11789,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11792,
"end": 11793,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11795,
"end": 11803,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 11808,
"end": 11833,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11808,
"end": 11827,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 11808,
"end": 11818,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 11819,
"end": 11827,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11828,
"end": 11833,
"ctxt": 0
},
"value": "ForIn",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 11853,
"end": 11937,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 11853,
"end": 11910,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 11853,
"end": 11905,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 11854,
"end": 11904,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 11881,
"end": 11904,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11881,
"end": 11890,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11881,
"end": 11885,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11886,
"end": 11890,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11890,
"end": 11904,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11891,
"end": 11903,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11891,
"end": 11899,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11891,
"end": 11895,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11896,
"end": 11899,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11902,
"end": 11903,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 11855,
"end": 11880,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 11855,
"end": 11865,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 11866,
"end": 11880,
"ctxt": 0
},
"value": "ForInStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11906,
"end": 11910,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 11914,
"end": 11937,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 11914,
"end": 11923,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11914,
"end": 11918,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11919,
"end": 11923,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 11923,
"end": 11937,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 11924,
"end": 11936,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 11924,
"end": 11932,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 11924,
"end": 11928,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 11929,
"end": 11932,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 11935,
"end": 11936,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 11703,
"end": 11712,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 11705,
"end": 11712,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 11958,
"end": 12222,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 11965,
"end": 11977,
"ctxt": 0
},
"value": "isBodyOfWith",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 11958,
"end": 12222,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 11989,
"end": 12222,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 12003,
"end": 12212,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 12010,
"end": 12211,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12010,
"end": 12108,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12010,
"end": 12027,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 12010,
"end": 12022,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 12010,
"end": 12020,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12010,
"end": 12014,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12015,
"end": 12020,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12026,
"end": 12027,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 12047,
"end": 12108,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 12047,
"end": 12079,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12047,
"end": 12070,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12047,
"end": 12056,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12047,
"end": 12051,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12052,
"end": 12056,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12056,
"end": 12070,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12057,
"end": 12069,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12057,
"end": 12065,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12057,
"end": 12061,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12062,
"end": 12065,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12068,
"end": 12069,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12071,
"end": 12079,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 12084,
"end": 12108,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12084,
"end": 12103,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 12084,
"end": 12094,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 12095,
"end": 12103,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12104,
"end": 12108,
"ctxt": 0
},
"value": "With",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 12128,
"end": 12211,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 12128,
"end": 12184,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 12128,
"end": 12179,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 12129,
"end": 12178,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 12155,
"end": 12178,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12155,
"end": 12164,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12155,
"end": 12159,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12160,
"end": 12164,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12164,
"end": 12178,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12165,
"end": 12177,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12165,
"end": 12173,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12165,
"end": 12169,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12170,
"end": 12173,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12176,
"end": 12177,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 12130,
"end": 12154,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 12130,
"end": 12140,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 12141,
"end": 12154,
"ctxt": 0
},
"value": "WithStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12180,
"end": 12184,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 12188,
"end": 12211,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12188,
"end": 12197,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12188,
"end": 12192,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12193,
"end": 12197,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12197,
"end": 12211,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12198,
"end": 12210,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12198,
"end": 12206,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12198,
"end": 12202,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12203,
"end": 12206,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12209,
"end": 12210,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 11979,
"end": 11988,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 11981,
"end": 11988,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 12232,
"end": 12496,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 12239,
"end": 12254,
"ctxt": 0
},
"value": "isBodyOfFinally",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 12232,
"end": 12496,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 12266,
"end": 12496,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 12280,
"end": 12486,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 12287,
"end": 12485,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12287,
"end": 12388,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12287,
"end": 12304,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 12287,
"end": 12299,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 12287,
"end": 12297,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12287,
"end": 12291,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12292,
"end": 12297,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12303,
"end": 12304,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 12324,
"end": 12388,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 12324,
"end": 12356,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12324,
"end": 12347,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12324,
"end": 12333,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12324,
"end": 12328,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12329,
"end": 12333,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12333,
"end": 12347,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12334,
"end": 12346,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12334,
"end": 12342,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12334,
"end": 12338,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12339,
"end": 12342,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12345,
"end": 12346,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12348,
"end": 12356,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 12361,
"end": 12388,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12361,
"end": 12380,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 12361,
"end": 12371,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 12372,
"end": 12380,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12381,
"end": 12388,
"ctxt": 0
},
"value": "Finally",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 12408,
"end": 12485,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 12408,
"end": 12458,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 12408,
"end": 12453,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 12409,
"end": 12452,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 12429,
"end": 12452,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12429,
"end": 12438,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12429,
"end": 12433,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12434,
"end": 12438,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12438,
"end": 12452,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12439,
"end": 12451,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12439,
"end": 12447,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12439,
"end": 12443,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12444,
"end": 12447,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12450,
"end": 12451,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 12410,
"end": 12428,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 12410,
"end": 12420,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 12421,
"end": 12428,
"ctxt": 0
},
"value": "Finally",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12454,
"end": 12458,
"ctxt": 0
},
"value": "body",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 12462,
"end": 12485,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12462,
"end": 12471,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12462,
"end": 12466,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12467,
"end": 12471,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12471,
"end": 12485,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12472,
"end": 12484,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12472,
"end": 12480,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12472,
"end": 12476,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12477,
"end": 12480,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12483,
"end": 12484,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 12256,
"end": 12265,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 12258,
"end": 12265,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 12506,
"end": 12861,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 12513,
"end": 12527,
"ctxt": 0
},
"value": "isCaseOfSwitch",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 12506,
"end": 12861,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 12539,
"end": 12861,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 12553,
"end": 12851,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 12560,
"end": 12850,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12560,
"end": 12741,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12560,
"end": 12660,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12560,
"end": 12577,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 12560,
"end": 12572,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 12560,
"end": 12570,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12560,
"end": 12564,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12565,
"end": 12570,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12576,
"end": 12577,
"ctxt": 0
},
"value": 3.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 12597,
"end": 12660,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 12597,
"end": 12629,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12597,
"end": 12620,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12597,
"end": 12606,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12597,
"end": 12601,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12602,
"end": 12606,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12606,
"end": 12620,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12607,
"end": 12619,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12607,
"end": 12615,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12607,
"end": 12611,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12612,
"end": 12615,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12618,
"end": 12619,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12621,
"end": 12629,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 12634,
"end": 12660,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12634,
"end": 12653,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 12634,
"end": 12644,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 12645,
"end": 12653,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12654,
"end": 12660,
"ctxt": 0
},
"value": "Switch",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 12680,
"end": 12741,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 12680,
"end": 12712,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12680,
"end": 12703,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12680,
"end": 12689,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12680,
"end": 12684,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12685,
"end": 12689,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12689,
"end": 12703,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12690,
"end": 12702,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12690,
"end": 12698,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12690,
"end": 12694,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12695,
"end": 12698,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12701,
"end": 12702,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12704,
"end": 12712,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 12717,
"end": 12741,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12717,
"end": 12736,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 12717,
"end": 12727,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 12728,
"end": 12736,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12737,
"end": 12741,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 12761,
"end": 12850,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 12761,
"end": 12823,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 12761,
"end": 12814,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 12762,
"end": 12813,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 12790,
"end": 12813,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12790,
"end": 12799,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12790,
"end": 12794,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12795,
"end": 12799,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12799,
"end": 12813,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12800,
"end": 12812,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12800,
"end": 12808,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12800,
"end": 12804,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12805,
"end": 12808,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12811,
"end": 12812,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 12763,
"end": 12789,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 12763,
"end": 12773,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 12774,
"end": 12789,
"ctxt": 0
},
"value": "SwitchStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12815,
"end": 12823,
"ctxt": 0
},
"value": "caseList",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 12827,
"end": 12850,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12827,
"end": 12836,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12827,
"end": 12831,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12832,
"end": 12836,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12836,
"end": 12850,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12837,
"end": 12849,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12837,
"end": 12845,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12837,
"end": 12841,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12842,
"end": 12845,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12848,
"end": 12849,
"ctxt": 0
},
"value": 1.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 12529,
"end": 12538,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 12531,
"end": 12538,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 12871,
"end": 13345,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 12878,
"end": 12899,
"ctxt": 0
},
"value": "isDefaultCaseOfSwitch",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 12871,
"end": 13345,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 12911,
"end": 13345,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 12925,
"end": 13335,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 12932,
"end": 13334,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12932,
"end": 13222,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12932,
"end": 13113,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12932,
"end": 13032,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 12932,
"end": 12949,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 12932,
"end": 12944,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 12932,
"end": 12942,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12932,
"end": 12936,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12937,
"end": 12942,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12948,
"end": 12949,
"ctxt": 0
},
"value": 3.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 12969,
"end": 13032,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 12969,
"end": 13001,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12969,
"end": 12992,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 12969,
"end": 12978,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12969,
"end": 12973,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12974,
"end": 12978,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 12978,
"end": 12992,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 12979,
"end": 12991,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 12979,
"end": 12987,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 12979,
"end": 12983,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12984,
"end": 12987,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 12990,
"end": 12991,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 12993,
"end": 13001,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 13006,
"end": 13032,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13006,
"end": 13025,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 13006,
"end": 13016,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 13017,
"end": 13025,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13026,
"end": 13032,
"ctxt": 0
},
"value": "Switch",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 13052,
"end": 13113,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 13052,
"end": 13084,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13052,
"end": 13075,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13052,
"end": 13061,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13052,
"end": 13056,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13057,
"end": 13061,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13061,
"end": 13075,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13062,
"end": 13074,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13062,
"end": 13070,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13062,
"end": 13066,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13067,
"end": 13070,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13073,
"end": 13074,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13076,
"end": 13084,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 13089,
"end": 13113,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13089,
"end": 13108,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 13089,
"end": 13099,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 13100,
"end": 13108,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13109,
"end": 13113,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 13133,
"end": 13222,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 13133,
"end": 13195,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 13133,
"end": 13186,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 13134,
"end": 13185,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 13162,
"end": 13185,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13162,
"end": 13171,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13162,
"end": 13166,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13167,
"end": 13171,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13171,
"end": 13185,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13172,
"end": 13184,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13172,
"end": 13180,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13172,
"end": 13176,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13177,
"end": 13180,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13183,
"end": 13184,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 13135,
"end": 13161,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 13135,
"end": 13145,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 13146,
"end": 13161,
"ctxt": 0
},
"value": "SwitchStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13187,
"end": 13195,
"ctxt": 0
},
"value": "caseList",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 13199,
"end": 13222,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13199,
"end": 13208,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13199,
"end": 13203,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13204,
"end": 13208,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13208,
"end": 13222,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13209,
"end": 13221,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13209,
"end": 13217,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13209,
"end": 13213,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13214,
"end": 13217,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13220,
"end": 13221,
"ctxt": 0
},
"value": 1.0
}
}
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 13242,
"end": 13334,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 13242,
"end": 13307,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 13242,
"end": 13295,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 13243,
"end": 13294,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 13271,
"end": 13294,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13271,
"end": 13280,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13271,
"end": 13275,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13276,
"end": 13280,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13280,
"end": 13294,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13281,
"end": 13293,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13281,
"end": 13289,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13281,
"end": 13285,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13286,
"end": 13289,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13292,
"end": 13293,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 13244,
"end": 13270,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 13244,
"end": 13254,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 13255,
"end": 13270,
"ctxt": 0
},
"value": "SwitchStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13296,
"end": 13307,
"ctxt": 0
},
"value": "defaultCase",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 13311,
"end": 13334,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13311,
"end": 13320,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13311,
"end": 13315,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13316,
"end": 13320,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13320,
"end": 13334,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13321,
"end": 13333,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13321,
"end": 13329,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13321,
"end": 13325,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13326,
"end": 13329,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13332,
"end": 13333,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 12901,
"end": 12910,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 12903,
"end": 12910,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 13355,
"end": 13715,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 13362,
"end": 13379,
"ctxt": 0
},
"value": "isListOfObjectLit",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 13355,
"end": 13715,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 13391,
"end": 13715,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 13405,
"end": 13705,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 13412,
"end": 13704,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 13412,
"end": 13596,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 13412,
"end": 13515,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 13412,
"end": 13429,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 13412,
"end": 13424,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 13412,
"end": 13422,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13412,
"end": 13416,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13417,
"end": 13422,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13428,
"end": 13429,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 13449,
"end": 13515,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 13449,
"end": 13481,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13449,
"end": 13472,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13449,
"end": 13458,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13449,
"end": 13453,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13454,
"end": 13458,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13458,
"end": 13472,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13459,
"end": 13471,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13459,
"end": 13467,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13459,
"end": 13463,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13464,
"end": 13467,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13470,
"end": 13471,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13473,
"end": 13481,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 13486,
"end": 13515,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13486,
"end": 13505,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 13486,
"end": 13496,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 13497,
"end": 13505,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13506,
"end": 13515,
"ctxt": 0
},
"value": "ObjectLit",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 13535,
"end": 13596,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 13535,
"end": 13567,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13535,
"end": 13558,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13535,
"end": 13544,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13535,
"end": 13539,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13540,
"end": 13544,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13544,
"end": 13558,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13545,
"end": 13557,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13545,
"end": 13553,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13545,
"end": 13549,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13550,
"end": 13553,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13556,
"end": 13557,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13559,
"end": 13567,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 13572,
"end": 13596,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13572,
"end": 13591,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 13572,
"end": 13582,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 13583,
"end": 13591,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13592,
"end": 13596,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 13616,
"end": 13704,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 13616,
"end": 13677,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 13616,
"end": 13669,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 13617,
"end": 13668,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 13645,
"end": 13668,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13645,
"end": 13654,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13645,
"end": 13649,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13650,
"end": 13654,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13654,
"end": 13668,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13655,
"end": 13667,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13655,
"end": 13663,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13655,
"end": 13659,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13660,
"end": 13663,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13666,
"end": 13667,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 13618,
"end": 13644,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 13618,
"end": 13628,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 13629,
"end": 13644,
"ctxt": 0
},
"value": "UnaryExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13670,
"end": 13677,
"ctxt": 0
},
"value": "operand",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 13681,
"end": 13704,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13681,
"end": 13690,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13681,
"end": 13685,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13686,
"end": 13690,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13690,
"end": 13704,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13691,
"end": 13703,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13691,
"end": 13699,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13691,
"end": 13695,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13696,
"end": 13699,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13702,
"end": 13703,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 13381,
"end": 13390,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 13383,
"end": 13390,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 13725,
"end": 13817,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 13732,
"end": 13749,
"ctxt": 0
},
"value": "isBodyOfObjectLit",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 13725,
"end": 13817,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 13761,
"end": 13817,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 13775,
"end": 13807,
"ctxt": 0
},
"argument": {
"type": "CallExpression",
"span": {
"start": 13782,
"end": 13806,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 13782,
"end": 13804,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13782,
"end": 13786,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13787,
"end": 13804,
"ctxt": 0
},
"value": "isListOfObjectLit",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 13751,
"end": 13760,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 13753,
"end": 13760,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 13827,
"end": 14277,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 13834,
"end": 13856,
"ctxt": 0
},
"value": "isEmptyListOfObjectLit",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 13827,
"end": 14277,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 13868,
"end": 14277,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 13882,
"end": 14267,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 13889,
"end": 14266,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 13889,
"end": 14181,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 13889,
"end": 14073,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 13889,
"end": 13992,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 13889,
"end": 13906,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 13889,
"end": 13901,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 13889,
"end": 13899,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13889,
"end": 13893,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13894,
"end": 13899,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13905,
"end": 13906,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 13926,
"end": 13992,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 13926,
"end": 13958,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13926,
"end": 13949,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13926,
"end": 13935,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13926,
"end": 13930,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13931,
"end": 13935,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 13935,
"end": 13949,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 13936,
"end": 13948,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 13936,
"end": 13944,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 13936,
"end": 13940,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13941,
"end": 13944,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 13947,
"end": 13948,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13950,
"end": 13958,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 13963,
"end": 13992,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 13963,
"end": 13982,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 13963,
"end": 13973,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 13974,
"end": 13982,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 13983,
"end": 13992,
"ctxt": 0
},
"value": "ObjectLit",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14012,
"end": 14073,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 14012,
"end": 14044,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14012,
"end": 14035,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14012,
"end": 14021,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14012,
"end": 14016,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14017,
"end": 14021,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14021,
"end": 14035,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14022,
"end": 14034,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14022,
"end": 14030,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14022,
"end": 14026,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14027,
"end": 14030,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14033,
"end": 14034,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14036,
"end": 14044,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 14049,
"end": 14073,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14049,
"end": 14068,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 14049,
"end": 14059,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 14060,
"end": 14068,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14069,
"end": 14073,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14093,
"end": 14181,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 14093,
"end": 14154,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 14093,
"end": 14146,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 14094,
"end": 14145,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 14122,
"end": 14145,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14122,
"end": 14131,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14122,
"end": 14126,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14127,
"end": 14131,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14131,
"end": 14145,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14132,
"end": 14144,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14132,
"end": 14140,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14132,
"end": 14136,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14137,
"end": 14140,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14143,
"end": 14144,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 14095,
"end": 14121,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 14095,
"end": 14105,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 14106,
"end": 14121,
"ctxt": 0
},
"value": "UnaryExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14147,
"end": 14154,
"ctxt": 0
},
"value": "operand",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 14158,
"end": 14181,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14158,
"end": 14167,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14158,
"end": 14162,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14163,
"end": 14167,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14167,
"end": 14181,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14168,
"end": 14180,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14168,
"end": 14176,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14168,
"end": 14172,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14173,
"end": 14176,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14179,
"end": 14180,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14201,
"end": 14266,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 14201,
"end": 14261,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14201,
"end": 14254,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 14201,
"end": 14246,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 14202,
"end": 14245,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 14222,
"end": 14245,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14222,
"end": 14231,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14222,
"end": 14226,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14227,
"end": 14231,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14231,
"end": 14245,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14232,
"end": 14244,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14232,
"end": 14240,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14232,
"end": 14236,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14237,
"end": 14240,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14243,
"end": 14244,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 14203,
"end": 14221,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 14203,
"end": 14213,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 14214,
"end": 14221,
"ctxt": 0
},
"value": "ASTList",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14247,
"end": 14254,
"ctxt": 0
},
"value": "members",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14255,
"end": 14261,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14265,
"end": 14266,
"ctxt": 0
},
"value": 0.0
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 13858,
"end": 13867,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 13860,
"end": 13867,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 14287,
"end": 14732,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 14294,
"end": 14313,
"ctxt": 0
},
"value": "isMemberOfObjectLit",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 14287,
"end": 14732,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 14325,
"end": 14732,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 14339,
"end": 14722,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 14346,
"end": 14721,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14346,
"end": 14613,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14346,
"end": 14530,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14346,
"end": 14449,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14346,
"end": 14363,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 14346,
"end": 14358,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 14346,
"end": 14356,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14346,
"end": 14350,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14351,
"end": 14356,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14362,
"end": 14363,
"ctxt": 0
},
"value": 3.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14383,
"end": 14449,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 14383,
"end": 14415,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14383,
"end": 14406,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14383,
"end": 14392,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14383,
"end": 14387,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14388,
"end": 14392,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14392,
"end": 14406,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14393,
"end": 14405,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14393,
"end": 14401,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14393,
"end": 14397,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14398,
"end": 14401,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14404,
"end": 14405,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14407,
"end": 14415,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 14420,
"end": 14449,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14420,
"end": 14439,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 14420,
"end": 14430,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 14431,
"end": 14439,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14440,
"end": 14449,
"ctxt": 0
},
"value": "ObjectLit",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14469,
"end": 14530,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 14469,
"end": 14501,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14469,
"end": 14492,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14469,
"end": 14478,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14469,
"end": 14473,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14474,
"end": 14478,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14478,
"end": 14492,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14479,
"end": 14491,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14479,
"end": 14487,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14479,
"end": 14483,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14484,
"end": 14487,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14490,
"end": 14491,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14493,
"end": 14501,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 14506,
"end": 14530,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14506,
"end": 14525,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 14506,
"end": 14516,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 14517,
"end": 14525,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14526,
"end": 14530,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14550,
"end": 14613,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 14550,
"end": 14582,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14550,
"end": 14573,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14550,
"end": 14559,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14550,
"end": 14554,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14555,
"end": 14559,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14559,
"end": 14573,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14560,
"end": 14572,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14560,
"end": 14568,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14560,
"end": 14564,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14565,
"end": 14568,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14571,
"end": 14572,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14574,
"end": 14582,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 14587,
"end": 14613,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14587,
"end": 14606,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 14587,
"end": 14597,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 14598,
"end": 14606,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14607,
"end": 14613,
"ctxt": 0
},
"value": "Member",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14633,
"end": 14721,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 14633,
"end": 14694,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 14633,
"end": 14686,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 14634,
"end": 14685,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 14662,
"end": 14685,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14662,
"end": 14671,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14662,
"end": 14666,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14667,
"end": 14671,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14671,
"end": 14685,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14672,
"end": 14684,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14672,
"end": 14680,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14672,
"end": 14676,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14677,
"end": 14680,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14683,
"end": 14684,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 14635,
"end": 14661,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 14635,
"end": 14645,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 14646,
"end": 14661,
"ctxt": 0
},
"value": "UnaryExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14687,
"end": 14694,
"ctxt": 0
},
"value": "operand",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 14698,
"end": 14721,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14698,
"end": 14707,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14698,
"end": 14702,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14703,
"end": 14707,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14707,
"end": 14721,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14708,
"end": 14720,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14708,
"end": 14716,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14708,
"end": 14712,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14713,
"end": 14716,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14719,
"end": 14720,
"ctxt": 0
},
"value": 1.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 14315,
"end": 14324,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 14317,
"end": 14324,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 14742,
"end": 15274,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 14749,
"end": 14774,
"ctxt": 0
},
"value": "isNameOfMemberOfObjectLit",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 14742,
"end": 15274,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 14786,
"end": 15274,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 14800,
"end": 15264,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 14807,
"end": 15263,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14807,
"end": 15155,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14807,
"end": 15074,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14807,
"end": 14991,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14807,
"end": 14910,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 14807,
"end": 14824,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 14807,
"end": 14819,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 14807,
"end": 14817,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14807,
"end": 14811,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14812,
"end": 14817,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14823,
"end": 14824,
"ctxt": 0
},
"value": 4.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14844,
"end": 14910,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 14844,
"end": 14876,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14844,
"end": 14867,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14844,
"end": 14853,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14844,
"end": 14848,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14849,
"end": 14853,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14853,
"end": 14867,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14854,
"end": 14866,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14854,
"end": 14862,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14854,
"end": 14858,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14859,
"end": 14862,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14865,
"end": 14866,
"ctxt": 0
},
"value": 3.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14868,
"end": 14876,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 14881,
"end": 14910,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14881,
"end": 14900,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 14881,
"end": 14891,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 14892,
"end": 14900,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14901,
"end": 14910,
"ctxt": 0
},
"value": "ObjectLit",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 14930,
"end": 14991,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 14930,
"end": 14962,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14930,
"end": 14953,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14930,
"end": 14939,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14930,
"end": 14934,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14935,
"end": 14939,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 14939,
"end": 14953,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 14940,
"end": 14952,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 14940,
"end": 14948,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 14940,
"end": 14944,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14945,
"end": 14948,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 14951,
"end": 14952,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14954,
"end": 14962,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 14967,
"end": 14991,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 14967,
"end": 14986,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 14967,
"end": 14977,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 14978,
"end": 14986,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 14987,
"end": 14991,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 15011,
"end": 15074,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 15011,
"end": 15043,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15011,
"end": 15034,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15011,
"end": 15020,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15011,
"end": 15015,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15016,
"end": 15020,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15020,
"end": 15034,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15021,
"end": 15033,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15021,
"end": 15029,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15021,
"end": 15025,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15026,
"end": 15029,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15032,
"end": 15033,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15035,
"end": 15043,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 15048,
"end": 15074,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15048,
"end": 15067,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 15048,
"end": 15058,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 15059,
"end": 15067,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15068,
"end": 15074,
"ctxt": 0
},
"value": "Member",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 15094,
"end": 15155,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 15094,
"end": 15126,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15094,
"end": 15117,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15094,
"end": 15103,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15094,
"end": 15098,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15099,
"end": 15103,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15103,
"end": 15117,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15104,
"end": 15116,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15104,
"end": 15112,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15104,
"end": 15108,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15109,
"end": 15112,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15115,
"end": 15116,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15118,
"end": 15126,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 15131,
"end": 15155,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15131,
"end": 15150,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 15131,
"end": 15141,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 15142,
"end": 15150,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15151,
"end": 15155,
"ctxt": 0
},
"value": "Name",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 15175,
"end": 15263,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 15175,
"end": 15236,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 15175,
"end": 15228,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 15176,
"end": 15227,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 15204,
"end": 15227,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15204,
"end": 15213,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15204,
"end": 15208,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15209,
"end": 15213,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15213,
"end": 15227,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15214,
"end": 15226,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15214,
"end": 15222,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15214,
"end": 15218,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15219,
"end": 15222,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15225,
"end": 15226,
"ctxt": 0
},
"value": 3.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 15177,
"end": 15203,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 15177,
"end": 15187,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 15188,
"end": 15203,
"ctxt": 0
},
"value": "UnaryExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15229,
"end": 15236,
"ctxt": 0
},
"value": "operand",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 15240,
"end": 15263,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15240,
"end": 15249,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15240,
"end": 15244,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15245,
"end": 15249,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15249,
"end": 15263,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15250,
"end": 15262,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15250,
"end": 15258,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15250,
"end": 15254,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15255,
"end": 15258,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15261,
"end": 15262,
"ctxt": 0
},
"value": 2.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 14776,
"end": 14785,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 14778,
"end": 14785,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 15284,
"end": 15642,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 15291,
"end": 15307,
"ctxt": 0
},
"value": "isListOfArrayLit",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 15284,
"end": 15642,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 15319,
"end": 15642,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 15333,
"end": 15632,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 15340,
"end": 15631,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 15340,
"end": 15523,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 15340,
"end": 15442,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 15340,
"end": 15357,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 15340,
"end": 15352,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 15340,
"end": 15350,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15340,
"end": 15344,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15345,
"end": 15350,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15356,
"end": 15357,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 15377,
"end": 15442,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 15377,
"end": 15409,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15377,
"end": 15400,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15377,
"end": 15386,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15377,
"end": 15381,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15382,
"end": 15386,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15386,
"end": 15400,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15387,
"end": 15399,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15387,
"end": 15395,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15387,
"end": 15391,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15392,
"end": 15395,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15398,
"end": 15399,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15401,
"end": 15409,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 15414,
"end": 15442,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15414,
"end": 15433,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 15414,
"end": 15424,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 15425,
"end": 15433,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15434,
"end": 15442,
"ctxt": 0
},
"value": "ArrayLit",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 15462,
"end": 15523,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 15462,
"end": 15494,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15462,
"end": 15485,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15462,
"end": 15471,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15462,
"end": 15466,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15467,
"end": 15471,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15471,
"end": 15485,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15472,
"end": 15484,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15472,
"end": 15480,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15472,
"end": 15476,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15477,
"end": 15480,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15483,
"end": 15484,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15486,
"end": 15494,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 15499,
"end": 15523,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15499,
"end": 15518,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 15499,
"end": 15509,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 15510,
"end": 15518,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15519,
"end": 15523,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 15543,
"end": 15631,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 15543,
"end": 15604,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 15543,
"end": 15596,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 15544,
"end": 15595,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 15572,
"end": 15595,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15572,
"end": 15581,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15572,
"end": 15576,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15577,
"end": 15581,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15581,
"end": 15595,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15582,
"end": 15594,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15582,
"end": 15590,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15582,
"end": 15586,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15587,
"end": 15590,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15593,
"end": 15594,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 15545,
"end": 15571,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 15545,
"end": 15555,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 15556,
"end": 15571,
"ctxt": 0
},
"value": "UnaryExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15597,
"end": 15604,
"ctxt": 0
},
"value": "operand",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 15608,
"end": 15631,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15608,
"end": 15617,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15608,
"end": 15612,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15613,
"end": 15617,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15617,
"end": 15631,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15618,
"end": 15630,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15618,
"end": 15626,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15618,
"end": 15622,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15623,
"end": 15626,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15629,
"end": 15630,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 15309,
"end": 15318,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 15311,
"end": 15318,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 15652,
"end": 15930,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 15659,
"end": 15675,
"ctxt": 0
},
"value": "isTargetOfMember",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 15652,
"end": 15930,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 15687,
"end": 15930,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 15701,
"end": 15920,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 15708,
"end": 15919,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 15708,
"end": 15808,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 15708,
"end": 15725,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 15708,
"end": 15720,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 15708,
"end": 15718,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15708,
"end": 15712,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15713,
"end": 15718,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15724,
"end": 15725,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 15745,
"end": 15808,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 15745,
"end": 15777,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15745,
"end": 15768,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15745,
"end": 15754,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15745,
"end": 15749,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15750,
"end": 15754,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15754,
"end": 15768,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15755,
"end": 15767,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15755,
"end": 15763,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15755,
"end": 15759,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15760,
"end": 15763,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15766,
"end": 15767,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15769,
"end": 15777,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 15782,
"end": 15808,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15782,
"end": 15801,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 15782,
"end": 15792,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 15793,
"end": 15801,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15802,
"end": 15808,
"ctxt": 0
},
"value": "Member",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 15828,
"end": 15919,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 15828,
"end": 15891,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 15828,
"end": 15882,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 15829,
"end": 15881,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 15858,
"end": 15881,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15858,
"end": 15867,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15858,
"end": 15862,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15863,
"end": 15867,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15867,
"end": 15881,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15868,
"end": 15880,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15868,
"end": 15876,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15868,
"end": 15872,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15873,
"end": 15876,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15879,
"end": 15880,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 15830,
"end": 15857,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 15830,
"end": 15840,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 15841,
"end": 15857,
"ctxt": 0
},
"value": "BinaryExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15883,
"end": 15891,
"ctxt": 0
},
"value": "operand1",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 15896,
"end": 15919,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 15896,
"end": 15905,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15896,
"end": 15900,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15901,
"end": 15905,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 15905,
"end": 15919,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 15906,
"end": 15918,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 15906,
"end": 15914,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15906,
"end": 15910,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 15911,
"end": 15914,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 15917,
"end": 15918,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 15677,
"end": 15686,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 15679,
"end": 15686,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 15940,
"end": 16218,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 15947,
"end": 15963,
"ctxt": 0
},
"value": "isMemberOfMember",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 15940,
"end": 16218,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 15975,
"end": 16218,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 15989,
"end": 16208,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 15996,
"end": 16207,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 15996,
"end": 16096,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 15996,
"end": 16013,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 15996,
"end": 16008,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 15996,
"end": 16006,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 15996,
"end": 16000,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16001,
"end": 16006,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16012,
"end": 16013,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 16033,
"end": 16096,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 16033,
"end": 16065,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16033,
"end": 16056,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16033,
"end": 16042,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16033,
"end": 16037,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16038,
"end": 16042,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16042,
"end": 16056,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16043,
"end": 16055,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16043,
"end": 16051,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16043,
"end": 16047,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16048,
"end": 16051,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16054,
"end": 16055,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16057,
"end": 16065,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 16070,
"end": 16096,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16070,
"end": 16089,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 16070,
"end": 16080,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 16081,
"end": 16089,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16090,
"end": 16096,
"ctxt": 0
},
"value": "Member",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 16116,
"end": 16207,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 16116,
"end": 16179,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 16116,
"end": 16170,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 16117,
"end": 16169,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 16146,
"end": 16169,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16146,
"end": 16155,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16146,
"end": 16150,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16151,
"end": 16155,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16155,
"end": 16169,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16156,
"end": 16168,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16156,
"end": 16164,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16156,
"end": 16160,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16161,
"end": 16164,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16167,
"end": 16168,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 16118,
"end": 16145,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 16118,
"end": 16128,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 16129,
"end": 16145,
"ctxt": 0
},
"value": "BinaryExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16171,
"end": 16179,
"ctxt": 0
},
"value": "operand2",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 16184,
"end": 16207,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16184,
"end": 16193,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16184,
"end": 16188,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16189,
"end": 16193,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16193,
"end": 16207,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16194,
"end": 16206,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16194,
"end": 16202,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16194,
"end": 16198,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16199,
"end": 16202,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16205,
"end": 16206,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 15965,
"end": 15974,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 15967,
"end": 15974,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 16228,
"end": 16482,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 16235,
"end": 16247,
"ctxt": 0
},
"value": "isItemOfList",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 16228,
"end": 16482,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 16259,
"end": 16482,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 16273,
"end": 16379,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 16280,
"end": 16378,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 16280,
"end": 16297,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 16280,
"end": 16292,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 16280,
"end": 16290,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16280,
"end": 16284,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16285,
"end": 16290,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16296,
"end": 16297,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 16317,
"end": 16378,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 16317,
"end": 16349,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16317,
"end": 16340,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16317,
"end": 16326,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16317,
"end": 16321,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16322,
"end": 16326,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16326,
"end": 16340,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16327,
"end": 16339,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16327,
"end": 16335,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16327,
"end": 16331,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16332,
"end": 16335,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16338,
"end": 16339,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16341,
"end": 16349,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 16354,
"end": 16378,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16354,
"end": 16373,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 16354,
"end": 16364,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 16365,
"end": 16373,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16374,
"end": 16378,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 16249,
"end": 16258,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 16251,
"end": 16258,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 16492,
"end": 16753,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 16499,
"end": 16509,
"ctxt": 0
},
"value": "isThenOfIf",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 16492,
"end": 16753,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 16521,
"end": 16753,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 16535,
"end": 16743,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 16542,
"end": 16742,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 16542,
"end": 16638,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 16542,
"end": 16559,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 16542,
"end": 16554,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 16542,
"end": 16552,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16542,
"end": 16546,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16547,
"end": 16552,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16558,
"end": 16559,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 16579,
"end": 16638,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 16579,
"end": 16611,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16579,
"end": 16602,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16579,
"end": 16588,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16579,
"end": 16583,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16584,
"end": 16588,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16588,
"end": 16602,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16589,
"end": 16601,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16589,
"end": 16597,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16589,
"end": 16593,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16594,
"end": 16597,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16600,
"end": 16601,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16603,
"end": 16611,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 16616,
"end": 16638,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16616,
"end": 16635,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 16616,
"end": 16626,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 16627,
"end": 16635,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16636,
"end": 16638,
"ctxt": 0
},
"value": "If",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 16658,
"end": 16742,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 16658,
"end": 16715,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 16658,
"end": 16707,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 16659,
"end": 16706,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 16683,
"end": 16706,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16683,
"end": 16692,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16683,
"end": 16687,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16688,
"end": 16692,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16692,
"end": 16706,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16693,
"end": 16705,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16693,
"end": 16701,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16693,
"end": 16697,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16698,
"end": 16701,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16704,
"end": 16705,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 16660,
"end": 16682,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 16660,
"end": 16670,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 16671,
"end": 16682,
"ctxt": 0
},
"value": "IfStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16708,
"end": 16715,
"ctxt": 0
},
"value": "thenBod",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 16719,
"end": 16742,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16719,
"end": 16728,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16719,
"end": 16723,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16724,
"end": 16728,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16728,
"end": 16742,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16729,
"end": 16741,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16729,
"end": 16737,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16729,
"end": 16733,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16734,
"end": 16737,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16740,
"end": 16741,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 16511,
"end": 16520,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 16513,
"end": 16520,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 16763,
"end": 17024,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 16770,
"end": 16780,
"ctxt": 0
},
"value": "isElseOfIf",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 16763,
"end": 17024,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 16792,
"end": 17024,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 16806,
"end": 17014,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 16813,
"end": 17013,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 16813,
"end": 16909,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 16813,
"end": 16830,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 16813,
"end": 16825,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 16813,
"end": 16823,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16813,
"end": 16817,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16818,
"end": 16823,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16829,
"end": 16830,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 16850,
"end": 16909,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 16850,
"end": 16882,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16850,
"end": 16873,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16850,
"end": 16859,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16850,
"end": 16854,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16855,
"end": 16859,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16859,
"end": 16873,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16860,
"end": 16872,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16860,
"end": 16868,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16860,
"end": 16864,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16865,
"end": 16868,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16871,
"end": 16872,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16874,
"end": 16882,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 16887,
"end": 16909,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16887,
"end": 16906,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 16887,
"end": 16897,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 16898,
"end": 16906,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16907,
"end": 16909,
"ctxt": 0
},
"value": "If",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 16929,
"end": 17013,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "MemberExpression",
"span": {
"start": 16929,
"end": 16986,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 16929,
"end": 16978,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 16930,
"end": 16977,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 16954,
"end": 16977,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16954,
"end": 16963,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16954,
"end": 16958,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16959,
"end": 16963,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16963,
"end": 16977,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 16964,
"end": 16976,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 16964,
"end": 16972,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16964,
"end": 16968,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16969,
"end": 16972,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 16975,
"end": 16976,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 16931,
"end": 16953,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 16931,
"end": 16941,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 16942,
"end": 16953,
"ctxt": 0
},
"value": "IfStatement",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16979,
"end": 16986,
"ctxt": 0
},
"value": "elseBod",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 16990,
"end": 17013,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 16990,
"end": 16999,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 16990,
"end": 16994,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 16995,
"end": 16999,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 16999,
"end": 17013,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 17000,
"end": 17012,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 17000,
"end": 17008,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17000,
"end": 17004,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17005,
"end": 17008,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17011,
"end": 17012,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 16782,
"end": 16791,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 16784,
"end": 16791,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 17034,
"end": 17123,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 17041,
"end": 17060,
"ctxt": 0
},
"value": "isBodyOfDefaultCase",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 17034,
"end": 17123,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 17072,
"end": 17123,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 17086,
"end": 17113,
"ctxt": 0
},
"argument": {
"type": "CallExpression",
"span": {
"start": 17093,
"end": 17112,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 17093,
"end": 17110,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17093,
"end": 17097,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17098,
"end": 17110,
"ctxt": 0
},
"value": "isBodyOfCase",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 17062,
"end": 17071,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 17064,
"end": 17071,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 17133,
"end": 17381,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 17140,
"end": 17161,
"ctxt": 0
},
"value": "isSingleStatementList",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 17133,
"end": 17381,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 17173,
"end": 17381,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 17187,
"end": 17371,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 17194,
"end": 17370,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 17194,
"end": 17288,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 17194,
"end": 17211,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 17194,
"end": 17206,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 17194,
"end": 17204,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17194,
"end": 17198,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17199,
"end": 17204,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17210,
"end": 17211,
"ctxt": 0
},
"value": 1.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 17231,
"end": 17288,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 17231,
"end": 17259,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17231,
"end": 17250,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17231,
"end": 17240,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17231,
"end": 17235,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17236,
"end": 17240,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 17240,
"end": 17250,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 17241,
"end": 17249,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17241,
"end": 17245,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17246,
"end": 17249,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17251,
"end": 17259,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 17264,
"end": 17288,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17264,
"end": 17283,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 17264,
"end": 17274,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 17275,
"end": 17283,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17284,
"end": 17288,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 17308,
"end": 17370,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 17308,
"end": 17364,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17308,
"end": 17357,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 17308,
"end": 17349,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 17309,
"end": 17348,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 17329,
"end": 17348,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17329,
"end": 17338,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17329,
"end": 17333,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17334,
"end": 17338,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 17338,
"end": 17348,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 17339,
"end": 17347,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17339,
"end": 17343,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17344,
"end": 17347,
"ctxt": 0
},
"value": "top",
"optional": false
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 17310,
"end": 17328,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 17310,
"end": 17320,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 17321,
"end": 17328,
"ctxt": 0
},
"value": "ASTList",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17350,
"end": 17357,
"ctxt": 0
},
"value": "members",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17358,
"end": 17364,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17369,
"end": 17370,
"ctxt": 0
},
"value": 1.0
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 17163,
"end": 17172,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 17165,
"end": 17172,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 17391,
"end": 17753,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 17398,
"end": 17422,
"ctxt": 0
},
"value": "isArgumentListOfFunction",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 17391,
"end": 17753,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 17434,
"end": 17753,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 17448,
"end": 17743,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 17455,
"end": 17742,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 17455,
"end": 17638,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 17455,
"end": 17553,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 17455,
"end": 17472,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 17455,
"end": 17467,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 17455,
"end": 17465,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17455,
"end": 17459,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17460,
"end": 17465,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17471,
"end": 17472,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 17492,
"end": 17553,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 17492,
"end": 17524,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17492,
"end": 17515,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17492,
"end": 17501,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17492,
"end": 17496,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17497,
"end": 17501,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 17501,
"end": 17515,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 17502,
"end": 17514,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 17502,
"end": 17510,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17502,
"end": 17506,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17507,
"end": 17510,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17513,
"end": 17514,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17516,
"end": 17524,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 17529,
"end": 17553,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17529,
"end": 17548,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 17529,
"end": 17539,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 17540,
"end": 17548,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17549,
"end": 17553,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 17573,
"end": 17638,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 17573,
"end": 17605,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17573,
"end": 17596,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17573,
"end": 17582,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17573,
"end": 17577,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17578,
"end": 17582,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 17582,
"end": 17596,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 17583,
"end": 17595,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 17583,
"end": 17591,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17583,
"end": 17587,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17588,
"end": 17591,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17594,
"end": 17595,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17597,
"end": 17605,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 17610,
"end": 17638,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17610,
"end": 17629,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 17610,
"end": 17620,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 17621,
"end": 17629,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17630,
"end": 17638,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 17658,
"end": 17742,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 17658,
"end": 17714,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 17658,
"end": 17704,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 17659,
"end": 17703,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 17680,
"end": 17703,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17680,
"end": 17689,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17680,
"end": 17684,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17685,
"end": 17689,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 17689,
"end": 17703,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 17690,
"end": 17702,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 17690,
"end": 17698,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17690,
"end": 17694,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17695,
"end": 17698,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17701,
"end": 17702,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 17660,
"end": 17679,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 17660,
"end": 17670,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 17671,
"end": 17679,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17705,
"end": 17714,
"ctxt": 0
},
"value": "arguments",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 17719,
"end": 17742,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17719,
"end": 17728,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17719,
"end": 17723,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17724,
"end": 17728,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 17728,
"end": 17742,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 17729,
"end": 17741,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 17729,
"end": 17737,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17729,
"end": 17733,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17734,
"end": 17737,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17740,
"end": 17741,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 17424,
"end": 17433,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 17426,
"end": 17433,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 17763,
"end": 18121,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 17770,
"end": 17790,
"ctxt": 0
},
"value": "isArgumentOfFunction",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 17763,
"end": 18121,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 17802,
"end": 18121,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 17816,
"end": 18111,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 17823,
"end": 18110,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 17823,
"end": 18006,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 17823,
"end": 17921,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 17823,
"end": 17840,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 17823,
"end": 17835,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 17823,
"end": 17833,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17823,
"end": 17827,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17828,
"end": 17833,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17839,
"end": 17840,
"ctxt": 0
},
"value": 3.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 17860,
"end": 17921,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 17860,
"end": 17892,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17860,
"end": 17883,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17860,
"end": 17869,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17860,
"end": 17864,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17865,
"end": 17869,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 17869,
"end": 17883,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 17870,
"end": 17882,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 17870,
"end": 17878,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17870,
"end": 17874,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17875,
"end": 17878,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17881,
"end": 17882,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17884,
"end": 17892,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 17897,
"end": 17921,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17897,
"end": 17916,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 17897,
"end": 17907,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 17908,
"end": 17916,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17917,
"end": 17921,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 17941,
"end": 18006,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 17941,
"end": 17973,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17941,
"end": 17964,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17941,
"end": 17950,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17941,
"end": 17945,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17946,
"end": 17950,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 17950,
"end": 17964,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 17951,
"end": 17963,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 17951,
"end": 17959,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 17951,
"end": 17955,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17956,
"end": 17959,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 17962,
"end": 17963,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17965,
"end": 17973,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 17978,
"end": 18006,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 17978,
"end": 17997,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 17978,
"end": 17988,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 17989,
"end": 17997,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 17998,
"end": 18006,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 18026,
"end": 18110,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 18026,
"end": 18082,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 18026,
"end": 18072,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 18027,
"end": 18071,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 18048,
"end": 18071,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18048,
"end": 18057,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18048,
"end": 18052,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18053,
"end": 18057,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18057,
"end": 18071,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18058,
"end": 18070,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18058,
"end": 18066,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18058,
"end": 18062,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18063,
"end": 18066,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18069,
"end": 18070,
"ctxt": 0
},
"value": 2.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 18028,
"end": 18047,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 18028,
"end": 18038,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 18039,
"end": 18047,
"ctxt": 0
},
"value": "FuncDecl",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18073,
"end": 18082,
"ctxt": 0
},
"value": "arguments",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 18087,
"end": 18110,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18087,
"end": 18096,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18087,
"end": 18091,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18092,
"end": 18096,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18096,
"end": 18110,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18097,
"end": 18109,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18097,
"end": 18105,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18097,
"end": 18101,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18102,
"end": 18105,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18108,
"end": 18109,
"ctxt": 0
},
"value": 1.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 17792,
"end": 17801,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 17794,
"end": 17801,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 18131,
"end": 18491,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 18138,
"end": 18158,
"ctxt": 0
},
"value": "isArgumentListOfCall",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 18131,
"end": 18491,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 18170,
"end": 18491,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 18184,
"end": 18481,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 18191,
"end": 18480,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 18191,
"end": 18370,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 18191,
"end": 18289,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 18191,
"end": 18208,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 18191,
"end": 18203,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 18191,
"end": 18201,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18191,
"end": 18195,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18196,
"end": 18201,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18207,
"end": 18208,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 18228,
"end": 18289,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 18228,
"end": 18260,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18228,
"end": 18251,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18228,
"end": 18237,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18228,
"end": 18232,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18233,
"end": 18237,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18237,
"end": 18251,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18238,
"end": 18250,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18238,
"end": 18246,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18238,
"end": 18242,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18243,
"end": 18246,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18249,
"end": 18250,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18252,
"end": 18260,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 18265,
"end": 18289,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18265,
"end": 18284,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 18265,
"end": 18275,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 18276,
"end": 18284,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18285,
"end": 18289,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 18309,
"end": 18370,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 18309,
"end": 18341,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18309,
"end": 18332,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18309,
"end": 18318,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18309,
"end": 18313,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18314,
"end": 18318,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18318,
"end": 18332,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18319,
"end": 18331,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18319,
"end": 18327,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18319,
"end": 18323,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18324,
"end": 18327,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18330,
"end": 18331,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18333,
"end": 18341,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 18346,
"end": 18370,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18346,
"end": 18365,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 18346,
"end": 18356,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 18357,
"end": 18365,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18366,
"end": 18370,
"ctxt": 0
},
"value": "Call",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 18390,
"end": 18480,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 18390,
"end": 18452,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 18390,
"end": 18442,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 18391,
"end": 18441,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 18418,
"end": 18441,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18418,
"end": 18427,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18418,
"end": 18422,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18423,
"end": 18427,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18427,
"end": 18441,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18428,
"end": 18440,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18428,
"end": 18436,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18428,
"end": 18432,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18433,
"end": 18436,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18439,
"end": 18440,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 18392,
"end": 18417,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 18392,
"end": 18402,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 18403,
"end": 18417,
"ctxt": 0
},
"value": "CallExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18443,
"end": 18452,
"ctxt": 0
},
"value": "arguments",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 18457,
"end": 18480,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18457,
"end": 18466,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18457,
"end": 18461,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18462,
"end": 18466,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18466,
"end": 18480,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18467,
"end": 18479,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18467,
"end": 18475,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18467,
"end": 18471,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18472,
"end": 18475,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18478,
"end": 18479,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 18160,
"end": 18169,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 18162,
"end": 18169,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 18501,
"end": 18859,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 18508,
"end": 18527,
"ctxt": 0
},
"value": "isArgumentListOfNew",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 18501,
"end": 18859,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 18539,
"end": 18859,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 18553,
"end": 18849,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 18560,
"end": 18848,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 18560,
"end": 18738,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 18560,
"end": 18658,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 18560,
"end": 18577,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 18560,
"end": 18572,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 18560,
"end": 18570,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18560,
"end": 18564,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18565,
"end": 18570,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18576,
"end": 18577,
"ctxt": 0
},
"value": 2.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 18597,
"end": 18658,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 18597,
"end": 18629,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18597,
"end": 18620,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18597,
"end": 18606,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18597,
"end": 18601,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18602,
"end": 18606,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18606,
"end": 18620,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18607,
"end": 18619,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18607,
"end": 18615,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18607,
"end": 18611,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18612,
"end": 18615,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18618,
"end": 18619,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18621,
"end": 18629,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 18634,
"end": 18658,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18634,
"end": 18653,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 18634,
"end": 18644,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 18645,
"end": 18653,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18654,
"end": 18658,
"ctxt": 0
},
"value": "List",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 18678,
"end": 18738,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 18678,
"end": 18710,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18678,
"end": 18701,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18678,
"end": 18687,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18678,
"end": 18682,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18683,
"end": 18687,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18687,
"end": 18701,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18688,
"end": 18700,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18688,
"end": 18696,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18688,
"end": 18692,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18693,
"end": 18696,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18699,
"end": 18700,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18702,
"end": 18710,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 18715,
"end": 18738,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18715,
"end": 18734,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 18715,
"end": 18725,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 18726,
"end": 18734,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18735,
"end": 18738,
"ctxt": 0
},
"value": "New",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 18758,
"end": 18848,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 18758,
"end": 18820,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 18758,
"end": 18810,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 18759,
"end": 18809,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 18786,
"end": 18809,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18786,
"end": 18795,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18786,
"end": 18790,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18791,
"end": 18795,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18795,
"end": 18809,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18796,
"end": 18808,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18796,
"end": 18804,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18796,
"end": 18800,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18801,
"end": 18804,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18807,
"end": 18808,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 18760,
"end": 18785,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 18760,
"end": 18770,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 18771,
"end": 18785,
"ctxt": 0
},
"value": "CallExpression",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18811,
"end": 18820,
"ctxt": 0
},
"value": "arguments",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 18825,
"end": 18848,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18825,
"end": 18834,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18825,
"end": 18829,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18830,
"end": 18834,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18834,
"end": 18848,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18835,
"end": 18847,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18835,
"end": 18843,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18835,
"end": 18839,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18840,
"end": 18843,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18846,
"end": 18847,
"ctxt": 0
},
"value": 0.0
}
}
}
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 18529,
"end": 18538,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 18531,
"end": 18538,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
},
{
"type": "ClassMethod",
"span": {
"start": 18869,
"end": 19127,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 18876,
"end": 18894,
"ctxt": 0
},
"value": "isSynthesizedBlock",
"optional": false
},
"function": {
"params": [],
"decorators": [],
"span": {
"start": 18869,
"end": 19127,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 18906,
"end": 19127,
"ctxt": 0
},
"stmts": [
{
"type": "ReturnStatement",
"span": {
"start": 18920,
"end": 19117,
"ctxt": 0
},
"argument": {
"type": "BinaryExpression",
"span": {
"start": 18927,
"end": 19116,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 18927,
"end": 19026,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 18927,
"end": 18944,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "CallExpression",
"span": {
"start": 18927,
"end": 18939,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 18927,
"end": 18937,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18927,
"end": 18931,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18932,
"end": 18937,
"ctxt": 0
},
"value": "count",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18943,
"end": 18944,
"ctxt": 0
},
"value": 1.0
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 18964,
"end": 19026,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 18964,
"end": 18996,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18964,
"end": 18987,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 18964,
"end": 18973,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18964,
"end": 18968,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18969,
"end": 18973,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 18973,
"end": 18987,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 18974,
"end": 18986,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 18974,
"end": 18982,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 18974,
"end": 18978,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18979,
"end": 18982,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 18985,
"end": 18986,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 18988,
"end": 18996,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 19001,
"end": 19026,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 19001,
"end": 19020,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 19001,
"end": 19011,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 19012,
"end": 19020,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 19021,
"end": 19026,
"ctxt": 0
},
"value": "Block",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 19046,
"end": 19116,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 19046,
"end": 19106,
"ctxt": 0
},
"object": {
"type": "ParenthesisExpression",
"span": {
"start": 19046,
"end": 19089,
"ctxt": 0
},
"expression": {
"type": "TsTypeAssertion",
"span": {
"start": 19047,
"end": 19088,
"ctxt": 0
},
"expression": {
"type": "MemberExpression",
"span": {
"start": 19065,
"end": 19088,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 19065,
"end": 19074,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 19065,
"end": 19069,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 19070,
"end": 19074,
"ctxt": 0
},
"value": "asts",
"optional": false
}
},
"property": {
"type": "Computed",
"span": {
"start": 19074,
"end": 19088,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 19075,
"end": 19087,
"ctxt": 0
},
"operator": "-",
"left": {
"type": "MemberExpression",
"span": {
"start": 19075,
"end": 19083,
"ctxt": 0
},
"object": {
"type": "ThisExpression",
"span": {
"start": 19075,
"end": 19079,
"ctxt": 0
}
},
"property": {
"type": "Identifier",
"span": {
"start": 19080,
"end": 19083,
"ctxt": 0
},
"value": "top",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 19086,
"end": 19087,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 19048,
"end": 19064,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 19048,
"end": 19058,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 19059,
"end": 19064,
"ctxt": 0
},
"value": "Block",
"optional": false
}
},
"typeParams": null
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 19090,
"end": 19106,
"ctxt": 0
},
"value": "isStatementBlock",
"optional": false
}
},
"right": {
"type": "BooleanLiteral",
"span": {
"start": 19111,
"end": 19116,
"ctxt": 0
},
"value": false
}
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 18896,
"end": 18905,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 18898,
"end": 18905,
"ctxt": 0
},
"kind": "boolean"
}
}
},
"kind": "method",
"isStatic": false,
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 19139,
"end": 19366,
"ctxt": 0
},
"declaration": {
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 19155,
"end": 19169,
"ctxt": 0
},
"value": "isValidAstNode",
"optional": false
},
"declare": false,
"params": [
{
"type": "Parameter",
"span": {
"start": 19170,
"end": 19193,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 19170,
"end": 19193,
"ctxt": 0
},
"value": "ast",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 19173,
"end": 19193,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 19175,
"end": 19193,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 19175,
"end": 19185,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 19186,
"end": 19193,
"ctxt": 0
},
"value": "ASTSpan",
"optional": false
}
},
"typeParams": null
}
}
}
}
],
"decorators": [],
"span": {
"start": 19146,
"end": 19366,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 19204,
"end": 19366,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 19214,
"end": 19257,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 19218,
"end": 19230,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "Identifier",
"span": {
"start": 19218,
"end": 19221,
"ctxt": 0
},
"value": "ast",
"optional": false
},
"right": {
"type": "NullLiteral",
"span": {
"start": 19226,
"end": 19230,
"ctxt": 0
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 19244,
"end": 19257,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 19251,
"end": 19256,
"ctxt": 0
},
"value": false
}
},
"alternate": null
},
{
"type": "IfStatement",
"span": {
"start": 19267,
"end": 19338,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 19271,
"end": 19311,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 19271,
"end": 19289,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 19271,
"end": 19282,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 19271,
"end": 19274,
"ctxt": 0
},
"value": "ast",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 19275,
"end": 19282,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"right": {
"type": "UnaryExpression",
"span": {
"start": 19287,
"end": 19289,
"ctxt": 0
},
"operator": "-",
"argument": {
"type": "NumericLiteral",
"span": {
"start": 19288,
"end": 19289,
"ctxt": 0
},
"value": 1.0
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 19293,
"end": 19311,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 19293,
"end": 19304,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 19293,
"end": 19296,
"ctxt": 0
},
"value": "ast",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 19297,
"end": 19304,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
},
"right": {
"type": "UnaryExpression",
"span": {
"start": 19309,
"end": 19311,
"ctxt": 0
},
"operator": "-",
"argument": {
"type": "NumericLiteral",
"span": {
"start": 19310,
"end": 19311,
"ctxt": 0
},
"value": 1.0
}
}
}
},
"consequent": {
"type": "ReturnStatement",
"span": {
"start": 19325,
"end": 19338,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 19332,
"end": 19337,
"ctxt": 0
},
"value": false
}
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 19348,
"end": 19360,
"ctxt": 0
},
"argument": {
"type": "BooleanLiteral",
"span": {
"start": 19355,
"end": 19359,
"ctxt": 0
},
"value": true
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 19194,
"end": 19203,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 19196,
"end": 19203,
"ctxt": 0
},
"kind": "boolean"
}
}
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 19372,
"end": 19455,
"ctxt": 0
},
"declaration": {
"type": "ClassDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 19385,
"end": 19399,
"ctxt": 0
},
"value": "AstPathContext",
"optional": false
},
"declare": false,
"span": {
"start": 19379,
"end": 19455,
"ctxt": 0
},
"decorators": [],
"body": [
{
"type": "ClassProperty",
"span": {
"start": 19410,
"end": 19449,
"ctxt": 0
},
"key": {
"type": "Identifier",
"span": {
"start": 19417,
"end": 19421,
"ctxt": 0
},
"value": "path",
"optional": false
},
"value": {
"type": "NewExpression",
"span": {
"start": 19424,
"end": 19448,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 19428,
"end": 19446,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 19428,
"end": 19438,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 19439,
"end": 19446,
"ctxt": 0
},
"value": "AstPath",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"typeAnnotation": null,
"isStatic": false,
"decorators": [],
"accessibility": "public",
"isAbstract": false,
"isOptional": false,
"isOverride": false,
"readonly": false,
"declare": false,
"definite": false
}
],
"superClass": null,
"isAbstract": false,
"typeParams": null,
"superTypeParams": null,
"implements": []
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 19461,
"end": 20177,
"ctxt": 0
},
"declaration": {
"type": "TsEnumDeclaration",
"span": {
"start": 19468,
"end": 20177,
"ctxt": 0
},
"declare": false,
"isConst": false,
"id": {
"type": "Identifier",
"span": {
"start": 19473,
"end": 19490,
"ctxt": 0
},
"value": "GetAstPathOptions",
"optional": false
},
"members": [
{
"type": "TsEnumMember",
"span": {
"start": 19501,
"end": 19512,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 19501,
"end": 19508,
"ctxt": 0
},
"value": "Default",
"optional": false
},
"init": {
"type": "NumericLiteral",
"span": {
"start": 19511,
"end": 19512,
"ctxt": 0
},
"value": 0.0
}
},
{
"type": "TsEnumMember",
"span": {
"start": 19522,
"end": 19539,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 19522,
"end": 19535,
"ctxt": 0
},
"value": "EdgeInclusive",
"optional": false
},
"init": {
"type": "NumericLiteral",
"span": {
"start": 19538,
"end": 19539,
"ctxt": 0
},
"value": 1.0
}
},
{
"type": "TsEnumMember",
"span": {
"start": 20131,
"end": 20170,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 20131,
"end": 20161,
"ctxt": 0
},
"value": "DontPruneSearchBasedOnPosition",
"optional": false
},
"init": {
"type": "BinaryExpression",
"span": {
"start": 20164,
"end": 20170,
"ctxt": 0
},
"operator": "<<",
"left": {
"type": "NumericLiteral",
"span": {
"start": 20164,
"end": 20165,
"ctxt": 0
},
"value": 1.0
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 20169,
"end": 20170,
"ctxt": 0
},
"value": 1.0
}
}
}
]
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 20259,
"end": 23468,
"ctxt": 0
},
"declaration": {
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 20275,
"end": 20295,
"ctxt": 0
},
"value": "getAstPathToPosition",
"optional": false
},
"declare": false,
"params": [
{
"type": "Parameter",
"span": {
"start": 20296,
"end": 20318,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 20296,
"end": 20318,
"ctxt": 0
},
"value": "script",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 20302,
"end": 20318,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 20304,
"end": 20318,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 20304,
"end": 20314,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 20315,
"end": 20318,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 20320,
"end": 20331,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 20320,
"end": 20331,
"ctxt": 0
},
"value": "pos",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 20323,
"end": 20331,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 20325,
"end": 20331,
"ctxt": 0
},
"kind": "number"
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 20333,
"end": 20368,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "AssignmentPattern",
"span": {
"start": 20333,
"end": 20368,
"ctxt": 0
},
"left": {
"type": "Identifier",
"span": {
"start": 20333,
"end": 20340,
"ctxt": 0
},
"value": "options",
"optional": false,
"typeAnnotation": null
},
"right": {
"type": "MemberExpression",
"span": {
"start": 20343,
"end": 20368,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 20343,
"end": 20360,
"ctxt": 0
},
"value": "GetAstPathOptions",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 20361,
"end": 20368,
"ctxt": 0
},
"value": "Default",
"optional": false
}
},
"typeAnnotation": null
}
}
],
"decorators": [],
"span": {
"start": 20266,
"end": 23468,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 20390,
"end": 23468,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 20400,
"end": 21038,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 20404,
"end": 21038,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 20404,
"end": 20418,
"ctxt": 0
},
"value": "lookInComments",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ArrowFunctionExpression",
"span": {
"start": 20421,
"end": 21038,
"ctxt": 0
},
"params": [
{
"type": "Identifier",
"span": {
"start": 20422,
"end": 20452,
"ctxt": 0
},
"value": "comments",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 20430,
"end": 20452,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsArrayType",
"span": {
"start": 20432,
"end": 20452,
"ctxt": 0
},
"elemType": {
"type": "TsTypeReference",
"span": {
"start": 20432,
"end": 20450,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 20432,
"end": 20442,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 20443,
"end": 20450,
"ctxt": 0
},
"value": "Comment",
"optional": false
}
},
"typeParams": null
}
}
}
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 20457,
"end": 21038,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 20471,
"end": 21028,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 20475,
"end": 20506,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "Identifier",
"span": {
"start": 20475,
"end": 20483,
"ctxt": 0
},
"value": "comments",
"optional": false
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 20487,
"end": 20506,
"ctxt": 0
},
"operator": ">",
"left": {
"type": "MemberExpression",
"span": {
"start": 20487,
"end": 20502,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 20487,
"end": 20495,
"ctxt": 0
},
"value": "comments",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 20496,
"end": 20502,
"ctxt": 0
},
"value": "length",
"optional": false
}
},
"right": {
"type": "NumericLiteral",
"span": {
"start": 20505,
"end": 20506,
"ctxt": 0
},
"value": 0.0
}
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 20508,
"end": 21028,
"ctxt": 0
},
"stmts": [
{
"type": "ForStatement",
"span": {
"start": 20526,
"end": 21014,
"ctxt": 0
},
"init": {
"type": "VariableDeclaration",
"span": {
"start": 20531,
"end": 20540,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 20535,
"end": 20540,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 20535,
"end": 20536,
"ctxt": 0
},
"value": "i",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "NumericLiteral",
"span": {
"start": 20539,
"end": 20540,
"ctxt": 0
},
"value": 0.0
},
"definite": false
}
]
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 20542,
"end": 20561,
"ctxt": 0
},
"operator": "<",
"left": {
"type": "Identifier",
"span": {
"start": 20542,
"end": 20543,
"ctxt": 0
},
"value": "i",
"optional": false
},
"right": {
"type": "MemberExpression",
"span": {
"start": 20546,
"end": 20561,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 20546,
"end": 20554,
"ctxt": 0
},
"value": "comments",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 20555,
"end": 20561,
"ctxt": 0
},
"value": "length",
"optional": false
}
}
},
"update": {
"type": "UpdateExpression",
"span": {
"start": 20563,
"end": 20566,
"ctxt": 0
},
"operator": "++",
"prefix": false,
"argument": {
"type": "Identifier",
"span": {
"start": 20563,
"end": 20564,
"ctxt": 0
},
"value": "i",
"optional": false
}
},
"body": {
"type": "BlockStatement",
"span": {
"start": 20568,
"end": 21014,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 20590,
"end": 20624,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 20594,
"end": 20623,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 20594,
"end": 20601,
"ctxt": 0
},
"value": "minChar",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "MemberExpression",
"span": {
"start": 20604,
"end": 20623,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 20604,
"end": 20615,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 20604,
"end": 20612,
"ctxt": 0
},
"value": "comments",
"optional": false
},
"property": {
"type": "Computed",
"span": {
"start": 20612,
"end": 20615,
"ctxt": 0
},
"expression": {
"type": "Identifier",
"span": {
"start": 20613,
"end": 20614,
"ctxt": 0
},
"value": "i",
"optional": false
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 20616,
"end": 20623,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 20645,
"end": 20679,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 20649,
"end": 20678,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 20649,
"end": 20656,
"ctxt": 0
},
"value": "limChar",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "MemberExpression",
"span": {
"start": 20659,
"end": 20678,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 20659,
"end": 20670,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 20659,
"end": 20667,
"ctxt": 0
},
"value": "comments",
"optional": false
},
"property": {
"type": "Computed",
"span": {
"start": 20667,
"end": 20670,
"ctxt": 0
},
"expression": {
"type": "Identifier",
"span": {
"start": 20668,
"end": 20669,
"ctxt": 0
},
"value": "i",
"optional": false
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 20671,
"end": 20678,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
},
"definite": false
}
]
},
{
"type": "IfStatement",
"span": {
"start": 20700,
"end": 20863,
"ctxt": 0
},
"test": {
"type": "UnaryExpression",
"span": {
"start": 20704,
"end": 20731,
"ctxt": 0
},
"operator": "!",
"argument": {
"type": "MemberExpression",
"span": {
"start": 20705,
"end": 20731,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 20705,
"end": 20716,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 20705,
"end": 20713,
"ctxt": 0
},
"value": "comments",
"optional": false
},
"property": {
"type": "Computed",
"span": {
"start": 20713,
"end": 20716,
"ctxt": 0
},
"expression": {
"type": "Identifier",
"span": {
"start": 20714,
"end": 20715,
"ctxt": 0
},
"value": "i",
"optional": false
}
}
},
"property": {
"type": "Identifier",
"span": {
"start": 20717,
"end": 20731,
"ctxt": 0
},
"value": "isBlockComment",
"optional": false
}
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 20733,
"end": 20863,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 20759,
"end": 20769,
"ctxt": 0
},
"expression": {
"type": "UpdateExpression",
"span": {
"start": 20759,
"end": 20768,
"ctxt": 0
},
"operator": "++",
"prefix": false,
"argument": {
"type": "Identifier",
"span": {
"start": 20759,
"end": 20766,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
}
}
]
},
"alternate": null
},
{
"type": "IfStatement",
"span": {
"start": 20884,
"end": 20996,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 20888,
"end": 20919,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 20888,
"end": 20902,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "Identifier",
"span": {
"start": 20888,
"end": 20891,
"ctxt": 0
},
"value": "pos",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 20895,
"end": 20902,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 20906,
"end": 20919,
"ctxt": 0
},
"operator": "<",
"left": {
"type": "Identifier",
"span": {
"start": 20906,
"end": 20909,
"ctxt": 0
},
"value": "pos",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 20912,
"end": 20919,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 20921,
"end": 20996,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 20947,
"end": 20974,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 20947,
"end": 20973,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 20947,
"end": 20960,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 20947,
"end": 20955,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 20947,
"end": 20950,
"ctxt": 0
},
"value": "ctx",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 20951,
"end": 20955,
"ctxt": 0
},
"value": "path",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 20956,
"end": 20960,
"ctxt": 0
},
"value": "push",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 20961,
"end": 20972,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 20961,
"end": 20969,
"ctxt": 0
},
"value": "comments",
"optional": false
},
"property": {
"type": "Computed",
"span": {
"start": 20969,
"end": 20972,
"ctxt": 0
},
"expression": {
"type": "Identifier",
"span": {
"start": 20970,
"end": 20971,
"ctxt": 0
},
"value": "i",
"optional": false
}
}
}
}
],
"typeArguments": null
}
}
]
},
"alternate": null
}
]
}
}
]
},
"alternate": null
}
]
},
"async": false,
"generator": false,
"typeParameters": null,
"returnType": null
},
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 21048,
"end": 23319,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 21052,
"end": 23319,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 21052,
"end": 21055,
"ctxt": 0
},
"value": "pre",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "FunctionExpression",
"identifier": null,
"params": [
{
"type": "Parameter",
"span": {
"start": 21068,
"end": 21087,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 21068,
"end": 21087,
"ctxt": 0
},
"value": "cur",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 21071,
"end": 21087,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 21073,
"end": 21087,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 21073,
"end": 21083,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 21084,
"end": 21087,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 21089,
"end": 21111,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 21089,
"end": 21111,
"ctxt": 0
},
"value": "parent",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 21095,
"end": 21111,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 21097,
"end": 21111,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 21097,
"end": 21107,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 21108,
"end": 21111,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 21113,
"end": 21131,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 21113,
"end": 21131,
"ctxt": 0
},
"value": "walker",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 21119,
"end": 21131,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 21121,
"end": 21131,
"ctxt": 0
},
"typeName": {
"type": "Identifier",
"span": {
"start": 21121,
"end": 21131,
"ctxt": 0
},
"value": "IAstWalker",
"optional": false
},
"typeParams": null
}
}
}
}
],
"decorators": [],
"span": {
"start": 21058,
"end": 23319,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 21133,
"end": 23319,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 21147,
"end": 23285,
"ctxt": 0
},
"test": {
"type": "CallExpression",
"span": {
"start": 21151,
"end": 21170,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 21151,
"end": 21165,
"ctxt": 0
},
"value": "isValidAstNode",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 21166,
"end": 21169,
"ctxt": 0
},
"value": "cur",
"optional": false
}
}
],
"typeArguments": null
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 21172,
"end": 23285,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 21665,
"end": 21862,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 21669,
"end": 21861,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 21669,
"end": 21678,
"ctxt": 0
},
"value": "inclusive",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "BinaryExpression",
"span": {
"start": 21701,
"end": 21861,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 21701,
"end": 21815,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "CallExpression",
"span": {
"start": 21701,
"end": 21750,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 21701,
"end": 21708,
"ctxt": 0
},
"value": "hasFlag",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 21709,
"end": 21716,
"ctxt": 0
},
"value": "options",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 21718,
"end": 21749,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 21718,
"end": 21735,
"ctxt": 0
},
"value": "GetAstPathOptions",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 21736,
"end": 21749,
"ctxt": 0
},
"value": "EdgeInclusive",
"optional": false
}
}
}
],
"typeArguments": null
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 21774,
"end": 21815,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "MemberExpression",
"span": {
"start": 21774,
"end": 21786,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 21774,
"end": 21777,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 21778,
"end": 21786,
"ctxt": 0
},
"value": "nodeType",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 21791,
"end": 21815,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 21791,
"end": 21810,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 21791,
"end": 21801,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 21802,
"end": 21810,
"ctxt": 0
},
"value": "NodeType",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 21811,
"end": 21815,
"ctxt": 0
},
"value": "Name",
"optional": false
}
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 21839,
"end": 21861,
"ctxt": 0
},
"operator": "===",
"left": {
"type": "Identifier",
"span": {
"start": 21839,
"end": 21842,
"ctxt": 0
},
"value": "pos",
"optional": false
},
"right": {
"type": "MemberExpression",
"span": {
"start": 21847,
"end": 21861,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 21847,
"end": 21853,
"ctxt": 0
},
"value": "script",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 21854,
"end": 21861,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
}
}
},
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 21902,
"end": 21928,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 21906,
"end": 21927,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 21906,
"end": 21913,
"ctxt": 0
},
"value": "minChar",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "MemberExpression",
"span": {
"start": 21916,
"end": 21927,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 21916,
"end": 21919,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 21920,
"end": 21927,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 21945,
"end": 21992,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 21949,
"end": 21992,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 21949,
"end": 21956,
"ctxt": 0
},
"value": "limChar",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "BinaryExpression",
"span": {
"start": 21959,
"end": 21992,
"ctxt": 0
},
"operator": "+",
"left": {
"type": "MemberExpression",
"span": {
"start": 21959,
"end": 21970,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 21959,
"end": 21962,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 21963,
"end": 21970,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 21973,
"end": 21992,
"ctxt": 0
},
"expression": {
"type": "ConditionalExpression",
"span": {
"start": 21974,
"end": 21991,
"ctxt": 0
},
"test": {
"type": "Identifier",
"span": {
"start": 21974,
"end": 21983,
"ctxt": 0
},
"value": "inclusive",
"optional": false
},
"consequent": {
"type": "NumericLiteral",
"span": {
"start": 21986,
"end": 21987,
"ctxt": 0
},
"value": 1.0
},
"alternate": {
"type": "NumericLiteral",
"span": {
"start": 21990,
"end": 21991,
"ctxt": 0
},
"value": 0.0
}
}
}
},
"definite": false
}
]
},
{
"type": "IfStatement",
"span": {
"start": 22009,
"end": 22636,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 22013,
"end": 22044,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 22013,
"end": 22027,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "Identifier",
"span": {
"start": 22013,
"end": 22016,
"ctxt": 0
},
"value": "pos",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 22020,
"end": 22027,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 22031,
"end": 22044,
"ctxt": 0
},
"operator": "<",
"left": {
"type": "Identifier",
"span": {
"start": 22031,
"end": 22034,
"ctxt": 0
},
"value": "pos",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 22037,
"end": 22044,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 22046,
"end": 22636,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 22232,
"end": 22262,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 22236,
"end": 22261,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 22236,
"end": 22244,
"ctxt": 0
},
"value": "previous",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "CallExpression",
"span": {
"start": 22247,
"end": 22261,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 22247,
"end": 22259,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 22247,
"end": 22255,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 22247,
"end": 22250,
"ctxt": 0
},
"value": "ctx",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 22251,
"end": 22255,
"ctxt": 0
},
"value": "path",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 22256,
"end": 22259,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "IfStatement",
"span": {
"start": 22283,
"end": 22618,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 22287,
"end": 22375,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 22287,
"end": 22303,
"ctxt": 0
},
"operator": "==",
"left": {
"type": "Identifier",
"span": {
"start": 22287,
"end": 22295,
"ctxt": 0
},
"value": "previous",
"optional": false
},
"right": {
"type": "NullLiteral",
"span": {
"start": 22299,
"end": 22303,
"ctxt": 0
}
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 22307,
"end": 22375,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 22308,
"end": 22374,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 22308,
"end": 22339,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "MemberExpression",
"span": {
"start": 22308,
"end": 22319,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 22308,
"end": 22311,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 22312,
"end": 22319,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 22323,
"end": 22339,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 22323,
"end": 22331,
"ctxt": 0
},
"value": "previous",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 22332,
"end": 22339,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 22343,
"end": 22374,
"ctxt": 0
},
"operator": "<=",
"left": {
"type": "MemberExpression",
"span": {
"start": 22343,
"end": 22354,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 22343,
"end": 22346,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 22347,
"end": 22354,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
},
"right": {
"type": "MemberExpression",
"span": {
"start": 22358,
"end": 22374,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 22358,
"end": 22366,
"ctxt": 0
},
"value": "previous",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 22367,
"end": 22374,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
}
}
}
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 22377,
"end": 22444,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 22403,
"end": 22422,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 22403,
"end": 22421,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 22403,
"end": 22416,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 22403,
"end": 22411,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 22403,
"end": 22406,
"ctxt": 0
},
"value": "ctx",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 22407,
"end": 22411,
"ctxt": 0
},
"value": "path",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 22412,
"end": 22416,
"ctxt": 0
},
"value": "push",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 22417,
"end": 22420,
"ctxt": 0
},
"value": "cur",
"optional": false
}
}
],
"typeArguments": null
}
}
]
},
"alternate": {
"type": "BlockStatement",
"span": {
"start": 22470,
"end": 22618,
"ctxt": 0
},
"stmts": []
}
}
]
},
"alternate": null
},
{
"type": "IfStatement",
"span": {
"start": 22782,
"end": 22873,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 22786,
"end": 22799,
"ctxt": 0
},
"operator": "<",
"left": {
"type": "Identifier",
"span": {
"start": 22786,
"end": 22789,
"ctxt": 0
},
"value": "pos",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 22792,
"end": 22799,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 22801,
"end": 22873,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 22823,
"end": 22855,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 22823,
"end": 22854,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 22823,
"end": 22837,
"ctxt": 0
},
"value": "lookInComments",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 22838,
"end": 22853,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 22838,
"end": 22841,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 22842,
"end": 22853,
"ctxt": 0
},
"value": "preComments",
"optional": false
}
}
}
],
"typeArguments": null
}
}
]
},
"alternate": null
},
{
"type": "IfStatement",
"span": {
"start": 22890,
"end": 22983,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 22894,
"end": 22908,
"ctxt": 0
},
"operator": ">=",
"left": {
"type": "Identifier",
"span": {
"start": 22894,
"end": 22897,
"ctxt": 0
},
"value": "pos",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 22901,
"end": 22908,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 22910,
"end": 22983,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 22932,
"end": 22965,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 22932,
"end": 22964,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 22932,
"end": 22946,
"ctxt": 0
},
"value": "lookInComments",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 22947,
"end": 22963,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 22947,
"end": 22950,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 22951,
"end": 22963,
"ctxt": 0
},
"value": "postComments",
"optional": false
}
}
}
],
"typeArguments": null
}
}
]
},
"alternate": null
},
{
"type": "IfStatement",
"span": {
"start": 23001,
"end": 23271,
"ctxt": 0
},
"test": {
"type": "UnaryExpression",
"span": {
"start": 23005,
"end": 23072,
"ctxt": 0
},
"operator": "!",
"argument": {
"type": "CallExpression",
"span": {
"start": 23006,
"end": 23072,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 23006,
"end": 23013,
"ctxt": 0
},
"value": "hasFlag",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 23014,
"end": 23021,
"ctxt": 0
},
"value": "options",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 23023,
"end": 23071,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 23023,
"end": 23040,
"ctxt": 0
},
"value": "GetAstPathOptions",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 23041,
"end": 23071,
"ctxt": 0
},
"value": "DontPruneSearchBasedOnPosition",
"optional": false
}
}
}
],
"typeArguments": null
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 23074,
"end": 23271,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 23190,
"end": 23253,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 23190,
"end": 23252,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 23190,
"end": 23215,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 23190,
"end": 23204,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 23190,
"end": 23196,
"ctxt": 0
},
"value": "walker",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 23197,
"end": 23204,
"ctxt": 0
},
"value": "options",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 23205,
"end": 23215,
"ctxt": 0
},
"value": "goChildren",
"optional": false
}
},
"right": {
"type": "ParenthesisExpression",
"span": {
"start": 23218,
"end": 23252,
"ctxt": 0
},
"expression": {
"type": "BinaryExpression",
"span": {
"start": 23219,
"end": 23251,
"ctxt": 0
},
"operator": "&&",
"left": {
"type": "BinaryExpression",
"span": {
"start": 23219,
"end": 23233,
"ctxt": 0
},
"operator": "<=",
"left": {
"type": "Identifier",
"span": {
"start": 23219,
"end": 23226,
"ctxt": 0
},
"value": "minChar",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 23230,
"end": 23233,
"ctxt": 0
},
"value": "pos",
"optional": false
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 23237,
"end": 23251,
"ctxt": 0
},
"operator": "<=",
"left": {
"type": "Identifier",
"span": {
"start": 23237,
"end": 23240,
"ctxt": 0
},
"value": "pos",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 23244,
"end": 23251,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
}
}
}
}
}
]
},
"alternate": null
}
]
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 23298,
"end": 23309,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 23305,
"end": 23308,
"ctxt": 0
},
"value": "cur",
"optional": false
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 23329,
"end": 23360,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 23333,
"end": 23359,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 23333,
"end": 23336,
"ctxt": 0
},
"value": "ctx",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "NewExpression",
"span": {
"start": 23339,
"end": 23359,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 23343,
"end": 23357,
"ctxt": 0
},
"value": "AstPathContext",
"optional": false
},
"arguments": [],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 23369,
"end": 23437,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 23369,
"end": 23436,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 23369,
"end": 23406,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 23369,
"end": 23401,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 23369,
"end": 23399,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 23369,
"end": 23379,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 23380,
"end": 23399,
"ctxt": 0
},
"value": "getAstWalkerFactory",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 23402,
"end": 23406,
"ctxt": 0
},
"value": "walk",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 23407,
"end": 23413,
"ctxt": 0
},
"value": "script",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 23415,
"end": 23418,
"ctxt": 0
},
"value": "pre",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "NullLiteral",
"span": {
"start": 23420,
"end": 23424,
"ctxt": 0
}
}
},
{
"spread": null,
"expression": {
"type": "NullLiteral",
"span": {
"start": 23426,
"end": 23430,
"ctxt": 0
}
}
},
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 23432,
"end": 23435,
"ctxt": 0
},
"value": "ctx",
"optional": false
}
}
],
"typeArguments": null
}
},
{
"type": "ReturnStatement",
"span": {
"start": 23446,
"end": 23462,
"ctxt": 0
},
"argument": {
"type": "MemberExpression",
"span": {
"start": 23453,
"end": 23461,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 23453,
"end": 23456,
"ctxt": 0
},
"value": "ctx",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 23457,
"end": 23461,
"ctxt": 0
},
"value": "path",
"optional": false
}
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 20369,
"end": 20389,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 20371,
"end": 20389,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 20371,
"end": 20381,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 20382,
"end": 20389,
"ctxt": 0
},
"value": "AstPath",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 23653,
"end": 24480,
"ctxt": 0
},
"declaration": {
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 23669,
"end": 23690,
"ctxt": 0
},
"value": "getTokenizationOffset",
"optional": false
},
"declare": false,
"params": [
{
"type": "Parameter",
"span": {
"start": 23691,
"end": 23716,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 23691,
"end": 23716,
"ctxt": 0
},
"value": "script",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 23697,
"end": 23716,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 23699,
"end": 23716,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 23699,
"end": 23709,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 23710,
"end": 23716,
"ctxt": 0
},
"value": "Script",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 23718,
"end": 23734,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 23718,
"end": 23734,
"ctxt": 0
},
"value": "position",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 23726,
"end": 23734,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 23728,
"end": 23734,
"ctxt": 0
},
"kind": "number"
}
}
}
}
],
"decorators": [],
"span": {
"start": 23660,
"end": 24480,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 23744,
"end": 24480,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 23754,
"end": 23773,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 23758,
"end": 23772,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 23758,
"end": 23768,
"ctxt": 0
},
"value": "bestOffset",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "NumericLiteral",
"span": {
"start": 23771,
"end": 23772,
"ctxt": 0
},
"value": 0.0
},
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 23782,
"end": 24386,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 23786,
"end": 24386,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 23786,
"end": 23789,
"ctxt": 0
},
"value": "pre",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "ArrowFunctionExpression",
"span": {
"start": 23792,
"end": 24386,
"ctxt": 0
},
"params": [
{
"type": "Identifier",
"span": {
"start": 23793,
"end": 23812,
"ctxt": 0
},
"value": "cur",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 23796,
"end": 23812,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 23798,
"end": 23812,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 23798,
"end": 23808,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 23809,
"end": 23812,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
},
{
"type": "Identifier",
"span": {
"start": 23814,
"end": 23836,
"ctxt": 0
},
"value": "parent",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 23820,
"end": 23836,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 23822,
"end": 23836,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 23822,
"end": 23832,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 23833,
"end": 23836,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
},
{
"type": "Identifier",
"span": {
"start": 23838,
"end": 23867,
"ctxt": 0
},
"value": "walker",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 23844,
"end": 23867,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 23846,
"end": 23867,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 23846,
"end": 23856,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 23857,
"end": 23867,
"ctxt": 0
},
"value": "IAstWalker",
"optional": false
}
},
"typeParams": null
}
}
}
],
"body": {
"type": "BlockStatement",
"span": {
"start": 23888,
"end": 24386,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 23902,
"end": 24351,
"ctxt": 0
},
"test": {
"type": "CallExpression",
"span": {
"start": 23906,
"end": 23936,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 23906,
"end": 23931,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 23906,
"end": 23916,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 23917,
"end": 23931,
"ctxt": 0
},
"value": "isValidAstNode",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 23932,
"end": 23935,
"ctxt": 0
},
"value": "cur",
"optional": false
}
}
],
"typeArguments": null
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 23938,
"end": 24351,
"ctxt": 0
},
"stmts": [
{
"type": "IfStatement",
"span": {
"start": 24004,
"end": 24115,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 24008,
"end": 24031,
"ctxt": 0
},
"operator": "<=",
"left": {
"type": "MemberExpression",
"span": {
"start": 24008,
"end": 24019,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 24008,
"end": 24011,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 24012,
"end": 24019,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 24023,
"end": 24031,
"ctxt": 0
},
"value": "position",
"optional": false
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 24033,
"end": 24115,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 24055,
"end": 24097,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 24055,
"end": 24096,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "Identifier",
"span": {
"start": 24055,
"end": 24065,
"ctxt": 0
},
"value": "bestOffset",
"optional": false,
"typeAnnotation": null
},
"right": {
"type": "CallExpression",
"span": {
"start": 24068,
"end": 24096,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 24068,
"end": 24071,
"ctxt": 0
},
"value": "max",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 24072,
"end": 24082,
"ctxt": 0
},
"value": "bestOffset",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "MemberExpression",
"span": {
"start": 24084,
"end": 24095,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 24084,
"end": 24087,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 24088,
"end": 24095,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
}
}
],
"typeArguments": null
}
}
}
]
},
"alternate": null
},
{
"type": "IfStatement",
"span": {
"start": 24207,
"end": 24337,
"ctxt": 0
},
"test": {
"type": "BinaryExpression",
"span": {
"start": 24211,
"end": 24261,
"ctxt": 0
},
"operator": "||",
"left": {
"type": "BinaryExpression",
"span": {
"start": 24211,
"end": 24233,
"ctxt": 0
},
"operator": ">",
"left": {
"type": "MemberExpression",
"span": {
"start": 24211,
"end": 24222,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 24211,
"end": 24214,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 24215,
"end": 24222,
"ctxt": 0
},
"value": "minChar",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 24225,
"end": 24233,
"ctxt": 0
},
"value": "position",
"optional": false
}
},
"right": {
"type": "BinaryExpression",
"span": {
"start": 24237,
"end": 24261,
"ctxt": 0
},
"operator": "<",
"left": {
"type": "MemberExpression",
"span": {
"start": 24237,
"end": 24248,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 24237,
"end": 24240,
"ctxt": 0
},
"value": "cur",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 24241,
"end": 24248,
"ctxt": 0
},
"value": "limChar",
"optional": false
}
},
"right": {
"type": "Identifier",
"span": {
"start": 24251,
"end": 24261,
"ctxt": 0
},
"value": "bestOffset",
"optional": false
}
}
},
"consequent": {
"type": "BlockStatement",
"span": {
"start": 24263,
"end": 24337,
"ctxt": 0
},
"stmts": [
{
"type": "ExpressionStatement",
"span": {
"start": 24285,
"end": 24319,
"ctxt": 0
},
"expression": {
"type": "AssignmentExpression",
"span": {
"start": 24285,
"end": 24318,
"ctxt": 0
},
"operator": "=",
"left": {
"type": "MemberExpression",
"span": {
"start": 24285,
"end": 24310,
"ctxt": 0
},
"object": {
"type": "MemberExpression",
"span": {
"start": 24285,
"end": 24299,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 24285,
"end": 24291,
"ctxt": 0
},
"value": "walker",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 24292,
"end": 24299,
"ctxt": 0
},
"value": "options",
"optional": false
}
},
"property": {
"type": "Identifier",
"span": {
"start": 24300,
"end": 24310,
"ctxt": 0
},
"value": "goChildren",
"optional": false
}
},
"right": {
"type": "BooleanLiteral",
"span": {
"start": 24313,
"end": 24318,
"ctxt": 0
},
"value": false
}
}
}
]
},
"alternate": null
}
]
},
"alternate": null
},
{
"type": "ReturnStatement",
"span": {
"start": 24365,
"end": 24376,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 24372,
"end": 24375,
"ctxt": 0
},
"value": "cur",
"optional": false
}
}
]
},
"async": false,
"generator": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 23868,
"end": 23884,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 23870,
"end": 23884,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 23870,
"end": 23880,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 23881,
"end": 23884,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 24396,
"end": 24447,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 24396,
"end": 24446,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 24396,
"end": 24433,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 24396,
"end": 24428,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 24396,
"end": 24426,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 24396,
"end": 24406,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 24407,
"end": 24426,
"ctxt": 0
},
"value": "getAstWalkerFactory",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 24429,
"end": 24433,
"ctxt": 0
},
"value": "walk",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 24434,
"end": 24440,
"ctxt": 0
},
"value": "script",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 24442,
"end": 24445,
"ctxt": 0
},
"value": "pre",
"optional": false
}
}
],
"typeArguments": null
}
},
{
"type": "ReturnStatement",
"span": {
"start": 24456,
"end": 24474,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 24463,
"end": 24473,
"ctxt": 0
},
"value": "bestOffset",
"optional": false
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 23735,
"end": 23743,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 23737,
"end": 23743,
"ctxt": 0
},
"kind": "number"
}
}
}
},
{
"type": "ExportDeclaration",
"span": {
"start": 24575,
"end": 25293,
"ctxt": 0
},
"declaration": {
"type": "FunctionDeclaration",
"identifier": {
"type": "Identifier",
"span": {
"start": 24591,
"end": 24598,
"ctxt": 0
},
"value": "walkAST",
"optional": false
},
"declare": false,
"params": [
{
"type": "Parameter",
"span": {
"start": 24599,
"end": 24618,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 24599,
"end": 24618,
"ctxt": 0
},
"value": "ast",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24602,
"end": 24618,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 24604,
"end": 24618,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 24604,
"end": 24614,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 24615,
"end": 24618,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 24620,
"end": 24684,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 24620,
"end": 24684,
"ctxt": 0
},
"value": "callback",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24628,
"end": 24684,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsFunctionType",
"span": {
"start": 24630,
"end": 24684,
"ctxt": 0
},
"params": [
{
"type": "Identifier",
"span": {
"start": 24631,
"end": 24644,
"ctxt": 0
},
"value": "path",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24635,
"end": 24644,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 24637,
"end": 24644,
"ctxt": 0
},
"typeName": {
"type": "Identifier",
"span": {
"start": 24637,
"end": 24644,
"ctxt": 0
},
"value": "AstPath",
"optional": false
},
"typeParams": null
}
}
},
{
"type": "Identifier",
"span": {
"start": 24646,
"end": 24675,
"ctxt": 0
},
"value": "walker",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24652,
"end": 24675,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 24654,
"end": 24675,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 24654,
"end": 24664,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 24665,
"end": 24675,
"ctxt": 0
},
"value": "IAstWalker",
"optional": false
}
},
"typeParams": null
}
}
}
],
"typeParams": null,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24677,
"end": 24684,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 24680,
"end": 24684,
"ctxt": 0
},
"kind": "void"
}
}
}
}
}
}
],
"decorators": [],
"span": {
"start": 24582,
"end": 25293,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 24693,
"end": 25293,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 24703,
"end": 24955,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 24707,
"end": 24955,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 24707,
"end": 24710,
"ctxt": 0
},
"value": "pre",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "FunctionExpression",
"identifier": null,
"params": [
{
"type": "Parameter",
"span": {
"start": 24723,
"end": 24742,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 24723,
"end": 24742,
"ctxt": 0
},
"value": "cur",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24726,
"end": 24742,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 24728,
"end": 24742,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 24728,
"end": 24738,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 24739,
"end": 24742,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 24744,
"end": 24766,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 24744,
"end": 24766,
"ctxt": 0
},
"value": "parent",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24750,
"end": 24766,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 24752,
"end": 24766,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 24752,
"end": 24762,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 24763,
"end": 24766,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 24768,
"end": 24797,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 24768,
"end": 24797,
"ctxt": 0
},
"value": "walker",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24774,
"end": 24797,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 24776,
"end": 24797,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 24776,
"end": 24786,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 24787,
"end": 24797,
"ctxt": 0
},
"value": "IAstWalker",
"optional": false
}
},
"typeParams": null
}
}
}
}
],
"decorators": [],
"span": {
"start": 24713,
"end": 24955,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 24799,
"end": 24955,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 24813,
"end": 24857,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 24817,
"end": 24856,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 24817,
"end": 24821,
"ctxt": 0
},
"value": "path",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24821,
"end": 24841,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 24823,
"end": 24841,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 24823,
"end": 24833,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 24834,
"end": 24841,
"ctxt": 0
},
"value": "AstPath",
"optional": false
}
},
"typeParams": null
}
}
},
"init": {
"type": "MemberExpression",
"span": {
"start": 24844,
"end": 24856,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 24844,
"end": 24850,
"ctxt": 0
},
"value": "walker",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 24851,
"end": 24856,
"ctxt": 0
},
"value": "state",
"optional": false
}
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 24870,
"end": 24885,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 24870,
"end": 24884,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 24870,
"end": 24879,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 24870,
"end": 24874,
"ctxt": 0
},
"value": "path",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 24875,
"end": 24879,
"ctxt": 0
},
"value": "push",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 24880,
"end": 24883,
"ctxt": 0
},
"value": "cur",
"optional": false
}
}
],
"typeArguments": null
}
},
{
"type": "ExpressionStatement",
"span": {
"start": 24898,
"end": 24921,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 24898,
"end": 24920,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 24898,
"end": 24906,
"ctxt": 0
},
"value": "callback",
"optional": false
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 24907,
"end": 24911,
"ctxt": 0
},
"value": "path",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 24913,
"end": 24919,
"ctxt": 0
},
"value": "walker",
"optional": false
}
}
],
"typeArguments": null
}
},
{
"type": "ReturnStatement",
"span": {
"start": 24934,
"end": 24945,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 24941,
"end": 24944,
"ctxt": 0
},
"value": "cur",
"optional": false
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 24964,
"end": 25177,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 24968,
"end": 25177,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 24968,
"end": 24972,
"ctxt": 0
},
"value": "post",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "FunctionExpression",
"identifier": null,
"params": [
{
"type": "Parameter",
"span": {
"start": 24985,
"end": 25004,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 24985,
"end": 25004,
"ctxt": 0
},
"value": "cur",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 24988,
"end": 25004,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 24990,
"end": 25004,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 24990,
"end": 25000,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 25001,
"end": 25004,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 25006,
"end": 25028,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 25006,
"end": 25028,
"ctxt": 0
},
"value": "parent",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 25012,
"end": 25028,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 25014,
"end": 25028,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 25014,
"end": 25024,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 25025,
"end": 25028,
"ctxt": 0
},
"value": "AST",
"optional": false
}
},
"typeParams": null
}
}
}
},
{
"type": "Parameter",
"span": {
"start": 25030,
"end": 25059,
"ctxt": 0
},
"decorators": [],
"pat": {
"type": "Identifier",
"span": {
"start": 25030,
"end": 25059,
"ctxt": 0
},
"value": "walker",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 25036,
"end": 25059,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 25038,
"end": 25059,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 25038,
"end": 25048,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 25049,
"end": 25059,
"ctxt": 0
},
"value": "IAstWalker",
"optional": false
}
},
"typeParams": null
}
}
}
}
],
"decorators": [],
"span": {
"start": 24975,
"end": 25177,
"ctxt": 0
},
"body": {
"type": "BlockStatement",
"span": {
"start": 25061,
"end": 25177,
"ctxt": 0
},
"stmts": [
{
"type": "VariableDeclaration",
"span": {
"start": 25075,
"end": 25119,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 25079,
"end": 25118,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 25079,
"end": 25083,
"ctxt": 0
},
"value": "path",
"optional": false,
"typeAnnotation": {
"type": "TsTypeAnnotation",
"span": {
"start": 25083,
"end": 25103,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsTypeReference",
"span": {
"start": 25085,
"end": 25103,
"ctxt": 0
},
"typeName": {
"type": "TsQualifiedName",
"left": {
"type": "Identifier",
"span": {
"start": 25085,
"end": 25095,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"right": {
"type": "Identifier",
"span": {
"start": 25096,
"end": 25103,
"ctxt": 0
},
"value": "AstPath",
"optional": false
}
},
"typeParams": null
}
}
},
"init": {
"type": "MemberExpression",
"span": {
"start": 25106,
"end": 25118,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 25106,
"end": 25112,
"ctxt": 0
},
"value": "walker",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 25113,
"end": 25118,
"ctxt": 0
},
"value": "state",
"optional": false
}
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 25132,
"end": 25143,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 25132,
"end": 25142,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 25132,
"end": 25140,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 25132,
"end": 25136,
"ctxt": 0
},
"value": "path",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 25137,
"end": 25140,
"ctxt": 0
},
"value": "pop",
"optional": false
}
},
"arguments": [],
"typeArguments": null
}
},
{
"type": "ReturnStatement",
"span": {
"start": 25156,
"end": 25167,
"ctxt": 0
},
"argument": {
"type": "Identifier",
"span": {
"start": 25163,
"end": 25166,
"ctxt": 0
},
"value": "cur",
"optional": false
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": null
},
"definite": false
}
]
},
{
"type": "VariableDeclaration",
"span": {
"start": 25187,
"end": 25212,
"ctxt": 0
},
"kind": "var",
"declare": false,
"declarations": [
{
"type": "VariableDeclarator",
"span": {
"start": 25191,
"end": 25211,
"ctxt": 0
},
"id": {
"type": "Identifier",
"span": {
"start": 25191,
"end": 25195,
"ctxt": 0
},
"value": "path",
"optional": false,
"typeAnnotation": null
},
"init": {
"type": "NewExpression",
"span": {
"start": 25198,
"end": 25211,
"ctxt": 0
},
"callee": {
"type": "Identifier",
"span": {
"start": 25202,
"end": 25209,
"ctxt": 0
},
"value": "AstPath",
"optional": false
},
"arguments": [],
"typeArguments": null
},
"definite": false
}
]
},
{
"type": "ExpressionStatement",
"span": {
"start": 25221,
"end": 25287,
"ctxt": 0
},
"expression": {
"type": "CallExpression",
"span": {
"start": 25221,
"end": 25286,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 25221,
"end": 25258,
"ctxt": 0
},
"object": {
"type": "CallExpression",
"span": {
"start": 25221,
"end": 25253,
"ctxt": 0
},
"callee": {
"type": "MemberExpression",
"span": {
"start": 25221,
"end": 25251,
"ctxt": 0
},
"object": {
"type": "Identifier",
"span": {
"start": 25221,
"end": 25231,
"ctxt": 0
},
"value": "TypeScript",
"optional": false
},
"property": {
"type": "Identifier",
"span": {
"start": 25232,
"end": 25251,
"ctxt": 0
},
"value": "getAstWalkerFactory",
"optional": false
}
},
"arguments": [],
"typeArguments": null
},
"property": {
"type": "Identifier",
"span": {
"start": 25254,
"end": 25258,
"ctxt": 0
},
"value": "walk",
"optional": false
}
},
"arguments": [
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 25259,
"end": 25262,
"ctxt": 0
},
"value": "ast",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 25264,
"end": 25267,
"ctxt": 0
},
"value": "pre",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 25269,
"end": 25273,
"ctxt": 0
},
"value": "post",
"optional": false
}
},
{
"spread": null,
"expression": {
"type": "NullLiteral",
"span": {
"start": 25275,
"end": 25279,
"ctxt": 0
}
}
},
{
"spread": null,
"expression": {
"type": "Identifier",
"span": {
"start": 25281,
"end": 25285,
"ctxt": 0
},
"value": "path",
"optional": false
}
}
],
"typeArguments": null
}
}
]
},
"generator": false,
"async": false,
"typeParameters": null,
"returnType": {
"type": "TsTypeAnnotation",
"span": {
"start": 24686,
"end": 24692,
"ctxt": 0
},
"typeAnnotation": {
"type": "TsKeywordType",
"span": {
"start": 24688,
"end": 24692,
"ctxt": 0
},
"kind": "void"
}
}
}
}
]
}
}
],
"interpreter": null
}