{ "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'", "raw": "\"Invalid call to 'up'\"" } } ], "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'", "raw": "\"Invalid call to 'down'\"" } } ], "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 }