From e0ab5ce49b9e22e29a2daf6c24c3b2a7a2f5ef56 Mon Sep 17 00:00:00 2001 From: Asger F Date: Wed, 25 Feb 2026 10:16:21 +0100 Subject: [PATCH 1/8] JS: Emit variables for 'this' The extractor does not emit bindings for 'this', we just ensure that a variable exists for it --- .../extractor/src/com/semmle/js/extractor/ASTExtractor.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java b/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java index a2f006e32395..caf5d834f909 100644 --- a/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java +++ b/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java @@ -819,6 +819,7 @@ public Label visit(Program nd, Context c) { // add all declared global (or module-scoped) names, both non-lexical and lexical scopeManager.addNames(scopeManager.collectDeclaredNames(nd, isStrict, false, DeclKind.none)); scopeManager.addNames(scopeManager.collectDeclaredNames(nd, isStrict, true, DeclKind.none)); + scopeManager.addVariables("this"); visitAll(nd.getBody(), toplevelLabel); @@ -1070,6 +1071,9 @@ private void extractFunction(IFunction nd, Label key) { scopeManager.enterScope((Node) nd); scopeManager.addNames(locals); + if (!(nd instanceof ArrowFunctionExpression)) { + scopeManager.addVariables("this"); + } // The name of a function expression binds to its own scope. if (nd.getId() != null && nd instanceof AFunctionExpression) { From 4a3b86c652ec0db487b4cee3c718d1f8d6118c10 Mon Sep 17 00:00:00 2001 From: Asger F Date: Fri, 27 Feb 2026 11:13:50 +0100 Subject: [PATCH 2/8] JS: Update test output --- .../ql/test/library-tests/variables/tests.expected | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/javascript/ql/test/library-tests/variables/tests.expected b/javascript/ql/test/library-tests/variables/tests.expected index 0e3d568b570c..537281e159db 100644 --- a/javascript/ql/test/library-tests/variables/tests.expected +++ b/javascript/ql/test/library-tests/variables/tests.expected @@ -54,23 +54,30 @@ getAnAssignedExpr | y | let.js:19:12:19:13 | 19 | getDeclaringContainer | arrayPatternDefault.js:1:2:1:1 | arguments | arrayPatternDefault.js:1:2:4:1 | functio ... bal2;\\n} | +| arrayPatternDefault.js:1:2:1:1 | this | arrayPatternDefault.js:1:2:4:1 | functio ... bal2;\\n} | | arrayPatternDefault.js:1:11:1:11 | o | arrayPatternDefault.js:1:2:4:1 | functio ... bal2;\\n} | | arrayPatternDefault.js:2:8:2:8 | x | arrayPatternDefault.js:1:2:4:1 | functio ... bal2;\\n} | | assignments.js:3:1:3:0 | arguments | assignments.js:3:1:6:1 | functio ... = 56;\\n} | +| assignments.js:3:1:3:0 | this | assignments.js:3:1:6:1 | functio ... = 56;\\n} | | assignments.js:4:6:4:6 | g | assignments.js:3:1:6:1 | functio ... = 56;\\n} | | assignments.js:4:10:4:9 | arguments | assignments.js:4:10:4:24 | function h() {} | +| assignments.js:4:10:4:9 | this | assignments.js:4:10:4:24 | function h() {} | | assignments.js:4:19:4:19 | h | assignments.js:4:10:4:24 | function h() {} | +| defaultargs.js:1:2:1:1 | this | defaultargs.js:1:2:5:1 | functio ... ]) {}\\n} | | defaultargs.js:2:7:2:7 | x | defaultargs.js:1:2:5:1 | functio ... ]) {}\\n} | | defaultargs.js:2:10:2:18 | arguments | defaultargs.js:1:2:5:1 | functio ... ]) {}\\n} | | defaultargs.js:3:3:3:2 | arguments | defaultargs.js:3:3:3:25 | functio ... = x) {} | +| defaultargs.js:3:3:3:2 | this | defaultargs.js:3:3:3:25 | functio ... = x) {} | | defaultargs.js:3:12:3:12 | f | defaultargs.js:1:2:5:1 | functio ... ]) {}\\n} | | defaultargs.js:3:14:3:14 | x | defaultargs.js:3:3:3:25 | functio ... = x) {} | | defaultargs.js:3:17:3:17 | y | defaultargs.js:3:3:3:25 | functio ... = x) {} | | defaultargs.js:4:3:4:2 | arguments | defaultargs.js:4:3:4:51 | functio ... [0]) {} | +| defaultargs.js:4:3:4:2 | this | defaultargs.js:4:3:4:51 | functio ... [0]) {} | | defaultargs.js:4:12:4:12 | g | defaultargs.js:1:2:5:1 | functio ... ]) {}\\n} | | defaultargs.js:4:14:4:14 | x | defaultargs.js:4:3:4:51 | functio ... [0]) {} | | defaultargs.js:4:32:4:32 | y | defaultargs.js:4:3:4:51 | functio ... [0]) {} | | for.js:1:2:1:1 | arguments | for.js:1:2:5:1 | functio ... x;\\n} | +| for.js:1:2:1:1 | this | for.js:1:2:5:1 | functio ... x;\\n} | | for.js:1:11:1:11 | o | for.js:1:2:5:1 | functio ... x;\\n} | | for.js:2:7:2:7 | x | for.js:1:2:5:1 | functio ... x;\\n} | | legacyletstmt.js:3:6:3:6 | x | legacyletstmt.js:1:1:8:0 | | @@ -82,20 +89,26 @@ getDeclaringContainer | let.js:6:17:6:17 | x | let.js:1:1:22:0 | | | let.js:9:18:9:18 | x | let.js:1:1:22:0 | | | let.js:14:1:14:0 | arguments | let.js:14:1:21:1 | functio ... }\\n} | +| let.js:14:1:14:0 | this | let.js:14:1:21:1 | functio ... }\\n} | | let.js:14:14:14:14 | x | let.js:14:1:21:1 | functio ... }\\n} | | let.js:17:11:17:11 | y | let.js:14:1:21:1 | functio ... }\\n} | | typeoftype.ts:1:1:1:0 | arguments | typeoftype.ts:1:1:6:1 | functio ... x\\n }\\n} | +| typeoftype.ts:1:1:1:0 | this | typeoftype.ts:1:1:6:1 | functio ... x\\n }\\n} | | typeoftype.ts:2:7:2:7 | x | typeoftype.ts:1:1:6:1 | functio ... x\\n }\\n} | | typeoftype.ts:3:3:3:2 | arguments | typeoftype.ts:3:3:5:3 | functio ... e x\\n } | +| typeoftype.ts:3:3:3:2 | this | typeoftype.ts:3:3:5:3 | functio ... e x\\n } | | typeoftype.ts:3:12:3:12 | g | typeoftype.ts:1:1:6:1 | functio ... x\\n }\\n} | | typeoftype.ts:4:9:4:9 | y | typeoftype.ts:3:3:5:3 | functio ... e x\\n } | | variables.js:8:1:8:0 | arguments | variables.js:8:1:12:1 | functio ... ar x;\\n} | +| variables.js:8:1:8:0 | this | variables.js:8:1:12:1 | functio ... ar x;\\n} | | variables.js:9:6:9:6 | x | variables.js:8:1:12:1 | functio ... ar x;\\n} | | variables.js:13:1:13:0 | arguments | variables.js:13:1:23:1 | functio ... z;\\n\\t}\\n} | +| variables.js:13:1:13:0 | this | variables.js:13:1:23:1 | functio ... z;\\n\\t}\\n} | | variables.js:13:12:13:12 | y | variables.js:13:1:23:1 | functio ... z;\\n\\t}\\n} | | variables.js:13:15:13:15 | z | variables.js:13:1:23:1 | functio ... z;\\n\\t}\\n} | | variables.js:15:6:15:6 | x | variables.js:13:1:23:1 | functio ... z;\\n\\t}\\n} | | variables.js:16:2:16:1 | arguments | variables.js:16:2:22:2 | functio ... y+z;\\n\\t} | +| variables.js:16:2:16:1 | this | variables.js:16:2:22:2 | functio ... y+z;\\n\\t} | | variables.js:16:11:16:11 | h | variables.js:13:1:23:1 | functio ... z;\\n\\t}\\n} | | variables.js:16:13:16:13 | z | variables.js:16:2:22:2 | functio ... y+z;\\n\\t} | | variables.js:18:11:18:11 | y | variables.js:16:2:22:2 | functio ... y+z;\\n\\t} | From f0f58dacb350c70c7617210072896bab2c16bdec Mon Sep 17 00:00:00 2001 From: Asger F Date: Fri, 27 Feb 2026 11:44:31 +0100 Subject: [PATCH 3/8] JS: Also emit 'this' variable for class scopes --- .../src/com/semmle/js/extractor/ASTExtractor.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java b/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java index caf5d834f909..7eee8b628f7e 100644 --- a/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java +++ b/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java @@ -1545,8 +1545,9 @@ private Label visit(AClass ac, Label key, Node scopeNode, boolean isClassExpress if (!isClassExpression) { visit(ac.getId(), key, 0, IdContext.VAR_AND_TYPE_DECL); } + scopeManager.enterScope(scopeNode); + scopeManager.addVariables("this"); // 'this' in static field initialiers refers to the class if (ac.hasId() || ac.hasTypeParameters()) { - scopeManager.enterScope(scopeNode); if (isClassExpression && ac.hasId()) { scopeManager.addVariables(ac.getId().getName()); scopeManager.addTypeName(ac.getId().getName()); @@ -1569,9 +1570,7 @@ private Label visit(AClass ac, Label key, Node scopeNode, boolean isClassExpress addDefaultConstructor(ac); } visit(ac.getBody(), key, 2); - if (ac.hasId() || ac.hasTypeParameters()) { - scopeManager.leaveScope(); - } + scopeManager.leaveScope(); emitNodeSymbol(ac, key); return key; } From 0f2de466482b677abc2db648e8e56147abda81b0 Mon Sep 17 00:00:00 2001 From: Asger F Date: Fri, 27 Feb 2026 11:44:54 +0100 Subject: [PATCH 4/8] JS: Emit variable bindings for 'this' expressions --- .../src/com/semmle/js/extractor/ASTExtractor.java | 9 +++++++++ javascript/ql/lib/semmlecode.javascript.dbscheme | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java b/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java index 7eee8b628f7e..b4739b061fb2 100644 --- a/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java +++ b/javascript/extractor/src/com/semmle/js/extractor/ASTExtractor.java @@ -1896,6 +1896,15 @@ public Label visit(JSXThisExpr nd, Context c) { return visit((ThisExpression) nd, c); } + @Override + public Label visit(ThisExpression nd, Context c) { + Label key = super.visit(nd, c); + if (c.idcontext == IdContext.VAR_BIND || c.idcontext == IdContext.VAR_IN_TYPE_BIND) { + addVariableBinding("bind", key, "this"); + } + return key; + } + @Override public Label visit(JSXMemberExpression nd, Context c) { Label key = super.visit(nd, c); diff --git a/javascript/ql/lib/semmlecode.javascript.dbscheme b/javascript/ql/lib/semmlecode.javascript.dbscheme index 578367e82a25..26a123164be8 100644 --- a/javascript/ql/lib/semmlecode.javascript.dbscheme +++ b/javascript/ql/lib/semmlecode.javascript.dbscheme @@ -453,7 +453,7 @@ is_arguments_object (int id: @variable ref); @lexical_name = @variable | @local_type_name | @local_namespace_name; -@bind_id = @varaccess | @local_var_type_access; +@bind_id = @varaccess | @local_var_type_access | @this_expr; bind (unique int id: @bind_id ref, int decl: @variable ref); From c673bd9151dab23dcf7ea9e743b753a04f39abec Mon Sep 17 00:00:00 2001 From: Asger F Date: Fri, 27 Feb 2026 13:34:55 +0100 Subject: [PATCH 5/8] JS: Document a missing alert due to limitation in structural comparison --- .../ql/test/query-tests/Expressions/DuplicateProperty/tst2.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/javascript/ql/test/query-tests/Expressions/DuplicateProperty/tst2.js b/javascript/ql/test/query-tests/Expressions/DuplicateProperty/tst2.js index c673055fbf71..0dd2c0cae13f 100644 --- a/javascript/ql/test/query-tests/Expressions/DuplicateProperty/tst2.js +++ b/javascript/ql/test/query-tests/Expressions/DuplicateProperty/tst2.js @@ -7,7 +7,7 @@ var o = { setX: function(x) { this.x = x; - }, + }, // $ MISSING: Alert // The structural comparison fails to treat the two 'x' variables as the same getX: function() { return this.x; From 71fb6bf915e38c4567d66c4d966c825136d4dc55 Mon Sep 17 00:00:00 2001 From: Asger F Date: Fri, 27 Feb 2026 13:35:43 +0100 Subject: [PATCH 6/8] JS: Mark corresponding lost result for the getter --- .../Expressions/DuplicateProperty/DuplicateProperty.expected | 1 - .../ql/test/query-tests/Expressions/DuplicateProperty/tst2.js | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/javascript/ql/test/query-tests/Expressions/DuplicateProperty/DuplicateProperty.expected b/javascript/ql/test/query-tests/Expressions/DuplicateProperty/DuplicateProperty.expected index a004986cf638..fb8d1a74841b 100644 --- a/javascript/ql/test/query-tests/Expressions/DuplicateProperty/DuplicateProperty.expected +++ b/javascript/ql/test/query-tests/Expressions/DuplicateProperty/DuplicateProperty.expected @@ -1,4 +1,3 @@ -| tst2.js:4:3:6:3 | getX: f ... .x;\\n } | This property is duplicated $@. | tst2.js:12:3:14:3 | getX: f ... .x;\\n } | in a later property | | tst.js:2:3:2:16 | "key": "value" | This property is duplicated $@. | tst.js:5:3:5:16 | "key": "value" | in a later property | | tst.js:4:3:4:14 | "1": "value" | This property is duplicated $@. | tst.js:11:3:11:12 | 1: "value" | in a later property | | tst.js:5:3:5:16 | "key": "value" | This property is duplicated $@. | tst.js:6:3:6:16 | 'key': "value" | in a later property | diff --git a/javascript/ql/test/query-tests/Expressions/DuplicateProperty/tst2.js b/javascript/ql/test/query-tests/Expressions/DuplicateProperty/tst2.js index 0dd2c0cae13f..ac359c56498f 100644 --- a/javascript/ql/test/query-tests/Expressions/DuplicateProperty/tst2.js +++ b/javascript/ql/test/query-tests/Expressions/DuplicateProperty/tst2.js @@ -3,7 +3,7 @@ var o = { getX: function() { return this.x; - }, // $ Alert + }, // $ MISSING: Alert // The structural comparison fails to treat the two 'this' variables as the same setX: function(x) { this.x = x; From 47895b3334f14832574016e0ece2638e0aa61c14 Mon Sep 17 00:00:00 2001 From: Asger F Date: Fri, 27 Feb 2026 13:37:29 +0100 Subject: [PATCH 7/8] JS: Update test for UniquePropertyNames test This query now reports the alert previously found by DuplicateProperty --- .../UniquePropertyNames/UniquePropertyNames.expected | 1 + .../test/query-tests/Declarations/UniquePropertyNames/tst2.js | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/javascript/ql/test/query-tests/Declarations/UniquePropertyNames/UniquePropertyNames.expected b/javascript/ql/test/query-tests/Declarations/UniquePropertyNames/UniquePropertyNames.expected index 81270ed3d73e..d8674dcb15fe 100644 --- a/javascript/ql/test/query-tests/Declarations/UniquePropertyNames/UniquePropertyNames.expected +++ b/javascript/ql/test/query-tests/Declarations/UniquePropertyNames/UniquePropertyNames.expected @@ -1,3 +1,4 @@ +| tst2.js:4:3:6:3 | getX: f ... .x;\\n } | This property is overwritten by $@ in the same object literal. | tst2.js:12:3:14:3 | getX: f ... .x;\\n } | another property | | tst2.js:8:3:10:3 | setX: f ... x;\\n } | This property is overwritten by $@ in the same object literal. | tst2.js:16:3:18:3 | setX: f ... x;\\n } | another property | | tst.js:20:3:20:7 | x: 23 | This property is overwritten by $@ in the same object literal. | tst.js:23:3:23:7 | x: 56 | another property | | tst.js:21:3:21:12 | y: "hello" | This property is overwritten by $@ in the same object literal. | tst.js:24:3:24:14 | "y": "world" | another property | diff --git a/javascript/ql/test/query-tests/Declarations/UniquePropertyNames/tst2.js b/javascript/ql/test/query-tests/Declarations/UniquePropertyNames/tst2.js index 731b0525c7b8..2bbfa1d19931 100644 --- a/javascript/ql/test/query-tests/Declarations/UniquePropertyNames/tst2.js +++ b/javascript/ql/test/query-tests/Declarations/UniquePropertyNames/tst2.js @@ -3,7 +3,7 @@ var o = { getX: function() { return this.x; - }, + }, // $ Alert setX: function(x) { this.x = x; From d440b5fa859200181904a32230567379bab6800a Mon Sep 17 00:00:00 2001 From: Asger F Date: Fri, 27 Feb 2026 14:15:34 +0100 Subject: [PATCH 8/8] JS: Update TRAP files --- .../tests/cfg/output/trap/classexpr1.js.trap | 136 +- .../tests/cfg/output/trap/classexpr2.js.trap | 166 +- .../tests/cfg/output/trap/classexpr3.js.trap | 230 +- .../tests/cfg/output/trap/classexpr4.js.trap | 254 +- .../tests/cfg/output/trap/fields.js.trap | 644 +- .../tests/cfg/output/trap/seq.js.trap | 188 +- .../cfg/output/trap/short-circuit.js.trap | 268 +- .../tests/cfg/output/trap/ternary.js.trap | 240 +- .../tests/cfg/output/trap/tst.js.trap | 1236 +-- .../trap/googDotDeclareModuleId.js.trap | 174 +- .../closure/output/trap/googDotModule.js.trap | 248 +- .../output/trap/googDotProvide.js.trap | 228 +- .../comments/output/trap/comments.js.trap | 20 +- .../output/trap/empty_comment.js.trap | 20 +- .../tests/comments/output/trap/jsdoc.js.trap | 20 +- .../output/trap/latin1.js.trap | 108 +- .../tests/e4x/output/trap/regress.js.trap | 92 +- .../tests/e4x/output/trap/tst.js.trap | 906 +- .../encoding/output/trap/surrogates.js.trap | 418 +- .../encoding/output/trap/unicode.js.trap | 50 +- .../tests/errors/output/trap/empty.js.trap | 12 +- .../trap/invalid-assignment-pattern.js.trap | 88 +- .../tests/errors/output/trap/kwident.js.trap | 82 +- .../trap/array_pattern_with_default.js.trap | 110 +- .../trap/array_pattern_with_rest.js.trap | 188 +- .../tests/es2015/output/trap/arrowfn.js.trap | 576 +- .../output/trap/class_accessors.js.trap | 450 +- .../es2015/output/trap/class_ctor.js.trap | 237 +- .../es2015/output/trap/class_extends.js.trap | 210 +- .../es2015/output/trap/class_extends2.js.trap | 312 +- .../es2015/output/trap/class_method.js.trap | 263 +- .../es2015/output/trap/class_static.js.trap | 246 +- .../es2015/output/trap/classdecl.js.trap | 122 +- .../es2015/output/trap/classexpr.js.trap | 156 +- .../es2015/output/trap/classexpr2.js.trap | 126 +- .../output/trap/complex_array_pattern.js.trap | 138 +- .../trap/complex_object_pattern.js.trap | 164 +- .../tests/es2015/output/trap/const.js.trap | 68 +- .../es2015/output/trap/defaultargs.js.trap | 138 +- .../output/trap/delegating_yield.js.trap | 130 +- .../es2015/output/trap/destructuring.js.trap | 728 +- .../tests/es2015/output/trap/export1.js.trap | 80 +- .../tests/es2015/output/trap/export10.js.trap | 128 +- .../tests/es2015/output/trap/export11.js.trap | 120 +- .../tests/es2015/output/trap/export2.js.trap | 114 +- .../tests/es2015/output/trap/export3.js.trap | 114 +- .../tests/es2015/output/trap/export4.js.trap | 104 +- .../tests/es2015/output/trap/export5.js.trap | 174 +- .../tests/es2015/output/trap/export6.js.trap | 52 +- .../tests/es2015/output/trap/export7.js.trap | 110 +- .../tests/es2015/output/trap/export8.js.trap | 98 +- .../tests/es2015/output/trap/export9.js.trap | 164 +- .../tests/es2015/output/trap/forof.js.trap | 380 +- .../tests/es2015/output/trap/import1.js.trap | 72 +- .../tests/es2015/output/trap/import2.js.trap | 76 +- .../tests/es2015/output/trap/import3.js.trap | 90 +- .../tests/es2015/output/trap/import4.js.trap | 110 +- .../tests/es2015/output/trap/import5.js.trap | 82 +- .../tests/es2015/output/trap/import6.js.trap | 50 +- .../tests/es2015/output/trap/import7.js.trap | 172 +- .../tests/es2015/output/trap/let.js.trap | 646 +- .../tests/es2015/output/trap/let2.js.trap | 68 +- .../es2015/output/trap/nested_import.js.trap | 284 +- .../es2015/output/trap/new_target.js.trap | 116 +- .../output/trap/no-substitution.js.trap | 36 +- .../es2015/output/trap/nullMethodName.js.trap | 236 +- .../es2015/output/trap/odasa-2593.js.trap | 158 +- .../es2015/output/trap/properties.js.trap | 356 +- .../property_pattern_with_default.js.trap | 134 +- .../es2015/output/trap/restparms.js.trap | 104 +- .../es2015/output/trap/spreadelement.js.trap | 182 +- .../es2015/output/trap/super_call.js.trap | 398 +- .../es2015/output/trap/super_ctor.js.trap | 206 +- .../es2015/output/trap/templates.js.trap | 568 +- .../output/trap/unknown_meta_property.js.trap | 122 +- .../tests/es2015/output/trap/yield.js.trap | 248 +- .../tests/es2015/output/trap/yield2.js.trap | 110 +- .../tests/es2016/output/trap/exp.js.trap | 102 +- .../es2016/output/trap/usestrict.js.trap | 148 +- .../es2017/output/trap/async-await.js.trap | 260 +- .../es2017/output/trap/export-async-1.js.trap | 116 +- .../es2017/output/trap/export-async-2.js.trap | 106 +- .../output/trap/invalid-async-fn.js.trap | 122 +- .../output/trap/shorthand-prop-async.js.trap | 90 +- .../es2018/output/trap/asyncIter.js.trap | 676 +- .../es2018/output/trap/templates.js.trap | 638 +- .../es2019/output/trap/json-superset.js.trap | 152 +- .../tests/es2021/output/trap/assign.js.trap | 560 +- .../tests/es2021/output/trap/numeric.js.trap | 322 +- .../output/trap/additional_test_cases.js.trap | 974 +- .../es2024/output/trap/intersection.js.trap | 484 +- .../trap/regex_nested_character_class.js.trap | 260 +- .../output/trap/regex_quoted_string.js.trap | 348 +- .../es2024/output/trap/subtraction.js.trap | 378 +- .../tests/es2024/output/trap/test.js.trap | 890 +- .../tests/es2024/output/trap/union.js.trap | 524 +- .../output/trap/async-generators.js.trap | 258 +- .../trap/catchGuardAndNoBinding.js.trap | 518 +- .../esnext/output/trap/catchNoBinding.js.trap | 220 +- .../esnext/output/trap/dynamic-import.js.trap | 456 +- .../tests/esnext/output/trap/fields.js.trap | 530 +- .../esnext/output/trap/for-await.js.trap | 344 +- .../output/trap/import-attributes.js.trap | 2046 ++--- .../output/trap/nullish-coalescing.js.trap | 548 +- .../output/trap/optional-chaining.js.trap | 602 +- ...optional-chaining_short-circuiting.js.trap | 1524 ++-- .../output/trap/top-level-await.js.trap | 184 +- .../esnext/output/trap/yield-import.js.trap | 148 +- .../exprs/output/trap/assignment.js.trap | 612 +- .../tests/exprs/output/trap/binary.js.trap | 732 +- .../exprs/output/trap/comparison.js.trap | 384 +- .../tests/exprs/output/trap/fnnesting.js.trap | 138 +- .../tests/exprs/output/trap/others.js.trap | 170 +- .../tests/exprs/output/trap/parens.js.trap | 80 +- .../tests/exprs/output/trap/patterns.js.trap | 442 +- .../tests/exprs/output/trap/primaries.js.trap | 1499 ++-- .../tests/exprs/output/trap/regexp.js.trap | 2590 +++--- .../tests/exprs/output/trap/unary.js.trap | 316 +- .../tests/exprs/output/trap/update.js.trap | 182 +- .../tests/extensions/output/trap/tst.es6.trap | 114 +- .../tests/extensions/output/trap/tst2.es.trap | 114 +- .../extensions/output/trap/tst4.cjs.trap | 106 +- .../tests/externs/output/trap/Point.js.trap | 800 +- .../tests/flow/output/trap/ambig.js.trap | 20 +- .../trap/anonFunctionOptionalParm.js.trap | 130 +- .../trap/anonFunctionReturnType.js.trap | 130 +- .../trap/anonFunctionWithoutParens.js.trap | 20 +- .../flow/output/trap/anonIndexer.js.trap | 20 +- .../trap/arbitaryModuleSpecifier.js.trap | 92 +- .../flow/output/trap/array-types.js.trap | 368 +- .../tests/flow/output/trap/async.js.trap | 146 +- .../flow/output/trap/atAtIteratorProp.js.trap | 20 +- .../output/trap/complexParamTypes.js.trap | 20 +- .../output/trap/complexParamTypes2.js.trap | 20 +- .../flow/output/trap/declareExport.js.trap | 20 +- .../output/trap/declareModuleExports.js.trap | 20 +- .../trap/declared-module-imports.js.trap | 20 +- .../trap/explicitTypeParameters.js.trap | 416 +- ...tersForArgumentlessConstructorCall.js.trap | 64 +- .../tests/flow/output/trap/export.js.trap | 104 +- .../flow/output/trap/exportOpaqueType.js.trap | 20 +- .../flow/output/trap/get-set-methods.js.trap | 340 +- .../tests/flow/output/trap/importType.js.trap | 76 +- .../trap/importTypeInDeclaredModule.js.trap | 20 +- .../flow/output/trap/methodTypeParams.js.trap | 204 +- .../trap/notExplicitTypeParameters1.js.trap | 108 +- .../trap/notExplicitTypeParameters2.js.trap | 168 +- .../trap/notExplicitTypeParameters3.js.trap | 122 +- .../flow/output/trap/objectTypeSpread.js.trap | 20 +- .../tests/flow/output/trap/optParms.js.trap | 260 +- .../output/trap/parmAnonFunctionType.js.trap | 160 +- ...llyAmbigiousExplicitTypeParameters.js.trap | 1306 +-- .../predicate-function-annotation.js.trap | 408 +- .../output/trap/qualifiedInterface.js.trap | 20 +- .../tests/flow/output/trap/tst.js.trap | 382 +- .../tests/flow/output/trap/variance.js.trap | 150 +- .../functionbind/output/trap/tst.js.trap | 464 +- .../output/trap/attributes.html.trap | 656 +- .../generatedcode/output/trap/ejs.js.trap | 346 +- .../generatedcode/output/trap/test.html.trap | 1654 ++-- .../generatedcode/output/trap/tst.js.trap | 566 +- .../helloworld/output/trap/hello.js.trap | 88 +- .../tests/html/output/trap/entities.html.trap | 168 +- .../tests/html/output/trap/module.html.trap | 200 +- .../tests/html/output/trap/tst.html.trap | 970 +- .../tests/html/output/trap/tst.xhtml.trap | 118 +- .../tests/html/output/trap/tst2.html.trap | 573 +- .../tests/jscript/output/trap/tst.js.trap | 164 +- .../tests/jsx/output/trap/repro1.jsx.trap | 318 +- .../tests/jsx/output/trap/tst.js.trap | 600 +- .../tests/jsx/output/trap/tst.jsx.trap | 12 +- .../tests/jsx/output/trap/tst2.js.trap | 56 +- .../tests/keywords/output/trap/tst.js.trap | 258 +- .../moduleTypes1/output/trap/tst.js.trap | 12 +- .../moduleTypes2/output/trap/tst2.js.trap | 12 +- .../moduleTypes3/output/trap/tst.js.trap | 12 +- .../output/trap/array_comprehensions.js.trap | 730 +- .../tests/mozilla/output/trap/exprfns.js.trap | 426 +- .../tests/mozilla/output/trap/foreach.js.trap | 446 +- .../output/trap/generator_expressions.js.trap | 884 +- .../mozilla/output/trap/guardedCatch.js.trap | 466 +- .../tests/mozilla/output/trap/letExpr.js.trap | 690 +- .../tests/mozilla/output/trap/letStmt.js.trap | 448 +- .../mozilla/output/trap/letStmt2.js.trap | 98 +- .../output/trap/new-with-trailing-arg.js.trap | 150 +- .../mozilla/output/trap/odasa-2593.js.trap | 158 +- .../output/trap/component.js.trap | 784 +- .../tests/node/output/trap/constlet.js.trap | 116 +- .../tests/node/output/trap/detection.js.trap | 108 +- .../tests/node/output/trap/hello.trap | 116 +- .../tests/node/output/trap/tst.html.trap | 126 +- .../tests/node/output/trap/tst.js.trap | 288 +- .../tests/node/output/trap/tst.mjs.trap | 48 +- .../tests/regexp/output/trap/es2018.js.trap | 342 +- .../regexp/output/trap/multipart.js.trap | 1416 +-- .../regexp/output/trap/nonstandard.js.trap | 52 +- .../regexp/output/trap/odasa-1934.js.trap | 382 +- .../tests/regexp/output/trap/tst.js.trap | Bin 3090 -> 3152 bytes .../tests/restprops/output/trap/tst.js.trap | 144 +- .../tests/shebang/output/trap/tst.js.trap | 98 +- .../trap/typescript-with-shebang.ts.trap | 76 +- .../shebang/output/trap/typescript.ts.trap | 76 +- .../stmts/output/trap/conditionals.js.trap | 212 +- .../stmts/output/trap/forvardefault.js.trap | 244 +- .../tests/stmts/output/trap/functions.js.trap | 602 +- .../tests/stmts/output/trap/loops.js.trap | 782 +- .../tests/stmts/output/trap/others.js.trap | 140 +- .../tests/stmts/output/trap/switch.js.trap | 404 +- .../tests/stmts/output/trap/switch2.js.trap | 230 +- .../stmts/output/trap/trivial-switch.js.trap | 48 +- .../tests/stmts/output/trap/try.js.trap | 270 +- .../strictmode/output/trap/assignargs.js.trap | 158 +- .../tests/strictmode/output/trap/tst.js.trap | 60 +- .../output/trap/arrayBindingPattern.ts.trap | 126 +- .../ts/output/trap/bindingpattern.ts.trap | 154 +- .../tests/ts/output/trap/bom.ts.trap | 38 +- .../tests/ts/output/trap/classes.ts.trap | 248 +- .../tests/ts/output/trap/comments.ts.trap | 82 +- .../ts/output/trap/conditionalTypes.ts.trap | 7976 +++++++++-------- .../tests/ts/output/trap/ctordecl.ts.trap | 266 +- .../tests/ts/output/trap/declareClass.ts.trap | 102 +- .../tests/ts/output/trap/decorators.ts.trap | 609 +- .../tests/ts/output/trap/dynamic-type.ts.trap | 98 +- .../tests/ts/output/trap/enum.ts.trap | 942 +- .../tests/ts/output/trap/export.ts.trap | 292 +- .../tests/ts/output/trap/export2.ts.trap | 40 +- .../output/trap/exportasnamespace.d.ts.trap | 86 +- .../tests/ts/output/trap/exportassign.ts.trap | 40 +- .../tests/ts/output/trap/exportclass.ts.trap | 114 +- .../tests/ts/output/trap/exprs.ts.trap | 302 +- .../ts/output/trap/externalmodule.ts.trap | 272 +- .../ts/output/trap/functiondecorators.ts.trap | 1352 +-- .../tests/ts/output/trap/hello.ts.trap | 272 +- .../ts/output/trap/import-attributes.ts.trap | 1530 ++-- .../tests/ts/output/trap/importExport.ts.trap | 160 +- .../ts/output/trap/importNonStrings.ts.trap | 152 +- .../tests/ts/output/trap/importassign.ts.trap | 104 +- .../tests/ts/output/trap/interfaces.ts.trap | 322 +- .../ts/output/trap/invalidExtends.ts.trap | 202 +- .../tests/ts/output/trap/let.ts.trap | 164 +- .../tests/ts/output/trap/logicalOr.ts.trap | 298 +- .../output/trap/mappedTypeModifiers.ts.trap | 904 +- .../tests/ts/output/trap/namespaces.ts.trap | 288 +- .../ts/output/trap/nestedNamespace.ts.trap | 442 +- .../tests/ts/output/trap/nobody.ts.trap | 884 +- .../output/trap/objectLiteralAccessor.ts.trap | 284 +- .../tests/ts/output/trap/omitted.ts.trap | 58 +- .../ts/output/trap/optionalChaining.ts.trap | 282 +- .../tests/ts/output/trap/privateField.ts.trap | 241 +- .../tests/ts/output/trap/regexp.ts.trap | 50 +- .../tests/ts/output/trap/templates.ts.trap | 140 +- .../ts/output/trap/thisparameter.ts.trap | 590 +- .../tests/ts/output/trap/tryfinally.ts.trap | 196 +- .../ts/output/trap/typeannotations.ts.trap | 3785 ++++---- .../tests/ts/output/trap/unicode.ts.trap | 12 +- .../tests/ts/output/trap/unicodeId.ts.trap | 68 +- .../trap/uninstantiatedNamespace.ts.trap | 738 +- .../tests/v8/output/trap/tst.js.trap | 174 +- .../tests/variables/output/trap/const.js.trap | 68 +- .../variables/output/trap/finally.js.trap | 268 +- .../variables/output/trap/switch.js.trap | 162 +- .../tests/variables/output/trap/try.js.trap | 144 +- .../variables/output/trap/variables.js.trap | 658 +- .../tests/vue/output/trap/rails.html.erb.trap | 120 +- .../tests/vue/output/trap/simple-jsp.jsp.trap | 288 +- 265 files changed, 45997 insertions(+), 44908 deletions(-) diff --git a/javascript/extractor/tests/cfg/output/trap/classexpr1.js.trap b/javascript/extractor/tests/cfg/output/trap/classexpr1.js.trap index 36170d46ce68..284da7fca624 100644 --- a/javascript/extractor/tests/cfg/output/trap/classexpr1.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/classexpr1.js.trap @@ -47,74 +47,84 @@ locations_default(#20015,#10000,1,11,1,10) hasLocation(#20014,#20015) toplevels(#20001,0) hasLocation(#20001,#20003) -#20016=* -stmts(#20016,2,#20001,0,"!class {};") -hasLocation(#20016,#20003) -stmt_containers(#20016,#20001) +#20016=@"var;{this};{#20000}" +variables(#20016,"this",#20000) #20017=* -exprs(#20017,18,#20016,0,"!class {}") -#20018=@"loc,{#10000},1,1,1,9" -locations_default(#20018,#10000,1,1,1,9) -hasLocation(#20017,#20018) -enclosing_stmt(#20017,#20016) -expr_containers(#20017,#20001) -#20019=* -exprs(#20019,80,#20017,0,"class {}") -#20020=@"loc,{#10000},1,2,1,9" -locations_default(#20020,#10000,1,2,1,9) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20016) -expr_containers(#20019,#20001) -#20021=* -properties(#20021,#20019,2,0,"constructor() {}") -#20022=@"loc,{#10000},1,8,1,7" -locations_default(#20022,#10000,1,8,1,7) -hasLocation(#20021,#20022) -#20023=* -exprs(#20023,0,#20021,0,"constructor") -hasLocation(#20023,#20022) -enclosing_stmt(#20023,#20016) -expr_containers(#20023,#20001) -literals("constructor","constructor",#20023) +stmts(#20017,2,#20001,0,"!class {};") +hasLocation(#20017,#20003) +stmt_containers(#20017,#20001) +#20018=* +exprs(#20018,18,#20017,0,"!class {}") +#20019=@"loc,{#10000},1,1,1,9" +locations_default(#20019,#10000,1,1,1,9) +hasLocation(#20018,#20019) +enclosing_stmt(#20018,#20017) +expr_containers(#20018,#20001) +#20020=* +exprs(#20020,80,#20018,0,"class {}") +#20021=@"loc,{#10000},1,2,1,9" +locations_default(#20021,#10000,1,2,1,9) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20017) +expr_containers(#20020,#20001) +#20022=* +scopes(#20022,8) +scopenodes(#20020,#20022) +scopenesting(#20022,#20000) +#20023=@"var;{this};{#20022}" +variables(#20023,"this",#20022) #20024=* -exprs(#20024,9,#20021,1,"() {}") -hasLocation(#20024,#20022) -enclosing_stmt(#20024,#20016) -expr_containers(#20024,#20001) -#20025=* -scopes(#20025,1) -scopenodes(#20024,#20025) -scopenesting(#20025,#20000) -#20026=@"var;{arguments};{#20025}" -variables(#20026,"arguments",#20025) -is_arguments_object(#20026) +properties(#20024,#20020,2,0,"constructor() {}") +#20025=@"loc,{#10000},1,8,1,7" +locations_default(#20025,#10000,1,8,1,7) +hasLocation(#20024,#20025) +#20026=* +exprs(#20026,0,#20024,0,"constructor") +hasLocation(#20026,#20025) +enclosing_stmt(#20026,#20017) +expr_containers(#20026,#20001) +literals("constructor","constructor",#20026) #20027=* -stmts(#20027,1,#20024,-2,"{}") -hasLocation(#20027,#20022) -stmt_containers(#20027,#20024) -is_method(#20021) +exprs(#20027,9,#20024,1,"() {}") +hasLocation(#20027,#20025) +enclosing_stmt(#20027,#20017) +expr_containers(#20027,#20001) #20028=* -entry_cfg_node(#20028,#20001) -#20029=@"loc,{#10000},1,1,1,0" -locations_default(#20029,#10000,1,1,1,0) -hasLocation(#20028,#20029) -#20030=* -exit_cfg_node(#20030,#20001) -hasLocation(#20030,#20015) -successor(#20016,#20023) -successor(#20024,#20021) +scopes(#20028,1) +scopenodes(#20027,#20028) +scopenesting(#20028,#20022) +#20029=@"var;{this};{#20028}" +variables(#20029,"this",#20028) +#20030=@"var;{arguments};{#20028}" +variables(#20030,"arguments",#20028) +is_arguments_object(#20030) #20031=* -entry_cfg_node(#20031,#20024) -hasLocation(#20031,#20022) +stmts(#20031,1,#20027,-2,"{}") +hasLocation(#20031,#20025) +stmt_containers(#20031,#20027) +is_method(#20024) #20032=* -exit_cfg_node(#20032,#20024) -hasLocation(#20032,#20022) -successor(#20027,#20032) -successor(#20031,#20027) -successor(#20023,#20024) -successor(#20021,#20019) -successor(#20019,#20017) -successor(#20017,#20030) -successor(#20028,#20016) +entry_cfg_node(#20032,#20001) +#20033=@"loc,{#10000},1,1,1,0" +locations_default(#20033,#10000,1,1,1,0) +hasLocation(#20032,#20033) +#20034=* +exit_cfg_node(#20034,#20001) +hasLocation(#20034,#20015) +successor(#20017,#20026) +successor(#20027,#20024) +#20035=* +entry_cfg_node(#20035,#20027) +hasLocation(#20035,#20025) +#20036=* +exit_cfg_node(#20036,#20027) +hasLocation(#20036,#20025) +successor(#20031,#20036) +successor(#20035,#20031) +successor(#20026,#20027) +successor(#20024,#20020) +successor(#20020,#20018) +successor(#20018,#20034) +successor(#20032,#20017) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/cfg/output/trap/classexpr2.js.trap b/javascript/extractor/tests/cfg/output/trap/classexpr2.js.trap index 7dcf1ca76258..21293800f5cf 100644 --- a/javascript/extractor/tests/cfg/output/trap/classexpr2.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/classexpr2.js.trap @@ -52,91 +52,97 @@ locations_default(#20017,#10000,1,13,1,12) hasLocation(#20016,#20017) toplevels(#20001,0) hasLocation(#20001,#20003) -#20018=* -stmts(#20018,2,#20001,0,"!class A {};") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,18,#20018,0,"!class A {}") -#20020=@"loc,{#10000},1,1,1,11" -locations_default(#20020,#10000,1,1,1,11) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) -#20021=* -exprs(#20021,80,#20019,0,"class A {}") -#20022=@"loc,{#10000},1,2,1,11" -locations_default(#20022,#10000,1,2,1,11) -hasLocation(#20021,#20022) -enclosing_stmt(#20021,#20018) -expr_containers(#20021,#20001) -#20023=* -scopes(#20023,8) -scopenodes(#20021,#20023) -scopenesting(#20023,#20000) -#20024=@"var;{A};{#20023}" -variables(#20024,"A",#20023) -#20025=@"local_type_name;{A};{#20023}" -local_type_names(#20025,"A",#20023) -#20026=* -exprs(#20026,78,#20021,0,"A") -hasLocation(#20026,#20009) -enclosing_stmt(#20026,#20018) -expr_containers(#20026,#20001) -literals("A","A",#20026) -decl(#20026,#20024) -typedecl(#20026,#20025) -#20027=* -properties(#20027,#20021,2,0,"constructor() {}") -#20028=@"loc,{#10000},1,10,1,9" -locations_default(#20028,#10000,1,10,1,9) -hasLocation(#20027,#20028) +stmts(#20019,2,#20001,0,"!class A {};") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) +#20020=* +exprs(#20020,18,#20019,0,"!class A {}") +#20021=@"loc,{#10000},1,1,1,11" +locations_default(#20021,#10000,1,1,1,11) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20001) +#20022=* +exprs(#20022,80,#20020,0,"class A {}") +#20023=@"loc,{#10000},1,2,1,11" +locations_default(#20023,#10000,1,2,1,11) +hasLocation(#20022,#20023) +enclosing_stmt(#20022,#20019) +expr_containers(#20022,#20001) +#20024=* +scopes(#20024,8) +scopenodes(#20022,#20024) +scopenesting(#20024,#20000) +#20025=@"var;{this};{#20024}" +variables(#20025,"this",#20024) +#20026=@"var;{A};{#20024}" +variables(#20026,"A",#20024) +#20027=@"local_type_name;{A};{#20024}" +local_type_names(#20027,"A",#20024) +#20028=* +exprs(#20028,78,#20022,0,"A") +hasLocation(#20028,#20009) +enclosing_stmt(#20028,#20019) +expr_containers(#20028,#20001) +literals("A","A",#20028) +decl(#20028,#20026) +typedecl(#20028,#20027) #20029=* -exprs(#20029,0,#20027,0,"constructor") -hasLocation(#20029,#20028) -enclosing_stmt(#20029,#20018) -expr_containers(#20029,#20001) -literals("constructor","constructor",#20029) -#20030=* -exprs(#20030,9,#20027,1,"() {}") -hasLocation(#20030,#20028) -enclosing_stmt(#20030,#20018) -expr_containers(#20030,#20001) +properties(#20029,#20022,2,0,"constructor() {}") +#20030=@"loc,{#10000},1,10,1,9" +locations_default(#20030,#10000,1,10,1,9) +hasLocation(#20029,#20030) #20031=* -scopes(#20031,1) -scopenodes(#20030,#20031) -scopenesting(#20031,#20023) -#20032=@"var;{arguments};{#20031}" -variables(#20032,"arguments",#20031) -is_arguments_object(#20032) +exprs(#20031,0,#20029,0,"constructor") +hasLocation(#20031,#20030) +enclosing_stmt(#20031,#20019) +expr_containers(#20031,#20001) +literals("constructor","constructor",#20031) +#20032=* +exprs(#20032,9,#20029,1,"() {}") +hasLocation(#20032,#20030) +enclosing_stmt(#20032,#20019) +expr_containers(#20032,#20001) #20033=* -stmts(#20033,1,#20030,-2,"{}") -hasLocation(#20033,#20028) -stmt_containers(#20033,#20030) -is_method(#20027) -#20034=* -entry_cfg_node(#20034,#20001) -#20035=@"loc,{#10000},1,1,1,0" -locations_default(#20035,#10000,1,1,1,0) -hasLocation(#20034,#20035) +scopes(#20033,1) +scopenodes(#20032,#20033) +scopenesting(#20033,#20024) +#20034=@"var;{this};{#20033}" +variables(#20034,"this",#20033) +#20035=@"var;{arguments};{#20033}" +variables(#20035,"arguments",#20033) +is_arguments_object(#20035) #20036=* -exit_cfg_node(#20036,#20001) -hasLocation(#20036,#20017) -successor(#20018,#20026) -successor(#20030,#20027) +stmts(#20036,1,#20032,-2,"{}") +hasLocation(#20036,#20030) +stmt_containers(#20036,#20032) +is_method(#20029) #20037=* -entry_cfg_node(#20037,#20030) -hasLocation(#20037,#20028) -#20038=* -exit_cfg_node(#20038,#20030) -hasLocation(#20038,#20028) -successor(#20033,#20038) -successor(#20037,#20033) -successor(#20029,#20030) -successor(#20027,#20021) -successor(#20026,#20029) -successor(#20021,#20019) -successor(#20019,#20036) -successor(#20034,#20018) +entry_cfg_node(#20037,#20001) +#20038=@"loc,{#10000},1,1,1,0" +locations_default(#20038,#10000,1,1,1,0) +hasLocation(#20037,#20038) +#20039=* +exit_cfg_node(#20039,#20001) +hasLocation(#20039,#20017) +successor(#20019,#20028) +successor(#20032,#20029) +#20040=* +entry_cfg_node(#20040,#20032) +hasLocation(#20040,#20030) +#20041=* +exit_cfg_node(#20041,#20032) +hasLocation(#20041,#20030) +successor(#20036,#20041) +successor(#20040,#20036) +successor(#20031,#20032) +successor(#20029,#20022) +successor(#20028,#20031) +successor(#20022,#20020) +successor(#20020,#20039) +successor(#20037,#20019) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/cfg/output/trap/classexpr3.js.trap b/javascript/extractor/tests/cfg/output/trap/classexpr3.js.trap index 097b06b4183f..d9343332595f 100644 --- a/javascript/extractor/tests/cfg/output/trap/classexpr3.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/classexpr3.js.trap @@ -57,125 +57,135 @@ locations_default(#20019,#10000,1,21,1,20) hasLocation(#20018,#20019) toplevels(#20001,0) hasLocation(#20001,#20003) -#20020=* -stmts(#20020,2,#20001,0,"!class extends B {};") -hasLocation(#20020,#20003) -stmt_containers(#20020,#20001) +#20020=@"var;{this};{#20000}" +variables(#20020,"this",#20000) #20021=* -exprs(#20021,18,#20020,0,"!class extends B {}") -#20022=@"loc,{#10000},1,1,1,19" -locations_default(#20022,#10000,1,1,1,19) -hasLocation(#20021,#20022) -enclosing_stmt(#20021,#20020) -expr_containers(#20021,#20001) -#20023=* -exprs(#20023,80,#20021,0,"class extends B {}") -#20024=@"loc,{#10000},1,2,1,19" -locations_default(#20024,#10000,1,2,1,19) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20020) -expr_containers(#20023,#20001) -#20025=* -exprs(#20025,79,#20023,1,"B") -hasLocation(#20025,#20011) -enclosing_stmt(#20025,#20020) -expr_containers(#20025,#20001) -literals("B","B",#20025) -#20026=@"var;{B};{#20000}" -variables(#20026,"B",#20000) -bind(#20025,#20026) -#20027=* -properties(#20027,#20023,2,0,"constru ... rgs); }") -#20028=@"loc,{#10000},1,18,1,17" -locations_default(#20028,#10000,1,18,1,17) -hasLocation(#20027,#20028) -#20029=* -exprs(#20029,0,#20027,0,"constructor") -hasLocation(#20029,#20028) -enclosing_stmt(#20029,#20020) -expr_containers(#20029,#20001) -literals("constructor","constructor",#20029) +stmts(#20021,2,#20001,0,"!class extends B {};") +hasLocation(#20021,#20003) +stmt_containers(#20021,#20001) +#20022=* +exprs(#20022,18,#20021,0,"!class extends B {}") +#20023=@"loc,{#10000},1,1,1,19" +locations_default(#20023,#10000,1,1,1,19) +hasLocation(#20022,#20023) +enclosing_stmt(#20022,#20021) +expr_containers(#20022,#20001) +#20024=* +exprs(#20024,80,#20022,0,"class extends B {}") +#20025=@"loc,{#10000},1,2,1,19" +locations_default(#20025,#10000,1,2,1,19) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20021) +expr_containers(#20024,#20001) +#20026=* +scopes(#20026,8) +scopenodes(#20024,#20026) +scopenesting(#20026,#20000) +#20027=@"var;{this};{#20026}" +variables(#20027,"this",#20026) +#20028=* +exprs(#20028,79,#20024,1,"B") +hasLocation(#20028,#20011) +enclosing_stmt(#20028,#20021) +expr_containers(#20028,#20001) +literals("B","B",#20028) +#20029=@"var;{B};{#20000}" +variables(#20029,"B",#20000) +bind(#20028,#20029) #20030=* -exprs(#20030,9,#20027,1,"(...arg ... rgs); }") -hasLocation(#20030,#20028) -enclosing_stmt(#20030,#20020) -expr_containers(#20030,#20001) -#20031=* -scopes(#20031,1) -scopenodes(#20030,#20031) -scopenesting(#20031,#20000) -#20032=@"var;{args};{#20031}" -variables(#20032,"args",#20031) +properties(#20030,#20024,2,0,"constru ... rgs); }") +#20031=@"loc,{#10000},1,18,1,17" +locations_default(#20031,#10000,1,18,1,17) +hasLocation(#20030,#20031) +#20032=* +exprs(#20032,0,#20030,0,"constructor") +hasLocation(#20032,#20031) +enclosing_stmt(#20032,#20021) +expr_containers(#20032,#20001) +literals("constructor","constructor",#20032) #20033=* -exprs(#20033,78,#20030,0,"args") -hasLocation(#20033,#20028) -expr_containers(#20033,#20030) -literals("args","args",#20033) -decl(#20033,#20032) -#20034=@"var;{arguments};{#20031}" -variables(#20034,"arguments",#20031) -is_arguments_object(#20034) -has_rest_parameter(#20030) -#20035=* -stmts(#20035,1,#20030,-2,"{ super(...args); }") -hasLocation(#20035,#20028) -stmt_containers(#20035,#20030) -#20036=* -stmts(#20036,2,#20035,0,"super(...args);") -hasLocation(#20036,#20028) -stmt_containers(#20036,#20030) +exprs(#20033,9,#20030,1,"(...arg ... rgs); }") +hasLocation(#20033,#20031) +enclosing_stmt(#20033,#20021) +expr_containers(#20033,#20001) +#20034=* +scopes(#20034,1) +scopenodes(#20033,#20034) +scopenesting(#20034,#20026) +#20035=@"var;{this};{#20034}" +variables(#20035,"this",#20034) +#20036=@"var;{args};{#20034}" +variables(#20036,"args",#20034) #20037=* -exprs(#20037,13,#20036,0,"super(...args)") -hasLocation(#20037,#20028) -enclosing_stmt(#20037,#20036) -expr_containers(#20037,#20030) -#20038=* -exprs(#20038,81,#20037,-1,"super") -hasLocation(#20038,#20028) -enclosing_stmt(#20038,#20036) -expr_containers(#20038,#20030) +exprs(#20037,78,#20033,0,"args") +hasLocation(#20037,#20031) +expr_containers(#20037,#20033) +literals("args","args",#20037) +decl(#20037,#20036) +#20038=@"var;{arguments};{#20034}" +variables(#20038,"arguments",#20034) +is_arguments_object(#20038) +has_rest_parameter(#20033) #20039=* -exprs(#20039,66,#20037,0,"...args") -hasLocation(#20039,#20028) -enclosing_stmt(#20039,#20036) -expr_containers(#20039,#20030) +stmts(#20039,1,#20033,-2,"{ super(...args); }") +hasLocation(#20039,#20031) +stmt_containers(#20039,#20033) #20040=* -exprs(#20040,79,#20039,0,"args") -hasLocation(#20040,#20028) -enclosing_stmt(#20040,#20036) -expr_containers(#20040,#20030) -literals("args","args",#20040) -bind(#20040,#20032) -is_method(#20027) +stmts(#20040,2,#20039,0,"super(...args);") +hasLocation(#20040,#20031) +stmt_containers(#20040,#20033) #20041=* -entry_cfg_node(#20041,#20001) -#20042=@"loc,{#10000},1,1,1,0" -locations_default(#20042,#10000,1,1,1,0) -hasLocation(#20041,#20042) +exprs(#20041,13,#20040,0,"super(...args)") +hasLocation(#20041,#20031) +enclosing_stmt(#20041,#20040) +expr_containers(#20041,#20033) +#20042=* +exprs(#20042,81,#20041,-1,"super") +hasLocation(#20042,#20031) +enclosing_stmt(#20042,#20040) +expr_containers(#20042,#20033) #20043=* -exit_cfg_node(#20043,#20001) -hasLocation(#20043,#20019) -successor(#20020,#20025) -successor(#20030,#20027) +exprs(#20043,66,#20041,0,"...args") +hasLocation(#20043,#20031) +enclosing_stmt(#20043,#20040) +expr_containers(#20043,#20033) #20044=* -entry_cfg_node(#20044,#20030) -hasLocation(#20044,#20028) +exprs(#20044,79,#20043,0,"args") +hasLocation(#20044,#20031) +enclosing_stmt(#20044,#20040) +expr_containers(#20044,#20033) +literals("args","args",#20044) +bind(#20044,#20036) +is_method(#20030) #20045=* -exit_cfg_node(#20045,#20030) -hasLocation(#20045,#20028) -successor(#20036,#20038) -successor(#20040,#20039) -successor(#20039,#20037) -successor(#20038,#20040) -successor(#20037,#20045) -successor(#20035,#20036) -successor(#20033,#20035) -successor(#20044,#20033) -successor(#20029,#20030) -successor(#20027,#20023) -successor(#20025,#20029) -successor(#20023,#20021) -successor(#20021,#20043) -successor(#20041,#20020) +entry_cfg_node(#20045,#20001) +#20046=@"loc,{#10000},1,1,1,0" +locations_default(#20046,#10000,1,1,1,0) +hasLocation(#20045,#20046) +#20047=* +exit_cfg_node(#20047,#20001) +hasLocation(#20047,#20019) +successor(#20021,#20028) +successor(#20033,#20030) +#20048=* +entry_cfg_node(#20048,#20033) +hasLocation(#20048,#20031) +#20049=* +exit_cfg_node(#20049,#20033) +hasLocation(#20049,#20031) +successor(#20040,#20042) +successor(#20044,#20043) +successor(#20043,#20041) +successor(#20042,#20044) +successor(#20041,#20049) +successor(#20039,#20040) +successor(#20037,#20039) +successor(#20048,#20037) +successor(#20032,#20033) +successor(#20030,#20024) +successor(#20028,#20032) +successor(#20024,#20022) +successor(#20022,#20047) +successor(#20045,#20021) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/cfg/output/trap/classexpr4.js.trap b/javascript/extractor/tests/cfg/output/trap/classexpr4.js.trap index 932c91d875c8..9b8c75d3e5ee 100644 --- a/javascript/extractor/tests/cfg/output/trap/classexpr4.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/classexpr4.js.trap @@ -62,142 +62,148 @@ locations_default(#20021,#10000,1,23,1,22) hasLocation(#20020,#20021) toplevels(#20001,0) hasLocation(#20001,#20003) -#20022=* -stmts(#20022,2,#20001,0,"!class ... s B {};") -hasLocation(#20022,#20003) -stmt_containers(#20022,#20001) +#20022=@"var;{this};{#20000}" +variables(#20022,"this",#20000) #20023=* -exprs(#20023,18,#20022,0,"!class ... ds B {}") -#20024=@"loc,{#10000},1,1,1,21" -locations_default(#20024,#10000,1,1,1,21) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20022) -expr_containers(#20023,#20001) -#20025=* -exprs(#20025,80,#20023,0,"class A extends B {}") -#20026=@"loc,{#10000},1,2,1,21" -locations_default(#20026,#10000,1,2,1,21) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20022) -expr_containers(#20025,#20001) -#20027=* -scopes(#20027,8) -scopenodes(#20025,#20027) -scopenesting(#20027,#20000) -#20028=@"var;{A};{#20027}" -variables(#20028,"A",#20027) -#20029=@"local_type_name;{A};{#20027}" -local_type_names(#20029,"A",#20027) -#20030=* -exprs(#20030,78,#20025,0,"A") -hasLocation(#20030,#20009) -enclosing_stmt(#20030,#20022) -expr_containers(#20030,#20001) -literals("A","A",#20030) -decl(#20030,#20028) -typedecl(#20030,#20029) -#20031=* -exprs(#20031,79,#20025,1,"B") -hasLocation(#20031,#20013) -enclosing_stmt(#20031,#20022) -expr_containers(#20031,#20001) -literals("B","B",#20031) -#20032=@"var;{B};{#20000}" -variables(#20032,"B",#20000) -bind(#20031,#20032) +stmts(#20023,2,#20001,0,"!class ... s B {};") +hasLocation(#20023,#20003) +stmt_containers(#20023,#20001) +#20024=* +exprs(#20024,18,#20023,0,"!class ... ds B {}") +#20025=@"loc,{#10000},1,1,1,21" +locations_default(#20025,#10000,1,1,1,21) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20023) +expr_containers(#20024,#20001) +#20026=* +exprs(#20026,80,#20024,0,"class A extends B {}") +#20027=@"loc,{#10000},1,2,1,21" +locations_default(#20027,#10000,1,2,1,21) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20023) +expr_containers(#20026,#20001) +#20028=* +scopes(#20028,8) +scopenodes(#20026,#20028) +scopenesting(#20028,#20000) +#20029=@"var;{this};{#20028}" +variables(#20029,"this",#20028) +#20030=@"var;{A};{#20028}" +variables(#20030,"A",#20028) +#20031=@"local_type_name;{A};{#20028}" +local_type_names(#20031,"A",#20028) +#20032=* +exprs(#20032,78,#20026,0,"A") +hasLocation(#20032,#20009) +enclosing_stmt(#20032,#20023) +expr_containers(#20032,#20001) +literals("A","A",#20032) +decl(#20032,#20030) +typedecl(#20032,#20031) #20033=* -properties(#20033,#20025,2,0,"constru ... rgs); }") -#20034=@"loc,{#10000},1,20,1,19" -locations_default(#20034,#10000,1,20,1,19) -hasLocation(#20033,#20034) +exprs(#20033,79,#20026,1,"B") +hasLocation(#20033,#20013) +enclosing_stmt(#20033,#20023) +expr_containers(#20033,#20001) +literals("B","B",#20033) +#20034=@"var;{B};{#20000}" +variables(#20034,"B",#20000) +bind(#20033,#20034) #20035=* -exprs(#20035,0,#20033,0,"constructor") -hasLocation(#20035,#20034) -enclosing_stmt(#20035,#20022) -expr_containers(#20035,#20001) -literals("constructor","constructor",#20035) -#20036=* -exprs(#20036,9,#20033,1,"(...arg ... rgs); }") -hasLocation(#20036,#20034) -enclosing_stmt(#20036,#20022) -expr_containers(#20036,#20001) +properties(#20035,#20026,2,0,"constru ... rgs); }") +#20036=@"loc,{#10000},1,20,1,19" +locations_default(#20036,#10000,1,20,1,19) +hasLocation(#20035,#20036) #20037=* -scopes(#20037,1) -scopenodes(#20036,#20037) -scopenesting(#20037,#20027) -#20038=@"var;{args};{#20037}" -variables(#20038,"args",#20037) +exprs(#20037,0,#20035,0,"constructor") +hasLocation(#20037,#20036) +enclosing_stmt(#20037,#20023) +expr_containers(#20037,#20001) +literals("constructor","constructor",#20037) +#20038=* +exprs(#20038,9,#20035,1,"(...arg ... rgs); }") +hasLocation(#20038,#20036) +enclosing_stmt(#20038,#20023) +expr_containers(#20038,#20001) #20039=* -exprs(#20039,78,#20036,0,"args") -hasLocation(#20039,#20034) -expr_containers(#20039,#20036) -literals("args","args",#20039) -decl(#20039,#20038) -#20040=@"var;{arguments};{#20037}" -variables(#20040,"arguments",#20037) -is_arguments_object(#20040) -has_rest_parameter(#20036) -#20041=* -stmts(#20041,1,#20036,-2,"{ super(...args); }") -hasLocation(#20041,#20034) -stmt_containers(#20041,#20036) +scopes(#20039,1) +scopenodes(#20038,#20039) +scopenesting(#20039,#20028) +#20040=@"var;{this};{#20039}" +variables(#20040,"this",#20039) +#20041=@"var;{args};{#20039}" +variables(#20041,"args",#20039) #20042=* -stmts(#20042,2,#20041,0,"super(...args);") -hasLocation(#20042,#20034) -stmt_containers(#20042,#20036) -#20043=* -exprs(#20043,13,#20042,0,"super(...args)") -hasLocation(#20043,#20034) -enclosing_stmt(#20043,#20042) -expr_containers(#20043,#20036) +exprs(#20042,78,#20038,0,"args") +hasLocation(#20042,#20036) +expr_containers(#20042,#20038) +literals("args","args",#20042) +decl(#20042,#20041) +#20043=@"var;{arguments};{#20039}" +variables(#20043,"arguments",#20039) +is_arguments_object(#20043) +has_rest_parameter(#20038) #20044=* -exprs(#20044,81,#20043,-1,"super") -hasLocation(#20044,#20034) -enclosing_stmt(#20044,#20042) -expr_containers(#20044,#20036) +stmts(#20044,1,#20038,-2,"{ super(...args); }") +hasLocation(#20044,#20036) +stmt_containers(#20044,#20038) #20045=* -exprs(#20045,66,#20043,0,"...args") -hasLocation(#20045,#20034) -enclosing_stmt(#20045,#20042) -expr_containers(#20045,#20036) +stmts(#20045,2,#20044,0,"super(...args);") +hasLocation(#20045,#20036) +stmt_containers(#20045,#20038) #20046=* -exprs(#20046,79,#20045,0,"args") -hasLocation(#20046,#20034) -enclosing_stmt(#20046,#20042) -expr_containers(#20046,#20036) -literals("args","args",#20046) -bind(#20046,#20038) -is_method(#20033) +exprs(#20046,13,#20045,0,"super(...args)") +hasLocation(#20046,#20036) +enclosing_stmt(#20046,#20045) +expr_containers(#20046,#20038) #20047=* -entry_cfg_node(#20047,#20001) -#20048=@"loc,{#10000},1,1,1,0" -locations_default(#20048,#10000,1,1,1,0) -hasLocation(#20047,#20048) +exprs(#20047,81,#20046,-1,"super") +hasLocation(#20047,#20036) +enclosing_stmt(#20047,#20045) +expr_containers(#20047,#20038) +#20048=* +exprs(#20048,66,#20046,0,"...args") +hasLocation(#20048,#20036) +enclosing_stmt(#20048,#20045) +expr_containers(#20048,#20038) #20049=* -exit_cfg_node(#20049,#20001) -hasLocation(#20049,#20021) -successor(#20022,#20030) -successor(#20036,#20033) +exprs(#20049,79,#20048,0,"args") +hasLocation(#20049,#20036) +enclosing_stmt(#20049,#20045) +expr_containers(#20049,#20038) +literals("args","args",#20049) +bind(#20049,#20041) +is_method(#20035) #20050=* -entry_cfg_node(#20050,#20036) -hasLocation(#20050,#20034) -#20051=* -exit_cfg_node(#20051,#20036) -hasLocation(#20051,#20034) +entry_cfg_node(#20050,#20001) +#20051=@"loc,{#10000},1,1,1,0" +locations_default(#20051,#10000,1,1,1,0) +hasLocation(#20050,#20051) +#20052=* +exit_cfg_node(#20052,#20001) +hasLocation(#20052,#20021) +successor(#20023,#20032) +successor(#20038,#20035) +#20053=* +entry_cfg_node(#20053,#20038) +hasLocation(#20053,#20036) +#20054=* +exit_cfg_node(#20054,#20038) +hasLocation(#20054,#20036) +successor(#20045,#20047) +successor(#20049,#20048) +successor(#20048,#20046) +successor(#20047,#20049) +successor(#20046,#20054) +successor(#20044,#20045) successor(#20042,#20044) -successor(#20046,#20045) -successor(#20045,#20043) -successor(#20044,#20046) -successor(#20043,#20051) -successor(#20041,#20042) -successor(#20039,#20041) -successor(#20050,#20039) -successor(#20035,#20036) -successor(#20033,#20025) -successor(#20031,#20035) -successor(#20030,#20031) -successor(#20025,#20023) -successor(#20023,#20049) -successor(#20047,#20022) +successor(#20053,#20042) +successor(#20037,#20038) +successor(#20035,#20026) +successor(#20033,#20037) +successor(#20032,#20033) +successor(#20026,#20024) +successor(#20024,#20052) +successor(#20050,#20023) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/cfg/output/trap/fields.js.trap b/javascript/extractor/tests/cfg/output/trap/fields.js.trap index 896fdccf2cd1..e499cc348747 100644 --- a/javascript/extractor/tests/cfg/output/trap/fields.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/fields.js.trap @@ -384,361 +384,375 @@ variables(#20136,"B",#20000) local_type_names(#20137,"A",#20000) #20138=@"local_type_name;{B};{#20000}" local_type_names(#20138,"B",#20000) -#20139=* -stmts(#20139,26,#20001,0,"class A ... () {}\n}") -#20140=@"loc,{#10000},1,1,9,1" -locations_default(#20140,#10000,1,1,9,1) -hasLocation(#20139,#20140) -stmt_containers(#20139,#20001) -#20141=* -exprs(#20141,78,#20139,0,"A") -hasLocation(#20141,#20041) -enclosing_stmt(#20141,#20139) -expr_containers(#20141,#20001) -literals("A","A",#20141) -decl(#20141,#20135) -typedecl(#20141,#20137) +#20139=@"var;{this};{#20000}" +variables(#20139,"this",#20000) +#20140=* +stmts(#20140,26,#20001,0,"class A ... () {}\n}") +#20141=@"loc,{#10000},1,1,9,1" +locations_default(#20141,#10000,1,1,9,1) +hasLocation(#20140,#20141) +stmt_containers(#20140,#20001) #20142=* -scopes(#20142,10) -scopenodes(#20139,#20142) -scopenesting(#20142,#20000) +exprs(#20142,78,#20140,0,"A") +hasLocation(#20142,#20041) +enclosing_stmt(#20142,#20140) +expr_containers(#20142,#20001) +literals("A","A",#20142) +decl(#20142,#20135) +typedecl(#20142,#20137) #20143=* -properties(#20143,#20139,2,0,"constru ... or;\n }") -#20144=@"loc,{#10000},2,3,4,3" -locations_default(#20144,#10000,2,3,4,3) -hasLocation(#20143,#20144) +scopes(#20143,10) +scopenodes(#20140,#20143) +scopenesting(#20143,#20000) +#20144=@"var;{this};{#20143}" +variables(#20144,"this",#20143) #20145=* -exprs(#20145,0,#20143,0,"constructor") -hasLocation(#20145,#20045) -enclosing_stmt(#20145,#20139) -expr_containers(#20145,#20001) -literals("constructor","constructor",#20145) -#20146=* -exprs(#20146,9,#20143,1,"() {\n ctor;\n }") -#20147=@"loc,{#10000},2,14,4,3" -locations_default(#20147,#10000,2,14,4,3) -hasLocation(#20146,#20147) -enclosing_stmt(#20146,#20139) -expr_containers(#20146,#20001) +properties(#20145,#20140,2,0,"constru ... or;\n }") +#20146=@"loc,{#10000},2,3,4,3" +locations_default(#20146,#10000,2,3,4,3) +hasLocation(#20145,#20146) +#20147=* +exprs(#20147,0,#20145,0,"constructor") +hasLocation(#20147,#20045) +enclosing_stmt(#20147,#20140) +expr_containers(#20147,#20001) +literals("constructor","constructor",#20147) #20148=* -scopes(#20148,1) -scopenodes(#20146,#20148) -scopenesting(#20148,#20142) -#20149=@"var;{arguments};{#20148}" -variables(#20149,"arguments",#20148) -is_arguments_object(#20149) +exprs(#20148,9,#20145,1,"() {\n ctor;\n }") +#20149=@"loc,{#10000},2,14,4,3" +locations_default(#20149,#10000,2,14,4,3) +hasLocation(#20148,#20149) +enclosing_stmt(#20148,#20140) +expr_containers(#20148,#20001) #20150=* -stmts(#20150,1,#20146,-2,"{\n ctor;\n }") -#20151=@"loc,{#10000},2,17,4,3" -locations_default(#20151,#10000,2,17,4,3) -hasLocation(#20150,#20151) -stmt_containers(#20150,#20146) -#20152=* -stmts(#20152,2,#20150,0,"ctor;") -#20153=@"loc,{#10000},3,5,3,9" -locations_default(#20153,#10000,3,5,3,9) -hasLocation(#20152,#20153) -stmt_containers(#20152,#20146) -#20154=* -exprs(#20154,79,#20152,0,"ctor") -hasLocation(#20154,#20053) -enclosing_stmt(#20154,#20152) -expr_containers(#20154,#20146) -literals("ctor","ctor",#20154) -#20155=@"var;{ctor};{#20000}" -variables(#20155,"ctor",#20000) -bind(#20154,#20155) -is_method(#20143) -#20156=* -properties(#20156,#20139,3,8,"x;") -#20157=@"loc,{#10000},5,3,5,4" -locations_default(#20157,#10000,5,3,5,4) -hasLocation(#20156,#20157) -#20158=* -exprs(#20158,0,#20156,0,"x") -hasLocation(#20158,#20059) -expr_containers(#20158,#20146) -literals("x","x",#20158) +scopes(#20150,1) +scopenodes(#20148,#20150) +scopenesting(#20150,#20143) +#20151=@"var;{this};{#20150}" +variables(#20151,"this",#20150) +#20152=@"var;{arguments};{#20150}" +variables(#20152,"arguments",#20150) +is_arguments_object(#20152) +#20153=* +stmts(#20153,1,#20148,-2,"{\n ctor;\n }") +#20154=@"loc,{#10000},2,17,4,3" +locations_default(#20154,#10000,2,17,4,3) +hasLocation(#20153,#20154) +stmt_containers(#20153,#20148) +#20155=* +stmts(#20155,2,#20153,0,"ctor;") +#20156=@"loc,{#10000},3,5,3,9" +locations_default(#20156,#10000,3,5,3,9) +hasLocation(#20155,#20156) +stmt_containers(#20155,#20148) +#20157=* +exprs(#20157,79,#20155,0,"ctor") +hasLocation(#20157,#20053) +enclosing_stmt(#20157,#20155) +expr_containers(#20157,#20148) +literals("ctor","ctor",#20157) +#20158=@"var;{ctor};{#20000}" +variables(#20158,"ctor",#20000) +bind(#20157,#20158) +is_method(#20145) #20159=* -properties(#20159,#20139,4,8,"static y;") -#20160=@"loc,{#10000},6,3,6,11" -locations_default(#20160,#10000,6,3,6,11) +properties(#20159,#20140,3,8,"x;") +#20160=@"loc,{#10000},5,3,5,4" +locations_default(#20160,#10000,5,3,5,4) hasLocation(#20159,#20160) #20161=* -exprs(#20161,0,#20159,0,"y") -hasLocation(#20161,#20065) -enclosing_stmt(#20161,#20139) -expr_containers(#20161,#20001) -literals("y","y",#20161) -is_static(#20159) +exprs(#20161,0,#20159,0,"x") +hasLocation(#20161,#20059) +expr_containers(#20161,#20148) +literals("x","x",#20161) #20162=* -properties(#20162,#20139,5,0,"f() {}") -#20163=@"loc,{#10000},7,3,7,8" -locations_default(#20163,#10000,7,3,7,8) +properties(#20162,#20140,4,8,"static y;") +#20163=@"loc,{#10000},6,3,6,11" +locations_default(#20163,#10000,6,3,6,11) hasLocation(#20162,#20163) #20164=* -exprs(#20164,0,#20162,0,"f") -hasLocation(#20164,#20069) -enclosing_stmt(#20164,#20139) +exprs(#20164,0,#20162,0,"y") +hasLocation(#20164,#20065) +enclosing_stmt(#20164,#20140) expr_containers(#20164,#20001) -literals("f","f",#20164) +literals("y","y",#20164) +is_static(#20162) #20165=* -exprs(#20165,9,#20162,1,"() {}") -#20166=@"loc,{#10000},7,4,7,8" -locations_default(#20166,#10000,7,4,7,8) +properties(#20165,#20140,5,0,"f() {}") +#20166=@"loc,{#10000},7,3,7,8" +locations_default(#20166,#10000,7,3,7,8) hasLocation(#20165,#20166) -enclosing_stmt(#20165,#20139) -expr_containers(#20165,#20001) #20167=* -scopes(#20167,1) -scopenodes(#20165,#20167) -scopenesting(#20167,#20142) -#20168=@"var;{arguments};{#20167}" -variables(#20168,"arguments",#20167) -is_arguments_object(#20168) -#20169=* -stmts(#20169,1,#20165,-2,"{}") -#20170=@"loc,{#10000},7,7,7,8" -locations_default(#20170,#10000,7,7,7,8) -hasLocation(#20169,#20170) -stmt_containers(#20169,#20165) -is_method(#20162) -#20171=* -properties(#20171,#20139,6,0,"static g() {}") -#20172=@"loc,{#10000},8,3,8,15" -locations_default(#20172,#10000,8,3,8,15) -hasLocation(#20171,#20172) +exprs(#20167,0,#20165,0,"f") +hasLocation(#20167,#20069) +enclosing_stmt(#20167,#20140) +expr_containers(#20167,#20001) +literals("f","f",#20167) +#20168=* +exprs(#20168,9,#20165,1,"() {}") +#20169=@"loc,{#10000},7,4,7,8" +locations_default(#20169,#10000,7,4,7,8) +hasLocation(#20168,#20169) +enclosing_stmt(#20168,#20140) +expr_containers(#20168,#20001) +#20170=* +scopes(#20170,1) +scopenodes(#20168,#20170) +scopenesting(#20170,#20143) +#20171=@"var;{this};{#20170}" +variables(#20171,"this",#20170) +#20172=@"var;{arguments};{#20170}" +variables(#20172,"arguments",#20170) +is_arguments_object(#20172) #20173=* -exprs(#20173,0,#20171,0,"g") -hasLocation(#20173,#20081) -enclosing_stmt(#20173,#20139) -expr_containers(#20173,#20001) -literals("g","g",#20173) -#20174=* -exprs(#20174,9,#20171,1,"() {}") -#20175=@"loc,{#10000},8,11,8,15" -locations_default(#20175,#10000,8,11,8,15) -hasLocation(#20174,#20175) -enclosing_stmt(#20174,#20139) -expr_containers(#20174,#20001) -#20176=* -scopes(#20176,1) -scopenodes(#20174,#20176) -scopenesting(#20176,#20142) -#20177=@"var;{arguments};{#20176}" -variables(#20177,"arguments",#20176) -is_arguments_object(#20177) +stmts(#20173,1,#20168,-2,"{}") +#20174=@"loc,{#10000},7,7,7,8" +locations_default(#20174,#10000,7,7,7,8) +hasLocation(#20173,#20174) +stmt_containers(#20173,#20168) +is_method(#20165) +#20175=* +properties(#20175,#20140,6,0,"static g() {}") +#20176=@"loc,{#10000},8,3,8,15" +locations_default(#20176,#10000,8,3,8,15) +hasLocation(#20175,#20176) +#20177=* +exprs(#20177,0,#20175,0,"g") +hasLocation(#20177,#20081) +enclosing_stmt(#20177,#20140) +expr_containers(#20177,#20001) +literals("g","g",#20177) #20178=* -stmts(#20178,1,#20174,-2,"{}") -#20179=@"loc,{#10000},8,14,8,15" -locations_default(#20179,#10000,8,14,8,15) +exprs(#20178,9,#20175,1,"() {}") +#20179=@"loc,{#10000},8,11,8,15" +locations_default(#20179,#10000,8,11,8,15) hasLocation(#20178,#20179) -stmt_containers(#20178,#20174) -is_method(#20171) -is_static(#20171) +enclosing_stmt(#20178,#20140) +expr_containers(#20178,#20001) #20180=* -stmts(#20180,26,#20001,1,"class B ... \n z;\n}") -#20181=@"loc,{#10000},11,1,18,1" -locations_default(#20181,#10000,11,1,18,1) -hasLocation(#20180,#20181) -stmt_containers(#20180,#20001) -#20182=* -exprs(#20182,78,#20180,0,"B") -hasLocation(#20182,#20094) -enclosing_stmt(#20182,#20180) -expr_containers(#20182,#20001) -literals("B","B",#20182) -decl(#20182,#20136) -typedecl(#20182,#20138) +scopes(#20180,1) +scopenodes(#20178,#20180) +scopenesting(#20180,#20143) +#20181=@"var;{this};{#20180}" +variables(#20181,"this",#20180) +#20182=@"var;{arguments};{#20180}" +variables(#20182,"arguments",#20180) +is_arguments_object(#20182) #20183=* -scopes(#20183,10) -scopenodes(#20180,#20183) -scopenesting(#20183,#20000) -#20184=* -exprs(#20184,79,#20180,1,"A") -hasLocation(#20184,#20098) -enclosing_stmt(#20184,#20180) -expr_containers(#20184,#20001) -literals("A","A",#20184) -bind(#20184,#20135) +stmts(#20183,1,#20178,-2,"{}") +#20184=@"loc,{#10000},8,14,8,15" +locations_default(#20184,#10000,8,14,8,15) +hasLocation(#20183,#20184) +stmt_containers(#20183,#20178) +is_method(#20175) +is_static(#20175) #20185=* -properties(#20185,#20180,2,0,"constru ... er;\n }") -#20186=@"loc,{#10000},12,3,16,3" -locations_default(#20186,#10000,12,3,16,3) +stmts(#20185,26,#20001,1,"class B ... \n z;\n}") +#20186=@"loc,{#10000},11,1,18,1" +locations_default(#20186,#10000,11,1,18,1) hasLocation(#20185,#20186) +stmt_containers(#20185,#20001) #20187=* -exprs(#20187,0,#20185,0,"constructor") -hasLocation(#20187,#20102) -enclosing_stmt(#20187,#20180) +exprs(#20187,78,#20185,0,"B") +hasLocation(#20187,#20094) +enclosing_stmt(#20187,#20185) expr_containers(#20187,#20001) -literals("constructor","constructor",#20187) +literals("B","B",#20187) +decl(#20187,#20136) +typedecl(#20187,#20138) #20188=* -exprs(#20188,9,#20185,1,"() {\n ... er;\n }") -#20189=@"loc,{#10000},12,14,16,3" -locations_default(#20189,#10000,12,14,16,3) -hasLocation(#20188,#20189) -enclosing_stmt(#20188,#20180) -expr_containers(#20188,#20001) +scopes(#20188,10) +scopenodes(#20185,#20188) +scopenesting(#20188,#20000) +#20189=@"var;{this};{#20188}" +variables(#20189,"this",#20188) #20190=* -scopes(#20190,1) -scopenodes(#20188,#20190) -scopenesting(#20190,#20183) -#20191=@"var;{arguments};{#20190}" -variables(#20191,"arguments",#20190) -is_arguments_object(#20191) -#20192=* -stmts(#20192,1,#20188,-2,"{\n b ... er;\n }") -#20193=@"loc,{#10000},12,17,16,3" -locations_default(#20193,#10000,12,17,16,3) -hasLocation(#20192,#20193) -stmt_containers(#20192,#20188) +exprs(#20190,79,#20185,1,"A") +hasLocation(#20190,#20098) +enclosing_stmt(#20190,#20185) +expr_containers(#20190,#20001) +literals("A","A",#20190) +bind(#20190,#20135) +#20191=* +properties(#20191,#20185,2,0,"constru ... er;\n }") +#20192=@"loc,{#10000},12,3,16,3" +locations_default(#20192,#10000,12,3,16,3) +hasLocation(#20191,#20192) +#20193=* +exprs(#20193,0,#20191,0,"constructor") +hasLocation(#20193,#20102) +enclosing_stmt(#20193,#20185) +expr_containers(#20193,#20001) +literals("constructor","constructor",#20193) #20194=* -stmts(#20194,2,#20192,0,"before;") -#20195=@"loc,{#10000},13,5,13,11" -locations_default(#20195,#10000,13,5,13,11) +exprs(#20194,9,#20191,1,"() {\n ... er;\n }") +#20195=@"loc,{#10000},12,14,16,3" +locations_default(#20195,#10000,12,14,16,3) hasLocation(#20194,#20195) -stmt_containers(#20194,#20188) +enclosing_stmt(#20194,#20185) +expr_containers(#20194,#20001) #20196=* -exprs(#20196,79,#20194,0,"before") -hasLocation(#20196,#20110) -enclosing_stmt(#20196,#20194) -expr_containers(#20196,#20188) -literals("before","before",#20196) -#20197=@"var;{before};{#20000}" -variables(#20197,"before",#20000) -bind(#20196,#20197) -#20198=* -stmts(#20198,2,#20192,1,"super();") -#20199=@"loc,{#10000},14,5,14,12" -locations_default(#20199,#10000,14,5,14,12) -hasLocation(#20198,#20199) -stmt_containers(#20198,#20188) -#20200=* -exprs(#20200,13,#20198,0,"super()") -#20201=@"loc,{#10000},14,5,14,11" -locations_default(#20201,#10000,14,5,14,11) -hasLocation(#20200,#20201) -enclosing_stmt(#20200,#20198) -expr_containers(#20200,#20188) -#20202=* -exprs(#20202,81,#20200,-1,"super") -hasLocation(#20202,#20114) -enclosing_stmt(#20202,#20198) -expr_containers(#20202,#20188) +scopes(#20196,1) +scopenodes(#20194,#20196) +scopenesting(#20196,#20188) +#20197=@"var;{this};{#20196}" +variables(#20197,"this",#20196) +#20198=@"var;{arguments};{#20196}" +variables(#20198,"arguments",#20196) +is_arguments_object(#20198) +#20199=* +stmts(#20199,1,#20194,-2,"{\n b ... er;\n }") +#20200=@"loc,{#10000},12,17,16,3" +locations_default(#20200,#10000,12,17,16,3) +hasLocation(#20199,#20200) +stmt_containers(#20199,#20194) +#20201=* +stmts(#20201,2,#20199,0,"before;") +#20202=@"loc,{#10000},13,5,13,11" +locations_default(#20202,#10000,13,5,13,11) +hasLocation(#20201,#20202) +stmt_containers(#20201,#20194) #20203=* -stmts(#20203,2,#20192,2,"after;") -#20204=@"loc,{#10000},15,5,15,10" -locations_default(#20204,#10000,15,5,15,10) -hasLocation(#20203,#20204) -stmt_containers(#20203,#20188) +exprs(#20203,79,#20201,0,"before") +hasLocation(#20203,#20110) +enclosing_stmt(#20203,#20201) +expr_containers(#20203,#20194) +literals("before","before",#20203) +#20204=@"var;{before};{#20000}" +variables(#20204,"before",#20000) +bind(#20203,#20204) #20205=* -exprs(#20205,79,#20203,0,"after") -hasLocation(#20205,#20122) -enclosing_stmt(#20205,#20203) -expr_containers(#20205,#20188) -literals("after","after",#20205) -#20206=@"var;{after};{#20000}" -variables(#20206,"after",#20000) -bind(#20205,#20206) -is_method(#20185) +stmts(#20205,2,#20199,1,"super();") +#20206=@"loc,{#10000},14,5,14,12" +locations_default(#20206,#10000,14,5,14,12) +hasLocation(#20205,#20206) +stmt_containers(#20205,#20194) #20207=* -properties(#20207,#20180,3,8,"z;") -#20208=@"loc,{#10000},17,3,17,4" -locations_default(#20208,#10000,17,3,17,4) +exprs(#20207,13,#20205,0,"super()") +#20208=@"loc,{#10000},14,5,14,11" +locations_default(#20208,#10000,14,5,14,11) hasLocation(#20207,#20208) +enclosing_stmt(#20207,#20205) +expr_containers(#20207,#20194) #20209=* -exprs(#20209,0,#20207,0,"z") -hasLocation(#20209,#20128) -expr_containers(#20209,#20188) -literals("z","z",#20209) +exprs(#20209,81,#20207,-1,"super") +hasLocation(#20209,#20114) +enclosing_stmt(#20209,#20205) +expr_containers(#20209,#20194) #20210=* -entry_cfg_node(#20210,#20001) -#20211=@"loc,{#10000},1,1,1,0" -locations_default(#20211,#10000,1,1,1,0) +stmts(#20210,2,#20199,2,"after;") +#20211=@"loc,{#10000},15,5,15,10" +locations_default(#20211,#10000,15,5,15,10) hasLocation(#20210,#20211) +stmt_containers(#20210,#20194) #20212=* -exit_cfg_node(#20212,#20001) -hasLocation(#20212,#20133) -successor(#20209,#20207) -successor(#20188,#20185) -#20213=* -entry_cfg_node(#20213,#20188) -#20214=@"loc,{#10000},12,14,12,13" -locations_default(#20214,#10000,12,14,12,13) -hasLocation(#20213,#20214) -#20215=* -exit_cfg_node(#20215,#20188) -#20216=@"loc,{#10000},16,4,16,3" -locations_default(#20216,#10000,16,4,16,3) -hasLocation(#20215,#20216) -successor(#20203,#20205) -successor(#20205,#20215) -successor(#20198,#20202) -successor(#20202,#20200) -successor(#20207,#20203) -successor(#20200,#20209) -successor(#20194,#20196) -successor(#20196,#20198) -successor(#20192,#20194) -successor(#20213,#20192) -successor(#20187,#20188) -successor(#20185,#20180) -successor(#20184,#20187) -successor(#20182,#20184) -successor(#20180,#20212) -successor(#20158,#20156) -successor(#20174,#20171) +exprs(#20212,79,#20210,0,"after") +hasLocation(#20212,#20122) +enclosing_stmt(#20212,#20210) +expr_containers(#20212,#20194) +literals("after","after",#20212) +#20213=@"var;{after};{#20000}" +variables(#20213,"after",#20000) +bind(#20212,#20213) +is_method(#20191) +#20214=* +properties(#20214,#20185,3,8,"z;") +#20215=@"loc,{#10000},17,3,17,4" +locations_default(#20215,#10000,17,3,17,4) +hasLocation(#20214,#20215) +#20216=* +exprs(#20216,0,#20214,0,"z") +hasLocation(#20216,#20128) +expr_containers(#20216,#20194) +literals("z","z",#20216) #20217=* -entry_cfg_node(#20217,#20174) -#20218=@"loc,{#10000},8,11,8,10" -locations_default(#20218,#10000,8,11,8,10) +entry_cfg_node(#20217,#20001) +#20218=@"loc,{#10000},1,1,1,0" +locations_default(#20218,#10000,1,1,1,0) hasLocation(#20217,#20218) #20219=* -exit_cfg_node(#20219,#20174) -#20220=@"loc,{#10000},8,16,8,15" -locations_default(#20220,#10000,8,16,8,15) -hasLocation(#20219,#20220) -successor(#20178,#20219) -successor(#20217,#20178) -successor(#20173,#20174) -successor(#20171,#20139) -successor(#20165,#20162) -#20221=* -entry_cfg_node(#20221,#20165) -#20222=@"loc,{#10000},7,4,7,3" -locations_default(#20222,#10000,7,4,7,3) -hasLocation(#20221,#20222) -#20223=* -exit_cfg_node(#20223,#20165) -#20224=@"loc,{#10000},7,9,7,8" -locations_default(#20224,#10000,7,9,7,8) -hasLocation(#20223,#20224) -successor(#20169,#20223) -successor(#20221,#20169) -successor(#20164,#20165) -successor(#20162,#20173) -successor(#20146,#20143) -#20225=* -entry_cfg_node(#20225,#20146) -#20226=@"loc,{#10000},2,14,2,13" -locations_default(#20226,#10000,2,14,2,13) -hasLocation(#20225,#20226) -successor(#20156,#20150) -#20227=* -exit_cfg_node(#20227,#20146) -#20228=@"loc,{#10000},4,4,4,3" -locations_default(#20228,#10000,4,4,4,3) -hasLocation(#20227,#20228) -successor(#20152,#20154) -successor(#20154,#20227) -successor(#20150,#20152) -successor(#20225,#20158) -successor(#20145,#20146) -successor(#20143,#20164) -successor(#20141,#20145) +exit_cfg_node(#20219,#20001) +hasLocation(#20219,#20133) +successor(#20216,#20214) +successor(#20194,#20191) +#20220=* +entry_cfg_node(#20220,#20194) +#20221=@"loc,{#10000},12,14,12,13" +locations_default(#20221,#10000,12,14,12,13) +hasLocation(#20220,#20221) +#20222=* +exit_cfg_node(#20222,#20194) +#20223=@"loc,{#10000},16,4,16,3" +locations_default(#20223,#10000,16,4,16,3) +hasLocation(#20222,#20223) +successor(#20210,#20212) +successor(#20212,#20222) +successor(#20205,#20209) +successor(#20209,#20207) +successor(#20214,#20210) +successor(#20207,#20216) +successor(#20201,#20203) +successor(#20203,#20205) +successor(#20199,#20201) +successor(#20220,#20199) +successor(#20193,#20194) +successor(#20191,#20185) +successor(#20190,#20193) +successor(#20187,#20190) +successor(#20185,#20219) successor(#20161,#20159) -successor(#20159,#20182) -successor(#20139,#20161) -successor(#20210,#20141) +successor(#20178,#20175) +#20224=* +entry_cfg_node(#20224,#20178) +#20225=@"loc,{#10000},8,11,8,10" +locations_default(#20225,#10000,8,11,8,10) +hasLocation(#20224,#20225) +#20226=* +exit_cfg_node(#20226,#20178) +#20227=@"loc,{#10000},8,16,8,15" +locations_default(#20227,#10000,8,16,8,15) +hasLocation(#20226,#20227) +successor(#20183,#20226) +successor(#20224,#20183) +successor(#20177,#20178) +successor(#20175,#20140) +successor(#20168,#20165) +#20228=* +entry_cfg_node(#20228,#20168) +#20229=@"loc,{#10000},7,4,7,3" +locations_default(#20229,#10000,7,4,7,3) +hasLocation(#20228,#20229) +#20230=* +exit_cfg_node(#20230,#20168) +#20231=@"loc,{#10000},7,9,7,8" +locations_default(#20231,#10000,7,9,7,8) +hasLocation(#20230,#20231) +successor(#20173,#20230) +successor(#20228,#20173) +successor(#20167,#20168) +successor(#20165,#20177) +successor(#20148,#20145) +#20232=* +entry_cfg_node(#20232,#20148) +#20233=@"loc,{#10000},2,14,2,13" +locations_default(#20233,#10000,2,14,2,13) +hasLocation(#20232,#20233) +successor(#20159,#20153) +#20234=* +exit_cfg_node(#20234,#20148) +#20235=@"loc,{#10000},4,4,4,3" +locations_default(#20235,#10000,4,4,4,3) +hasLocation(#20234,#20235) +successor(#20155,#20157) +successor(#20157,#20234) +successor(#20153,#20155) +successor(#20232,#20161) +successor(#20147,#20148) +successor(#20145,#20167) +successor(#20142,#20147) +successor(#20164,#20162) +successor(#20162,#20187) +successor(#20140,#20164) +successor(#20217,#20142) numlines(#10000,18,17,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/cfg/output/trap/seq.js.trap b/javascript/extractor/tests/cfg/output/trap/seq.js.trap index e9aee318c82e..9218d785c5b5 100644 --- a/javascript/extractor/tests/cfg/output/trap/seq.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/seq.js.trap @@ -87,110 +87,112 @@ locations_default(#20031,#10000,1,16,1,15) hasLocation(#20030,#20031) toplevels(#20001,0) hasLocation(#20001,#20003) -#20032=* -stmts(#20032,3,#20001,0,"if(x,1+2,y||z);") -hasLocation(#20032,#20003) -stmt_containers(#20032,#20001) +#20032=@"var;{this};{#20000}" +variables(#20032,"this",#20000) #20033=* -exprs(#20033,10,#20032,0,"x,1+2,y||z") -#20034=@"loc,{#10000},1,4,1,13" -locations_default(#20034,#10000,1,4,1,13) -hasLocation(#20033,#20034) -enclosing_stmt(#20033,#20032) -expr_containers(#20033,#20001) -#20035=* -exprs(#20035,79,#20033,0,"x") -hasLocation(#20035,#20009) -enclosing_stmt(#20035,#20032) -expr_containers(#20035,#20001) -literals("x","x",#20035) -#20036=@"var;{x};{#20000}" -variables(#20036,"x",#20000) -bind(#20035,#20036) -#20037=* -exprs(#20037,34,#20033,1,"1+2") -#20038=@"loc,{#10000},1,6,1,8" -locations_default(#20038,#10000,1,6,1,8) -hasLocation(#20037,#20038) -enclosing_stmt(#20037,#20032) -expr_containers(#20037,#20001) -#20039=* -exprs(#20039,3,#20037,0,"1") -hasLocation(#20039,#20013) -enclosing_stmt(#20039,#20032) -expr_containers(#20039,#20001) -literals("1","1",#20039) +stmts(#20033,3,#20001,0,"if(x,1+2,y||z);") +hasLocation(#20033,#20003) +stmt_containers(#20033,#20001) +#20034=* +exprs(#20034,10,#20033,0,"x,1+2,y||z") +#20035=@"loc,{#10000},1,4,1,13" +locations_default(#20035,#10000,1,4,1,13) +hasLocation(#20034,#20035) +enclosing_stmt(#20034,#20033) +expr_containers(#20034,#20001) +#20036=* +exprs(#20036,79,#20034,0,"x") +hasLocation(#20036,#20009) +enclosing_stmt(#20036,#20033) +expr_containers(#20036,#20001) +literals("x","x",#20036) +#20037=@"var;{x};{#20000}" +variables(#20037,"x",#20000) +bind(#20036,#20037) +#20038=* +exprs(#20038,34,#20034,1,"1+2") +#20039=@"loc,{#10000},1,6,1,8" +locations_default(#20039,#10000,1,6,1,8) +hasLocation(#20038,#20039) +enclosing_stmt(#20038,#20033) +expr_containers(#20038,#20001) #20040=* -exprs(#20040,3,#20037,1,"2") -hasLocation(#20040,#20017) -enclosing_stmt(#20040,#20032) +exprs(#20040,3,#20038,0,"1") +hasLocation(#20040,#20013) +enclosing_stmt(#20040,#20033) expr_containers(#20040,#20001) -literals("2","2",#20040) +literals("1","1",#20040) #20041=* -exprs(#20041,45,#20033,2,"y||z") -#20042=@"loc,{#10000},1,10,1,13" -locations_default(#20042,#10000,1,10,1,13) -hasLocation(#20041,#20042) -enclosing_stmt(#20041,#20032) +exprs(#20041,3,#20038,1,"2") +hasLocation(#20041,#20017) +enclosing_stmt(#20041,#20033) expr_containers(#20041,#20001) -#20043=* -exprs(#20043,79,#20041,0,"y") -hasLocation(#20043,#20021) -enclosing_stmt(#20043,#20032) -expr_containers(#20043,#20001) -literals("y","y",#20043) -#20044=@"var;{y};{#20000}" -variables(#20044,"y",#20000) -bind(#20043,#20044) -#20045=* -exprs(#20045,79,#20041,1,"z") -hasLocation(#20045,#20025) -enclosing_stmt(#20045,#20032) -expr_containers(#20045,#20001) -literals("z","z",#20045) -#20046=@"var;{z};{#20000}" -variables(#20046,"z",#20000) -bind(#20045,#20046) -#20047=* -stmts(#20047,0,#20032,1,";") -hasLocation(#20047,#20029) -stmt_containers(#20047,#20001) +literals("2","2",#20041) +#20042=* +exprs(#20042,45,#20034,2,"y||z") +#20043=@"loc,{#10000},1,10,1,13" +locations_default(#20043,#10000,1,10,1,13) +hasLocation(#20042,#20043) +enclosing_stmt(#20042,#20033) +expr_containers(#20042,#20001) +#20044=* +exprs(#20044,79,#20042,0,"y") +hasLocation(#20044,#20021) +enclosing_stmt(#20044,#20033) +expr_containers(#20044,#20001) +literals("y","y",#20044) +#20045=@"var;{y};{#20000}" +variables(#20045,"y",#20000) +bind(#20044,#20045) +#20046=* +exprs(#20046,79,#20042,1,"z") +hasLocation(#20046,#20025) +enclosing_stmt(#20046,#20033) +expr_containers(#20046,#20001) +literals("z","z",#20046) +#20047=@"var;{z};{#20000}" +variables(#20047,"z",#20000) +bind(#20046,#20047) #20048=* -entry_cfg_node(#20048,#20001) -#20049=@"loc,{#10000},1,1,1,0" -locations_default(#20049,#10000,1,1,1,0) -hasLocation(#20048,#20049) -#20050=* -exit_cfg_node(#20050,#20001) -hasLocation(#20050,#20031) -successor(#20032,#20033) -successor(#20033,#20035) -successor(#20041,#20043) +stmts(#20048,0,#20033,1,";") +hasLocation(#20048,#20029) +stmt_containers(#20048,#20001) +#20049=* +entry_cfg_node(#20049,#20001) +#20050=@"loc,{#10000},1,1,1,0" +locations_default(#20050,#10000,1,1,1,0) +hasLocation(#20049,#20050) #20051=* -guard_node(#20051,1,#20043) -hasLocation(#20051,#20021) -successor(#20051,#20047) +exit_cfg_node(#20051,#20001) +hasLocation(#20051,#20031) +successor(#20033,#20034) +successor(#20034,#20036) +successor(#20042,#20044) #20052=* -guard_node(#20052,0,#20043) +guard_node(#20052,1,#20044) hasLocation(#20052,#20021) -successor(#20052,#20045) -successor(#20043,#20051) -successor(#20043,#20052) +successor(#20052,#20048) #20053=* -guard_node(#20053,1,#20045) -hasLocation(#20053,#20025) -successor(#20053,#20047) +guard_node(#20053,0,#20044) +hasLocation(#20053,#20021) +successor(#20053,#20046) +successor(#20044,#20052) +successor(#20044,#20053) #20054=* -guard_node(#20054,0,#20045) +guard_node(#20054,1,#20046) hasLocation(#20054,#20025) -successor(#20054,#20050) -successor(#20045,#20053) -successor(#20045,#20054) -successor(#20040,#20037) -successor(#20039,#20040) -successor(#20037,#20041) -successor(#20035,#20039) -successor(#20047,#20050) -successor(#20048,#20032) +successor(#20054,#20048) +#20055=* +guard_node(#20055,0,#20046) +hasLocation(#20055,#20025) +successor(#20055,#20051) +successor(#20046,#20054) +successor(#20046,#20055) +successor(#20041,#20038) +successor(#20040,#20041) +successor(#20038,#20042) +successor(#20036,#20040) +successor(#20048,#20051) +successor(#20049,#20033) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/cfg/output/trap/short-circuit.js.trap b/javascript/extractor/tests/cfg/output/trap/short-circuit.js.trap index 63e56bb5c49a..ec19edc9c6d0 100644 --- a/javascript/extractor/tests/cfg/output/trap/short-circuit.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/short-circuit.js.trap @@ -90,152 +90,154 @@ toplevels(#20001,0) #20032=@"loc,{#10000},1,1,2,12" locations_default(#20032,#10000,1,1,2,12) hasLocation(#20001,#20032) -#20033=* -stmts(#20033,2,#20001,0,"a && b && c;") -hasLocation(#20033,#20003) -stmt_containers(#20033,#20001) +#20033=@"var;{this};{#20000}" +variables(#20033,"this",#20000) #20034=* -exprs(#20034,44,#20033,0,"a && b && c") -#20035=@"loc,{#10000},1,1,1,11" -locations_default(#20035,#10000,1,1,1,11) -hasLocation(#20034,#20035) -enclosing_stmt(#20034,#20033) -expr_containers(#20034,#20001) -#20036=* -exprs(#20036,44,#20034,0,"a && b") -#20037=@"loc,{#10000},1,1,1,6" -locations_default(#20037,#10000,1,1,1,6) -hasLocation(#20036,#20037) -enclosing_stmt(#20036,#20033) -expr_containers(#20036,#20001) -#20038=* -exprs(#20038,79,#20036,0,"a") -hasLocation(#20038,#20007) -enclosing_stmt(#20038,#20033) -expr_containers(#20038,#20001) -literals("a","a",#20038) -#20039=@"var;{a};{#20000}" -variables(#20039,"a",#20000) -bind(#20038,#20039) -#20040=* -exprs(#20040,79,#20036,1,"b") -hasLocation(#20040,#20011) -enclosing_stmt(#20040,#20033) -expr_containers(#20040,#20001) -literals("b","b",#20040) -#20041=@"var;{b};{#20000}" -variables(#20041,"b",#20000) -bind(#20040,#20041) -#20042=* -exprs(#20042,79,#20034,1,"c") -hasLocation(#20042,#20015) -enclosing_stmt(#20042,#20033) -expr_containers(#20042,#20001) -literals("c","c",#20042) -#20043=@"var;{c};{#20000}" -variables(#20043,"c",#20000) -bind(#20042,#20043) -#20044=* -stmts(#20044,2,#20001,1,"x || y || z;") -hasLocation(#20044,#20005) -stmt_containers(#20044,#20001) +stmts(#20034,2,#20001,0,"a && b && c;") +hasLocation(#20034,#20003) +stmt_containers(#20034,#20001) +#20035=* +exprs(#20035,44,#20034,0,"a && b && c") +#20036=@"loc,{#10000},1,1,1,11" +locations_default(#20036,#10000,1,1,1,11) +hasLocation(#20035,#20036) +enclosing_stmt(#20035,#20034) +expr_containers(#20035,#20001) +#20037=* +exprs(#20037,44,#20035,0,"a && b") +#20038=@"loc,{#10000},1,1,1,6" +locations_default(#20038,#10000,1,1,1,6) +hasLocation(#20037,#20038) +enclosing_stmt(#20037,#20034) +expr_containers(#20037,#20001) +#20039=* +exprs(#20039,79,#20037,0,"a") +hasLocation(#20039,#20007) +enclosing_stmt(#20039,#20034) +expr_containers(#20039,#20001) +literals("a","a",#20039) +#20040=@"var;{a};{#20000}" +variables(#20040,"a",#20000) +bind(#20039,#20040) +#20041=* +exprs(#20041,79,#20037,1,"b") +hasLocation(#20041,#20011) +enclosing_stmt(#20041,#20034) +expr_containers(#20041,#20001) +literals("b","b",#20041) +#20042=@"var;{b};{#20000}" +variables(#20042,"b",#20000) +bind(#20041,#20042) +#20043=* +exprs(#20043,79,#20035,1,"c") +hasLocation(#20043,#20015) +enclosing_stmt(#20043,#20034) +expr_containers(#20043,#20001) +literals("c","c",#20043) +#20044=@"var;{c};{#20000}" +variables(#20044,"c",#20000) +bind(#20043,#20044) #20045=* -exprs(#20045,45,#20044,0,"x || y || z") -#20046=@"loc,{#10000},2,1,2,11" -locations_default(#20046,#10000,2,1,2,11) -hasLocation(#20045,#20046) -enclosing_stmt(#20045,#20044) -expr_containers(#20045,#20001) -#20047=* -exprs(#20047,45,#20045,0,"x || y") -#20048=@"loc,{#10000},2,1,2,6" -locations_default(#20048,#10000,2,1,2,6) -hasLocation(#20047,#20048) -enclosing_stmt(#20047,#20044) -expr_containers(#20047,#20001) -#20049=* -exprs(#20049,79,#20047,0,"x") -hasLocation(#20049,#20019) -enclosing_stmt(#20049,#20044) -expr_containers(#20049,#20001) -literals("x","x",#20049) -#20050=@"var;{x};{#20000}" -variables(#20050,"x",#20000) -bind(#20049,#20050) -#20051=* -exprs(#20051,79,#20047,1,"y") -hasLocation(#20051,#20023) -enclosing_stmt(#20051,#20044) -expr_containers(#20051,#20001) -literals("y","y",#20051) -#20052=@"var;{y};{#20000}" -variables(#20052,"y",#20000) -bind(#20051,#20052) -#20053=* -exprs(#20053,79,#20045,1,"z") -hasLocation(#20053,#20027) -enclosing_stmt(#20053,#20044) -expr_containers(#20053,#20001) -literals("z","z",#20053) -#20054=@"var;{z};{#20000}" -variables(#20054,"z",#20000) -bind(#20053,#20054) -#20055=* -entry_cfg_node(#20055,#20001) -#20056=@"loc,{#10000},1,1,1,0" -locations_default(#20056,#10000,1,1,1,0) -hasLocation(#20055,#20056) -#20057=* -exit_cfg_node(#20057,#20001) -hasLocation(#20057,#20031) -successor(#20044,#20045) -successor(#20045,#20047) -successor(#20047,#20049) +stmts(#20045,2,#20001,1,"x || y || z;") +hasLocation(#20045,#20005) +stmt_containers(#20045,#20001) +#20046=* +exprs(#20046,45,#20045,0,"x || y || z") +#20047=@"loc,{#10000},2,1,2,11" +locations_default(#20047,#10000,2,1,2,11) +hasLocation(#20046,#20047) +enclosing_stmt(#20046,#20045) +expr_containers(#20046,#20001) +#20048=* +exprs(#20048,45,#20046,0,"x || y") +#20049=@"loc,{#10000},2,1,2,6" +locations_default(#20049,#10000,2,1,2,6) +hasLocation(#20048,#20049) +enclosing_stmt(#20048,#20045) +expr_containers(#20048,#20001) +#20050=* +exprs(#20050,79,#20048,0,"x") +hasLocation(#20050,#20019) +enclosing_stmt(#20050,#20045) +expr_containers(#20050,#20001) +literals("x","x",#20050) +#20051=@"var;{x};{#20000}" +variables(#20051,"x",#20000) +bind(#20050,#20051) +#20052=* +exprs(#20052,79,#20048,1,"y") +hasLocation(#20052,#20023) +enclosing_stmt(#20052,#20045) +expr_containers(#20052,#20001) +literals("y","y",#20052) +#20053=@"var;{y};{#20000}" +variables(#20053,"y",#20000) +bind(#20052,#20053) +#20054=* +exprs(#20054,79,#20046,1,"z") +hasLocation(#20054,#20027) +enclosing_stmt(#20054,#20045) +expr_containers(#20054,#20001) +literals("z","z",#20054) +#20055=@"var;{z};{#20000}" +variables(#20055,"z",#20000) +bind(#20054,#20055) +#20056=* +entry_cfg_node(#20056,#20001) +#20057=@"loc,{#10000},1,1,1,0" +locations_default(#20057,#10000,1,1,1,0) +hasLocation(#20056,#20057) #20058=* -guard_node(#20058,1,#20049) -hasLocation(#20058,#20019) -successor(#20058,#20057) +exit_cfg_node(#20058,#20001) +hasLocation(#20058,#20031) +successor(#20045,#20046) +successor(#20046,#20048) +successor(#20048,#20050) #20059=* -guard_node(#20059,0,#20049) +guard_node(#20059,1,#20050) hasLocation(#20059,#20019) -successor(#20059,#20051) -successor(#20049,#20058) -successor(#20049,#20059) +successor(#20059,#20058) #20060=* -guard_node(#20060,1,#20051) -hasLocation(#20060,#20023) -successor(#20060,#20057) +guard_node(#20060,0,#20050) +hasLocation(#20060,#20019) +successor(#20060,#20052) +successor(#20050,#20059) +successor(#20050,#20060) #20061=* -guard_node(#20061,0,#20051) +guard_node(#20061,1,#20052) hasLocation(#20061,#20023) -successor(#20061,#20053) -successor(#20051,#20060) -successor(#20051,#20061) -successor(#20053,#20057) -successor(#20033,#20034) -successor(#20034,#20036) -successor(#20036,#20038) +successor(#20061,#20058) #20062=* -guard_node(#20062,1,#20038) -hasLocation(#20062,#20007) -successor(#20062,#20040) +guard_node(#20062,0,#20052) +hasLocation(#20062,#20023) +successor(#20062,#20054) +successor(#20052,#20061) +successor(#20052,#20062) +successor(#20054,#20058) +successor(#20034,#20035) +successor(#20035,#20037) +successor(#20037,#20039) #20063=* -guard_node(#20063,0,#20038) +guard_node(#20063,1,#20039) hasLocation(#20063,#20007) -successor(#20063,#20044) -successor(#20038,#20062) -successor(#20038,#20063) +successor(#20063,#20041) #20064=* -guard_node(#20064,1,#20040) -hasLocation(#20064,#20011) -successor(#20064,#20042) +guard_node(#20064,0,#20039) +hasLocation(#20064,#20007) +successor(#20064,#20045) +successor(#20039,#20063) +successor(#20039,#20064) #20065=* -guard_node(#20065,0,#20040) +guard_node(#20065,1,#20041) hasLocation(#20065,#20011) -successor(#20065,#20044) -successor(#20040,#20064) -successor(#20040,#20065) -successor(#20042,#20044) -successor(#20055,#20033) +successor(#20065,#20043) +#20066=* +guard_node(#20066,0,#20041) +hasLocation(#20066,#20011) +successor(#20066,#20045) +successor(#20041,#20065) +successor(#20041,#20066) +successor(#20043,#20045) +successor(#20056,#20034) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/cfg/output/trap/ternary.js.trap b/javascript/extractor/tests/cfg/output/trap/ternary.js.trap index 57230ac39cdf..572ddd8cfa81 100644 --- a/javascript/extractor/tests/cfg/output/trap/ternary.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/ternary.js.trap @@ -82,137 +82,139 @@ locations_default(#20029,#10000,1,23,1,22) hasLocation(#20028,#20029) toplevels(#20001,0) hasLocation(#20001,#20003) -#20030=* -stmts(#20030,2,#20001,0,"(a ? b ... ) || e;") -hasLocation(#20030,#20003) -stmt_containers(#20030,#20001) +#20030=@"var;{this};{#20000}" +variables(#20030,"this",#20000) #20031=* -exprs(#20031,45,#20030,0,"(a ? b ... d) || e") -#20032=@"loc,{#10000},1,1,1,21" -locations_default(#20032,#10000,1,1,1,21) -hasLocation(#20031,#20032) -enclosing_stmt(#20031,#20030) -expr_containers(#20031,#20001) -#20033=* -exprs(#20033,63,#20031,0,"(a ? b || c : d)") -#20034=@"loc,{#10000},1,1,1,16" -locations_default(#20034,#10000,1,1,1,16) -hasLocation(#20033,#20034) -enclosing_stmt(#20033,#20030) -expr_containers(#20033,#20001) -#20035=* -exprs(#20035,11,#20033,0,"a ? b || c : d") -#20036=@"loc,{#10000},1,2,1,15" -locations_default(#20036,#10000,1,2,1,15) -hasLocation(#20035,#20036) -enclosing_stmt(#20035,#20030) -expr_containers(#20035,#20001) -#20037=* -exprs(#20037,79,#20035,0,"a") -hasLocation(#20037,#20007) -enclosing_stmt(#20037,#20030) -expr_containers(#20037,#20001) -literals("a","a",#20037) -#20038=@"var;{a};{#20000}" -variables(#20038,"a",#20000) -bind(#20037,#20038) -#20039=* -exprs(#20039,45,#20035,1,"b || c") -#20040=@"loc,{#10000},1,6,1,11" -locations_default(#20040,#10000,1,6,1,11) -hasLocation(#20039,#20040) -enclosing_stmt(#20039,#20030) -expr_containers(#20039,#20001) -#20041=* -exprs(#20041,79,#20039,0,"b") -hasLocation(#20041,#20011) -enclosing_stmt(#20041,#20030) -expr_containers(#20041,#20001) -literals("b","b",#20041) -#20042=@"var;{b};{#20000}" -variables(#20042,"b",#20000) -bind(#20041,#20042) -#20043=* -exprs(#20043,79,#20039,1,"c") -hasLocation(#20043,#20015) -enclosing_stmt(#20043,#20030) -expr_containers(#20043,#20001) -literals("c","c",#20043) -#20044=@"var;{c};{#20000}" -variables(#20044,"c",#20000) -bind(#20043,#20044) -#20045=* -exprs(#20045,79,#20035,2,"d") -hasLocation(#20045,#20019) -enclosing_stmt(#20045,#20030) -expr_containers(#20045,#20001) -literals("d","d",#20045) -#20046=@"var;{d};{#20000}" -variables(#20046,"d",#20000) -bind(#20045,#20046) -#20047=* -exprs(#20047,79,#20031,1,"e") -hasLocation(#20047,#20025) -enclosing_stmt(#20047,#20030) -expr_containers(#20047,#20001) -literals("e","e",#20047) -#20048=@"var;{e};{#20000}" -variables(#20048,"e",#20000) -bind(#20047,#20048) -#20049=* -entry_cfg_node(#20049,#20001) -#20050=@"loc,{#10000},1,1,1,0" -locations_default(#20050,#10000,1,1,1,0) -hasLocation(#20049,#20050) -#20051=* -exit_cfg_node(#20051,#20001) -hasLocation(#20051,#20029) -successor(#20030,#20031) -successor(#20031,#20033) -successor(#20033,#20035) -successor(#20035,#20037) +stmts(#20031,2,#20001,0,"(a ? b ... ) || e;") +hasLocation(#20031,#20003) +stmt_containers(#20031,#20001) +#20032=* +exprs(#20032,45,#20031,0,"(a ? b ... d) || e") +#20033=@"loc,{#10000},1,1,1,21" +locations_default(#20033,#10000,1,1,1,21) +hasLocation(#20032,#20033) +enclosing_stmt(#20032,#20031) +expr_containers(#20032,#20001) +#20034=* +exprs(#20034,63,#20032,0,"(a ? b || c : d)") +#20035=@"loc,{#10000},1,1,1,16" +locations_default(#20035,#10000,1,1,1,16) +hasLocation(#20034,#20035) +enclosing_stmt(#20034,#20031) +expr_containers(#20034,#20001) +#20036=* +exprs(#20036,11,#20034,0,"a ? b || c : d") +#20037=@"loc,{#10000},1,2,1,15" +locations_default(#20037,#10000,1,2,1,15) +hasLocation(#20036,#20037) +enclosing_stmt(#20036,#20031) +expr_containers(#20036,#20001) +#20038=* +exprs(#20038,79,#20036,0,"a") +hasLocation(#20038,#20007) +enclosing_stmt(#20038,#20031) +expr_containers(#20038,#20001) +literals("a","a",#20038) +#20039=@"var;{a};{#20000}" +variables(#20039,"a",#20000) +bind(#20038,#20039) +#20040=* +exprs(#20040,45,#20036,1,"b || c") +#20041=@"loc,{#10000},1,6,1,11" +locations_default(#20041,#10000,1,6,1,11) +hasLocation(#20040,#20041) +enclosing_stmt(#20040,#20031) +expr_containers(#20040,#20001) +#20042=* +exprs(#20042,79,#20040,0,"b") +hasLocation(#20042,#20011) +enclosing_stmt(#20042,#20031) +expr_containers(#20042,#20001) +literals("b","b",#20042) +#20043=@"var;{b};{#20000}" +variables(#20043,"b",#20000) +bind(#20042,#20043) +#20044=* +exprs(#20044,79,#20040,1,"c") +hasLocation(#20044,#20015) +enclosing_stmt(#20044,#20031) +expr_containers(#20044,#20001) +literals("c","c",#20044) +#20045=@"var;{c};{#20000}" +variables(#20045,"c",#20000) +bind(#20044,#20045) +#20046=* +exprs(#20046,79,#20036,2,"d") +hasLocation(#20046,#20019) +enclosing_stmt(#20046,#20031) +expr_containers(#20046,#20001) +literals("d","d",#20046) +#20047=@"var;{d};{#20000}" +variables(#20047,"d",#20000) +bind(#20046,#20047) +#20048=* +exprs(#20048,79,#20032,1,"e") +hasLocation(#20048,#20025) +enclosing_stmt(#20048,#20031) +expr_containers(#20048,#20001) +literals("e","e",#20048) +#20049=@"var;{e};{#20000}" +variables(#20049,"e",#20000) +bind(#20048,#20049) +#20050=* +entry_cfg_node(#20050,#20001) +#20051=@"loc,{#10000},1,1,1,0" +locations_default(#20051,#10000,1,1,1,0) +hasLocation(#20050,#20051) #20052=* -guard_node(#20052,1,#20037) -hasLocation(#20052,#20007) -successor(#20052,#20039) +exit_cfg_node(#20052,#20001) +hasLocation(#20052,#20029) +successor(#20031,#20032) +successor(#20032,#20034) +successor(#20034,#20036) +successor(#20036,#20038) #20053=* -guard_node(#20053,0,#20037) +guard_node(#20053,1,#20038) hasLocation(#20053,#20007) -successor(#20053,#20045) -successor(#20037,#20052) -successor(#20037,#20053) -successor(#20039,#20041) +successor(#20053,#20040) #20054=* -guard_node(#20054,1,#20041) -hasLocation(#20054,#20011) -successor(#20054,#20051) +guard_node(#20054,0,#20038) +hasLocation(#20054,#20007) +successor(#20054,#20046) +successor(#20038,#20053) +successor(#20038,#20054) +successor(#20040,#20042) #20055=* -guard_node(#20055,0,#20041) +guard_node(#20055,1,#20042) hasLocation(#20055,#20011) -successor(#20055,#20043) -successor(#20041,#20054) -successor(#20041,#20055) +successor(#20055,#20052) #20056=* -guard_node(#20056,1,#20043) -hasLocation(#20056,#20015) -successor(#20056,#20051) +guard_node(#20056,0,#20042) +hasLocation(#20056,#20011) +successor(#20056,#20044) +successor(#20042,#20055) +successor(#20042,#20056) #20057=* -guard_node(#20057,0,#20043) +guard_node(#20057,1,#20044) hasLocation(#20057,#20015) -successor(#20057,#20047) -successor(#20043,#20056) -successor(#20043,#20057) +successor(#20057,#20052) #20058=* -guard_node(#20058,1,#20045) -hasLocation(#20058,#20019) -successor(#20058,#20051) +guard_node(#20058,0,#20044) +hasLocation(#20058,#20015) +successor(#20058,#20048) +successor(#20044,#20057) +successor(#20044,#20058) #20059=* -guard_node(#20059,0,#20045) +guard_node(#20059,1,#20046) hasLocation(#20059,#20019) -successor(#20059,#20047) -successor(#20045,#20058) -successor(#20045,#20059) -successor(#20047,#20051) -successor(#20049,#20030) +successor(#20059,#20052) +#20060=* +guard_node(#20060,0,#20046) +hasLocation(#20060,#20019) +successor(#20060,#20048) +successor(#20046,#20059) +successor(#20046,#20060) +successor(#20048,#20052) +successor(#20050,#20031) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/cfg/output/trap/tst.js.trap b/javascript/extractor/tests/cfg/output/trap/tst.js.trap index 1cb55a0238aa..195204b85d04 100644 --- a/javascript/extractor/tests/cfg/output/trap/tst.js.trap +++ b/javascript/extractor/tests/cfg/output/trap/tst.js.trap @@ -863,685 +863,691 @@ hasLocation(#20001,#20319) variables(#20320,"outer",#20000) #20321=@"var;{f};{#20000}" variables(#20321,"f",#20000) -#20322=* -stmts(#20322,17,#20001,0,"functio ... }\n}") -#20323=@"loc,{#10000},1,1,10,1" -locations_default(#20323,#10000,1,1,10,1) -hasLocation(#20322,#20323) -stmt_containers(#20322,#20001) -#20324=* -exprs(#20324,78,#20322,-1,"outer") -hasLocation(#20324,#20077) -expr_containers(#20324,#20322) -literals("outer","outer",#20324) -decl(#20324,#20320) +#20322=@"var;{this};{#20000}" +variables(#20322,"this",#20000) +#20323=* +stmts(#20323,17,#20001,0,"functio ... }\n}") +#20324=@"loc,{#10000},1,1,10,1" +locations_default(#20324,#10000,1,1,10,1) +hasLocation(#20323,#20324) +stmt_containers(#20323,#20001) #20325=* -scopes(#20325,1) -scopenodes(#20322,#20325) -scopenesting(#20325,#20000) -#20326=@"var;{i};{#20325}" -variables(#20326,"i",#20325) -#20327=@"var;{arguments};{#20325}" -variables(#20327,"arguments",#20325) -is_arguments_object(#20327) -#20328=* -stmts(#20328,1,#20322,-2,"{\n v ... }\n}") -#20329=@"loc,{#10000},2,1,10,1" -locations_default(#20329,#10000,2,1,10,1) -hasLocation(#20328,#20329) -stmt_containers(#20328,#20322) +exprs(#20325,78,#20323,-1,"outer") +hasLocation(#20325,#20077) +expr_containers(#20325,#20323) +literals("outer","outer",#20325) +decl(#20325,#20320) +#20326=* +scopes(#20326,1) +scopenodes(#20323,#20326) +scopenesting(#20326,#20000) +#20327=@"var;{i};{#20326}" +variables(#20327,"i",#20326) +#20328=@"var;{this};{#20326}" +variables(#20328,"this",#20326) +#20329=@"var;{arguments};{#20326}" +variables(#20329,"arguments",#20326) +is_arguments_object(#20329) #20330=* -stmts(#20330,18,#20328,0,"var i = 0;") -#20331=@"loc,{#10000},3,5,3,14" -locations_default(#20331,#10000,3,5,3,14) +stmts(#20330,1,#20323,-2,"{\n v ... }\n}") +#20331=@"loc,{#10000},2,1,10,1" +locations_default(#20331,#10000,2,1,10,1) hasLocation(#20330,#20331) -stmt_containers(#20330,#20322) +stmt_containers(#20330,#20323) #20332=* -exprs(#20332,64,#20330,0,"i = 0") -#20333=@"loc,{#10000},3,9,3,13" -locations_default(#20333,#10000,3,9,3,13) +stmts(#20332,18,#20330,0,"var i = 0;") +#20333=@"loc,{#10000},3,5,3,14" +locations_default(#20333,#10000,3,5,3,14) hasLocation(#20332,#20333) -enclosing_stmt(#20332,#20330) -expr_containers(#20332,#20322) +stmt_containers(#20332,#20323) #20334=* -exprs(#20334,78,#20332,0,"i") -hasLocation(#20334,#20086) -enclosing_stmt(#20334,#20330) -expr_containers(#20334,#20322) -literals("i","i",#20334) -decl(#20334,#20326) -#20335=* -exprs(#20335,3,#20332,1,"0") -hasLocation(#20335,#20090) -enclosing_stmt(#20335,#20330) -expr_containers(#20335,#20322) -literals("0","0",#20335) +exprs(#20334,64,#20332,0,"i = 0") +#20335=@"loc,{#10000},3,9,3,13" +locations_default(#20335,#10000,3,9,3,13) +hasLocation(#20334,#20335) +enclosing_stmt(#20334,#20332) +expr_containers(#20334,#20323) #20336=* -stmts(#20336,18,#20328,1,"var i = 1;") -#20337=@"loc,{#10000},4,5,4,14" -locations_default(#20337,#10000,4,5,4,14) -hasLocation(#20336,#20337) -stmt_containers(#20336,#20322) +exprs(#20336,78,#20334,0,"i") +hasLocation(#20336,#20086) +enclosing_stmt(#20336,#20332) +expr_containers(#20336,#20323) +literals("i","i",#20336) +decl(#20336,#20327) +#20337=* +exprs(#20337,3,#20334,1,"0") +hasLocation(#20337,#20090) +enclosing_stmt(#20337,#20332) +expr_containers(#20337,#20323) +literals("0","0",#20337) #20338=* -exprs(#20338,64,#20336,0,"i = 1") -#20339=@"loc,{#10000},4,9,4,13" -locations_default(#20339,#10000,4,9,4,13) +stmts(#20338,18,#20330,1,"var i = 1;") +#20339=@"loc,{#10000},4,5,4,14" +locations_default(#20339,#10000,4,5,4,14) hasLocation(#20338,#20339) -enclosing_stmt(#20338,#20336) -expr_containers(#20338,#20322) +stmt_containers(#20338,#20323) #20340=* -exprs(#20340,78,#20338,0,"i") -hasLocation(#20340,#20096) -enclosing_stmt(#20340,#20336) -expr_containers(#20340,#20322) -literals("i","i",#20340) -decl(#20340,#20326) -#20341=* -exprs(#20341,3,#20338,1,"1") -hasLocation(#20341,#20100) -enclosing_stmt(#20341,#20336) -expr_containers(#20341,#20322) -literals("1","1",#20341) +exprs(#20340,64,#20338,0,"i = 1") +#20341=@"loc,{#10000},4,9,4,13" +locations_default(#20341,#10000,4,9,4,13) +hasLocation(#20340,#20341) +enclosing_stmt(#20340,#20338) +expr_containers(#20340,#20323) #20342=* -stmts(#20342,14,#20328,2,"for ( i ... ++i );") -#20343=@"loc,{#10000},5,5,5,33" -locations_default(#20343,#10000,5,5,5,33) -hasLocation(#20342,#20343) -stmt_containers(#20342,#20322) +exprs(#20342,78,#20340,0,"i") +hasLocation(#20342,#20096) +enclosing_stmt(#20342,#20338) +expr_containers(#20342,#20323) +literals("i","i",#20342) +decl(#20342,#20327) +#20343=* +exprs(#20343,3,#20340,1,"1") +hasLocation(#20343,#20100) +enclosing_stmt(#20343,#20338) +expr_containers(#20343,#20323) +literals("1","1",#20343) #20344=* -exprs(#20344,27,#20342,1,"i < 32") -#20345=@"loc,{#10000},5,19,5,24" -locations_default(#20345,#10000,5,19,5,24) +stmts(#20344,14,#20330,2,"for ( i ... ++i );") +#20345=@"loc,{#10000},5,5,5,33" +locations_default(#20345,#10000,5,5,5,33) hasLocation(#20344,#20345) -enclosing_stmt(#20344,#20342) -expr_containers(#20344,#20322) +stmt_containers(#20344,#20323) #20346=* -exprs(#20346,79,#20344,0,"i") -hasLocation(#20346,#20116) -enclosing_stmt(#20346,#20342) -expr_containers(#20346,#20322) -literals("i","i",#20346) -bind(#20346,#20326) -#20347=* -exprs(#20347,3,#20344,1,"32") -hasLocation(#20347,#20120) -enclosing_stmt(#20347,#20342) -expr_containers(#20347,#20322) -literals("32","32",#20347) +exprs(#20346,27,#20344,1,"i < 32") +#20347=@"loc,{#10000},5,19,5,24" +locations_default(#20347,#10000,5,19,5,24) +hasLocation(#20346,#20347) +enclosing_stmt(#20346,#20344) +expr_containers(#20346,#20323) #20348=* -exprs(#20348,59,#20342,2,"++i") -#20349=@"loc,{#10000},5,28,5,30" -locations_default(#20349,#10000,5,28,5,30) -hasLocation(#20348,#20349) -enclosing_stmt(#20348,#20342) -expr_containers(#20348,#20322) +exprs(#20348,79,#20346,0,"i") +hasLocation(#20348,#20116) +enclosing_stmt(#20348,#20344) +expr_containers(#20348,#20323) +literals("i","i",#20348) +bind(#20348,#20327) +#20349=* +exprs(#20349,3,#20346,1,"32") +hasLocation(#20349,#20120) +enclosing_stmt(#20349,#20344) +expr_containers(#20349,#20323) +literals("32","32",#20349) #20350=* -exprs(#20350,79,#20348,0,"i") -hasLocation(#20350,#20126) -enclosing_stmt(#20350,#20342) -expr_containers(#20350,#20322) -literals("i","i",#20350) -bind(#20350,#20326) -#20351=* -exprs(#20351,47,#20342,0,"i = 0") -#20352=@"loc,{#10000},5,11,5,15" -locations_default(#20352,#10000,5,11,5,15) -hasLocation(#20351,#20352) -enclosing_stmt(#20351,#20342) -expr_containers(#20351,#20322) +exprs(#20350,59,#20344,2,"++i") +#20351=@"loc,{#10000},5,28,5,30" +locations_default(#20351,#10000,5,28,5,30) +hasLocation(#20350,#20351) +enclosing_stmt(#20350,#20344) +expr_containers(#20350,#20323) +#20352=* +exprs(#20352,79,#20350,0,"i") +hasLocation(#20352,#20126) +enclosing_stmt(#20352,#20344) +expr_containers(#20352,#20323) +literals("i","i",#20352) +bind(#20352,#20327) #20353=* -exprs(#20353,79,#20351,0,"i") -hasLocation(#20353,#20108) -enclosing_stmt(#20353,#20342) -expr_containers(#20353,#20322) -literals("i","i",#20353) -bind(#20353,#20326) -#20354=* -exprs(#20354,3,#20351,1,"0") -hasLocation(#20354,#20112) -enclosing_stmt(#20354,#20342) -expr_containers(#20354,#20322) -literals("0","0",#20354) +exprs(#20353,47,#20344,0,"i = 0") +#20354=@"loc,{#10000},5,11,5,15" +locations_default(#20354,#10000,5,11,5,15) +hasLocation(#20353,#20354) +enclosing_stmt(#20353,#20344) +expr_containers(#20353,#20323) #20355=* -stmts(#20355,0,#20342,3,";") -hasLocation(#20355,#20130) -stmt_containers(#20355,#20322) +exprs(#20355,79,#20353,0,"i") +hasLocation(#20355,#20108) +enclosing_stmt(#20355,#20344) +expr_containers(#20355,#20323) +literals("i","i",#20355) +bind(#20355,#20327) #20356=* -stmts(#20356,8,#20328,3,"switch ... ;\n }") -#20357=@"loc,{#10000},6,5,9,5" -locations_default(#20357,#10000,6,5,9,5) -hasLocation(#20356,#20357) -stmt_containers(#20356,#20322) +exprs(#20356,3,#20353,1,"0") +hasLocation(#20356,#20112) +enclosing_stmt(#20356,#20344) +expr_containers(#20356,#20323) +literals("0","0",#20356) +#20357=* +stmts(#20357,0,#20344,3,";") +hasLocation(#20357,#20130) +stmt_containers(#20357,#20323) #20358=* -exprs(#20358,79,#20356,-1,"i") -hasLocation(#20358,#20136) -enclosing_stmt(#20358,#20356) -expr_containers(#20358,#20322) -literals("i","i",#20358) -bind(#20358,#20326) -#20359=* -stmts(#20359,19,#20356,0,"case 32 ... n true;") -#20360=@"loc,{#10000},7,5,8,20" -locations_default(#20360,#10000,7,5,8,20) -hasLocation(#20359,#20360) -stmt_containers(#20359,#20322) +stmts(#20358,8,#20330,3,"switch ... ;\n }") +#20359=@"loc,{#10000},6,5,9,5" +locations_default(#20359,#10000,6,5,9,5) +hasLocation(#20358,#20359) +stmt_containers(#20358,#20323) +#20360=* +exprs(#20360,79,#20358,-1,"i") +hasLocation(#20360,#20136) +enclosing_stmt(#20360,#20358) +expr_containers(#20360,#20323) +literals("i","i",#20360) +bind(#20360,#20327) #20361=* -exprs(#20361,3,#20359,-1,"32") -hasLocation(#20361,#20144) -enclosing_stmt(#20361,#20359) -expr_containers(#20361,#20322) -literals("32","32",#20361) -#20362=* -stmts(#20362,9,#20359,0,"return true;") -#20363=@"loc,{#10000},8,9,8,20" -locations_default(#20363,#10000,8,9,8,20) -hasLocation(#20362,#20363) -stmt_containers(#20362,#20322) +stmts(#20361,19,#20358,0,"case 32 ... n true;") +#20362=@"loc,{#10000},7,5,8,20" +locations_default(#20362,#10000,7,5,8,20) +hasLocation(#20361,#20362) +stmt_containers(#20361,#20323) +#20363=* +exprs(#20363,3,#20361,-1,"32") +hasLocation(#20363,#20144) +enclosing_stmt(#20363,#20361) +expr_containers(#20363,#20323) +literals("32","32",#20363) #20364=* -exprs(#20364,2,#20362,0,"true") -hasLocation(#20364,#20150) -enclosing_stmt(#20364,#20362) -expr_containers(#20364,#20322) -literals("true","true",#20364) -#20365=* -stmts(#20365,14,#20001,1,"for (;a ... ntinue;") -#20366=@"loc,{#10000},12,1,13,13" -locations_default(#20366,#10000,12,1,13,13) -hasLocation(#20365,#20366) -stmt_containers(#20365,#20001) +stmts(#20364,9,#20361,0,"return true;") +#20365=@"loc,{#10000},8,9,8,20" +locations_default(#20365,#10000,8,9,8,20) +hasLocation(#20364,#20365) +stmt_containers(#20364,#20323) +#20366=* +exprs(#20366,2,#20364,0,"true") +hasLocation(#20366,#20150) +enclosing_stmt(#20366,#20364) +expr_containers(#20366,#20323) +literals("true","true",#20366) #20367=* -exprs(#20367,79,#20365,1,"a") -hasLocation(#20367,#20163) -enclosing_stmt(#20367,#20365) -expr_containers(#20367,#20001) -literals("a","a",#20367) -#20368=@"var;{a};{#20000}" -variables(#20368,"a",#20000) -bind(#20367,#20368) +stmts(#20367,14,#20001,1,"for (;a ... ntinue;") +#20368=@"loc,{#10000},12,1,13,13" +locations_default(#20368,#10000,12,1,13,13) +hasLocation(#20367,#20368) +stmt_containers(#20367,#20001) #20369=* -stmts(#20369,6,#20365,3,"continue;") -#20370=@"loc,{#10000},13,5,13,13" -locations_default(#20370,#10000,13,5,13,13) -hasLocation(#20369,#20370) -stmt_containers(#20369,#20001) -jump_targets(#20369,#20365) +exprs(#20369,79,#20367,1,"a") +hasLocation(#20369,#20163) +enclosing_stmt(#20369,#20367) +expr_containers(#20369,#20001) +literals("a","a",#20369) +#20370=@"var;{a};{#20000}" +variables(#20370,"a",#20000) +bind(#20369,#20370) #20371=* -stmts(#20371,17,#20001,2,"functio ... (p);\n}") -#20372=@"loc,{#10000},15,1,18,1" -locations_default(#20372,#10000,15,1,18,1) +stmts(#20371,6,#20367,3,"continue;") +#20372=@"loc,{#10000},13,5,13,13" +locations_default(#20372,#10000,13,5,13,13) hasLocation(#20371,#20372) stmt_containers(#20371,#20001) +jump_targets(#20371,#20367) #20373=* -exprs(#20373,78,#20371,-1,"f") -hasLocation(#20373,#20175) -expr_containers(#20373,#20371) -literals("f","f",#20373) -decl(#20373,#20321) -#20374=* -scopes(#20374,1) -scopenodes(#20371,#20374) -scopenesting(#20374,#20000) -#20375=@"var;{p};{#20374}" -variables(#20375,"p",#20374) -#20376=@"var;{o};{#20374}" -variables(#20376,"o",#20374) -#20377=* -exprs(#20377,78,#20371,0,"o") -hasLocation(#20377,#20179) -expr_containers(#20377,#20371) -literals("o","o",#20377) -decl(#20377,#20376) -#20378=@"var;{arguments};{#20374}" -variables(#20378,"arguments",#20374) -is_arguments_object(#20378) -#20379=* -stmts(#20379,1,#20371,-2,"{\n f ... (p);\n}") -#20380=@"loc,{#10000},15,15,18,1" -locations_default(#20380,#10000,15,15,18,1) -hasLocation(#20379,#20380) -stmt_containers(#20379,#20371) -#20381=* -stmts(#20381,15,#20379,0,"for (va ... if (p);") -#20382=@"loc,{#10000},16,5,17,15" -locations_default(#20382,#10000,16,5,17,15) -hasLocation(#20381,#20382) -stmt_containers(#20381,#20371) -#20383=* -exprs(#20383,79,#20381,1,"o") -hasLocation(#20383,#20195) -enclosing_stmt(#20383,#20381) -expr_containers(#20383,#20371) -literals("o","o",#20383) -bind(#20383,#20376) +stmts(#20373,17,#20001,2,"functio ... (p);\n}") +#20374=@"loc,{#10000},15,1,18,1" +locations_default(#20374,#10000,15,1,18,1) +hasLocation(#20373,#20374) +stmt_containers(#20373,#20001) +#20375=* +exprs(#20375,78,#20373,-1,"f") +hasLocation(#20375,#20175) +expr_containers(#20375,#20373) +literals("f","f",#20375) +decl(#20375,#20321) +#20376=* +scopes(#20376,1) +scopenodes(#20373,#20376) +scopenesting(#20376,#20000) +#20377=@"var;{p};{#20376}" +variables(#20377,"p",#20376) +#20378=@"var;{this};{#20376}" +variables(#20378,"this",#20376) +#20379=@"var;{o};{#20376}" +variables(#20379,"o",#20376) +#20380=* +exprs(#20380,78,#20373,0,"o") +hasLocation(#20380,#20179) +expr_containers(#20380,#20373) +literals("o","o",#20380) +decl(#20380,#20379) +#20381=@"var;{arguments};{#20376}" +variables(#20381,"arguments",#20376) +is_arguments_object(#20381) +#20382=* +stmts(#20382,1,#20373,-2,"{\n f ... (p);\n}") +#20383=@"loc,{#10000},15,15,18,1" +locations_default(#20383,#10000,15,15,18,1) +hasLocation(#20382,#20383) +stmt_containers(#20382,#20373) #20384=* -stmts(#20384,18,#20381,0,"var p") -#20385=@"loc,{#10000},16,10,16,14" -locations_default(#20385,#10000,16,10,16,14) +stmts(#20384,15,#20382,0,"for (va ... if (p);") +#20385=@"loc,{#10000},16,5,17,15" +locations_default(#20385,#10000,16,5,17,15) hasLocation(#20384,#20385) -stmt_containers(#20384,#20371) +stmt_containers(#20384,#20373) #20386=* -exprs(#20386,64,#20384,0,"p") -hasLocation(#20386,#20191) +exprs(#20386,79,#20384,1,"o") +hasLocation(#20386,#20195) enclosing_stmt(#20386,#20384) -expr_containers(#20386,#20371) +expr_containers(#20386,#20373) +literals("o","o",#20386) +bind(#20386,#20379) #20387=* -exprs(#20387,78,#20386,0,"p") -hasLocation(#20387,#20191) -enclosing_stmt(#20387,#20384) -expr_containers(#20387,#20371) -literals("p","p",#20387) -decl(#20387,#20375) -#20388=* -stmts(#20388,3,#20381,2,"if (p);") -#20389=@"loc,{#10000},17,9,17,15" -locations_default(#20389,#10000,17,9,17,15) -hasLocation(#20388,#20389) -stmt_containers(#20388,#20371) +stmts(#20387,18,#20384,0,"var p") +#20388=@"loc,{#10000},16,10,16,14" +locations_default(#20388,#10000,16,10,16,14) +hasLocation(#20387,#20388) +stmt_containers(#20387,#20373) +#20389=* +exprs(#20389,64,#20387,0,"p") +hasLocation(#20389,#20191) +enclosing_stmt(#20389,#20387) +expr_containers(#20389,#20373) #20390=* -exprs(#20390,79,#20388,0,"p") -hasLocation(#20390,#20203) -enclosing_stmt(#20390,#20388) -expr_containers(#20390,#20371) +exprs(#20390,78,#20389,0,"p") +hasLocation(#20390,#20191) +enclosing_stmt(#20390,#20387) +expr_containers(#20390,#20373) literals("p","p",#20390) -bind(#20390,#20375) +decl(#20390,#20377) #20391=* -stmts(#20391,0,#20388,1,";") -hasLocation(#20391,#20207) -stmt_containers(#20391,#20371) -#20392=* -stmts(#20392,11,#20001,3,"try {\n ... lly {\n}") -#20393=@"loc,{#10000},20,1,24,1" -locations_default(#20393,#10000,20,1,24,1) -hasLocation(#20392,#20393) -stmt_containers(#20392,#20001) +stmts(#20391,3,#20384,2,"if (p);") +#20392=@"loc,{#10000},17,9,17,15" +locations_default(#20392,#10000,17,9,17,15) +hasLocation(#20391,#20392) +stmt_containers(#20391,#20373) +#20393=* +exprs(#20393,79,#20391,0,"p") +hasLocation(#20393,#20203) +enclosing_stmt(#20393,#20391) +expr_containers(#20393,#20373) +literals("p","p",#20393) +bind(#20393,#20377) #20394=* -stmts(#20394,1,#20392,0,"{\n}") -#20395=@"loc,{#10000},20,6,21,1" -locations_default(#20395,#10000,20,6,21,1) -hasLocation(#20394,#20395) -stmt_containers(#20394,#20001) -#20396=* -stmts(#20396,20,#20392,1,"catch ( ... .m();\n}") -#20397=@"loc,{#10000},21,3,23,1" -locations_default(#20397,#10000,21,3,23,1) -hasLocation(#20396,#20397) -stmt_containers(#20396,#20001) -#20398=* -scopes(#20398,2) -scopenodes(#20396,#20398) -scopenesting(#20398,#20000) -#20399=@"var;{e};{#20398}" -variables(#20399,"e",#20398) -#20400=* -exprs(#20400,78,#20396,0,"e") -hasLocation(#20400,#20220) -enclosing_stmt(#20400,#20396) -expr_containers(#20400,#20001) -literals("e","e",#20400) -decl(#20400,#20399) +stmts(#20394,0,#20391,1,";") +hasLocation(#20394,#20207) +stmt_containers(#20394,#20373) +#20395=* +stmts(#20395,11,#20001,3,"try {\n ... lly {\n}") +#20396=@"loc,{#10000},20,1,24,1" +locations_default(#20396,#10000,20,1,24,1) +hasLocation(#20395,#20396) +stmt_containers(#20395,#20001) +#20397=* +stmts(#20397,1,#20395,0,"{\n}") +#20398=@"loc,{#10000},20,6,21,1" +locations_default(#20398,#10000,20,6,21,1) +hasLocation(#20397,#20398) +stmt_containers(#20397,#20001) +#20399=* +stmts(#20399,20,#20395,1,"catch ( ... .m();\n}") +#20400=@"loc,{#10000},21,3,23,1" +locations_default(#20400,#10000,21,3,23,1) +hasLocation(#20399,#20400) +stmt_containers(#20399,#20001) #20401=* -stmts(#20401,1,#20396,1,"{\n o.m();\n}") -#20402=@"loc,{#10000},21,13,23,1" -locations_default(#20402,#10000,21,13,23,1) -hasLocation(#20401,#20402) -stmt_containers(#20401,#20001) +scopes(#20401,2) +scopenodes(#20399,#20401) +scopenesting(#20401,#20000) +#20402=@"var;{e};{#20401}" +variables(#20402,"e",#20401) #20403=* -stmts(#20403,2,#20401,0,"o.m();") -#20404=@"loc,{#10000},22,5,22,10" -locations_default(#20404,#10000,22,5,22,10) -hasLocation(#20403,#20404) -stmt_containers(#20403,#20001) -#20405=* -exprs(#20405,13,#20403,0,"o.m()") -#20406=@"loc,{#10000},22,5,22,9" -locations_default(#20406,#10000,22,5,22,9) -hasLocation(#20405,#20406) -enclosing_stmt(#20405,#20403) -expr_containers(#20405,#20001) -#20407=* -exprs(#20407,14,#20405,-1,"o.m") -#20408=@"loc,{#10000},22,5,22,7" -locations_default(#20408,#10000,22,5,22,7) -hasLocation(#20407,#20408) -enclosing_stmt(#20407,#20403) -expr_containers(#20407,#20001) -#20409=* -exprs(#20409,79,#20407,0,"o") -hasLocation(#20409,#20226) -enclosing_stmt(#20409,#20403) -expr_containers(#20409,#20001) -literals("o","o",#20409) -#20410=@"var;{o};{#20000}" -variables(#20410,"o",#20000) -bind(#20409,#20410) -#20411=* -exprs(#20411,0,#20407,1,"m") -hasLocation(#20411,#20230) -enclosing_stmt(#20411,#20403) -expr_containers(#20411,#20001) -literals("m","m",#20411) +exprs(#20403,78,#20399,0,"e") +hasLocation(#20403,#20220) +enclosing_stmt(#20403,#20399) +expr_containers(#20403,#20001) +literals("e","e",#20403) +decl(#20403,#20402) +#20404=* +stmts(#20404,1,#20399,1,"{\n o.m();\n}") +#20405=@"loc,{#10000},21,13,23,1" +locations_default(#20405,#10000,21,13,23,1) +hasLocation(#20404,#20405) +stmt_containers(#20404,#20001) +#20406=* +stmts(#20406,2,#20404,0,"o.m();") +#20407=@"loc,{#10000},22,5,22,10" +locations_default(#20407,#10000,22,5,22,10) +hasLocation(#20406,#20407) +stmt_containers(#20406,#20001) +#20408=* +exprs(#20408,13,#20406,0,"o.m()") +#20409=@"loc,{#10000},22,5,22,9" +locations_default(#20409,#10000,22,5,22,9) +hasLocation(#20408,#20409) +enclosing_stmt(#20408,#20406) +expr_containers(#20408,#20001) +#20410=* +exprs(#20410,14,#20408,-1,"o.m") +#20411=@"loc,{#10000},22,5,22,7" +locations_default(#20411,#10000,22,5,22,7) +hasLocation(#20410,#20411) +enclosing_stmt(#20410,#20406) +expr_containers(#20410,#20001) #20412=* -stmts(#20412,1,#20392,-1,"{\n}") -#20413=@"loc,{#10000},23,11,24,1" -locations_default(#20413,#10000,23,11,24,1) -hasLocation(#20412,#20413) -stmt_containers(#20412,#20001) +exprs(#20412,79,#20410,0,"o") +hasLocation(#20412,#20226) +enclosing_stmt(#20412,#20406) +expr_containers(#20412,#20001) +literals("o","o",#20412) +#20413=@"var;{o};{#20000}" +variables(#20413,"o",#20000) +bind(#20412,#20413) #20414=* -stmts(#20414,11,#20001,4,"try {\n ... h(_) {}") -#20415=@"loc,{#10000},26,1,28,13" -locations_default(#20415,#10000,26,1,28,13) -hasLocation(#20414,#20415) -stmt_containers(#20414,#20001) -#20416=* -stmts(#20416,1,#20414,0,"{\n f ... ers);\n}") -#20417=@"loc,{#10000},26,5,28,1" -locations_default(#20417,#10000,26,5,28,1) -hasLocation(#20416,#20417) -stmt_containers(#20416,#20001) -#20418=* -stmts(#20418,15,#20416,0,"for (i in headers);") -#20419=@"loc,{#10000},27,5,27,23" -locations_default(#20419,#10000,27,5,27,23) -hasLocation(#20418,#20419) -stmt_containers(#20418,#20001) -#20420=* -exprs(#20420,79,#20418,1,"headers") -hasLocation(#20420,#20257) -enclosing_stmt(#20420,#20418) -expr_containers(#20420,#20001) -literals("headers","headers",#20420) -#20421=@"var;{headers};{#20000}" -variables(#20421,"headers",#20000) -bind(#20420,#20421) -#20422=* -exprs(#20422,79,#20418,0,"i") -hasLocation(#20422,#20253) -enclosing_stmt(#20422,#20418) -expr_containers(#20422,#20001) -literals("i","i",#20422) -#20423=@"var;{i};{#20000}" -variables(#20423,"i",#20000) -bind(#20422,#20423) -#20424=* -stmts(#20424,0,#20418,2,";") -hasLocation(#20424,#20261) -stmt_containers(#20424,#20001) +exprs(#20414,0,#20410,1,"m") +hasLocation(#20414,#20230) +enclosing_stmt(#20414,#20406) +expr_containers(#20414,#20001) +literals("m","m",#20414) +#20415=* +stmts(#20415,1,#20395,-1,"{\n}") +#20416=@"loc,{#10000},23,11,24,1" +locations_default(#20416,#10000,23,11,24,1) +hasLocation(#20415,#20416) +stmt_containers(#20415,#20001) +#20417=* +stmts(#20417,11,#20001,4,"try {\n ... h(_) {}") +#20418=@"loc,{#10000},26,1,28,13" +locations_default(#20418,#10000,26,1,28,13) +hasLocation(#20417,#20418) +stmt_containers(#20417,#20001) +#20419=* +stmts(#20419,1,#20417,0,"{\n f ... ers);\n}") +#20420=@"loc,{#10000},26,5,28,1" +locations_default(#20420,#10000,26,5,28,1) +hasLocation(#20419,#20420) +stmt_containers(#20419,#20001) +#20421=* +stmts(#20421,15,#20419,0,"for (i in headers);") +#20422=@"loc,{#10000},27,5,27,23" +locations_default(#20422,#10000,27,5,27,23) +hasLocation(#20421,#20422) +stmt_containers(#20421,#20001) +#20423=* +exprs(#20423,79,#20421,1,"headers") +hasLocation(#20423,#20257) +enclosing_stmt(#20423,#20421) +expr_containers(#20423,#20001) +literals("headers","headers",#20423) +#20424=@"var;{headers};{#20000}" +variables(#20424,"headers",#20000) +bind(#20423,#20424) #20425=* -stmts(#20425,20,#20414,1,"catch(_) {}") -#20426=@"loc,{#10000},28,3,28,13" -locations_default(#20426,#10000,28,3,28,13) -hasLocation(#20425,#20426) -stmt_containers(#20425,#20001) +exprs(#20425,79,#20421,0,"i") +hasLocation(#20425,#20253) +enclosing_stmt(#20425,#20421) +expr_containers(#20425,#20001) +literals("i","i",#20425) +#20426=@"var;{i};{#20000}" +variables(#20426,"i",#20000) +bind(#20425,#20426) #20427=* -scopes(#20427,2) -scopenodes(#20425,#20427) -scopenesting(#20427,#20000) -#20428=@"var;{_};{#20427}" -variables(#20428,"_",#20427) -#20429=* -exprs(#20429,78,#20425,0,"_") -hasLocation(#20429,#20269) -enclosing_stmt(#20429,#20425) -expr_containers(#20429,#20001) -literals("_","_",#20429) -decl(#20429,#20428) +stmts(#20427,0,#20421,2,";") +hasLocation(#20427,#20261) +stmt_containers(#20427,#20001) +#20428=* +stmts(#20428,20,#20417,1,"catch(_) {}") +#20429=@"loc,{#10000},28,3,28,13" +locations_default(#20429,#10000,28,3,28,13) +hasLocation(#20428,#20429) +stmt_containers(#20428,#20001) #20430=* -stmts(#20430,1,#20425,1,"{}") -#20431=@"loc,{#10000},28,12,28,13" -locations_default(#20431,#10000,28,12,28,13) -hasLocation(#20430,#20431) -stmt_containers(#20430,#20001) +scopes(#20430,2) +scopenodes(#20428,#20430) +scopenesting(#20430,#20000) +#20431=@"var;{_};{#20430}" +variables(#20431,"_",#20430) #20432=* -stmts(#20432,11,#20001,5,"try {\n} ... f();\n}") -#20433=@"loc,{#10000},30,1,33,1" -locations_default(#20433,#10000,30,1,33,1) -hasLocation(#20432,#20433) -stmt_containers(#20432,#20001) -#20434=* -stmts(#20434,1,#20432,0,"{\n}") -#20435=@"loc,{#10000},30,5,31,1" -locations_default(#20435,#10000,30,5,31,1) -hasLocation(#20434,#20435) -stmt_containers(#20434,#20001) -#20436=* -stmts(#20436,1,#20432,-1,"{\n f();\n}") -#20437=@"loc,{#10000},31,11,33,1" -locations_default(#20437,#10000,31,11,33,1) -hasLocation(#20436,#20437) -stmt_containers(#20436,#20001) -#20438=* -stmts(#20438,2,#20436,0,"f();") -#20439=@"loc,{#10000},32,5,32,8" -locations_default(#20439,#10000,32,5,32,8) -hasLocation(#20438,#20439) -stmt_containers(#20438,#20001) -#20440=* -exprs(#20440,13,#20438,0,"f()") -#20441=@"loc,{#10000},32,5,32,7" -locations_default(#20441,#10000,32,5,32,7) -hasLocation(#20440,#20441) -enclosing_stmt(#20440,#20438) -expr_containers(#20440,#20001) -#20442=* -exprs(#20442,79,#20440,-1,"f") -hasLocation(#20442,#20287) -enclosing_stmt(#20442,#20438) -expr_containers(#20442,#20001) -literals("f","f",#20442) -bind(#20442,#20321) +exprs(#20432,78,#20428,0,"_") +hasLocation(#20432,#20269) +enclosing_stmt(#20432,#20428) +expr_containers(#20432,#20001) +literals("_","_",#20432) +decl(#20432,#20431) +#20433=* +stmts(#20433,1,#20428,1,"{}") +#20434=@"loc,{#10000},28,12,28,13" +locations_default(#20434,#10000,28,12,28,13) +hasLocation(#20433,#20434) +stmt_containers(#20433,#20001) +#20435=* +stmts(#20435,11,#20001,5,"try {\n} ... f();\n}") +#20436=@"loc,{#10000},30,1,33,1" +locations_default(#20436,#10000,30,1,33,1) +hasLocation(#20435,#20436) +stmt_containers(#20435,#20001) +#20437=* +stmts(#20437,1,#20435,0,"{\n}") +#20438=@"loc,{#10000},30,5,31,1" +locations_default(#20438,#10000,30,5,31,1) +hasLocation(#20437,#20438) +stmt_containers(#20437,#20001) +#20439=* +stmts(#20439,1,#20435,-1,"{\n f();\n}") +#20440=@"loc,{#10000},31,11,33,1" +locations_default(#20440,#10000,31,11,33,1) +hasLocation(#20439,#20440) +stmt_containers(#20439,#20001) +#20441=* +stmts(#20441,2,#20439,0,"f();") +#20442=@"loc,{#10000},32,5,32,8" +locations_default(#20442,#10000,32,5,32,8) +hasLocation(#20441,#20442) +stmt_containers(#20441,#20001) #20443=* -stmts(#20443,3,#20001,6,"if (!(x || y))\n z;") -#20444=@"loc,{#10000},35,1,36,4" -locations_default(#20444,#10000,35,1,36,4) +exprs(#20443,13,#20441,0,"f()") +#20444=@"loc,{#10000},32,5,32,7" +locations_default(#20444,#10000,32,5,32,7) hasLocation(#20443,#20444) -stmt_containers(#20443,#20001) +enclosing_stmt(#20443,#20441) +expr_containers(#20443,#20001) #20445=* -exprs(#20445,18,#20443,0,"!(x || y)") -#20446=@"loc,{#10000},35,5,35,13" -locations_default(#20446,#10000,35,5,35,13) -hasLocation(#20445,#20446) -enclosing_stmt(#20445,#20443) +exprs(#20445,79,#20443,-1,"f") +hasLocation(#20445,#20287) +enclosing_stmt(#20445,#20441) expr_containers(#20445,#20001) -#20447=* -exprs(#20447,63,#20445,0,"(x || y)") -#20448=@"loc,{#10000},35,6,35,13" -locations_default(#20448,#10000,35,6,35,13) -hasLocation(#20447,#20448) -enclosing_stmt(#20447,#20443) -expr_containers(#20447,#20001) -#20449=* -exprs(#20449,45,#20447,0,"x || y") -#20450=@"loc,{#10000},35,7,35,12" -locations_default(#20450,#10000,35,7,35,12) -hasLocation(#20449,#20450) -enclosing_stmt(#20449,#20443) -expr_containers(#20449,#20001) -#20451=* -exprs(#20451,79,#20449,0,"x") -hasLocation(#20451,#20304) -enclosing_stmt(#20451,#20443) -expr_containers(#20451,#20001) -literals("x","x",#20451) -#20452=@"var;{x};{#20000}" -variables(#20452,"x",#20000) -bind(#20451,#20452) -#20453=* -exprs(#20453,79,#20449,1,"y") -hasLocation(#20453,#20308) -enclosing_stmt(#20453,#20443) -expr_containers(#20453,#20001) -literals("y","y",#20453) -#20454=@"var;{y};{#20000}" -variables(#20454,"y",#20000) -bind(#20453,#20454) -#20455=* -stmts(#20455,2,#20443,1,"z;") -#20456=@"loc,{#10000},36,3,36,4" -locations_default(#20456,#10000,36,3,36,4) -hasLocation(#20455,#20456) -stmt_containers(#20455,#20001) -#20457=* -exprs(#20457,79,#20455,0,"z") -hasLocation(#20457,#20314) -enclosing_stmt(#20457,#20455) -expr_containers(#20457,#20001) -literals("z","z",#20457) -#20458=@"var;{z};{#20000}" -variables(#20458,"z",#20000) -bind(#20457,#20458) -#20459=* -entry_cfg_node(#20459,#20001) -#20460=@"loc,{#10000},1,1,1,0" -locations_default(#20460,#10000,1,1,1,0) -hasLocation(#20459,#20460) -#20461=* -exit_cfg_node(#20461,#20001) -hasLocation(#20461,#20318) -successor(#20443,#20447) -successor(#20447,#20449) -successor(#20449,#20451) +literals("f","f",#20445) +bind(#20445,#20321) +#20446=* +stmts(#20446,3,#20001,6,"if (!(x || y))\n z;") +#20447=@"loc,{#10000},35,1,36,4" +locations_default(#20447,#10000,35,1,36,4) +hasLocation(#20446,#20447) +stmt_containers(#20446,#20001) +#20448=* +exprs(#20448,18,#20446,0,"!(x || y)") +#20449=@"loc,{#10000},35,5,35,13" +locations_default(#20449,#10000,35,5,35,13) +hasLocation(#20448,#20449) +enclosing_stmt(#20448,#20446) +expr_containers(#20448,#20001) +#20450=* +exprs(#20450,63,#20448,0,"(x || y)") +#20451=@"loc,{#10000},35,6,35,13" +locations_default(#20451,#10000,35,6,35,13) +hasLocation(#20450,#20451) +enclosing_stmt(#20450,#20446) +expr_containers(#20450,#20001) +#20452=* +exprs(#20452,45,#20450,0,"x || y") +#20453=@"loc,{#10000},35,7,35,12" +locations_default(#20453,#10000,35,7,35,12) +hasLocation(#20452,#20453) +enclosing_stmt(#20452,#20446) +expr_containers(#20452,#20001) +#20454=* +exprs(#20454,79,#20452,0,"x") +hasLocation(#20454,#20304) +enclosing_stmt(#20454,#20446) +expr_containers(#20454,#20001) +literals("x","x",#20454) +#20455=@"var;{x};{#20000}" +variables(#20455,"x",#20000) +bind(#20454,#20455) +#20456=* +exprs(#20456,79,#20452,1,"y") +hasLocation(#20456,#20308) +enclosing_stmt(#20456,#20446) +expr_containers(#20456,#20001) +literals("y","y",#20456) +#20457=@"var;{y};{#20000}" +variables(#20457,"y",#20000) +bind(#20456,#20457) +#20458=* +stmts(#20458,2,#20446,1,"z;") +#20459=@"loc,{#10000},36,3,36,4" +locations_default(#20459,#10000,36,3,36,4) +hasLocation(#20458,#20459) +stmt_containers(#20458,#20001) +#20460=* +exprs(#20460,79,#20458,0,"z") +hasLocation(#20460,#20314) +enclosing_stmt(#20460,#20458) +expr_containers(#20460,#20001) +literals("z","z",#20460) +#20461=@"var;{z};{#20000}" +variables(#20461,"z",#20000) +bind(#20460,#20461) #20462=* -guard_node(#20462,1,#20451) -hasLocation(#20462,#20304) -successor(#20462,#20445) -#20463=* -guard_node(#20463,0,#20451) -hasLocation(#20463,#20304) -successor(#20463,#20453) -successor(#20451,#20462) -successor(#20451,#20463) -successor(#20453,#20445) +entry_cfg_node(#20462,#20001) +#20463=@"loc,{#10000},1,1,1,0" +locations_default(#20463,#10000,1,1,1,0) +hasLocation(#20462,#20463) #20464=* -guard_node(#20464,0,#20453) -hasLocation(#20464,#20308) -successor(#20464,#20455) +exit_cfg_node(#20464,#20001) +hasLocation(#20464,#20318) +successor(#20446,#20450) +successor(#20450,#20452) +successor(#20452,#20454) #20465=* -guard_node(#20465,0,#20451) +guard_node(#20465,1,#20454) hasLocation(#20465,#20304) -successor(#20465,#20464) -successor(#20445,#20465) -successor(#20445,#20461) -successor(#20455,#20457) -successor(#20457,#20461) -successor(#20432,#20434) -successor(#20434,#20436) -successor(#20438,#20442) -successor(#20442,#20440) -successor(#20440,#20443) -successor(#20436,#20438) -successor(#20414,#20416) -successor(#20420,#20418) -successor(#20418,#20422) -successor(#20418,#20432) -successor(#20424,#20418) -successor(#20422,#20424) -successor(#20416,#20420) -successor(#20425,#20429) -successor(#20430,#20432) -successor(#20429,#20430) -successor(#20392,#20394) -successor(#20394,#20412) -successor(#20396,#20400) -successor(#20403,#20409) -successor(#20411,#20407) -successor(#20409,#20411) -successor(#20407,#20412) -successor(#20407,#20405) -successor(#20405,#20412) -successor(#20401,#20403) -successor(#20400,#20401) -successor(#20412,#20414) -successor(#20371,#20392) +successor(#20465,#20448) #20466=* -entry_cfg_node(#20466,#20371) -#20467=@"loc,{#10000},15,1,15,0" -locations_default(#20467,#10000,15,1,15,0) -hasLocation(#20466,#20467) +guard_node(#20466,0,#20454) +hasLocation(#20466,#20304) +successor(#20466,#20456) +successor(#20454,#20465) +successor(#20454,#20466) +successor(#20456,#20448) +#20467=* +guard_node(#20467,0,#20456) +hasLocation(#20467,#20308) +successor(#20467,#20458) #20468=* -exit_cfg_node(#20468,#20371) -#20469=@"loc,{#10000},18,2,18,1" -locations_default(#20469,#10000,18,2,18,1) -hasLocation(#20468,#20469) -successor(#20383,#20381) -successor(#20381,#20384) -successor(#20381,#20468) -successor(#20388,#20390) -#20470=* -guard_node(#20470,1,#20390) -hasLocation(#20470,#20203) -successor(#20470,#20391) +guard_node(#20468,0,#20454) +hasLocation(#20468,#20304) +successor(#20468,#20467) +successor(#20448,#20468) +successor(#20448,#20464) +successor(#20458,#20460) +successor(#20460,#20464) +successor(#20435,#20437) +successor(#20437,#20439) +successor(#20441,#20445) +successor(#20445,#20443) +successor(#20443,#20446) +successor(#20439,#20441) +successor(#20417,#20419) +successor(#20423,#20421) +successor(#20421,#20425) +successor(#20421,#20435) +successor(#20427,#20421) +successor(#20425,#20427) +successor(#20419,#20423) +successor(#20428,#20432) +successor(#20433,#20435) +successor(#20432,#20433) +successor(#20395,#20397) +successor(#20397,#20415) +successor(#20399,#20403) +successor(#20406,#20412) +successor(#20414,#20410) +successor(#20412,#20414) +successor(#20410,#20415) +successor(#20410,#20408) +successor(#20408,#20415) +successor(#20404,#20406) +successor(#20403,#20404) +successor(#20415,#20417) +successor(#20373,#20395) +#20469=* +entry_cfg_node(#20469,#20373) +#20470=@"loc,{#10000},15,1,15,0" +locations_default(#20470,#10000,15,1,15,0) +hasLocation(#20469,#20470) #20471=* -guard_node(#20471,0,#20390) -hasLocation(#20471,#20203) -successor(#20471,#20381) -successor(#20390,#20470) -successor(#20390,#20471) -successor(#20391,#20381) +exit_cfg_node(#20471,#20373) +#20472=@"loc,{#10000},18,2,18,1" +locations_default(#20472,#10000,18,2,18,1) +hasLocation(#20471,#20472) +successor(#20386,#20384) successor(#20384,#20387) -successor(#20387,#20386) -successor(#20386,#20388) -successor(#20379,#20383) -successor(#20377,#20379) -successor(#20466,#20377) -successor(#20365,#20367) -#20472=* -guard_node(#20472,1,#20367) -hasLocation(#20472,#20163) -successor(#20472,#20369) +successor(#20384,#20471) +successor(#20391,#20393) #20473=* -guard_node(#20473,0,#20367) -hasLocation(#20473,#20163) -successor(#20473,#20371) -successor(#20367,#20472) -successor(#20367,#20473) -successor(#20369,#20367) -successor(#20322,#20365) +guard_node(#20473,1,#20393) +hasLocation(#20473,#20203) +successor(#20473,#20394) #20474=* -entry_cfg_node(#20474,#20322) -hasLocation(#20474,#20460) +guard_node(#20474,0,#20393) +hasLocation(#20474,#20203) +successor(#20474,#20384) +successor(#20393,#20473) +successor(#20393,#20474) +successor(#20394,#20384) +successor(#20387,#20390) +successor(#20390,#20389) +successor(#20389,#20391) +successor(#20382,#20386) +successor(#20380,#20382) +successor(#20469,#20380) +successor(#20367,#20369) #20475=* -exit_cfg_node(#20475,#20322) -#20476=@"loc,{#10000},10,2,10,1" -locations_default(#20476,#10000,10,2,10,1) -hasLocation(#20475,#20476) -successor(#20356,#20358) -successor(#20358,#20359) -successor(#20359,#20361) -successor(#20361,#20364) -successor(#20361,#20475) -successor(#20364,#20362) -successor(#20362,#20475) -successor(#20342,#20353) -successor(#20354,#20351) -successor(#20353,#20354) -successor(#20351,#20346) -successor(#20347,#20344) -successor(#20346,#20347) +guard_node(#20475,1,#20369) +hasLocation(#20475,#20163) +successor(#20475,#20371) +#20476=* +guard_node(#20476,0,#20369) +hasLocation(#20476,#20163) +successor(#20476,#20373) +successor(#20369,#20475) +successor(#20369,#20476) +successor(#20371,#20369) +successor(#20323,#20367) #20477=* -guard_node(#20477,1,#20344) -hasLocation(#20477,#20345) -successor(#20477,#20355) +entry_cfg_node(#20477,#20323) +hasLocation(#20477,#20463) #20478=* -guard_node(#20478,0,#20344) -hasLocation(#20478,#20345) -successor(#20478,#20356) -successor(#20344,#20477) -successor(#20344,#20478) +exit_cfg_node(#20478,#20323) +#20479=@"loc,{#10000},10,2,10,1" +locations_default(#20479,#10000,10,2,10,1) +hasLocation(#20478,#20479) +successor(#20358,#20360) +successor(#20360,#20361) +successor(#20361,#20363) +successor(#20363,#20366) +successor(#20363,#20478) +successor(#20366,#20364) +successor(#20364,#20478) +successor(#20344,#20355) +successor(#20356,#20353) +successor(#20355,#20356) +successor(#20353,#20348) +successor(#20349,#20346) +successor(#20348,#20349) +#20480=* +guard_node(#20480,1,#20346) +hasLocation(#20480,#20347) +successor(#20480,#20357) +#20481=* +guard_node(#20481,0,#20346) +hasLocation(#20481,#20347) +successor(#20481,#20358) +successor(#20346,#20480) +successor(#20346,#20481) +successor(#20352,#20350) successor(#20350,#20348) -successor(#20348,#20346) -successor(#20355,#20350) -successor(#20336,#20340) -successor(#20341,#20338) -successor(#20340,#20341) +successor(#20357,#20352) successor(#20338,#20342) -successor(#20330,#20334) -successor(#20335,#20332) -successor(#20334,#20335) +successor(#20343,#20340) +successor(#20342,#20343) +successor(#20340,#20344) successor(#20332,#20336) -successor(#20328,#20330) -successor(#20474,#20328) -successor(#20373,#20322) -successor(#20324,#20373) -successor(#20459,#20324) +successor(#20337,#20334) +successor(#20336,#20337) +successor(#20334,#20338) +successor(#20330,#20332) +successor(#20477,#20330) +successor(#20375,#20323) +successor(#20325,#20375) +successor(#20462,#20325) numlines(#10000,36,30,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/closure/output/trap/googDotDeclareModuleId.js.trap b/javascript/extractor/tests/closure/output/trap/googDotDeclareModuleId.js.trap index 09719bdae196..c1b539f8355a 100644 --- a/javascript/extractor/tests/closure/output/trap/googDotDeclareModuleId.js.trap +++ b/javascript/extractor/tests/closure/output/trap/googDotDeclareModuleId.js.trap @@ -110,100 +110,102 @@ is_module(#20001) is_es2015_module(#20001) #20038=@"var;{x};{#20037}" variables(#20038,"x",#20037) -#20039=* -stmts(#20039,2,#20001,0,"goog.de ... test');") -hasLocation(#20039,#20003) -stmt_containers(#20039,#20001) +#20039=@"var;{this};{#20037}" +variables(#20039,"this",#20037) #20040=* -exprs(#20040,13,#20039,0,"goog.de ... 'test')") -#20041=@"loc,{#10000},1,1,1,28" -locations_default(#20041,#10000,1,1,1,28) -hasLocation(#20040,#20041) -enclosing_stmt(#20040,#20039) -expr_containers(#20040,#20001) -#20042=* -exprs(#20042,14,#20040,-1,"goog.declareModuleId") -#20043=@"loc,{#10000},1,1,1,20" -locations_default(#20043,#10000,1,1,1,20) -hasLocation(#20042,#20043) -enclosing_stmt(#20042,#20039) -expr_containers(#20042,#20001) -#20044=* -exprs(#20044,79,#20042,0,"goog") -hasLocation(#20044,#20009) -enclosing_stmt(#20044,#20039) -expr_containers(#20044,#20001) -literals("goog","goog",#20044) -#20045=@"var;{goog};{#20000}" -variables(#20045,"goog",#20000) -bind(#20044,#20045) -#20046=* -exprs(#20046,0,#20042,1,"declareModuleId") -hasLocation(#20046,#20013) -enclosing_stmt(#20046,#20039) -expr_containers(#20046,#20001) -literals("declareModuleId","declareModuleId",#20046) +stmts(#20040,2,#20001,0,"goog.de ... test');") +hasLocation(#20040,#20003) +stmt_containers(#20040,#20001) +#20041=* +exprs(#20041,13,#20040,0,"goog.de ... 'test')") +#20042=@"loc,{#10000},1,1,1,28" +locations_default(#20042,#10000,1,1,1,28) +hasLocation(#20041,#20042) +enclosing_stmt(#20041,#20040) +expr_containers(#20041,#20001) +#20043=* +exprs(#20043,14,#20041,-1,"goog.declareModuleId") +#20044=@"loc,{#10000},1,1,1,20" +locations_default(#20044,#10000,1,1,1,20) +hasLocation(#20043,#20044) +enclosing_stmt(#20043,#20040) +expr_containers(#20043,#20001) +#20045=* +exprs(#20045,79,#20043,0,"goog") +hasLocation(#20045,#20009) +enclosing_stmt(#20045,#20040) +expr_containers(#20045,#20001) +literals("goog","goog",#20045) +#20046=@"var;{goog};{#20000}" +variables(#20046,"goog",#20000) +bind(#20045,#20046) #20047=* -exprs(#20047,4,#20040,0,"'test'") -hasLocation(#20047,#20017) -enclosing_stmt(#20047,#20039) +exprs(#20047,0,#20043,1,"declareModuleId") +hasLocation(#20047,#20013) +enclosing_stmt(#20047,#20040) expr_containers(#20047,#20001) -literals("test","'test'",#20047) +literals("declareModuleId","declareModuleId",#20047) #20048=* -regexpterm(#20048,14,#20047,0,"test") -#20049=@"loc,{#10000},1,23,1,26" -locations_default(#20049,#10000,1,23,1,26) -hasLocation(#20048,#20049) -regexp_const_value(#20048,"test") -#20050=* -stmts(#20050,30,#20001,1,"export let x = 5;") -hasLocation(#20050,#20007) -stmt_containers(#20050,#20001) +exprs(#20048,4,#20041,0,"'test'") +hasLocation(#20048,#20017) +enclosing_stmt(#20048,#20040) +expr_containers(#20048,#20001) +literals("test","'test'",#20048) +#20049=* +regexpterm(#20049,14,#20048,0,"test") +#20050=@"loc,{#10000},1,23,1,26" +locations_default(#20050,#10000,1,23,1,26) +hasLocation(#20049,#20050) +regexp_const_value(#20049,"test") #20051=* -stmts(#20051,23,#20050,-1,"let x = 5;") -#20052=@"loc,{#10000},3,8,3,17" -locations_default(#20052,#10000,3,8,3,17) -hasLocation(#20051,#20052) +stmts(#20051,30,#20001,1,"export let x = 5;") +hasLocation(#20051,#20007) stmt_containers(#20051,#20001) -#20053=* -exprs(#20053,64,#20051,0,"x = 5") -#20054=@"loc,{#10000},3,12,3,16" -locations_default(#20054,#10000,3,12,3,16) -hasLocation(#20053,#20054) -enclosing_stmt(#20053,#20051) -expr_containers(#20053,#20001) -#20055=* -exprs(#20055,78,#20053,0,"x") -hasLocation(#20055,#20027) -enclosing_stmt(#20055,#20051) -expr_containers(#20055,#20001) -literals("x","x",#20055) -decl(#20055,#20038) +#20052=* +stmts(#20052,23,#20051,-1,"let x = 5;") +#20053=@"loc,{#10000},3,8,3,17" +locations_default(#20053,#10000,3,8,3,17) +hasLocation(#20052,#20053) +stmt_containers(#20052,#20001) +#20054=* +exprs(#20054,64,#20052,0,"x = 5") +#20055=@"loc,{#10000},3,12,3,16" +locations_default(#20055,#10000,3,12,3,16) +hasLocation(#20054,#20055) +enclosing_stmt(#20054,#20052) +expr_containers(#20054,#20001) #20056=* -exprs(#20056,3,#20053,1,"5") -hasLocation(#20056,#20031) -enclosing_stmt(#20056,#20051) +exprs(#20056,78,#20054,0,"x") +hasLocation(#20056,#20027) +enclosing_stmt(#20056,#20052) expr_containers(#20056,#20001) -literals("5","5",#20056) +literals("x","x",#20056) +decl(#20056,#20038) #20057=* -entry_cfg_node(#20057,#20001) -#20058=@"loc,{#10000},1,1,1,0" -locations_default(#20058,#10000,1,1,1,0) -hasLocation(#20057,#20058) -#20059=* -exit_cfg_node(#20059,#20001) -hasLocation(#20059,#20035) -successor(#20050,#20051) -successor(#20051,#20055) -successor(#20056,#20053) -successor(#20055,#20056) -successor(#20053,#20059) -successor(#20039,#20044) -successor(#20047,#20040) -successor(#20046,#20042) -successor(#20044,#20046) -successor(#20042,#20047) -successor(#20040,#20050) -successor(#20057,#20039) +exprs(#20057,3,#20054,1,"5") +hasLocation(#20057,#20031) +enclosing_stmt(#20057,#20052) +expr_containers(#20057,#20001) +literals("5","5",#20057) +#20058=* +entry_cfg_node(#20058,#20001) +#20059=@"loc,{#10000},1,1,1,0" +locations_default(#20059,#10000,1,1,1,0) +hasLocation(#20058,#20059) +#20060=* +exit_cfg_node(#20060,#20001) +hasLocation(#20060,#20035) +successor(#20051,#20052) +successor(#20052,#20056) +successor(#20057,#20054) +successor(#20056,#20057) +successor(#20054,#20060) +successor(#20040,#20045) +successor(#20048,#20041) +successor(#20047,#20043) +successor(#20045,#20047) +successor(#20043,#20048) +successor(#20041,#20051) +successor(#20058,#20040) numlines(#10000,3,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/closure/output/trap/googDotModule.js.trap b/javascript/extractor/tests/closure/output/trap/googDotModule.js.trap index c38628f6a379..5c0a4d6022e9 100644 --- a/javascript/extractor/tests/closure/output/trap/googDotModule.js.trap +++ b/javascript/extractor/tests/closure/output/trap/googDotModule.js.trap @@ -147,143 +147,145 @@ is_module(#20001) is_closure_module(#20001) #20053=@"var;{x};{#20051}" variables(#20053,"x",#20051) -#20054=* -stmts(#20054,2,#20001,0,"goog.module('test');") -hasLocation(#20054,#20003) -stmt_containers(#20054,#20001) +#20054=@"var;{this};{#20051}" +variables(#20054,"this",#20051) #20055=* -exprs(#20055,13,#20054,0,"goog.module('test')") -#20056=@"loc,{#10000},1,1,1,19" -locations_default(#20056,#10000,1,1,1,19) -hasLocation(#20055,#20056) -enclosing_stmt(#20055,#20054) -expr_containers(#20055,#20001) -#20057=* -exprs(#20057,14,#20055,-1,"goog.module") -#20058=@"loc,{#10000},1,1,1,11" -locations_default(#20058,#10000,1,1,1,11) -hasLocation(#20057,#20058) -enclosing_stmt(#20057,#20054) -expr_containers(#20057,#20001) -#20059=* -exprs(#20059,79,#20057,0,"goog") -hasLocation(#20059,#20009) -enclosing_stmt(#20059,#20054) -expr_containers(#20059,#20001) -literals("goog","goog",#20059) -#20060=@"var;{goog};{#20000}" -variables(#20060,"goog",#20000) -bind(#20059,#20060) -#20061=* -exprs(#20061,0,#20057,1,"module") -hasLocation(#20061,#20013) -enclosing_stmt(#20061,#20054) -expr_containers(#20061,#20001) -literals("module","module",#20061) +stmts(#20055,2,#20001,0,"goog.module('test');") +hasLocation(#20055,#20003) +stmt_containers(#20055,#20001) +#20056=* +exprs(#20056,13,#20055,0,"goog.module('test')") +#20057=@"loc,{#10000},1,1,1,19" +locations_default(#20057,#10000,1,1,1,19) +hasLocation(#20056,#20057) +enclosing_stmt(#20056,#20055) +expr_containers(#20056,#20001) +#20058=* +exprs(#20058,14,#20056,-1,"goog.module") +#20059=@"loc,{#10000},1,1,1,11" +locations_default(#20059,#10000,1,1,1,11) +hasLocation(#20058,#20059) +enclosing_stmt(#20058,#20055) +expr_containers(#20058,#20001) +#20060=* +exprs(#20060,79,#20058,0,"goog") +hasLocation(#20060,#20009) +enclosing_stmt(#20060,#20055) +expr_containers(#20060,#20001) +literals("goog","goog",#20060) +#20061=@"var;{goog};{#20000}" +variables(#20061,"goog",#20000) +bind(#20060,#20061) #20062=* -exprs(#20062,4,#20055,0,"'test'") -hasLocation(#20062,#20017) -enclosing_stmt(#20062,#20054) +exprs(#20062,0,#20058,1,"module") +hasLocation(#20062,#20013) +enclosing_stmt(#20062,#20055) expr_containers(#20062,#20001) -literals("test","'test'",#20062) +literals("module","module",#20062) #20063=* -regexpterm(#20063,14,#20062,0,"test") -#20064=@"loc,{#10000},1,14,1,17" -locations_default(#20064,#10000,1,14,1,17) -hasLocation(#20063,#20064) -regexp_const_value(#20063,"test") -#20065=* -stmts(#20065,18,#20001,1,"var x = 5;") -hasLocation(#20065,#20005) -stmt_containers(#20065,#20001) +exprs(#20063,4,#20056,0,"'test'") +hasLocation(#20063,#20017) +enclosing_stmt(#20063,#20055) +expr_containers(#20063,#20001) +literals("test","'test'",#20063) +#20064=* +regexpterm(#20064,14,#20063,0,"test") +#20065=@"loc,{#10000},1,14,1,17" +locations_default(#20065,#10000,1,14,1,17) +hasLocation(#20064,#20065) +regexp_const_value(#20064,"test") #20066=* -exprs(#20066,64,#20065,0,"x = 5") -#20067=@"loc,{#10000},2,5,2,9" -locations_default(#20067,#10000,2,5,2,9) -hasLocation(#20066,#20067) -enclosing_stmt(#20066,#20065) -expr_containers(#20066,#20001) -#20068=* -exprs(#20068,78,#20066,0,"x") -hasLocation(#20068,#20025) -enclosing_stmt(#20068,#20065) -expr_containers(#20068,#20001) -literals("x","x",#20068) -decl(#20068,#20053) +stmts(#20066,18,#20001,1,"var x = 5;") +hasLocation(#20066,#20005) +stmt_containers(#20066,#20001) +#20067=* +exprs(#20067,64,#20066,0,"x = 5") +#20068=@"loc,{#10000},2,5,2,9" +locations_default(#20068,#10000,2,5,2,9) +hasLocation(#20067,#20068) +enclosing_stmt(#20067,#20066) +expr_containers(#20067,#20001) #20069=* -exprs(#20069,3,#20066,1,"5") -hasLocation(#20069,#20029) -enclosing_stmt(#20069,#20065) +exprs(#20069,78,#20067,0,"x") +hasLocation(#20069,#20025) +enclosing_stmt(#20069,#20066) expr_containers(#20069,#20001) -literals("5","5",#20069) +literals("x","x",#20069) +decl(#20069,#20053) #20070=* -stmts(#20070,2,#20001,2,"exports = { x: x };") -hasLocation(#20070,#20007) -stmt_containers(#20070,#20001) +exprs(#20070,3,#20067,1,"5") +hasLocation(#20070,#20029) +enclosing_stmt(#20070,#20066) +expr_containers(#20070,#20001) +literals("5","5",#20070) #20071=* -exprs(#20071,47,#20070,0,"exports = { x: x }") -#20072=@"loc,{#10000},3,1,3,18" -locations_default(#20072,#10000,3,1,3,18) -hasLocation(#20071,#20072) -enclosing_stmt(#20071,#20070) -expr_containers(#20071,#20001) -#20073=* -exprs(#20073,79,#20071,0,"exports") -hasLocation(#20073,#20033) -enclosing_stmt(#20073,#20070) -expr_containers(#20073,#20001) -literals("exports","exports",#20073) -bind(#20073,#20052) +stmts(#20071,2,#20001,2,"exports = { x: x };") +hasLocation(#20071,#20007) +stmt_containers(#20071,#20001) +#20072=* +exprs(#20072,47,#20071,0,"exports = { x: x }") +#20073=@"loc,{#10000},3,1,3,18" +locations_default(#20073,#10000,3,1,3,18) +hasLocation(#20072,#20073) +enclosing_stmt(#20072,#20071) +expr_containers(#20072,#20001) #20074=* -exprs(#20074,8,#20071,1,"{ x: x }") -#20075=@"loc,{#10000},3,11,3,18" -locations_default(#20075,#10000,3,11,3,18) -hasLocation(#20074,#20075) -enclosing_stmt(#20074,#20070) +exprs(#20074,79,#20072,0,"exports") +hasLocation(#20074,#20033) +enclosing_stmt(#20074,#20071) expr_containers(#20074,#20001) -#20076=* -properties(#20076,#20074,0,0,"x: x") -#20077=@"loc,{#10000},3,13,3,16" -locations_default(#20077,#10000,3,13,3,16) -hasLocation(#20076,#20077) -#20078=* -exprs(#20078,0,#20076,0,"x") -hasLocation(#20078,#20039) -enclosing_stmt(#20078,#20070) -expr_containers(#20078,#20001) -literals("x","x",#20078) +literals("exports","exports",#20074) +bind(#20074,#20052) +#20075=* +exprs(#20075,8,#20072,1,"{ x: x }") +#20076=@"loc,{#10000},3,11,3,18" +locations_default(#20076,#10000,3,11,3,18) +hasLocation(#20075,#20076) +enclosing_stmt(#20075,#20071) +expr_containers(#20075,#20001) +#20077=* +properties(#20077,#20075,0,0,"x: x") +#20078=@"loc,{#10000},3,13,3,16" +locations_default(#20078,#10000,3,13,3,16) +hasLocation(#20077,#20078) #20079=* -exprs(#20079,79,#20076,1,"x") -hasLocation(#20079,#20043) -enclosing_stmt(#20079,#20070) +exprs(#20079,0,#20077,0,"x") +hasLocation(#20079,#20039) +enclosing_stmt(#20079,#20071) expr_containers(#20079,#20001) literals("x","x",#20079) -bind(#20079,#20053) #20080=* -entry_cfg_node(#20080,#20001) -#20081=@"loc,{#10000},1,1,1,0" -locations_default(#20081,#10000,1,1,1,0) -hasLocation(#20080,#20081) -#20082=* -exit_cfg_node(#20082,#20001) -hasLocation(#20082,#20049) -successor(#20070,#20073) -successor(#20074,#20078) -successor(#20079,#20076) -successor(#20078,#20079) -successor(#20076,#20071) -successor(#20073,#20074) -successor(#20071,#20082) -successor(#20065,#20068) -successor(#20069,#20066) -successor(#20068,#20069) -successor(#20066,#20070) -successor(#20054,#20059) -successor(#20062,#20055) -successor(#20061,#20057) -successor(#20059,#20061) -successor(#20057,#20062) -successor(#20055,#20065) -successor(#20080,#20054) +exprs(#20080,79,#20077,1,"x") +hasLocation(#20080,#20043) +enclosing_stmt(#20080,#20071) +expr_containers(#20080,#20001) +literals("x","x",#20080) +bind(#20080,#20053) +#20081=* +entry_cfg_node(#20081,#20001) +#20082=@"loc,{#10000},1,1,1,0" +locations_default(#20082,#10000,1,1,1,0) +hasLocation(#20081,#20082) +#20083=* +exit_cfg_node(#20083,#20001) +hasLocation(#20083,#20049) +successor(#20071,#20074) +successor(#20075,#20079) +successor(#20080,#20077) +successor(#20079,#20080) +successor(#20077,#20072) +successor(#20074,#20075) +successor(#20072,#20083) +successor(#20066,#20069) +successor(#20070,#20067) +successor(#20069,#20070) +successor(#20067,#20071) +successor(#20055,#20060) +successor(#20063,#20056) +successor(#20062,#20058) +successor(#20060,#20062) +successor(#20058,#20063) +successor(#20056,#20066) +successor(#20081,#20055) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/closure/output/trap/googDotProvide.js.trap b/javascript/extractor/tests/closure/output/trap/googDotProvide.js.trap index 99979f50c2cf..b6cbd9d596bd 100644 --- a/javascript/extractor/tests/closure/output/trap/googDotProvide.js.trap +++ b/javascript/extractor/tests/closure/output/trap/googDotProvide.js.trap @@ -102,126 +102,128 @@ toplevels(#20001,0) #20036=@"loc,{#10000},1,1,4,0" locations_default(#20036,#10000,1,1,4,0) hasLocation(#20001,#20036) -#20037=* -stmts(#20037,2,#20001,0,"goog.pr ... st.x');") -hasLocation(#20037,#20003) -stmt_containers(#20037,#20001) +#20037=@"var;{this};{#20000}" +variables(#20037,"this",#20000) #20038=* -exprs(#20038,13,#20037,0,"goog.pr ... est.x')") -#20039=@"loc,{#10000},1,1,1,22" -locations_default(#20039,#10000,1,1,1,22) -hasLocation(#20038,#20039) -enclosing_stmt(#20038,#20037) -expr_containers(#20038,#20001) -#20040=* -exprs(#20040,14,#20038,-1,"goog.provide") -#20041=@"loc,{#10000},1,1,1,12" -locations_default(#20041,#10000,1,1,1,12) -hasLocation(#20040,#20041) -enclosing_stmt(#20040,#20037) -expr_containers(#20040,#20001) -#20042=* -exprs(#20042,79,#20040,0,"goog") -hasLocation(#20042,#20009) -enclosing_stmt(#20042,#20037) -expr_containers(#20042,#20001) -literals("goog","goog",#20042) -#20043=@"var;{goog};{#20000}" -variables(#20043,"goog",#20000) -bind(#20042,#20043) -#20044=* -exprs(#20044,0,#20040,1,"provide") -hasLocation(#20044,#20013) -enclosing_stmt(#20044,#20037) -expr_containers(#20044,#20001) -literals("provide","provide",#20044) +stmts(#20038,2,#20001,0,"goog.pr ... st.x');") +hasLocation(#20038,#20003) +stmt_containers(#20038,#20001) +#20039=* +exprs(#20039,13,#20038,0,"goog.pr ... est.x')") +#20040=@"loc,{#10000},1,1,1,22" +locations_default(#20040,#10000,1,1,1,22) +hasLocation(#20039,#20040) +enclosing_stmt(#20039,#20038) +expr_containers(#20039,#20001) +#20041=* +exprs(#20041,14,#20039,-1,"goog.provide") +#20042=@"loc,{#10000},1,1,1,12" +locations_default(#20042,#10000,1,1,1,12) +hasLocation(#20041,#20042) +enclosing_stmt(#20041,#20038) +expr_containers(#20041,#20001) +#20043=* +exprs(#20043,79,#20041,0,"goog") +hasLocation(#20043,#20009) +enclosing_stmt(#20043,#20038) +expr_containers(#20043,#20001) +literals("goog","goog",#20043) +#20044=@"var;{goog};{#20000}" +variables(#20044,"goog",#20000) +bind(#20043,#20044) #20045=* -exprs(#20045,4,#20038,0,"'test.x'") -hasLocation(#20045,#20017) -enclosing_stmt(#20045,#20037) +exprs(#20045,0,#20041,1,"provide") +hasLocation(#20045,#20013) +enclosing_stmt(#20045,#20038) expr_containers(#20045,#20001) -literals("test.x","'test.x'",#20045) +literals("provide","provide",#20045) #20046=* -regexpterm(#20046,1,#20045,0,"test.x") -#20047=@"loc,{#10000},1,15,1,20" -locations_default(#20047,#10000,1,15,1,20) -hasLocation(#20046,#20047) -#20048=* -regexpterm(#20048,14,#20046,0,"test") -#20049=@"loc,{#10000},1,15,1,18" -locations_default(#20049,#10000,1,15,1,18) -hasLocation(#20048,#20049) -regexp_const_value(#20048,"test") -#20050=* -regexpterm(#20050,12,#20046,1,".") -#20051=@"loc,{#10000},1,19,1,19" -locations_default(#20051,#10000,1,19,1,19) -hasLocation(#20050,#20051) -#20052=* -regexpterm(#20052,14,#20046,2,"x") -#20053=@"loc,{#10000},1,20,1,20" -locations_default(#20053,#10000,1,20,1,20) -hasLocation(#20052,#20053) -regexp_const_value(#20052,"x") -#20054=* -stmts(#20054,2,#20001,1,"test.x = 5;") -hasLocation(#20054,#20007) -stmt_containers(#20054,#20001) +exprs(#20046,4,#20039,0,"'test.x'") +hasLocation(#20046,#20017) +enclosing_stmt(#20046,#20038) +expr_containers(#20046,#20001) +literals("test.x","'test.x'",#20046) +#20047=* +regexpterm(#20047,1,#20046,0,"test.x") +#20048=@"loc,{#10000},1,15,1,20" +locations_default(#20048,#10000,1,15,1,20) +hasLocation(#20047,#20048) +#20049=* +regexpterm(#20049,14,#20047,0,"test") +#20050=@"loc,{#10000},1,15,1,18" +locations_default(#20050,#10000,1,15,1,18) +hasLocation(#20049,#20050) +regexp_const_value(#20049,"test") +#20051=* +regexpterm(#20051,12,#20047,1,".") +#20052=@"loc,{#10000},1,19,1,19" +locations_default(#20052,#10000,1,19,1,19) +hasLocation(#20051,#20052) +#20053=* +regexpterm(#20053,14,#20047,2,"x") +#20054=@"loc,{#10000},1,20,1,20" +locations_default(#20054,#10000,1,20,1,20) +hasLocation(#20053,#20054) +regexp_const_value(#20053,"x") #20055=* -exprs(#20055,47,#20054,0,"test.x = 5") -#20056=@"loc,{#10000},3,1,3,10" -locations_default(#20056,#10000,3,1,3,10) -hasLocation(#20055,#20056) -enclosing_stmt(#20055,#20054) -expr_containers(#20055,#20001) -#20057=* -exprs(#20057,14,#20055,0,"test.x") -#20058=@"loc,{#10000},3,1,3,6" -locations_default(#20058,#10000,3,1,3,6) -hasLocation(#20057,#20058) -enclosing_stmt(#20057,#20054) -expr_containers(#20057,#20001) -#20059=* -exprs(#20059,79,#20057,0,"test") -hasLocation(#20059,#20023) -enclosing_stmt(#20059,#20054) -expr_containers(#20059,#20001) -literals("test","test",#20059) -#20060=@"var;{test};{#20000}" -variables(#20060,"test",#20000) -bind(#20059,#20060) -#20061=* -exprs(#20061,0,#20057,1,"x") -hasLocation(#20061,#20027) -enclosing_stmt(#20061,#20054) -expr_containers(#20061,#20001) -literals("x","x",#20061) +stmts(#20055,2,#20001,1,"test.x = 5;") +hasLocation(#20055,#20007) +stmt_containers(#20055,#20001) +#20056=* +exprs(#20056,47,#20055,0,"test.x = 5") +#20057=@"loc,{#10000},3,1,3,10" +locations_default(#20057,#10000,3,1,3,10) +hasLocation(#20056,#20057) +enclosing_stmt(#20056,#20055) +expr_containers(#20056,#20001) +#20058=* +exprs(#20058,14,#20056,0,"test.x") +#20059=@"loc,{#10000},3,1,3,6" +locations_default(#20059,#10000,3,1,3,6) +hasLocation(#20058,#20059) +enclosing_stmt(#20058,#20055) +expr_containers(#20058,#20001) +#20060=* +exprs(#20060,79,#20058,0,"test") +hasLocation(#20060,#20023) +enclosing_stmt(#20060,#20055) +expr_containers(#20060,#20001) +literals("test","test",#20060) +#20061=@"var;{test};{#20000}" +variables(#20061,"test",#20000) +bind(#20060,#20061) #20062=* -exprs(#20062,3,#20055,1,"5") -hasLocation(#20062,#20031) -enclosing_stmt(#20062,#20054) +exprs(#20062,0,#20058,1,"x") +hasLocation(#20062,#20027) +enclosing_stmt(#20062,#20055) expr_containers(#20062,#20001) -literals("5","5",#20062) +literals("x","x",#20062) #20063=* -entry_cfg_node(#20063,#20001) -#20064=@"loc,{#10000},1,1,1,0" -locations_default(#20064,#10000,1,1,1,0) -hasLocation(#20063,#20064) -#20065=* -exit_cfg_node(#20065,#20001) -hasLocation(#20065,#20035) -successor(#20054,#20059) -successor(#20062,#20055) -successor(#20061,#20057) -successor(#20059,#20061) -successor(#20057,#20062) -successor(#20055,#20065) -successor(#20037,#20042) -successor(#20045,#20038) -successor(#20044,#20040) -successor(#20042,#20044) -successor(#20040,#20045) -successor(#20038,#20054) -successor(#20063,#20037) +exprs(#20063,3,#20056,1,"5") +hasLocation(#20063,#20031) +enclosing_stmt(#20063,#20055) +expr_containers(#20063,#20001) +literals("5","5",#20063) +#20064=* +entry_cfg_node(#20064,#20001) +#20065=@"loc,{#10000},1,1,1,0" +locations_default(#20065,#10000,1,1,1,0) +hasLocation(#20064,#20065) +#20066=* +exit_cfg_node(#20066,#20001) +hasLocation(#20066,#20035) +successor(#20055,#20060) +successor(#20063,#20056) +successor(#20062,#20058) +successor(#20060,#20062) +successor(#20058,#20063) +successor(#20056,#20066) +successor(#20038,#20043) +successor(#20046,#20039) +successor(#20045,#20041) +successor(#20043,#20045) +successor(#20041,#20046) +successor(#20039,#20055) +successor(#20064,#20038) numlines(#10000,3,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/comments/output/trap/comments.js.trap b/javascript/extractor/tests/comments/output/trap/comments.js.trap index 79a199f90ecb..38979b61d037 100644 --- a/javascript/extractor/tests/comments/output/trap/comments.js.trap +++ b/javascript/extractor/tests/comments/output/trap/comments.js.trap @@ -71,14 +71,16 @@ toplevels(#20001,0) #20020=@"loc,{#10000},1,1,5,24" locations_default(#20020,#10000,1,1,5,24) hasLocation(#20001,#20020) -#20021=* -entry_cfg_node(#20021,#20001) -#20022=@"loc,{#10000},1,1,1,0" -locations_default(#20022,#10000,1,1,1,0) -hasLocation(#20021,#20022) -#20023=* -exit_cfg_node(#20023,#20001) -hasLocation(#20023,#20018) -successor(#20021,#20023) +#20021=@"var;{this};{#20000}" +variables(#20021,"this",#20000) +#20022=* +entry_cfg_node(#20022,#20001) +#20023=@"loc,{#10000},1,1,1,0" +locations_default(#20023,#10000,1,1,1,0) +hasLocation(#20022,#20023) +#20024=* +exit_cfg_node(#20024,#20001) +hasLocation(#20024,#20018) +successor(#20022,#20024) numlines(#10000,5,0,5) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/comments/output/trap/empty_comment.js.trap b/javascript/extractor/tests/comments/output/trap/empty_comment.js.trap index 51e9652b1661..d15ef44b98ed 100644 --- a/javascript/extractor/tests/comments/output/trap/empty_comment.js.trap +++ b/javascript/extractor/tests/comments/output/trap/empty_comment.js.trap @@ -29,14 +29,16 @@ toplevels(#20001,0) #20007=@"loc,{#10000},1,1,2,0" locations_default(#20007,#10000,1,1,2,0) hasLocation(#20001,#20007) -#20008=* -entry_cfg_node(#20008,#20001) -#20009=@"loc,{#10000},1,1,1,0" -locations_default(#20009,#10000,1,1,1,0) -hasLocation(#20008,#20009) -#20010=* -exit_cfg_node(#20010,#20001) -hasLocation(#20010,#20006) -successor(#20008,#20010) +#20008=@"var;{this};{#20000}" +variables(#20008,"this",#20000) +#20009=* +entry_cfg_node(#20009,#20001) +#20010=@"loc,{#10000},1,1,1,0" +locations_default(#20010,#10000,1,1,1,0) +hasLocation(#20009,#20010) +#20011=* +exit_cfg_node(#20011,#20001) +hasLocation(#20011,#20006) +successor(#20009,#20011) numlines(#10000,1,0,1) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/comments/output/trap/jsdoc.js.trap b/javascript/extractor/tests/comments/output/trap/jsdoc.js.trap index 910c567993f3..fbd9234b8cc9 100644 --- a/javascript/extractor/tests/comments/output/trap/jsdoc.js.trap +++ b/javascript/extractor/tests/comments/output/trap/jsdoc.js.trap @@ -673,14 +673,16 @@ toplevels(#20001,0) #20214=@"loc,{#10000},1,1,43,0" locations_default(#20214,#10000,1,1,43,0) hasLocation(#20001,#20214) -#20215=* -entry_cfg_node(#20215,#20001) -#20216=@"loc,{#10000},1,1,1,0" -locations_default(#20216,#10000,1,1,1,0) -hasLocation(#20215,#20216) -#20217=* -exit_cfg_node(#20217,#20001) -hasLocation(#20217,#20105) -successor(#20215,#20217) +#20215=@"var;{this};{#20000}" +variables(#20215,"this",#20000) +#20216=* +entry_cfg_node(#20216,#20001) +#20217=@"loc,{#10000},1,1,1,0" +locations_default(#20217,#10000,1,1,1,0) +hasLocation(#20216,#20217) +#20218=* +exit_cfg_node(#20218,#20001) +hasLocation(#20218,#20105) +successor(#20216,#20218) numlines(#10000,42,0,37) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/default-encoding/output/trap/latin1.js.trap b/javascript/extractor/tests/default-encoding/output/trap/latin1.js.trap index 1b2c513def07..1785f3fbac60 100644 --- a/javascript/extractor/tests/default-encoding/output/trap/latin1.js.trap +++ b/javascript/extractor/tests/default-encoding/output/trap/latin1.js.trap @@ -72,67 +72,71 @@ locations_default(#20024,#10000,1,1,2,0) hasLocation(#20001,#20024) #20025=@"var;{f};{#20000}" variables(#20025,"f",#20000) -#20026=* -stmts(#20026,17,#20001,0,"function f(\u00e4, \u00f6) {}") -hasLocation(#20026,#20003) -stmt_containers(#20026,#20001) +#20026=@"var;{this};{#20000}" +variables(#20026,"this",#20000) #20027=* -exprs(#20027,78,#20026,-1,"f") -hasLocation(#20027,#20007) -expr_containers(#20027,#20026) -literals("f","f",#20027) -decl(#20027,#20025) +stmts(#20027,17,#20001,0,"function f(\u00e4, \u00f6) {}") +hasLocation(#20027,#20003) +stmt_containers(#20027,#20001) #20028=* -scopes(#20028,1) -scopenodes(#20026,#20028) -scopenesting(#20028,#20000) -#20029=@"var;{ä};{#20028}" -variables(#20029,"ä",#20028) -#20030=* -exprs(#20030,78,#20026,0,"\u00e4") -hasLocation(#20030,#20011) -expr_containers(#20030,#20026) -literals("ä","ä",#20030) -decl(#20030,#20029) -#20031=@"var;{ö};{#20028}" -variables(#20031,"ö",#20028) +exprs(#20028,78,#20027,-1,"f") +hasLocation(#20028,#20007) +expr_containers(#20028,#20027) +literals("f","f",#20028) +decl(#20028,#20025) +#20029=* +scopes(#20029,1) +scopenodes(#20027,#20029) +scopenesting(#20029,#20000) +#20030=@"var;{this};{#20029}" +variables(#20030,"this",#20029) +#20031=@"var;{ä};{#20029}" +variables(#20031,"ä",#20029) #20032=* -exprs(#20032,78,#20026,1,"\u00f6") -hasLocation(#20032,#20015) -expr_containers(#20032,#20026) -literals("ö","ö",#20032) +exprs(#20032,78,#20027,0,"\u00e4") +hasLocation(#20032,#20011) +expr_containers(#20032,#20027) +literals("ä","ä",#20032) decl(#20032,#20031) -#20033=@"var;{arguments};{#20028}" -variables(#20033,"arguments",#20028) -is_arguments_object(#20033) +#20033=@"var;{ö};{#20029}" +variables(#20033,"ö",#20029) #20034=* -stmts(#20034,1,#20026,-2,"{}") -#20035=@"loc,{#10000},1,18,1,19" -locations_default(#20035,#10000,1,18,1,19) -hasLocation(#20034,#20035) -stmt_containers(#20034,#20026) +exprs(#20034,78,#20027,1,"\u00f6") +hasLocation(#20034,#20015) +expr_containers(#20034,#20027) +literals("ö","ö",#20034) +decl(#20034,#20033) +#20035=@"var;{arguments};{#20029}" +variables(#20035,"arguments",#20029) +is_arguments_object(#20035) #20036=* -entry_cfg_node(#20036,#20001) -#20037=@"loc,{#10000},1,1,1,0" -locations_default(#20037,#10000,1,1,1,0) +stmts(#20036,1,#20027,-2,"{}") +#20037=@"loc,{#10000},1,18,1,19" +locations_default(#20037,#10000,1,18,1,19) hasLocation(#20036,#20037) +stmt_containers(#20036,#20027) #20038=* -exit_cfg_node(#20038,#20001) -hasLocation(#20038,#20023) -successor(#20026,#20038) -#20039=* -entry_cfg_node(#20039,#20026) -hasLocation(#20039,#20037) +entry_cfg_node(#20038,#20001) +#20039=@"loc,{#10000},1,1,1,0" +locations_default(#20039,#10000,1,1,1,0) +hasLocation(#20038,#20039) #20040=* -exit_cfg_node(#20040,#20026) -#20041=@"loc,{#10000},1,20,1,19" -locations_default(#20041,#10000,1,20,1,19) -hasLocation(#20040,#20041) -successor(#20034,#20040) +exit_cfg_node(#20040,#20001) +hasLocation(#20040,#20023) +successor(#20027,#20040) +#20041=* +entry_cfg_node(#20041,#20027) +hasLocation(#20041,#20039) +#20042=* +exit_cfg_node(#20042,#20027) +#20043=@"loc,{#10000},1,20,1,19" +locations_default(#20043,#10000,1,20,1,19) +hasLocation(#20042,#20043) +successor(#20036,#20042) +successor(#20034,#20036) successor(#20032,#20034) -successor(#20030,#20032) -successor(#20039,#20030) -successor(#20027,#20026) -successor(#20036,#20027) +successor(#20041,#20032) +successor(#20028,#20027) +successor(#20038,#20028) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/e4x/output/trap/regress.js.trap b/javascript/extractor/tests/e4x/output/trap/regress.js.trap index 1f14daae9739..dba489321b2d 100644 --- a/javascript/extractor/tests/e4x/output/trap/regress.js.trap +++ b/javascript/extractor/tests/e4x/output/trap/regress.js.trap @@ -50,54 +50,56 @@ toplevels(#20001,0) #20016=@"loc,{#10000},1,1,2,0" locations_default(#20016,#10000,1,1,2,0) hasLocation(#20001,#20016) -#20017=* -stmts(#20017,2,#20001,0,"[ x in y ]") -hasLocation(#20017,#20003) -stmt_containers(#20017,#20001) +#20017=@"var;{this};{#20000}" +variables(#20017,"this",#20000) #20018=* -exprs(#20018,7,#20017,0,"[ x in y ]") +stmts(#20018,2,#20001,0,"[ x in y ]") hasLocation(#20018,#20003) -enclosing_stmt(#20018,#20017) -expr_containers(#20018,#20001) +stmt_containers(#20018,#20001) #20019=* -exprs(#20019,42,#20018,0,"x in y") -#20020=@"loc,{#10000},1,3,1,8" -locations_default(#20020,#10000,1,3,1,8) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20017) +exprs(#20019,7,#20018,0,"[ x in y ]") +hasLocation(#20019,#20003) +enclosing_stmt(#20019,#20018) expr_containers(#20019,#20001) -#20021=* -exprs(#20021,79,#20019,0,"x") -hasLocation(#20021,#20007) -enclosing_stmt(#20021,#20017) -expr_containers(#20021,#20001) -literals("x","x",#20021) -#20022=@"var;{x};{#20000}" -variables(#20022,"x",#20000) -bind(#20021,#20022) -#20023=* -exprs(#20023,79,#20019,1,"y") -hasLocation(#20023,#20011) -enclosing_stmt(#20023,#20017) -expr_containers(#20023,#20001) -literals("y","y",#20023) -#20024=@"var;{y};{#20000}" -variables(#20024,"y",#20000) -bind(#20023,#20024) -array_size(#20018,1) -#20025=* -entry_cfg_node(#20025,#20001) -#20026=@"loc,{#10000},1,1,1,0" -locations_default(#20026,#10000,1,1,1,0) -hasLocation(#20025,#20026) -#20027=* -exit_cfg_node(#20027,#20001) -hasLocation(#20027,#20015) -successor(#20017,#20018) -successor(#20018,#20021) -successor(#20023,#20019) -successor(#20021,#20023) -successor(#20019,#20027) -successor(#20025,#20017) +#20020=* +exprs(#20020,42,#20019,0,"x in y") +#20021=@"loc,{#10000},1,3,1,8" +locations_default(#20021,#10000,1,3,1,8) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20018) +expr_containers(#20020,#20001) +#20022=* +exprs(#20022,79,#20020,0,"x") +hasLocation(#20022,#20007) +enclosing_stmt(#20022,#20018) +expr_containers(#20022,#20001) +literals("x","x",#20022) +#20023=@"var;{x};{#20000}" +variables(#20023,"x",#20000) +bind(#20022,#20023) +#20024=* +exprs(#20024,79,#20020,1,"y") +hasLocation(#20024,#20011) +enclosing_stmt(#20024,#20018) +expr_containers(#20024,#20001) +literals("y","y",#20024) +#20025=@"var;{y};{#20000}" +variables(#20025,"y",#20000) +bind(#20024,#20025) +array_size(#20019,1) +#20026=* +entry_cfg_node(#20026,#20001) +#20027=@"loc,{#10000},1,1,1,0" +locations_default(#20027,#10000,1,1,1,0) +hasLocation(#20026,#20027) +#20028=* +exit_cfg_node(#20028,#20001) +hasLocation(#20028,#20015) +successor(#20018,#20019) +successor(#20019,#20022) +successor(#20024,#20020) +successor(#20022,#20024) +successor(#20020,#20028) +successor(#20026,#20018) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/e4x/output/trap/tst.js.trap b/javascript/extractor/tests/e4x/output/trap/tst.js.trap index a9636dd5fa47..b7bfb4dc5e5b 100644 --- a/javascript/extractor/tests/e4x/output/trap/tst.js.trap +++ b/javascript/extractor/tests/e4x/output/trap/tst.js.trap @@ -490,507 +490,509 @@ locations_default(#20184,#10000,1,1,14,0) hasLocation(#20001,#20184) #20185=@"var;{e};{#20000}" variables(#20185,"e",#20000) -#20186=* -stmts(#20186,2,#20001,0,"items.@id;") -hasLocation(#20186,#20003) -stmt_containers(#20186,#20001) +#20186=@"var;{this};{#20000}" +variables(#20186,"this",#20000) #20187=* -exprs(#20187,14,#20186,0,"items.@id") -#20188=@"loc,{#10000},1,1,1,9" -locations_default(#20188,#10000,1,1,1,9) -hasLocation(#20187,#20188) -enclosing_stmt(#20187,#20186) -expr_containers(#20187,#20001) -#20189=* -exprs(#20189,79,#20187,0,"items") -hasLocation(#20189,#20029) -enclosing_stmt(#20189,#20186) -expr_containers(#20189,#20001) -literals("items","items",#20189) -#20190=@"var;{items};{#20000}" -variables(#20190,"items",#20000) -bind(#20189,#20190) -#20191=* -exprs(#20191,109,#20187,1,"@id") -#20192=@"loc,{#10000},1,7,1,9" -locations_default(#20192,#10000,1,7,1,9) -hasLocation(#20191,#20192) -enclosing_stmt(#20191,#20186) -expr_containers(#20191,#20001) -#20193=* -exprs(#20193,0,#20191,0,"id") -hasLocation(#20193,#20035) -enclosing_stmt(#20193,#20186) -expr_containers(#20193,#20001) -literals("id","id",#20193) +stmts(#20187,2,#20001,0,"items.@id;") +hasLocation(#20187,#20003) +stmt_containers(#20187,#20001) +#20188=* +exprs(#20188,14,#20187,0,"items.@id") +#20189=@"loc,{#10000},1,1,1,9" +locations_default(#20189,#10000,1,1,1,9) +hasLocation(#20188,#20189) +enclosing_stmt(#20188,#20187) +expr_containers(#20188,#20001) +#20190=* +exprs(#20190,79,#20188,0,"items") +hasLocation(#20190,#20029) +enclosing_stmt(#20190,#20187) +expr_containers(#20190,#20001) +literals("items","items",#20190) +#20191=@"var;{items};{#20000}" +variables(#20191,"items",#20000) +bind(#20190,#20191) +#20192=* +exprs(#20192,109,#20188,1,"@id") +#20193=@"loc,{#10000},1,7,1,9" +locations_default(#20193,#10000,1,7,1,9) +hasLocation(#20192,#20193) +enclosing_stmt(#20192,#20187) +expr_containers(#20192,#20001) #20194=* -stmts(#20194,2,#20001,1,"items.*[1];") -hasLocation(#20194,#20005) -stmt_containers(#20194,#20001) +exprs(#20194,0,#20192,0,"id") +hasLocation(#20194,#20035) +enclosing_stmt(#20194,#20187) +expr_containers(#20194,#20001) +literals("id","id",#20194) #20195=* -exprs(#20195,15,#20194,0,"items.*[1]") -#20196=@"loc,{#10000},2,1,2,10" -locations_default(#20196,#10000,2,1,2,10) -hasLocation(#20195,#20196) -enclosing_stmt(#20195,#20194) -expr_containers(#20195,#20001) -#20197=* -exprs(#20197,14,#20195,0,"items.*") -#20198=@"loc,{#10000},2,1,2,7" -locations_default(#20198,#10000,2,1,2,7) -hasLocation(#20197,#20198) -enclosing_stmt(#20197,#20194) -expr_containers(#20197,#20001) -#20199=* -exprs(#20199,79,#20197,0,"items") -hasLocation(#20199,#20039) -enclosing_stmt(#20199,#20194) -expr_containers(#20199,#20001) -literals("items","items",#20199) -bind(#20199,#20190) +stmts(#20195,2,#20001,1,"items.*[1];") +hasLocation(#20195,#20005) +stmt_containers(#20195,#20001) +#20196=* +exprs(#20196,15,#20195,0,"items.*[1]") +#20197=@"loc,{#10000},2,1,2,10" +locations_default(#20197,#10000,2,1,2,10) +hasLocation(#20196,#20197) +enclosing_stmt(#20196,#20195) +expr_containers(#20196,#20001) +#20198=* +exprs(#20198,14,#20196,0,"items.*") +#20199=@"loc,{#10000},2,1,2,7" +locations_default(#20199,#10000,2,1,2,7) +hasLocation(#20198,#20199) +enclosing_stmt(#20198,#20195) +expr_containers(#20198,#20001) #20200=* -exprs(#20200,108,#20197,1,"*") -hasLocation(#20200,#20043) -enclosing_stmt(#20200,#20194) +exprs(#20200,79,#20198,0,"items") +hasLocation(#20200,#20039) +enclosing_stmt(#20200,#20195) expr_containers(#20200,#20001) +literals("items","items",#20200) +bind(#20200,#20191) #20201=* -exprs(#20201,3,#20195,1,"1") -hasLocation(#20201,#20047) -enclosing_stmt(#20201,#20194) +exprs(#20201,108,#20198,1,"*") +hasLocation(#20201,#20043) +enclosing_stmt(#20201,#20195) expr_containers(#20201,#20001) -literals("1","1",#20201) #20202=* -stmts(#20202,2,#20001,2,"order.@*;") -hasLocation(#20202,#20007) -stmt_containers(#20202,#20001) +exprs(#20202,3,#20196,1,"1") +hasLocation(#20202,#20047) +enclosing_stmt(#20202,#20195) +expr_containers(#20202,#20001) +literals("1","1",#20202) #20203=* -exprs(#20203,14,#20202,0,"order.@*") -#20204=@"loc,{#10000},3,1,3,8" -locations_default(#20204,#10000,3,1,3,8) -hasLocation(#20203,#20204) -enclosing_stmt(#20203,#20202) -expr_containers(#20203,#20001) -#20205=* -exprs(#20205,79,#20203,0,"order") -hasLocation(#20205,#20053) -enclosing_stmt(#20205,#20202) -expr_containers(#20205,#20001) -literals("order","order",#20205) -#20206=@"var;{order};{#20000}" -variables(#20206,"order",#20000) -bind(#20205,#20206) -#20207=* -exprs(#20207,109,#20203,1,"@*") -#20208=@"loc,{#10000},3,7,3,8" -locations_default(#20208,#10000,3,7,3,8) -hasLocation(#20207,#20208) -enclosing_stmt(#20207,#20202) -expr_containers(#20207,#20001) -#20209=* -exprs(#20209,108,#20207,0,"*") -hasLocation(#20209,#20059) -enclosing_stmt(#20209,#20202) -expr_containers(#20209,#20001) +stmts(#20203,2,#20001,2,"order.@*;") +hasLocation(#20203,#20007) +stmt_containers(#20203,#20001) +#20204=* +exprs(#20204,14,#20203,0,"order.@*") +#20205=@"loc,{#10000},3,1,3,8" +locations_default(#20205,#10000,3,1,3,8) +hasLocation(#20204,#20205) +enclosing_stmt(#20204,#20203) +expr_containers(#20204,#20001) +#20206=* +exprs(#20206,79,#20204,0,"order") +hasLocation(#20206,#20053) +enclosing_stmt(#20206,#20203) +expr_containers(#20206,#20001) +literals("order","order",#20206) +#20207=@"var;{order};{#20000}" +variables(#20207,"order",#20000) +bind(#20206,#20207) +#20208=* +exprs(#20208,109,#20204,1,"@*") +#20209=@"loc,{#10000},3,7,3,8" +locations_default(#20209,#10000,3,7,3,8) +hasLocation(#20208,#20209) +enclosing_stmt(#20208,#20203) +expr_containers(#20208,#20001) #20210=* -stmts(#20210,2,#20001,3,"e..empl ... == 1);") -hasLocation(#20210,#20009) -stmt_containers(#20210,#20001) +exprs(#20210,108,#20208,0,"*") +hasLocation(#20210,#20059) +enclosing_stmt(#20210,#20203) +expr_containers(#20210,#20001) #20211=* -exprs(#20211,111,#20210,0,"e..empl ... d == 1)") -#20212=@"loc,{#10000},4,1,4,34" -locations_default(#20212,#10000,4,1,4,34) -hasLocation(#20211,#20212) -enclosing_stmt(#20211,#20210) -expr_containers(#20211,#20001) -#20213=* -exprs(#20213,114,#20211,0,"e..employee") -#20214=@"loc,{#10000},4,1,4,11" -locations_default(#20214,#10000,4,1,4,11) -hasLocation(#20213,#20214) -enclosing_stmt(#20213,#20210) -expr_containers(#20213,#20001) -#20215=* -exprs(#20215,79,#20213,0,"e") -hasLocation(#20215,#20063) -enclosing_stmt(#20215,#20210) -expr_containers(#20215,#20001) -literals("e","e",#20215) -bind(#20215,#20185) +stmts(#20211,2,#20001,3,"e..empl ... == 1);") +hasLocation(#20211,#20009) +stmt_containers(#20211,#20001) +#20212=* +exprs(#20212,111,#20211,0,"e..empl ... d == 1)") +#20213=@"loc,{#10000},4,1,4,34" +locations_default(#20213,#10000,4,1,4,34) +hasLocation(#20212,#20213) +enclosing_stmt(#20212,#20211) +expr_containers(#20212,#20001) +#20214=* +exprs(#20214,114,#20212,0,"e..employee") +#20215=@"loc,{#10000},4,1,4,11" +locations_default(#20215,#10000,4,1,4,11) +hasLocation(#20214,#20215) +enclosing_stmt(#20214,#20211) +expr_containers(#20214,#20001) #20216=* -exprs(#20216,0,#20213,1,"employee") -hasLocation(#20216,#20067) -enclosing_stmt(#20216,#20210) +exprs(#20216,79,#20214,0,"e") +hasLocation(#20216,#20063) +enclosing_stmt(#20216,#20211) expr_containers(#20216,#20001) -literals("employee","employee",#20216) +literals("e","e",#20216) +bind(#20216,#20185) #20217=* -exprs(#20217,45,#20211,1,"@id == 0 || @id == 1") -#20218=@"loc,{#10000},4,14,4,33" -locations_default(#20218,#10000,4,14,4,33) -hasLocation(#20217,#20218) -enclosing_stmt(#20217,#20210) +exprs(#20217,0,#20214,1,"employee") +hasLocation(#20217,#20067) +enclosing_stmt(#20217,#20211) expr_containers(#20217,#20001) -#20219=* -exprs(#20219,23,#20217,0,"@id == 0") -#20220=@"loc,{#10000},4,14,4,21" -locations_default(#20220,#10000,4,14,4,21) -hasLocation(#20219,#20220) -enclosing_stmt(#20219,#20210) -expr_containers(#20219,#20001) -#20221=* -exprs(#20221,109,#20219,0,"@id") -#20222=@"loc,{#10000},4,14,4,16" -locations_default(#20222,#10000,4,14,4,16) -hasLocation(#20221,#20222) -enclosing_stmt(#20221,#20210) -expr_containers(#20221,#20001) -#20223=* -exprs(#20223,0,#20221,0,"id") -hasLocation(#20223,#20075) -enclosing_stmt(#20223,#20210) -expr_containers(#20223,#20001) -literals("id","id",#20223) +literals("employee","employee",#20217) +#20218=* +exprs(#20218,45,#20212,1,"@id == 0 || @id == 1") +#20219=@"loc,{#10000},4,14,4,33" +locations_default(#20219,#10000,4,14,4,33) +hasLocation(#20218,#20219) +enclosing_stmt(#20218,#20211) +expr_containers(#20218,#20001) +#20220=* +exprs(#20220,23,#20218,0,"@id == 0") +#20221=@"loc,{#10000},4,14,4,21" +locations_default(#20221,#10000,4,14,4,21) +hasLocation(#20220,#20221) +enclosing_stmt(#20220,#20211) +expr_containers(#20220,#20001) +#20222=* +exprs(#20222,109,#20220,0,"@id") +#20223=@"loc,{#10000},4,14,4,16" +locations_default(#20223,#10000,4,14,4,16) +hasLocation(#20222,#20223) +enclosing_stmt(#20222,#20211) +expr_containers(#20222,#20001) #20224=* -exprs(#20224,3,#20219,1,"0") -hasLocation(#20224,#20079) -enclosing_stmt(#20224,#20210) +exprs(#20224,0,#20222,0,"id") +hasLocation(#20224,#20075) +enclosing_stmt(#20224,#20211) expr_containers(#20224,#20001) -literals("0","0",#20224) +literals("id","id",#20224) #20225=* -exprs(#20225,23,#20217,1,"@id == 1") -#20226=@"loc,{#10000},4,26,4,33" -locations_default(#20226,#10000,4,26,4,33) -hasLocation(#20225,#20226) -enclosing_stmt(#20225,#20210) +exprs(#20225,3,#20220,1,"0") +hasLocation(#20225,#20079) +enclosing_stmt(#20225,#20211) expr_containers(#20225,#20001) -#20227=* -exprs(#20227,109,#20225,0,"@id") -#20228=@"loc,{#10000},4,26,4,28" -locations_default(#20228,#10000,4,26,4,28) -hasLocation(#20227,#20228) -enclosing_stmt(#20227,#20210) -expr_containers(#20227,#20001) -#20229=* -exprs(#20229,0,#20227,0,"id") -hasLocation(#20229,#20085) -enclosing_stmt(#20229,#20210) -expr_containers(#20229,#20001) -literals("id","id",#20229) +literals("0","0",#20225) +#20226=* +exprs(#20226,23,#20218,1,"@id == 1") +#20227=@"loc,{#10000},4,26,4,33" +locations_default(#20227,#10000,4,26,4,33) +hasLocation(#20226,#20227) +enclosing_stmt(#20226,#20211) +expr_containers(#20226,#20001) +#20228=* +exprs(#20228,109,#20226,0,"@id") +#20229=@"loc,{#10000},4,26,4,28" +locations_default(#20229,#10000,4,26,4,28) +hasLocation(#20228,#20229) +enclosing_stmt(#20228,#20211) +expr_containers(#20228,#20001) #20230=* -exprs(#20230,3,#20225,1,"1") -hasLocation(#20230,#20089) -enclosing_stmt(#20230,#20210) +exprs(#20230,0,#20228,0,"id") +hasLocation(#20230,#20085) +enclosing_stmt(#20230,#20211) expr_containers(#20230,#20001) -literals("1","1",#20230) +literals("id","id",#20230) #20231=* -stmts(#20231,2,#20001,4,"message ... gStyle;") -hasLocation(#20231,#20011) -stmt_containers(#20231,#20001) +exprs(#20231,3,#20226,1,"1") +hasLocation(#20231,#20089) +enclosing_stmt(#20231,#20211) +expr_containers(#20231,#20001) +literals("1","1",#20231) #20232=* -exprs(#20232,97,#20231,0,"message ... ngStyle") -#20233=@"loc,{#10000},5,1,5,28" -locations_default(#20233,#10000,5,1,5,28) -hasLocation(#20232,#20233) -enclosing_stmt(#20232,#20231) -expr_containers(#20232,#20001) -#20234=* -exprs(#20234,14,#20232,0,"message.@soap") -#20235=@"loc,{#10000},5,1,5,13" -locations_default(#20235,#10000,5,1,5,13) -hasLocation(#20234,#20235) -enclosing_stmt(#20234,#20231) -expr_containers(#20234,#20001) -#20236=* -exprs(#20236,79,#20234,0,"message") -hasLocation(#20236,#20095) -enclosing_stmt(#20236,#20231) -expr_containers(#20236,#20001) -literals("message","message",#20236) -#20237=@"var;{message};{#20000}" -variables(#20237,"message",#20000) -bind(#20236,#20237) -#20238=* -exprs(#20238,109,#20234,1,"@soap") -#20239=@"loc,{#10000},5,9,5,13" -locations_default(#20239,#10000,5,9,5,13) -hasLocation(#20238,#20239) -enclosing_stmt(#20238,#20231) -expr_containers(#20238,#20001) -#20240=* -exprs(#20240,0,#20238,0,"soap") -hasLocation(#20240,#20101) -enclosing_stmt(#20240,#20231) -expr_containers(#20240,#20001) -literals("soap","soap",#20240) +stmts(#20232,2,#20001,4,"message ... gStyle;") +hasLocation(#20232,#20011) +stmt_containers(#20232,#20001) +#20233=* +exprs(#20233,97,#20232,0,"message ... ngStyle") +#20234=@"loc,{#10000},5,1,5,28" +locations_default(#20234,#10000,5,1,5,28) +hasLocation(#20233,#20234) +enclosing_stmt(#20233,#20232) +expr_containers(#20233,#20001) +#20235=* +exprs(#20235,14,#20233,0,"message.@soap") +#20236=@"loc,{#10000},5,1,5,13" +locations_default(#20236,#10000,5,1,5,13) +hasLocation(#20235,#20236) +enclosing_stmt(#20235,#20232) +expr_containers(#20235,#20001) +#20237=* +exprs(#20237,79,#20235,0,"message") +hasLocation(#20237,#20095) +enclosing_stmt(#20237,#20232) +expr_containers(#20237,#20001) +literals("message","message",#20237) +#20238=@"var;{message};{#20000}" +variables(#20238,"message",#20000) +bind(#20237,#20238) +#20239=* +exprs(#20239,109,#20235,1,"@soap") +#20240=@"loc,{#10000},5,9,5,13" +locations_default(#20240,#10000,5,9,5,13) +hasLocation(#20239,#20240) +enclosing_stmt(#20239,#20232) +expr_containers(#20239,#20001) #20241=* -exprs(#20241,79,#20232,1,"encodingStyle") -hasLocation(#20241,#20105) -enclosing_stmt(#20241,#20231) +exprs(#20241,0,#20239,0,"soap") +hasLocation(#20241,#20101) +enclosing_stmt(#20241,#20232) expr_containers(#20241,#20001) -literals("encodingStyle","encodingStyle",#20241) -#20242=@"var;{encodingStyle};{#20000}" -variables(#20242,"encodingStyle",#20000) -bind(#20241,#20242) -#20243=* -stmts(#20243,2,#20001,5,"message.soap::Body;") -hasLocation(#20243,#20013) -stmt_containers(#20243,#20001) +literals("soap","soap",#20241) +#20242=* +exprs(#20242,79,#20233,1,"encodingStyle") +hasLocation(#20242,#20105) +enclosing_stmt(#20242,#20232) +expr_containers(#20242,#20001) +literals("encodingStyle","encodingStyle",#20242) +#20243=@"var;{encodingStyle};{#20000}" +variables(#20243,"encodingStyle",#20000) +bind(#20242,#20243) #20244=* -exprs(#20244,97,#20243,0,"message.soap::Body") -#20245=@"loc,{#10000},6,1,6,18" -locations_default(#20245,#10000,6,1,6,18) -hasLocation(#20244,#20245) -enclosing_stmt(#20244,#20243) -expr_containers(#20244,#20001) -#20246=* -exprs(#20246,14,#20244,0,"message.soap") -#20247=@"loc,{#10000},6,1,6,12" -locations_default(#20247,#10000,6,1,6,12) -hasLocation(#20246,#20247) -enclosing_stmt(#20246,#20243) -expr_containers(#20246,#20001) -#20248=* -exprs(#20248,79,#20246,0,"message") -hasLocation(#20248,#20109) -enclosing_stmt(#20248,#20243) -expr_containers(#20248,#20001) -literals("message","message",#20248) -bind(#20248,#20237) +stmts(#20244,2,#20001,5,"message.soap::Body;") +hasLocation(#20244,#20013) +stmt_containers(#20244,#20001) +#20245=* +exprs(#20245,97,#20244,0,"message.soap::Body") +#20246=@"loc,{#10000},6,1,6,18" +locations_default(#20246,#10000,6,1,6,18) +hasLocation(#20245,#20246) +enclosing_stmt(#20245,#20244) +expr_containers(#20245,#20001) +#20247=* +exprs(#20247,14,#20245,0,"message.soap") +#20248=@"loc,{#10000},6,1,6,12" +locations_default(#20248,#10000,6,1,6,12) +hasLocation(#20247,#20248) +enclosing_stmt(#20247,#20244) +expr_containers(#20247,#20001) #20249=* -exprs(#20249,0,#20246,1,"soap") -hasLocation(#20249,#20113) -enclosing_stmt(#20249,#20243) +exprs(#20249,79,#20247,0,"message") +hasLocation(#20249,#20109) +enclosing_stmt(#20249,#20244) expr_containers(#20249,#20001) -literals("soap","soap",#20249) +literals("message","message",#20249) +bind(#20249,#20238) #20250=* -exprs(#20250,79,#20244,1,"Body") -hasLocation(#20250,#20117) -enclosing_stmt(#20250,#20243) +exprs(#20250,0,#20247,1,"soap") +hasLocation(#20250,#20113) +enclosing_stmt(#20250,#20244) expr_containers(#20250,#20001) -literals("Body","Body",#20250) -#20251=@"var;{Body};{#20000}" -variables(#20251,"Body",#20000) -bind(#20250,#20251) -#20252=* -stmts(#20252,2,#20001,6,"items.@[f()];") -hasLocation(#20252,#20015) -stmt_containers(#20252,#20001) +literals("soap","soap",#20250) +#20251=* +exprs(#20251,79,#20245,1,"Body") +hasLocation(#20251,#20117) +enclosing_stmt(#20251,#20244) +expr_containers(#20251,#20001) +literals("Body","Body",#20251) +#20252=@"var;{Body};{#20000}" +variables(#20252,"Body",#20000) +bind(#20251,#20252) #20253=* -exprs(#20253,14,#20252,0,"items.@[f()]") -#20254=@"loc,{#10000},7,1,7,12" -locations_default(#20254,#10000,7,1,7,12) -hasLocation(#20253,#20254) -enclosing_stmt(#20253,#20252) -expr_containers(#20253,#20001) -#20255=* -exprs(#20255,79,#20253,0,"items") -hasLocation(#20255,#20121) -enclosing_stmt(#20255,#20252) -expr_containers(#20255,#20001) -literals("items","items",#20255) -bind(#20255,#20190) +stmts(#20253,2,#20001,6,"items.@[f()];") +hasLocation(#20253,#20015) +stmt_containers(#20253,#20001) +#20254=* +exprs(#20254,14,#20253,0,"items.@[f()]") +#20255=@"loc,{#10000},7,1,7,12" +locations_default(#20255,#10000,7,1,7,12) +hasLocation(#20254,#20255) +enclosing_stmt(#20254,#20253) +expr_containers(#20254,#20001) #20256=* -exprs(#20256,110,#20253,1,"@[f()]") -#20257=@"loc,{#10000},7,7,7,12" -locations_default(#20257,#10000,7,7,7,12) -hasLocation(#20256,#20257) -enclosing_stmt(#20256,#20252) +exprs(#20256,79,#20254,0,"items") +hasLocation(#20256,#20121) +enclosing_stmt(#20256,#20253) expr_containers(#20256,#20001) -#20258=* -exprs(#20258,13,#20256,0,"f()") -#20259=@"loc,{#10000},7,9,7,11" -locations_default(#20259,#10000,7,9,7,11) -hasLocation(#20258,#20259) -enclosing_stmt(#20258,#20252) -expr_containers(#20258,#20001) -#20260=* -exprs(#20260,79,#20258,-1,"f") -hasLocation(#20260,#20129) -enclosing_stmt(#20260,#20252) -expr_containers(#20260,#20001) -literals("f","f",#20260) -#20261=@"var;{f};{#20000}" -variables(#20261,"f",#20000) -bind(#20260,#20261) -#20262=* -stmts(#20262,2,#20001,7,"message.soap::[g()];") -hasLocation(#20262,#20017) -stmt_containers(#20262,#20001) +literals("items","items",#20256) +bind(#20256,#20191) +#20257=* +exprs(#20257,110,#20254,1,"@[f()]") +#20258=@"loc,{#10000},7,7,7,12" +locations_default(#20258,#10000,7,7,7,12) +hasLocation(#20257,#20258) +enclosing_stmt(#20257,#20253) +expr_containers(#20257,#20001) +#20259=* +exprs(#20259,13,#20257,0,"f()") +#20260=@"loc,{#10000},7,9,7,11" +locations_default(#20260,#10000,7,9,7,11) +hasLocation(#20259,#20260) +enclosing_stmt(#20259,#20253) +expr_containers(#20259,#20001) +#20261=* +exprs(#20261,79,#20259,-1,"f") +hasLocation(#20261,#20129) +enclosing_stmt(#20261,#20253) +expr_containers(#20261,#20001) +literals("f","f",#20261) +#20262=@"var;{f};{#20000}" +variables(#20262,"f",#20000) +bind(#20261,#20262) #20263=* -exprs(#20263,97,#20262,0,"message.soap::[g()]") -#20264=@"loc,{#10000},8,1,8,19" -locations_default(#20264,#10000,8,1,8,19) -hasLocation(#20263,#20264) -enclosing_stmt(#20263,#20262) -expr_containers(#20263,#20001) -#20265=* -exprs(#20265,14,#20263,0,"message.soap") -#20266=@"loc,{#10000},8,1,8,12" -locations_default(#20266,#10000,8,1,8,12) -hasLocation(#20265,#20266) -enclosing_stmt(#20265,#20262) -expr_containers(#20265,#20001) -#20267=* -exprs(#20267,79,#20265,0,"message") -hasLocation(#20267,#20139) -enclosing_stmt(#20267,#20262) -expr_containers(#20267,#20001) -literals("message","message",#20267) -bind(#20267,#20237) +stmts(#20263,2,#20001,7,"message.soap::[g()];") +hasLocation(#20263,#20017) +stmt_containers(#20263,#20001) +#20264=* +exprs(#20264,97,#20263,0,"message.soap::[g()]") +#20265=@"loc,{#10000},8,1,8,19" +locations_default(#20265,#10000,8,1,8,19) +hasLocation(#20264,#20265) +enclosing_stmt(#20264,#20263) +expr_containers(#20264,#20001) +#20266=* +exprs(#20266,14,#20264,0,"message.soap") +#20267=@"loc,{#10000},8,1,8,12" +locations_default(#20267,#10000,8,1,8,12) +hasLocation(#20266,#20267) +enclosing_stmt(#20266,#20263) +expr_containers(#20266,#20001) #20268=* -exprs(#20268,0,#20265,1,"soap") -hasLocation(#20268,#20143) -enclosing_stmt(#20268,#20262) +exprs(#20268,79,#20266,0,"message") +hasLocation(#20268,#20139) +enclosing_stmt(#20268,#20263) expr_containers(#20268,#20001) -literals("soap","soap",#20268) +literals("message","message",#20268) +bind(#20268,#20238) #20269=* -exprs(#20269,7,#20263,1,"[g()]") -#20270=@"loc,{#10000},8,15,8,19" -locations_default(#20270,#10000,8,15,8,19) -hasLocation(#20269,#20270) -enclosing_stmt(#20269,#20262) +exprs(#20269,0,#20266,1,"soap") +hasLocation(#20269,#20143) +enclosing_stmt(#20269,#20263) expr_containers(#20269,#20001) -#20271=* -exprs(#20271,13,#20269,0,"g()") -#20272=@"loc,{#10000},8,16,8,18" -locations_default(#20272,#10000,8,16,8,18) -hasLocation(#20271,#20272) -enclosing_stmt(#20271,#20262) -expr_containers(#20271,#20001) -#20273=* -exprs(#20273,79,#20271,-1,"g") -hasLocation(#20273,#20149) -enclosing_stmt(#20273,#20262) -expr_containers(#20273,#20001) -literals("g","g",#20273) -#20274=@"var;{g};{#20000}" -variables(#20274,"g",#20000) -bind(#20273,#20274) -array_size(#20269,1) -#20275=* -stmts(#20275,18,#20001,8,"var e = ... ;") -#20276=@"loc,{#10000},10,1,13,9" -locations_default(#20276,#10000,10,1,13,9) -hasLocation(#20275,#20276) -stmt_containers(#20275,#20001) -#20277=* -exprs(#20277,64,#20275,0,"e = ") -#20278=@"loc,{#10000},10,5,13,8" -locations_default(#20278,#10000,10,5,13,8) -hasLocation(#20277,#20278) -enclosing_stmt(#20277,#20275) -expr_containers(#20277,#20001) -#20279=* -exprs(#20279,78,#20277,0,"e") -hasLocation(#20279,#20161) -enclosing_stmt(#20279,#20275) -expr_containers(#20279,#20001) -literals("e","e",#20279) -decl(#20279,#20185) +literals("soap","soap",#20269) +#20270=* +exprs(#20270,7,#20264,1,"[g()]") +#20271=@"loc,{#10000},8,15,8,19" +locations_default(#20271,#10000,8,15,8,19) +hasLocation(#20270,#20271) +enclosing_stmt(#20270,#20263) +expr_containers(#20270,#20001) +#20272=* +exprs(#20272,13,#20270,0,"g()") +#20273=@"loc,{#10000},8,16,8,18" +locations_default(#20273,#10000,8,16,8,18) +hasLocation(#20272,#20273) +enclosing_stmt(#20272,#20263) +expr_containers(#20272,#20001) +#20274=* +exprs(#20274,79,#20272,-1,"g") +hasLocation(#20274,#20149) +enclosing_stmt(#20274,#20263) +expr_containers(#20274,#20001) +literals("g","g",#20274) +#20275=@"var;{g};{#20000}" +variables(#20275,"g",#20000) +bind(#20274,#20275) +array_size(#20270,1) +#20276=* +stmts(#20276,18,#20001,8,"var e = ... ;") +#20277=@"loc,{#10000},10,1,13,9" +locations_default(#20277,#10000,10,1,13,9) +hasLocation(#20276,#20277) +stmt_containers(#20276,#20001) +#20278=* +exprs(#20278,64,#20276,0,"e = ") +#20279=@"loc,{#10000},10,5,13,8" +locations_default(#20279,#10000,10,5,13,8) +hasLocation(#20278,#20279) +enclosing_stmt(#20278,#20276) +expr_containers(#20278,#20001) #20280=* -exprs(#20280,89,#20277,1,"") -#20281=@"loc,{#10000},10,9,13,8" -locations_default(#20281,#10000,10,9,13,8) -hasLocation(#20280,#20281) -enclosing_stmt(#20280,#20275) +exprs(#20280,78,#20278,0,"e") +hasLocation(#20280,#20161) +enclosing_stmt(#20280,#20276) expr_containers(#20280,#20001) -#20282=* -exprs(#20282,0,#20280,-1,"elt") -hasLocation(#20282,#20167) -enclosing_stmt(#20282,#20275) -expr_containers(#20282,#20001) -literals("elt","elt",#20282) +literals("e","e",#20280) +decl(#20280,#20185) +#20281=* +exprs(#20281,89,#20278,1,"") +#20282=@"loc,{#10000},10,9,13,8" +locations_default(#20282,#10000,10,9,13,8) +hasLocation(#20281,#20282) +enclosing_stmt(#20281,#20276) +expr_containers(#20281,#20001) #20283=* -exprs(#20283,4,#20280,-2,"\n ]]> - ",#20283) -#20284=* -entry_cfg_node(#20284,#20001) -#20285=@"loc,{#10000},1,1,1,0" -locations_default(#20285,#10000,1,1,1,0) -hasLocation(#20284,#20285) -#20286=* -exit_cfg_node(#20286,#20001) -hasLocation(#20286,#20183) -successor(#20275,#20279) -successor(#20283,#20280) -successor(#20282,#20283) -successor(#20280,#20277) -successor(#20279,#20282) -successor(#20277,#20286) -successor(#20262,#20267) -successor(#20269,#20273) -successor(#20273,#20271) -successor(#20271,#20263) -successor(#20268,#20265) -successor(#20267,#20268) -successor(#20265,#20269) -successor(#20263,#20275) -successor(#20252,#20255) -successor(#20260,#20258) -successor(#20258,#20256) -successor(#20256,#20253) -successor(#20255,#20260) -successor(#20253,#20262) -successor(#20243,#20248) -successor(#20250,#20244) -successor(#20249,#20246) -successor(#20248,#20249) -successor(#20246,#20250) -successor(#20244,#20252) -successor(#20231,#20236) -successor(#20241,#20232) -successor(#20240,#20238) -successor(#20238,#20234) -successor(#20236,#20240) -successor(#20234,#20241) -successor(#20232,#20243) -successor(#20210,#20215) -successor(#20217,#20223) -successor(#20224,#20219) -successor(#20223,#20221) -successor(#20221,#20224) + ",#20284) +#20285=* +entry_cfg_node(#20285,#20001) +#20286=@"loc,{#10000},1,1,1,0" +locations_default(#20286,#10000,1,1,1,0) +hasLocation(#20285,#20286) #20287=* -guard_node(#20287,1,#20219) -hasLocation(#20287,#20220) -successor(#20287,#20211) +exit_cfg_node(#20287,#20001) +hasLocation(#20287,#20183) +successor(#20276,#20280) +successor(#20284,#20281) +successor(#20283,#20284) +successor(#20281,#20278) +successor(#20280,#20283) +successor(#20278,#20287) +successor(#20263,#20268) +successor(#20270,#20274) +successor(#20274,#20272) +successor(#20272,#20264) +successor(#20269,#20266) +successor(#20268,#20269) +successor(#20266,#20270) +successor(#20264,#20276) +successor(#20253,#20256) +successor(#20261,#20259) +successor(#20259,#20257) +successor(#20257,#20254) +successor(#20256,#20261) +successor(#20254,#20263) +successor(#20244,#20249) +successor(#20251,#20245) +successor(#20250,#20247) +successor(#20249,#20250) +successor(#20247,#20251) +successor(#20245,#20253) +successor(#20232,#20237) +successor(#20242,#20233) +successor(#20241,#20239) +successor(#20239,#20235) +successor(#20237,#20241) +successor(#20235,#20242) +successor(#20233,#20244) +successor(#20211,#20216) +successor(#20218,#20224) +successor(#20225,#20220) +successor(#20224,#20222) +successor(#20222,#20225) #20288=* -guard_node(#20288,0,#20219) -hasLocation(#20288,#20220) -successor(#20288,#20229) -successor(#20219,#20287) -successor(#20219,#20288) -successor(#20230,#20225) -successor(#20229,#20227) -successor(#20227,#20230) -successor(#20225,#20211) -successor(#20216,#20213) -successor(#20215,#20216) -successor(#20213,#20217) -successor(#20211,#20231) -successor(#20202,#20205) -successor(#20209,#20207) -successor(#20207,#20203) -successor(#20205,#20209) -successor(#20203,#20210) -successor(#20194,#20199) -successor(#20201,#20195) -successor(#20200,#20197) -successor(#20199,#20200) -successor(#20197,#20201) -successor(#20195,#20202) -successor(#20186,#20189) -successor(#20193,#20191) -successor(#20191,#20187) -successor(#20189,#20193) -successor(#20187,#20194) -successor(#20284,#20186) +guard_node(#20288,1,#20220) +hasLocation(#20288,#20221) +successor(#20288,#20212) +#20289=* +guard_node(#20289,0,#20220) +hasLocation(#20289,#20221) +successor(#20289,#20230) +successor(#20220,#20288) +successor(#20220,#20289) +successor(#20231,#20226) +successor(#20230,#20228) +successor(#20228,#20231) +successor(#20226,#20212) +successor(#20217,#20214) +successor(#20216,#20217) +successor(#20214,#20218) +successor(#20212,#20232) +successor(#20203,#20206) +successor(#20210,#20208) +successor(#20208,#20204) +successor(#20206,#20210) +successor(#20204,#20211) +successor(#20195,#20200) +successor(#20202,#20196) +successor(#20201,#20198) +successor(#20200,#20201) +successor(#20198,#20202) +successor(#20196,#20203) +successor(#20187,#20190) +successor(#20194,#20192) +successor(#20192,#20188) +successor(#20190,#20194) +successor(#20188,#20195) +successor(#20285,#20187) numlines(#10000,13,12,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/encoding/output/trap/surrogates.js.trap b/javascript/extractor/tests/encoding/output/trap/surrogates.js.trap index 1e83bf1920e6..b2e619a28298 100644 --- a/javascript/extractor/tests/encoding/output/trap/surrogates.js.trap +++ b/javascript/extractor/tests/encoding/output/trap/surrogates.js.trap @@ -209,233 +209,235 @@ toplevels(#20001,0) #20073=@"loc,{#10000},1,1,14,0" locations_default(#20073,#10000,1,1,14,0) hasLocation(#20001,#20073) -#20074=* -stmts(#20074,2,#20001,0,"'\ud800';") -hasLocation(#20074,#20010) -stmt_containers(#20074,#20001) +#20074=@"var;{this};{#20000}" +variables(#20074,"this",#20000) #20075=* -exprs(#20075,4,#20074,0,"'\ud800'") -hasLocation(#20075,#20032) -enclosing_stmt(#20075,#20074) -expr_containers(#20075,#20001) -literals("?","'\ud800'",#20075) +stmts(#20075,2,#20001,0,"'\ud800';") +hasLocation(#20075,#20010) +stmt_containers(#20075,#20001) #20076=* -regexpterm(#20076,14,#20075,0,"?") -#20077=@"loc,{#10000},2,2,2,7" -locations_default(#20077,#10000,2,2,2,7) -hasLocation(#20076,#20077) -regexp_const_value(#20076,"?") -#20078=* -stmts(#20078,2,#20001,1,"'foo\ud800';") -hasLocation(#20078,#20012) -stmt_containers(#20078,#20001) +exprs(#20076,4,#20075,0,"'\ud800'") +hasLocation(#20076,#20032) +enclosing_stmt(#20076,#20075) +expr_containers(#20076,#20001) +literals("?","'\ud800'",#20076) +#20077=* +regexpterm(#20077,14,#20076,0,"?") +#20078=@"loc,{#10000},2,2,2,7" +locations_default(#20078,#10000,2,2,2,7) +hasLocation(#20077,#20078) +regexp_const_value(#20077,"?") #20079=* -exprs(#20079,4,#20078,0,"'foo\ud800'") -hasLocation(#20079,#20036) -enclosing_stmt(#20079,#20078) -expr_containers(#20079,#20001) -literals("foo?","'foo\ud800'",#20079) +stmts(#20079,2,#20001,1,"'foo\ud800';") +hasLocation(#20079,#20012) +stmt_containers(#20079,#20001) #20080=* -regexpterm(#20080,14,#20079,0,"foo?") -#20081=@"loc,{#10000},3,2,3,10" -locations_default(#20081,#10000,3,2,3,10) -hasLocation(#20080,#20081) -regexp_const_value(#20080,"foo?") -#20082=* -stmts(#20082,2,#20001,2,"'\ud800bar';") -hasLocation(#20082,#20014) -stmt_containers(#20082,#20001) +exprs(#20080,4,#20079,0,"'foo\ud800'") +hasLocation(#20080,#20036) +enclosing_stmt(#20080,#20079) +expr_containers(#20080,#20001) +literals("foo?","'foo\ud800'",#20080) +#20081=* +regexpterm(#20081,14,#20080,0,"foo?") +#20082=@"loc,{#10000},3,2,3,10" +locations_default(#20082,#10000,3,2,3,10) +hasLocation(#20081,#20082) +regexp_const_value(#20081,"foo?") #20083=* -exprs(#20083,4,#20082,0,"'\ud800bar'") -hasLocation(#20083,#20040) -enclosing_stmt(#20083,#20082) -expr_containers(#20083,#20001) -literals("?bar","'\ud800bar'",#20083) +stmts(#20083,2,#20001,2,"'\ud800bar';") +hasLocation(#20083,#20014) +stmt_containers(#20083,#20001) #20084=* -regexpterm(#20084,14,#20083,0,"?bar") -#20085=@"loc,{#10000},4,2,4,10" -locations_default(#20085,#10000,4,2,4,10) -hasLocation(#20084,#20085) -regexp_const_value(#20084,"?bar") -#20086=* -stmts(#20086,2,#20001,3,"'foo\ud800bar';") -hasLocation(#20086,#20016) -stmt_containers(#20086,#20001) +exprs(#20084,4,#20083,0,"'\ud800bar'") +hasLocation(#20084,#20040) +enclosing_stmt(#20084,#20083) +expr_containers(#20084,#20001) +literals("?bar","'\ud800bar'",#20084) +#20085=* +regexpterm(#20085,14,#20084,0,"?bar") +#20086=@"loc,{#10000},4,2,4,10" +locations_default(#20086,#10000,4,2,4,10) +hasLocation(#20085,#20086) +regexp_const_value(#20085,"?bar") #20087=* -exprs(#20087,4,#20086,0,"'foo\ud800bar'") -hasLocation(#20087,#20044) -enclosing_stmt(#20087,#20086) -expr_containers(#20087,#20001) -literals("foo?bar","'foo\ud800bar'",#20087) +stmts(#20087,2,#20001,3,"'foo\ud800bar';") +hasLocation(#20087,#20016) +stmt_containers(#20087,#20001) #20088=* -regexpterm(#20088,14,#20087,0,"foo?bar") -#20089=@"loc,{#10000},5,2,5,13" -locations_default(#20089,#10000,5,2,5,13) -hasLocation(#20088,#20089) -regexp_const_value(#20088,"foo?bar") -#20090=* -stmts(#20090,2,#20001,4,"/\uD800/;") -hasLocation(#20090,#20018) -stmt_containers(#20090,#20001) +exprs(#20088,4,#20087,0,"'foo\ud800bar'") +hasLocation(#20088,#20044) +enclosing_stmt(#20088,#20087) +expr_containers(#20088,#20001) +literals("foo?bar","'foo\ud800bar'",#20088) +#20089=* +regexpterm(#20089,14,#20088,0,"foo?bar") +#20090=@"loc,{#10000},5,2,5,13" +locations_default(#20090,#10000,5,2,5,13) +hasLocation(#20089,#20090) +regexp_const_value(#20089,"foo?bar") #20091=* -exprs(#20091,5,#20090,0,"/\uD800/") -hasLocation(#20091,#20048) -enclosing_stmt(#20091,#20090) -expr_containers(#20091,#20001) -literals("/\uD800/","/\uD800/",#20091) +stmts(#20091,2,#20001,4,"/\uD800/;") +hasLocation(#20091,#20018) +stmt_containers(#20091,#20001) #20092=* -regexpterm(#20092,16,#20091,0,"\uD800") -#20093=@"loc,{#10000},6,2,6,7" -locations_default(#20093,#10000,6,2,6,7) -hasLocation(#20092,#20093) -regexp_const_value(#20092,"?") -#20094=* -stmts(#20094,2,#20001,5,"/foo\ud800/;") -hasLocation(#20094,#20020) -stmt_containers(#20094,#20001) +exprs(#20092,5,#20091,0,"/\uD800/") +hasLocation(#20092,#20048) +enclosing_stmt(#20092,#20091) +expr_containers(#20092,#20001) +literals("/\uD800/","/\uD800/",#20092) +#20093=* +regexpterm(#20093,16,#20092,0,"\uD800") +#20094=@"loc,{#10000},6,2,6,7" +locations_default(#20094,#10000,6,2,6,7) +hasLocation(#20093,#20094) +regexp_const_value(#20093,"?") #20095=* -exprs(#20095,5,#20094,0,"/foo\ud800/") -hasLocation(#20095,#20052) -enclosing_stmt(#20095,#20094) -expr_containers(#20095,#20001) -literals("/foo\ud800/","/foo\ud800/",#20095) +stmts(#20095,2,#20001,5,"/foo\ud800/;") +hasLocation(#20095,#20020) +stmt_containers(#20095,#20001) #20096=* -regexpterm(#20096,1,#20095,0,"foo\ud800") -#20097=@"loc,{#10000},7,2,7,10" -locations_default(#20097,#10000,7,2,7,10) -hasLocation(#20096,#20097) -#20098=* -regexpterm(#20098,14,#20096,0,"foo") -#20099=@"loc,{#10000},7,2,7,4" -locations_default(#20099,#10000,7,2,7,4) -hasLocation(#20098,#20099) -regexp_const_value(#20098,"foo") -#20100=* -regexpterm(#20100,16,#20096,1,"\ud800") -#20101=@"loc,{#10000},7,5,7,10" -locations_default(#20101,#10000,7,5,7,10) -hasLocation(#20100,#20101) -regexp_const_value(#20100,"?") -#20102=* -stmts(#20102,2,#20001,6,"/\ud800bar/;") -hasLocation(#20102,#20022) -stmt_containers(#20102,#20001) +exprs(#20096,5,#20095,0,"/foo\ud800/") +hasLocation(#20096,#20052) +enclosing_stmt(#20096,#20095) +expr_containers(#20096,#20001) +literals("/foo\ud800/","/foo\ud800/",#20096) +#20097=* +regexpterm(#20097,1,#20096,0,"foo\ud800") +#20098=@"loc,{#10000},7,2,7,10" +locations_default(#20098,#10000,7,2,7,10) +hasLocation(#20097,#20098) +#20099=* +regexpterm(#20099,14,#20097,0,"foo") +#20100=@"loc,{#10000},7,2,7,4" +locations_default(#20100,#10000,7,2,7,4) +hasLocation(#20099,#20100) +regexp_const_value(#20099,"foo") +#20101=* +regexpterm(#20101,16,#20097,1,"\ud800") +#20102=@"loc,{#10000},7,5,7,10" +locations_default(#20102,#10000,7,5,7,10) +hasLocation(#20101,#20102) +regexp_const_value(#20101,"?") #20103=* -exprs(#20103,5,#20102,0,"/\ud800bar/") -hasLocation(#20103,#20056) -enclosing_stmt(#20103,#20102) -expr_containers(#20103,#20001) -literals("/\ud800bar/","/\ud800bar/",#20103) +stmts(#20103,2,#20001,6,"/\ud800bar/;") +hasLocation(#20103,#20022) +stmt_containers(#20103,#20001) #20104=* -regexpterm(#20104,1,#20103,0,"\ud800bar") -#20105=@"loc,{#10000},8,2,8,10" -locations_default(#20105,#10000,8,2,8,10) -hasLocation(#20104,#20105) -#20106=* -regexpterm(#20106,16,#20104,0,"\ud800") -#20107=@"loc,{#10000},8,2,8,7" -locations_default(#20107,#10000,8,2,8,7) -hasLocation(#20106,#20107) -regexp_const_value(#20106,"?") -#20108=* -regexpterm(#20108,14,#20104,1,"bar") -#20109=@"loc,{#10000},8,8,8,10" -locations_default(#20109,#10000,8,8,8,10) -hasLocation(#20108,#20109) -regexp_const_value(#20108,"bar") -#20110=* -stmts(#20110,2,#20001,7,"/foo\ud800bar/;") -hasLocation(#20110,#20024) -stmt_containers(#20110,#20001) +exprs(#20104,5,#20103,0,"/\ud800bar/") +hasLocation(#20104,#20056) +enclosing_stmt(#20104,#20103) +expr_containers(#20104,#20001) +literals("/\ud800bar/","/\ud800bar/",#20104) +#20105=* +regexpterm(#20105,1,#20104,0,"\ud800bar") +#20106=@"loc,{#10000},8,2,8,10" +locations_default(#20106,#10000,8,2,8,10) +hasLocation(#20105,#20106) +#20107=* +regexpterm(#20107,16,#20105,0,"\ud800") +#20108=@"loc,{#10000},8,2,8,7" +locations_default(#20108,#10000,8,2,8,7) +hasLocation(#20107,#20108) +regexp_const_value(#20107,"?") +#20109=* +regexpterm(#20109,14,#20105,1,"bar") +#20110=@"loc,{#10000},8,8,8,10" +locations_default(#20110,#10000,8,8,8,10) +hasLocation(#20109,#20110) +regexp_const_value(#20109,"bar") #20111=* -exprs(#20111,5,#20110,0,"/foo\ud800bar/") -hasLocation(#20111,#20060) -enclosing_stmt(#20111,#20110) -expr_containers(#20111,#20001) -literals("/foo\ud800bar/","/foo\ud800bar/",#20111) +stmts(#20111,2,#20001,7,"/foo\ud800bar/;") +hasLocation(#20111,#20024) +stmt_containers(#20111,#20001) #20112=* -regexpterm(#20112,1,#20111,0,"foo\ud800bar") -#20113=@"loc,{#10000},9,2,9,13" -locations_default(#20113,#10000,9,2,9,13) -hasLocation(#20112,#20113) -#20114=* -regexpterm(#20114,14,#20112,0,"foo") -#20115=@"loc,{#10000},9,2,9,4" -locations_default(#20115,#10000,9,2,9,4) -hasLocation(#20114,#20115) -regexp_const_value(#20114,"foo") -#20116=* -regexpterm(#20116,16,#20112,1,"\ud800") -#20117=@"loc,{#10000},9,5,9,10" -locations_default(#20117,#10000,9,5,9,10) -hasLocation(#20116,#20117) -regexp_const_value(#20116,"?") -#20118=* -regexpterm(#20118,14,#20112,2,"bar") -#20119=@"loc,{#10000},9,11,9,13" -locations_default(#20119,#10000,9,11,9,13) -hasLocation(#20118,#20119) -regexp_const_value(#20118,"bar") -#20120=* -stmts(#20120,2,#20001,8,"'\udc00\ud800';") -hasLocation(#20120,#20027) -stmt_containers(#20120,#20001) +exprs(#20112,5,#20111,0,"/foo\ud800bar/") +hasLocation(#20112,#20060) +enclosing_stmt(#20112,#20111) +expr_containers(#20112,#20001) +literals("/foo\ud800bar/","/foo\ud800bar/",#20112) +#20113=* +regexpterm(#20113,1,#20112,0,"foo\ud800bar") +#20114=@"loc,{#10000},9,2,9,13" +locations_default(#20114,#10000,9,2,9,13) +hasLocation(#20113,#20114) +#20115=* +regexpterm(#20115,14,#20113,0,"foo") +#20116=@"loc,{#10000},9,2,9,4" +locations_default(#20116,#10000,9,2,9,4) +hasLocation(#20115,#20116) +regexp_const_value(#20115,"foo") +#20117=* +regexpterm(#20117,16,#20113,1,"\ud800") +#20118=@"loc,{#10000},9,5,9,10" +locations_default(#20118,#10000,9,5,9,10) +hasLocation(#20117,#20118) +regexp_const_value(#20117,"?") +#20119=* +regexpterm(#20119,14,#20113,2,"bar") +#20120=@"loc,{#10000},9,11,9,13" +locations_default(#20120,#10000,9,11,9,13) +hasLocation(#20119,#20120) +regexp_const_value(#20119,"bar") #20121=* -exprs(#20121,4,#20120,0,"'\udc00\ud800'") -hasLocation(#20121,#20064) -enclosing_stmt(#20121,#20120) -expr_containers(#20121,#20001) -literals("??","'\udc00\ud800'",#20121) +stmts(#20121,2,#20001,8,"'\udc00\ud800';") +hasLocation(#20121,#20027) +stmt_containers(#20121,#20001) #20122=* -regexpterm(#20122,14,#20121,0,"??") -#20123=@"loc,{#10000},11,2,11,13" -locations_default(#20123,#10000,11,2,11,13) -hasLocation(#20122,#20123) -regexp_const_value(#20122,"??") -#20124=* -stmts(#20124,2,#20001,9,"'\uD834\uDF06';") -hasLocation(#20124,#20030) -stmt_containers(#20124,#20001) +exprs(#20122,4,#20121,0,"'\udc00\ud800'") +hasLocation(#20122,#20064) +enclosing_stmt(#20122,#20121) +expr_containers(#20122,#20001) +literals("??","'\udc00\ud800'",#20122) +#20123=* +regexpterm(#20123,14,#20122,0,"??") +#20124=@"loc,{#10000},11,2,11,13" +locations_default(#20124,#10000,11,2,11,13) +hasLocation(#20123,#20124) +regexp_const_value(#20123,"??") #20125=* -exprs(#20125,4,#20124,0,"'\uD834\uDF06'") -hasLocation(#20125,#20068) -enclosing_stmt(#20125,#20124) -expr_containers(#20125,#20001) -literals("𝌆","'\uD834\uDF06'",#20125) +stmts(#20125,2,#20001,9,"'\uD834\uDF06';") +hasLocation(#20125,#20030) +stmt_containers(#20125,#20001) #20126=* -regexpterm(#20126,14,#20125,0,"𝌆") -#20127=@"loc,{#10000},13,2,13,13" -locations_default(#20127,#10000,13,2,13,13) -hasLocation(#20126,#20127) -regexp_const_value(#20126,"𝌆") -#20128=* -entry_cfg_node(#20128,#20001) -#20129=@"loc,{#10000},1,1,1,0" -locations_default(#20129,#10000,1,1,1,0) -hasLocation(#20128,#20129) -#20130=* -exit_cfg_node(#20130,#20001) -hasLocation(#20130,#20072) -successor(#20124,#20125) -successor(#20125,#20130) -successor(#20120,#20121) -successor(#20121,#20124) -successor(#20110,#20111) -successor(#20111,#20120) -successor(#20102,#20103) -successor(#20103,#20110) -successor(#20094,#20095) -successor(#20095,#20102) -successor(#20090,#20091) -successor(#20091,#20094) -successor(#20086,#20087) -successor(#20087,#20090) -successor(#20082,#20083) -successor(#20083,#20086) -successor(#20078,#20079) -successor(#20079,#20082) -successor(#20074,#20075) -successor(#20075,#20078) -successor(#20128,#20074) +exprs(#20126,4,#20125,0,"'\uD834\uDF06'") +hasLocation(#20126,#20068) +enclosing_stmt(#20126,#20125) +expr_containers(#20126,#20001) +literals("𝌆","'\uD834\uDF06'",#20126) +#20127=* +regexpterm(#20127,14,#20126,0,"𝌆") +#20128=@"loc,{#10000},13,2,13,13" +locations_default(#20128,#10000,13,2,13,13) +hasLocation(#20127,#20128) +regexp_const_value(#20127,"𝌆") +#20129=* +entry_cfg_node(#20129,#20001) +#20130=@"loc,{#10000},1,1,1,0" +locations_default(#20130,#10000,1,1,1,0) +hasLocation(#20129,#20130) +#20131=* +exit_cfg_node(#20131,#20001) +hasLocation(#20131,#20072) +successor(#20125,#20126) +successor(#20126,#20131) +successor(#20121,#20122) +successor(#20122,#20125) +successor(#20111,#20112) +successor(#20112,#20121) +successor(#20103,#20104) +successor(#20104,#20111) +successor(#20095,#20096) +successor(#20096,#20103) +successor(#20091,#20092) +successor(#20092,#20095) +successor(#20087,#20088) +successor(#20088,#20091) +successor(#20083,#20084) +successor(#20084,#20087) +successor(#20079,#20080) +successor(#20080,#20083) +successor(#20075,#20076) +successor(#20076,#20079) +successor(#20129,#20075) numlines(#10000,13,10,3) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/encoding/output/trap/unicode.js.trap b/javascript/extractor/tests/encoding/output/trap/unicode.js.trap index e30e1de8143b..5b7a899292fc 100644 --- a/javascript/extractor/tests/encoding/output/trap/unicode.js.trap +++ b/javascript/extractor/tests/encoding/output/trap/unicode.js.trap @@ -25,32 +25,34 @@ locations_default(#20006,#10000,1,9,1,8) hasLocation(#20005,#20006) toplevels(#20001,0) hasLocation(#20001,#20003) -#20007=* -stmts(#20007,2,#20001,0,"""Semml\u00e9""") -hasLocation(#20007,#20003) -stmt_containers(#20007,#20001) +#20007=@"var;{this};{#20000}" +variables(#20007,"this",#20000) #20008=* -exprs(#20008,4,#20007,0,"""Semml\u00e9""") +stmts(#20008,2,#20001,0,"""Semml\u00e9""") hasLocation(#20008,#20003) -enclosing_stmt(#20008,#20007) -expr_containers(#20008,#20001) -literals("Semmlé","""Semmlé""",#20008) +stmt_containers(#20008,#20001) #20009=* -regexpterm(#20009,14,#20008,0,"Semmlé") -#20010=@"loc,{#10000},1,2,1,7" -locations_default(#20010,#10000,1,2,1,7) -hasLocation(#20009,#20010) -regexp_const_value(#20009,"Semmlé") -#20011=* -entry_cfg_node(#20011,#20001) -#20012=@"loc,{#10000},1,1,1,0" -locations_default(#20012,#10000,1,1,1,0) -hasLocation(#20011,#20012) -#20013=* -exit_cfg_node(#20013,#20001) -hasLocation(#20013,#20006) -successor(#20007,#20008) -successor(#20008,#20013) -successor(#20011,#20007) +exprs(#20009,4,#20008,0,"""Semml\u00e9""") +hasLocation(#20009,#20003) +enclosing_stmt(#20009,#20008) +expr_containers(#20009,#20001) +literals("Semmlé","""Semmlé""",#20009) +#20010=* +regexpterm(#20010,14,#20009,0,"Semmlé") +#20011=@"loc,{#10000},1,2,1,7" +locations_default(#20011,#10000,1,2,1,7) +hasLocation(#20010,#20011) +regexp_const_value(#20010,"Semmlé") +#20012=* +entry_cfg_node(#20012,#20001) +#20013=@"loc,{#10000},1,1,1,0" +locations_default(#20013,#10000,1,1,1,0) +hasLocation(#20012,#20013) +#20014=* +exit_cfg_node(#20014,#20001) +hasLocation(#20014,#20006) +successor(#20008,#20009) +successor(#20009,#20014) +successor(#20012,#20008) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/errors/output/trap/empty.js.trap b/javascript/extractor/tests/errors/output/trap/empty.js.trap index c686cd023f4e..4c1e2f4c67e3 100644 --- a/javascript/extractor/tests/errors/output/trap/empty.js.trap +++ b/javascript/extractor/tests/errors/output/trap/empty.js.trap @@ -17,12 +17,14 @@ locations_default(#20003,#10000,1,1,1,0) hasLocation(#20002,#20003) toplevels(#20001,0) hasLocation(#20001,#20003) -#20004=* -entry_cfg_node(#20004,#20001) -hasLocation(#20004,#20003) +#20004=@"var;{this};{#20000}" +variables(#20004,"this",#20000) #20005=* -exit_cfg_node(#20005,#20001) +entry_cfg_node(#20005,#20001) hasLocation(#20005,#20003) -successor(#20004,#20005) +#20006=* +exit_cfg_node(#20006,#20001) +hasLocation(#20006,#20003) +successor(#20005,#20006) numlines(#10000,0,0,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/errors/output/trap/invalid-assignment-pattern.js.trap b/javascript/extractor/tests/errors/output/trap/invalid-assignment-pattern.js.trap index 108c822691bd..bb694ccaa394 100644 --- a/javascript/extractor/tests/errors/output/trap/invalid-assignment-pattern.js.trap +++ b/javascript/extractor/tests/errors/output/trap/invalid-assignment-pattern.js.trap @@ -60,58 +60,60 @@ toplevels(#20001,0) #20020=@"loc,{#10000},1,1,2,0" locations_default(#20020,#10000,1,1,2,0) hasLocation(#20001,#20020) -#20021=* -stmts(#20021,2,#20001,0,"(x = 0) = y") -hasLocation(#20021,#20003) -stmt_containers(#20021,#20001) +#20021=@"var;{this};{#20000}" +variables(#20021,"this",#20000) #20022=* -exprs(#20022,47,#20021,0,"(x = 0) = y") +stmts(#20022,2,#20001,0,"(x = 0) = y") hasLocation(#20022,#20003) -enclosing_stmt(#20022,#20021) -expr_containers(#20022,#20001) +stmt_containers(#20022,#20001) #20023=* -exprs(#20023,63,#20022,0,"(x = 0)") -#20024=@"loc,{#10000},1,1,1,7" -locations_default(#20024,#10000,1,1,1,7) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20021) +exprs(#20023,47,#20022,0,"(x = 0) = y") +hasLocation(#20023,#20003) +enclosing_stmt(#20023,#20022) expr_containers(#20023,#20001) -#20025=* -exprs(#20025,79,#20023,0,"x") -hasLocation(#20025,#20007) -enclosing_stmt(#20025,#20021) -expr_containers(#20025,#20001) +#20024=* +exprs(#20024,63,#20023,0,"(x = 0)") +#20025=@"loc,{#10000},1,1,1,7" +locations_default(#20025,#10000,1,1,1,7) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20022) +expr_containers(#20024,#20001) #20026=* -exprs(#20026,79,#20022,1,"y") -hasLocation(#20026,#20017) -enclosing_stmt(#20026,#20021) +exprs(#20026,79,#20024,0,"x") +hasLocation(#20026,#20007) +enclosing_stmt(#20026,#20022) expr_containers(#20026,#20001) -literals("y","y",#20026) -#20027=@"var;{y};{#20000}" -variables(#20027,"y",#20000) -bind(#20026,#20027) -#20028=* -entry_cfg_node(#20028,#20001) -#20029=@"loc,{#10000},1,1,1,0" -locations_default(#20029,#10000,1,1,1,0) -hasLocation(#20028,#20029) -#20030=* -exit_cfg_node(#20030,#20001) -hasLocation(#20030,#20019) -successor(#20021,#20023) -successor(#20026,#20022) -successor(#20023,#20025) -successor(#20025,#20026) -successor(#20022,#20030) -successor(#20028,#20021) +#20027=* +exprs(#20027,79,#20023,1,"y") +hasLocation(#20027,#20017) +enclosing_stmt(#20027,#20022) +expr_containers(#20027,#20001) +literals("y","y",#20027) +#20028=@"var;{y};{#20000}" +variables(#20028,"y",#20000) +bind(#20027,#20028) +#20029=* +entry_cfg_node(#20029,#20001) +#20030=@"loc,{#10000},1,1,1,0" +locations_default(#20030,#10000,1,1,1,0) +hasLocation(#20029,#20030) #20031=* -js_parse_errors(#20031,#20001,"Error: Unexpected assignment pattern.","(x = 0) = y -") -hasLocation(#20031,#20007) +exit_cfg_node(#20031,#20001) +hasLocation(#20031,#20019) +successor(#20022,#20024) +successor(#20027,#20023) +successor(#20024,#20026) +successor(#20026,#20027) +successor(#20023,#20031) +successor(#20029,#20022) #20032=* -lines(#20032,#20001,"(x = 0) = y"," +js_parse_errors(#20032,#20001,"Error: Unexpected assignment pattern.","(x = 0) = y +") +hasLocation(#20032,#20007) +#20033=* +lines(#20033,#20001,"(x = 0) = y"," ") -hasLocation(#20032,#20003) +hasLocation(#20033,#20003) numlines(#20001,1,0,0) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/errors/output/trap/kwident.js.trap b/javascript/extractor/tests/errors/output/trap/kwident.js.trap index 10b0e9ec3929..2c47cf391c52 100644 --- a/javascript/extractor/tests/errors/output/trap/kwident.js.trap +++ b/javascript/extractor/tests/errors/output/trap/kwident.js.trap @@ -52,53 +52,55 @@ locations_default(#20016,#10000,1,1,2,0) hasLocation(#20001,#20016) #20017=@"var;{class};{#20000}" variables(#20017,"class",#20000) -#20018=* -stmts(#20018,18,#20001,0,"var class = 23;") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,64,#20018,0,"class = 23") -#20020=@"loc,{#10000},1,5,1,14" -locations_default(#20020,#10000,1,5,1,14) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) -#20021=* -exprs(#20021,78,#20019,0,"class") -hasLocation(#20021,#20007) -enclosing_stmt(#20021,#20018) -expr_containers(#20021,#20001) -literals("class","class",#20021) -decl(#20021,#20017) +stmts(#20019,18,#20001,0,"var class = 23;") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) +#20020=* +exprs(#20020,64,#20019,0,"class = 23") +#20021=@"loc,{#10000},1,5,1,14" +locations_default(#20021,#10000,1,5,1,14) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20001) #20022=* -exprs(#20022,3,#20019,1,"23") -hasLocation(#20022,#20011) -enclosing_stmt(#20022,#20018) +exprs(#20022,78,#20020,0,"class") +hasLocation(#20022,#20007) +enclosing_stmt(#20022,#20019) expr_containers(#20022,#20001) -literals("23","23",#20022) +literals("class","class",#20022) +decl(#20022,#20017) #20023=* -entry_cfg_node(#20023,#20001) -#20024=@"loc,{#10000},1,1,1,0" -locations_default(#20024,#10000,1,1,1,0) -hasLocation(#20023,#20024) -#20025=* -exit_cfg_node(#20025,#20001) -hasLocation(#20025,#20015) -successor(#20018,#20021) -successor(#20022,#20019) -successor(#20021,#20022) -successor(#20019,#20025) -successor(#20023,#20018) +exprs(#20023,3,#20020,1,"23") +hasLocation(#20023,#20011) +enclosing_stmt(#20023,#20019) +expr_containers(#20023,#20001) +literals("23","23",#20023) +#20024=* +entry_cfg_node(#20024,#20001) +#20025=@"loc,{#10000},1,1,1,0" +locations_default(#20025,#10000,1,1,1,0) +hasLocation(#20024,#20025) #20026=* -js_parse_errors(#20026,#20001,"Error: Cannot use keyword 'class' as an identifier.","var class = 23; +exit_cfg_node(#20026,#20001) +hasLocation(#20026,#20015) +successor(#20019,#20022) +successor(#20023,#20020) +successor(#20022,#20023) +successor(#20020,#20026) +successor(#20024,#20019) +#20027=* +js_parse_errors(#20027,#20001,"Error: Cannot use keyword 'class' as an identifier.","var class = 23; ") -#20027=@"loc,{#10000},1,5,1,5" -locations_default(#20027,#10000,1,5,1,5) -hasLocation(#20026,#20027) -#20028=* -lines(#20028,#20001,"var class = 23;"," +#20028=@"loc,{#10000},1,5,1,5" +locations_default(#20028,#10000,1,5,1,5) +hasLocation(#20027,#20028) +#20029=* +lines(#20029,#20001,"var class = 23;"," ") -hasLocation(#20028,#20003) +hasLocation(#20029,#20003) numlines(#20001,1,0,0) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/array_pattern_with_default.js.trap b/javascript/extractor/tests/es2015/output/trap/array_pattern_with_default.js.trap index 2351f1fa3475..6ac6726eb915 100644 --- a/javascript/extractor/tests/es2015/output/trap/array_pattern_with_default.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/array_pattern_with_default.js.trap @@ -67,62 +67,64 @@ locations_default(#20023,#10000,1,13,1,12) hasLocation(#20022,#20023) toplevels(#20001,0) hasLocation(#20001,#20003) -#20024=* -stmts(#20024,2,#20001,0,"[x=42] = [];") -hasLocation(#20024,#20003) -stmt_containers(#20024,#20001) +#20024=@"var;{this};{#20000}" +variables(#20024,"this",#20000) #20025=* -exprs(#20025,47,#20024,0,"[x=42] = []") -#20026=@"loc,{#10000},1,1,1,11" -locations_default(#20026,#10000,1,1,1,11) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20024) -expr_containers(#20025,#20001) -#20027=* -exprs(#20027,67,#20025,0,"[x=42]") -#20028=@"loc,{#10000},1,1,1,6" -locations_default(#20028,#10000,1,1,1,6) -hasLocation(#20027,#20028) -enclosing_stmt(#20027,#20024) -expr_containers(#20027,#20001) -#20029=* -exprs(#20029,79,#20027,0,"x") -hasLocation(#20029,#20007) -enclosing_stmt(#20029,#20024) -expr_containers(#20029,#20001) -literals("x","x",#20029) -#20030=@"var;{x};{#20000}" -variables(#20030,"x",#20000) -bind(#20029,#20030) -#20031=* -exprs(#20031,3,#20027,-2,"42") -hasLocation(#20031,#20011) -enclosing_stmt(#20031,#20024) -expr_containers(#20031,#20001) -literals("42","42",#20031) -array_size(#20027,1) +stmts(#20025,2,#20001,0,"[x=42] = [];") +hasLocation(#20025,#20003) +stmt_containers(#20025,#20001) +#20026=* +exprs(#20026,47,#20025,0,"[x=42] = []") +#20027=@"loc,{#10000},1,1,1,11" +locations_default(#20027,#10000,1,1,1,11) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20025) +expr_containers(#20026,#20001) +#20028=* +exprs(#20028,67,#20026,0,"[x=42]") +#20029=@"loc,{#10000},1,1,1,6" +locations_default(#20029,#10000,1,1,1,6) +hasLocation(#20028,#20029) +enclosing_stmt(#20028,#20025) +expr_containers(#20028,#20001) +#20030=* +exprs(#20030,79,#20028,0,"x") +hasLocation(#20030,#20007) +enclosing_stmt(#20030,#20025) +expr_containers(#20030,#20001) +literals("x","x",#20030) +#20031=@"var;{x};{#20000}" +variables(#20031,"x",#20000) +bind(#20030,#20031) #20032=* -exprs(#20032,7,#20025,1,"[]") -#20033=@"loc,{#10000},1,10,1,11" -locations_default(#20033,#10000,1,10,1,11) -hasLocation(#20032,#20033) -enclosing_stmt(#20032,#20024) +exprs(#20032,3,#20028,-2,"42") +hasLocation(#20032,#20011) +enclosing_stmt(#20032,#20025) expr_containers(#20032,#20001) -array_size(#20032,0) -#20034=* -entry_cfg_node(#20034,#20001) -#20035=@"loc,{#10000},1,1,1,0" -locations_default(#20035,#10000,1,1,1,0) -hasLocation(#20034,#20035) -#20036=* -exit_cfg_node(#20036,#20001) -hasLocation(#20036,#20023) -successor(#20024,#20032) -successor(#20027,#20031) -successor(#20029,#20025) -successor(#20031,#20029) -successor(#20032,#20027) -successor(#20025,#20036) -successor(#20034,#20024) +literals("42","42",#20032) +array_size(#20028,1) +#20033=* +exprs(#20033,7,#20026,1,"[]") +#20034=@"loc,{#10000},1,10,1,11" +locations_default(#20034,#10000,1,10,1,11) +hasLocation(#20033,#20034) +enclosing_stmt(#20033,#20025) +expr_containers(#20033,#20001) +array_size(#20033,0) +#20035=* +entry_cfg_node(#20035,#20001) +#20036=@"loc,{#10000},1,1,1,0" +locations_default(#20036,#10000,1,1,1,0) +hasLocation(#20035,#20036) +#20037=* +exit_cfg_node(#20037,#20001) +hasLocation(#20037,#20023) +successor(#20025,#20033) +successor(#20028,#20032) +successor(#20030,#20026) +successor(#20032,#20030) +successor(#20033,#20028) +successor(#20026,#20037) +successor(#20035,#20025) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/array_pattern_with_rest.js.trap b/javascript/extractor/tests/es2015/output/trap/array_pattern_with_rest.js.trap index 9e5cd43ed625..b2c2e594e457 100644 --- a/javascript/extractor/tests/es2015/output/trap/array_pattern_with_rest.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/array_pattern_with_rest.js.trap @@ -139,113 +139,117 @@ locations_default(#20049,#10000,1,1,4,1) hasLocation(#20001,#20049) #20050=@"var;{cdr};{#20000}" variables(#20050,"cdr",#20000) -#20051=* -stmts(#20051,17,#20001,0,"functio ... n ys;\n}") -hasLocation(#20051,#20049) -stmt_containers(#20051,#20001) +#20051=@"var;{this};{#20000}" +variables(#20051,"this",#20000) #20052=* -exprs(#20052,78,#20051,-1,"cdr") -hasLocation(#20052,#20013) -expr_containers(#20052,#20051) -literals("cdr","cdr",#20052) -decl(#20052,#20050) +stmts(#20052,17,#20001,0,"functio ... n ys;\n}") +hasLocation(#20052,#20049) +stmt_containers(#20052,#20001) #20053=* -scopes(#20053,1) -scopenodes(#20051,#20053) -scopenesting(#20053,#20000) -#20054=@"var;{ys};{#20053}" -variables(#20054,"ys",#20053) -#20055=@"var;{o};{#20053}" -variables(#20055,"o",#20053) -#20056=* -exprs(#20056,78,#20051,0,"o") -hasLocation(#20056,#20017) -expr_containers(#20056,#20051) -literals("o","o",#20056) -decl(#20056,#20055) -#20057=@"var;{arguments};{#20053}" -variables(#20057,"arguments",#20053) -is_arguments_object(#20057) +exprs(#20053,78,#20052,-1,"cdr") +hasLocation(#20053,#20013) +expr_containers(#20053,#20052) +literals("cdr","cdr",#20053) +decl(#20053,#20050) +#20054=* +scopes(#20054,1) +scopenodes(#20052,#20054) +scopenesting(#20054,#20000) +#20055=@"var;{ys};{#20054}" +variables(#20055,"ys",#20054) +#20056=@"var;{this};{#20054}" +variables(#20056,"this",#20054) +#20057=@"var;{o};{#20054}" +variables(#20057,"o",#20054) #20058=* -stmts(#20058,1,#20051,-2,"{\n var ... n ys;\n}") -#20059=@"loc,{#10000},1,17,4,1" -locations_default(#20059,#10000,1,17,4,1) -hasLocation(#20058,#20059) -stmt_containers(#20058,#20051) +exprs(#20058,78,#20052,0,"o") +hasLocation(#20058,#20017) +expr_containers(#20058,#20052) +literals("o","o",#20058) +decl(#20058,#20057) +#20059=@"var;{arguments};{#20054}" +variables(#20059,"arguments",#20054) +is_arguments_object(#20059) #20060=* -stmts(#20060,18,#20058,0,"var [, ...ys] = o;") -#20061=@"loc,{#10000},2,3,2,20" -locations_default(#20061,#10000,2,3,2,20) +stmts(#20060,1,#20052,-2,"{\n var ... n ys;\n}") +#20061=@"loc,{#10000},1,17,4,1" +locations_default(#20061,#10000,1,17,4,1) hasLocation(#20060,#20061) -stmt_containers(#20060,#20051) +stmt_containers(#20060,#20052) #20062=* -exprs(#20062,64,#20060,0,"[, ...ys] = o") -#20063=@"loc,{#10000},2,7,2,19" -locations_default(#20063,#10000,2,7,2,19) +stmts(#20062,18,#20060,0,"var [, ...ys] = o;") +#20063=@"loc,{#10000},2,3,2,20" +locations_default(#20063,#10000,2,3,2,20) hasLocation(#20062,#20063) -enclosing_stmt(#20062,#20060) -expr_containers(#20062,#20051) +stmt_containers(#20062,#20052) #20064=* -exprs(#20064,67,#20062,0,"[, ...ys]") -#20065=@"loc,{#10000},2,7,2,15" -locations_default(#20065,#10000,2,7,2,15) +exprs(#20064,64,#20062,0,"[, ...ys] = o") +#20065=@"loc,{#10000},2,7,2,19" +locations_default(#20065,#10000,2,7,2,19) hasLocation(#20064,#20065) -enclosing_stmt(#20064,#20060) -expr_containers(#20064,#20051) +enclosing_stmt(#20064,#20062) +expr_containers(#20064,#20052) #20066=* -exprs(#20066,78,#20064,-1,"ys") -hasLocation(#20066,#20031) -enclosing_stmt(#20066,#20060) -expr_containers(#20066,#20051) -literals("ys","ys",#20066) -decl(#20066,#20054) -array_size(#20064,1) -#20067=* -exprs(#20067,79,#20062,1,"o") -hasLocation(#20067,#20037) -enclosing_stmt(#20067,#20060) -expr_containers(#20067,#20051) -literals("o","o",#20067) -bind(#20067,#20055) +exprs(#20066,67,#20064,0,"[, ...ys]") +#20067=@"loc,{#10000},2,7,2,15" +locations_default(#20067,#10000,2,7,2,15) +hasLocation(#20066,#20067) +enclosing_stmt(#20066,#20062) +expr_containers(#20066,#20052) #20068=* -stmts(#20068,9,#20058,1,"return ys;") -#20069=@"loc,{#10000},3,3,3,12" -locations_default(#20069,#10000,3,3,3,12) -hasLocation(#20068,#20069) -stmt_containers(#20068,#20051) +exprs(#20068,78,#20066,-1,"ys") +hasLocation(#20068,#20031) +enclosing_stmt(#20068,#20062) +expr_containers(#20068,#20052) +literals("ys","ys",#20068) +decl(#20068,#20055) +array_size(#20066,1) +#20069=* +exprs(#20069,79,#20064,1,"o") +hasLocation(#20069,#20037) +enclosing_stmt(#20069,#20062) +expr_containers(#20069,#20052) +literals("o","o",#20069) +bind(#20069,#20057) #20070=* -exprs(#20070,79,#20068,0,"ys") -hasLocation(#20070,#20043) -enclosing_stmt(#20070,#20068) -expr_containers(#20070,#20051) -literals("ys","ys",#20070) -bind(#20070,#20054) -#20071=* -entry_cfg_node(#20071,#20001) -#20072=@"loc,{#10000},1,1,1,0" -locations_default(#20072,#10000,1,1,1,0) -hasLocation(#20071,#20072) +stmts(#20070,9,#20060,1,"return ys;") +#20071=@"loc,{#10000},3,3,3,12" +locations_default(#20071,#10000,3,3,3,12) +hasLocation(#20070,#20071) +stmt_containers(#20070,#20052) +#20072=* +exprs(#20072,79,#20070,0,"ys") +hasLocation(#20072,#20043) +enclosing_stmt(#20072,#20070) +expr_containers(#20072,#20052) +literals("ys","ys",#20072) +bind(#20072,#20055) #20073=* -exit_cfg_node(#20073,#20001) -hasLocation(#20073,#20048) -successor(#20051,#20073) -#20074=* -entry_cfg_node(#20074,#20051) -hasLocation(#20074,#20072) +entry_cfg_node(#20073,#20001) +#20074=@"loc,{#10000},1,1,1,0" +locations_default(#20074,#10000,1,1,1,0) +hasLocation(#20073,#20074) #20075=* -exit_cfg_node(#20075,#20051) +exit_cfg_node(#20075,#20001) hasLocation(#20075,#20048) -successor(#20070,#20068) -successor(#20068,#20075) -successor(#20060,#20067) -successor(#20064,#20066) -successor(#20066,#20062) -successor(#20067,#20064) -successor(#20062,#20070) +successor(#20052,#20075) +#20076=* +entry_cfg_node(#20076,#20052) +hasLocation(#20076,#20074) +#20077=* +exit_cfg_node(#20077,#20052) +hasLocation(#20077,#20048) +successor(#20072,#20070) +successor(#20070,#20077) +successor(#20062,#20069) +successor(#20066,#20068) +successor(#20068,#20064) +successor(#20069,#20066) +successor(#20064,#20072) +successor(#20060,#20062) successor(#20058,#20060) -successor(#20056,#20058) -successor(#20074,#20056) -successor(#20052,#20051) -successor(#20071,#20052) +successor(#20076,#20058) +successor(#20053,#20052) +successor(#20073,#20053) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/arrowfn.js.trap b/javascript/extractor/tests/es2015/output/trap/arrowfn.js.trap index 1092dc9c31f5..35591391909b 100644 --- a/javascript/extractor/tests/es2015/output/trap/arrowfn.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/arrowfn.js.trap @@ -256,309 +256,311 @@ toplevels(#20001,0) #20098=@"loc,{#10000},1,1,3,48" locations_default(#20098,#10000,1,1,3,48) hasLocation(#20001,#20098) -#20099=* -stmts(#20099,2,#20001,0,"[""a"", "" ... ength);") -hasLocation(#20099,#20003) -stmt_containers(#20099,#20001) +#20099=@"var;{this};{#20000}" +variables(#20099,"this",#20000) #20100=* -exprs(#20100,13,#20099,0,"[""a"", "" ... length)") -#20101=@"loc,{#10000},1,1,1,37" -locations_default(#20101,#10000,1,1,1,37) -hasLocation(#20100,#20101) -enclosing_stmt(#20100,#20099) -expr_containers(#20100,#20001) -#20102=* -exprs(#20102,14,#20100,-1,"[""a"", "" ... c""].map") -#20103=@"loc,{#10000},1,1,1,22" -locations_default(#20103,#10000,1,1,1,22) -hasLocation(#20102,#20103) -enclosing_stmt(#20102,#20099) -expr_containers(#20102,#20001) -#20104=* -exprs(#20104,7,#20102,0,"[""a"", ""ab"", ""abc""]") -#20105=@"loc,{#10000},1,1,1,18" -locations_default(#20105,#10000,1,1,1,18) -hasLocation(#20104,#20105) -enclosing_stmt(#20104,#20099) -expr_containers(#20104,#20001) -#20106=* -exprs(#20106,4,#20104,0,"""a""") -hasLocation(#20106,#20011) -enclosing_stmt(#20106,#20099) -expr_containers(#20106,#20001) -literals("a","""a""",#20106) +stmts(#20100,2,#20001,0,"[""a"", "" ... ength);") +hasLocation(#20100,#20003) +stmt_containers(#20100,#20001) +#20101=* +exprs(#20101,13,#20100,0,"[""a"", "" ... length)") +#20102=@"loc,{#10000},1,1,1,37" +locations_default(#20102,#10000,1,1,1,37) +hasLocation(#20101,#20102) +enclosing_stmt(#20101,#20100) +expr_containers(#20101,#20001) +#20103=* +exprs(#20103,14,#20101,-1,"[""a"", "" ... c""].map") +#20104=@"loc,{#10000},1,1,1,22" +locations_default(#20104,#10000,1,1,1,22) +hasLocation(#20103,#20104) +enclosing_stmt(#20103,#20100) +expr_containers(#20103,#20001) +#20105=* +exprs(#20105,7,#20103,0,"[""a"", ""ab"", ""abc""]") +#20106=@"loc,{#10000},1,1,1,18" +locations_default(#20106,#10000,1,1,1,18) +hasLocation(#20105,#20106) +enclosing_stmt(#20105,#20100) +expr_containers(#20105,#20001) #20107=* -regexpterm(#20107,14,#20106,0,"a") -#20108=@"loc,{#10000},1,3,1,3" -locations_default(#20108,#10000,1,3,1,3) -hasLocation(#20107,#20108) -regexp_const_value(#20107,"a") -#20109=* -exprs(#20109,4,#20104,1,"""ab""") -hasLocation(#20109,#20015) -enclosing_stmt(#20109,#20099) -expr_containers(#20109,#20001) -literals("ab","""ab""",#20109) +exprs(#20107,4,#20105,0,"""a""") +hasLocation(#20107,#20011) +enclosing_stmt(#20107,#20100) +expr_containers(#20107,#20001) +literals("a","""a""",#20107) +#20108=* +regexpterm(#20108,14,#20107,0,"a") +#20109=@"loc,{#10000},1,3,1,3" +locations_default(#20109,#10000,1,3,1,3) +hasLocation(#20108,#20109) +regexp_const_value(#20108,"a") #20110=* -regexpterm(#20110,14,#20109,0,"ab") -#20111=@"loc,{#10000},1,8,1,9" -locations_default(#20111,#10000,1,8,1,9) -hasLocation(#20110,#20111) -regexp_const_value(#20110,"ab") -#20112=* -exprs(#20112,4,#20104,2,"""abc""") -hasLocation(#20112,#20019) -enclosing_stmt(#20112,#20099) -expr_containers(#20112,#20001) -literals("abc","""abc""",#20112) +exprs(#20110,4,#20105,1,"""ab""") +hasLocation(#20110,#20015) +enclosing_stmt(#20110,#20100) +expr_containers(#20110,#20001) +literals("ab","""ab""",#20110) +#20111=* +regexpterm(#20111,14,#20110,0,"ab") +#20112=@"loc,{#10000},1,8,1,9" +locations_default(#20112,#10000,1,8,1,9) +hasLocation(#20111,#20112) +regexp_const_value(#20111,"ab") #20113=* -regexpterm(#20113,14,#20112,0,"abc") -#20114=@"loc,{#10000},1,14,1,16" -locations_default(#20114,#10000,1,14,1,16) -hasLocation(#20113,#20114) -regexp_const_value(#20113,"abc") -array_size(#20104,3) -#20115=* -exprs(#20115,0,#20102,1,"map") -hasLocation(#20115,#20025) -enclosing_stmt(#20115,#20099) -expr_containers(#20115,#20001) -literals("map","map",#20115) +exprs(#20113,4,#20105,2,"""abc""") +hasLocation(#20113,#20019) +enclosing_stmt(#20113,#20100) +expr_containers(#20113,#20001) +literals("abc","""abc""",#20113) +#20114=* +regexpterm(#20114,14,#20113,0,"abc") +#20115=@"loc,{#10000},1,14,1,16" +locations_default(#20115,#10000,1,14,1,16) +hasLocation(#20114,#20115) +regexp_const_value(#20114,"abc") +array_size(#20105,3) #20116=* -exprs(#20116,65,#20100,0,"s => s.length") -#20117=@"loc,{#10000},1,24,1,36" -locations_default(#20117,#10000,1,24,1,36) -hasLocation(#20116,#20117) -enclosing_stmt(#20116,#20099) +exprs(#20116,0,#20103,1,"map") +hasLocation(#20116,#20025) +enclosing_stmt(#20116,#20100) expr_containers(#20116,#20001) -#20118=* -scopes(#20118,1) -scopenodes(#20116,#20118) -scopenesting(#20118,#20000) -#20119=@"var;{s};{#20118}" -variables(#20119,"s",#20118) -#20120=* -exprs(#20120,78,#20116,0,"s") -hasLocation(#20120,#20029) -expr_containers(#20120,#20116) -literals("s","s",#20120) -decl(#20120,#20119) +literals("map","map",#20116) +#20117=* +exprs(#20117,65,#20101,0,"s => s.length") +#20118=@"loc,{#10000},1,24,1,36" +locations_default(#20118,#10000,1,24,1,36) +hasLocation(#20117,#20118) +enclosing_stmt(#20117,#20100) +expr_containers(#20117,#20001) +#20119=* +scopes(#20119,1) +scopenodes(#20117,#20119) +scopenesting(#20119,#20000) +#20120=@"var;{s};{#20119}" +variables(#20120,"s",#20119) #20121=* -exprs(#20121,14,#20116,-2,"s.length") -#20122=@"loc,{#10000},1,29,1,36" -locations_default(#20122,#10000,1,29,1,36) -hasLocation(#20121,#20122) -expr_containers(#20121,#20116) -#20123=* -exprs(#20123,79,#20121,0,"s") -hasLocation(#20123,#20033) -expr_containers(#20123,#20116) -literals("s","s",#20123) -bind(#20123,#20119) +exprs(#20121,78,#20117,0,"s") +hasLocation(#20121,#20029) +expr_containers(#20121,#20117) +literals("s","s",#20121) +decl(#20121,#20120) +#20122=* +exprs(#20122,14,#20117,-2,"s.length") +#20123=@"loc,{#10000},1,29,1,36" +locations_default(#20123,#10000,1,29,1,36) +hasLocation(#20122,#20123) +expr_containers(#20122,#20117) #20124=* -exprs(#20124,0,#20121,1,"length") -hasLocation(#20124,#20037) -expr_containers(#20124,#20116) -literals("length","length",#20124) +exprs(#20124,79,#20122,0,"s") +hasLocation(#20124,#20033) +expr_containers(#20124,#20117) +literals("s","s",#20124) +bind(#20124,#20120) #20125=* -stmts(#20125,2,#20001,1,"setInte ... 1000);") -hasLocation(#20125,#20005) -stmt_containers(#20125,#20001) +exprs(#20125,0,#20122,1,"length") +hasLocation(#20125,#20037) +expr_containers(#20125,#20117) +literals("length","length",#20125) #20126=* -exprs(#20126,13,#20125,0,"setInte ... , 1000)") -#20127=@"loc,{#10000},2,1,2,30" -locations_default(#20127,#10000,2,1,2,30) -hasLocation(#20126,#20127) -enclosing_stmt(#20126,#20125) -expr_containers(#20126,#20001) -#20128=* -exprs(#20128,79,#20126,-1,"setInterval") -hasLocation(#20128,#20043) -enclosing_stmt(#20128,#20125) -expr_containers(#20128,#20001) -literals("setInterval","setInterval",#20128) -#20129=@"var;{setInterval};{#20000}" -variables(#20129,"setInterval",#20000) -bind(#20128,#20129) -#20130=* -exprs(#20130,65,#20126,0,"() => ++cnt") -#20131=@"loc,{#10000},2,13,2,23" -locations_default(#20131,#10000,2,13,2,23) -hasLocation(#20130,#20131) -enclosing_stmt(#20130,#20125) -expr_containers(#20130,#20001) -#20132=* -scopes(#20132,1) -scopenodes(#20130,#20132) -scopenesting(#20132,#20000) +stmts(#20126,2,#20001,1,"setInte ... 1000);") +hasLocation(#20126,#20005) +stmt_containers(#20126,#20001) +#20127=* +exprs(#20127,13,#20126,0,"setInte ... , 1000)") +#20128=@"loc,{#10000},2,1,2,30" +locations_default(#20128,#10000,2,1,2,30) +hasLocation(#20127,#20128) +enclosing_stmt(#20127,#20126) +expr_containers(#20127,#20001) +#20129=* +exprs(#20129,79,#20127,-1,"setInterval") +hasLocation(#20129,#20043) +enclosing_stmt(#20129,#20126) +expr_containers(#20129,#20001) +literals("setInterval","setInterval",#20129) +#20130=@"var;{setInterval};{#20000}" +variables(#20130,"setInterval",#20000) +bind(#20129,#20130) +#20131=* +exprs(#20131,65,#20127,0,"() => ++cnt") +#20132=@"loc,{#10000},2,13,2,23" +locations_default(#20132,#10000,2,13,2,23) +hasLocation(#20131,#20132) +enclosing_stmt(#20131,#20126) +expr_containers(#20131,#20001) #20133=* -exprs(#20133,59,#20130,-2,"++cnt") -#20134=@"loc,{#10000},2,19,2,23" -locations_default(#20134,#10000,2,19,2,23) -hasLocation(#20133,#20134) -expr_containers(#20133,#20130) -#20135=* -exprs(#20135,79,#20133,0,"cnt") -hasLocation(#20135,#20055) -expr_containers(#20135,#20130) -literals("cnt","cnt",#20135) -#20136=@"var;{cnt};{#20000}" -variables(#20136,"cnt",#20000) -bind(#20135,#20136) -#20137=* -exprs(#20137,3,#20126,1,"1000") -hasLocation(#20137,#20059) -enclosing_stmt(#20137,#20125) -expr_containers(#20137,#20001) -literals("1000","1000",#20137) +scopes(#20133,1) +scopenodes(#20131,#20133) +scopenesting(#20133,#20000) +#20134=* +exprs(#20134,59,#20131,-2,"++cnt") +#20135=@"loc,{#10000},2,19,2,23" +locations_default(#20135,#10000,2,19,2,23) +hasLocation(#20134,#20135) +expr_containers(#20134,#20131) +#20136=* +exprs(#20136,79,#20134,0,"cnt") +hasLocation(#20136,#20055) +expr_containers(#20136,#20131) +literals("cnt","cnt",#20136) +#20137=@"var;{cnt};{#20000}" +variables(#20137,"cnt",#20000) +bind(#20136,#20137) #20138=* -stmts(#20138,2,#20001,2,"setTime ... 60000);") -hasLocation(#20138,#20007) -stmt_containers(#20138,#20001) +exprs(#20138,3,#20127,1,"1000") +hasLocation(#20138,#20059) +enclosing_stmt(#20138,#20126) +expr_containers(#20138,#20001) +literals("1000","1000",#20138) #20139=* -exprs(#20139,13,#20138,0,"setTime ... 60000)") -#20140=@"loc,{#10000},3,1,3,47" -locations_default(#20140,#10000,3,1,3,47) -hasLocation(#20139,#20140) -enclosing_stmt(#20139,#20138) -expr_containers(#20139,#20001) -#20141=* -exprs(#20141,79,#20139,-1,"setTimeout") -hasLocation(#20141,#20065) -enclosing_stmt(#20141,#20138) -expr_containers(#20141,#20001) -literals("setTimeout","setTimeout",#20141) -#20142=@"var;{setTimeout};{#20000}" -variables(#20142,"setTimeout",#20000) -bind(#20141,#20142) -#20143=* -exprs(#20143,65,#20139,0,"() => { ... p!""); }") -#20144=@"loc,{#10000},3,12,3,39" -locations_default(#20144,#10000,3,12,3,39) -hasLocation(#20143,#20144) -enclosing_stmt(#20143,#20138) -expr_containers(#20143,#20001) -#20145=* -scopes(#20145,1) -scopenodes(#20143,#20145) -scopenesting(#20145,#20000) +stmts(#20139,2,#20001,2,"setTime ... 60000);") +hasLocation(#20139,#20007) +stmt_containers(#20139,#20001) +#20140=* +exprs(#20140,13,#20139,0,"setTime ... 60000)") +#20141=@"loc,{#10000},3,1,3,47" +locations_default(#20141,#10000,3,1,3,47) +hasLocation(#20140,#20141) +enclosing_stmt(#20140,#20139) +expr_containers(#20140,#20001) +#20142=* +exprs(#20142,79,#20140,-1,"setTimeout") +hasLocation(#20142,#20065) +enclosing_stmt(#20142,#20139) +expr_containers(#20142,#20001) +literals("setTimeout","setTimeout",#20142) +#20143=@"var;{setTimeout};{#20000}" +variables(#20143,"setTimeout",#20000) +bind(#20142,#20143) +#20144=* +exprs(#20144,65,#20140,0,"() => { ... p!""); }") +#20145=@"loc,{#10000},3,12,3,39" +locations_default(#20145,#10000,3,12,3,39) +hasLocation(#20144,#20145) +enclosing_stmt(#20144,#20139) +expr_containers(#20144,#20001) #20146=* -stmts(#20146,1,#20143,-2,"{ alert ... p!""); }") -#20147=@"loc,{#10000},3,18,3,39" -locations_default(#20147,#10000,3,18,3,39) -hasLocation(#20146,#20147) -stmt_containers(#20146,#20143) -#20148=* -stmts(#20148,2,#20146,0,"alert(""Wake up!"");") -#20149=@"loc,{#10000},3,20,3,37" -locations_default(#20149,#10000,3,20,3,37) -hasLocation(#20148,#20149) -stmt_containers(#20148,#20143) -#20150=* -exprs(#20150,13,#20148,0,"alert(""Wake up!"")") -#20151=@"loc,{#10000},3,20,3,36" -locations_default(#20151,#10000,3,20,3,36) -hasLocation(#20150,#20151) -enclosing_stmt(#20150,#20148) -expr_containers(#20150,#20143) -#20152=* -exprs(#20152,79,#20150,-1,"alert") -hasLocation(#20152,#20077) -enclosing_stmt(#20152,#20148) -expr_containers(#20152,#20143) -literals("alert","alert",#20152) -#20153=@"var;{alert};{#20000}" -variables(#20153,"alert",#20000) -bind(#20152,#20153) -#20154=* -exprs(#20154,4,#20150,0,"""Wake up!""") -hasLocation(#20154,#20081) -enclosing_stmt(#20154,#20148) -expr_containers(#20154,#20143) -literals("Wake up!","""Wake up!""",#20154) +scopes(#20146,1) +scopenodes(#20144,#20146) +scopenesting(#20146,#20000) +#20147=* +stmts(#20147,1,#20144,-2,"{ alert ... p!""); }") +#20148=@"loc,{#10000},3,18,3,39" +locations_default(#20148,#10000,3,18,3,39) +hasLocation(#20147,#20148) +stmt_containers(#20147,#20144) +#20149=* +stmts(#20149,2,#20147,0,"alert(""Wake up!"");") +#20150=@"loc,{#10000},3,20,3,37" +locations_default(#20150,#10000,3,20,3,37) +hasLocation(#20149,#20150) +stmt_containers(#20149,#20144) +#20151=* +exprs(#20151,13,#20149,0,"alert(""Wake up!"")") +#20152=@"loc,{#10000},3,20,3,36" +locations_default(#20152,#10000,3,20,3,36) +hasLocation(#20151,#20152) +enclosing_stmt(#20151,#20149) +expr_containers(#20151,#20144) +#20153=* +exprs(#20153,79,#20151,-1,"alert") +hasLocation(#20153,#20077) +enclosing_stmt(#20153,#20149) +expr_containers(#20153,#20144) +literals("alert","alert",#20153) +#20154=@"var;{alert};{#20000}" +variables(#20154,"alert",#20000) +bind(#20153,#20154) #20155=* -regexpterm(#20155,14,#20154,0,"Wake up!") -#20156=@"loc,{#10000},3,27,3,34" -locations_default(#20156,#10000,3,27,3,34) -hasLocation(#20155,#20156) -regexp_const_value(#20155,"Wake up!") -#20157=* -exprs(#20157,3,#20139,1,"60000") -hasLocation(#20157,#20091) -enclosing_stmt(#20157,#20138) -expr_containers(#20157,#20001) -literals("60000","60000",#20157) +exprs(#20155,4,#20151,0,"""Wake up!""") +hasLocation(#20155,#20081) +enclosing_stmt(#20155,#20149) +expr_containers(#20155,#20144) +literals("Wake up!","""Wake up!""",#20155) +#20156=* +regexpterm(#20156,14,#20155,0,"Wake up!") +#20157=@"loc,{#10000},3,27,3,34" +locations_default(#20157,#10000,3,27,3,34) +hasLocation(#20156,#20157) +regexp_const_value(#20156,"Wake up!") #20158=* -entry_cfg_node(#20158,#20001) -#20159=@"loc,{#10000},1,1,1,0" -locations_default(#20159,#10000,1,1,1,0) -hasLocation(#20158,#20159) -#20160=* -exit_cfg_node(#20160,#20001) -hasLocation(#20160,#20097) -successor(#20138,#20141) -successor(#20157,#20139) -successor(#20143,#20157) +exprs(#20158,3,#20140,1,"60000") +hasLocation(#20158,#20091) +enclosing_stmt(#20158,#20139) +expr_containers(#20158,#20001) +literals("60000","60000",#20158) +#20159=* +entry_cfg_node(#20159,#20001) +#20160=@"loc,{#10000},1,1,1,0" +locations_default(#20160,#10000,1,1,1,0) +hasLocation(#20159,#20160) #20161=* -entry_cfg_node(#20161,#20143) -#20162=@"loc,{#10000},3,12,3,11" -locations_default(#20162,#10000,3,12,3,11) -hasLocation(#20161,#20162) -#20163=* -exit_cfg_node(#20163,#20143) -#20164=@"loc,{#10000},3,40,3,39" -locations_default(#20164,#10000,3,40,3,39) -hasLocation(#20163,#20164) -successor(#20148,#20152) -successor(#20154,#20150) -successor(#20152,#20154) -successor(#20150,#20163) -successor(#20146,#20148) -successor(#20161,#20146) -successor(#20141,#20143) -successor(#20139,#20160) -successor(#20125,#20128) -successor(#20137,#20126) -successor(#20130,#20137) -#20165=* -entry_cfg_node(#20165,#20130) -#20166=@"loc,{#10000},2,13,2,12" -locations_default(#20166,#10000,2,13,2,12) -hasLocation(#20165,#20166) -#20167=* -exit_cfg_node(#20167,#20130) -#20168=@"loc,{#10000},2,24,2,23" -locations_default(#20168,#10000,2,24,2,23) -hasLocation(#20167,#20168) -successor(#20135,#20133) -successor(#20133,#20167) -successor(#20165,#20135) -successor(#20128,#20130) -successor(#20126,#20138) -successor(#20099,#20104) -successor(#20116,#20100) -#20169=* -entry_cfg_node(#20169,#20116) -#20170=@"loc,{#10000},1,24,1,23" -locations_default(#20170,#10000,1,24,1,23) -hasLocation(#20169,#20170) -#20171=* -exit_cfg_node(#20171,#20116) -#20172=@"loc,{#10000},1,37,1,36" -locations_default(#20172,#10000,1,37,1,36) -hasLocation(#20171,#20172) -successor(#20124,#20121) -successor(#20123,#20124) -successor(#20121,#20171) -successor(#20120,#20123) -successor(#20169,#20120) -successor(#20115,#20102) -successor(#20104,#20106) -successor(#20112,#20115) -successor(#20109,#20112) -successor(#20106,#20109) -successor(#20102,#20116) -successor(#20100,#20125) -successor(#20158,#20099) +exit_cfg_node(#20161,#20001) +hasLocation(#20161,#20097) +successor(#20139,#20142) +successor(#20158,#20140) +successor(#20144,#20158) +#20162=* +entry_cfg_node(#20162,#20144) +#20163=@"loc,{#10000},3,12,3,11" +locations_default(#20163,#10000,3,12,3,11) +hasLocation(#20162,#20163) +#20164=* +exit_cfg_node(#20164,#20144) +#20165=@"loc,{#10000},3,40,3,39" +locations_default(#20165,#10000,3,40,3,39) +hasLocation(#20164,#20165) +successor(#20149,#20153) +successor(#20155,#20151) +successor(#20153,#20155) +successor(#20151,#20164) +successor(#20147,#20149) +successor(#20162,#20147) +successor(#20142,#20144) +successor(#20140,#20161) +successor(#20126,#20129) +successor(#20138,#20127) +successor(#20131,#20138) +#20166=* +entry_cfg_node(#20166,#20131) +#20167=@"loc,{#10000},2,13,2,12" +locations_default(#20167,#10000,2,13,2,12) +hasLocation(#20166,#20167) +#20168=* +exit_cfg_node(#20168,#20131) +#20169=@"loc,{#10000},2,24,2,23" +locations_default(#20169,#10000,2,24,2,23) +hasLocation(#20168,#20169) +successor(#20136,#20134) +successor(#20134,#20168) +successor(#20166,#20136) +successor(#20129,#20131) +successor(#20127,#20139) +successor(#20100,#20105) +successor(#20117,#20101) +#20170=* +entry_cfg_node(#20170,#20117) +#20171=@"loc,{#10000},1,24,1,23" +locations_default(#20171,#10000,1,24,1,23) +hasLocation(#20170,#20171) +#20172=* +exit_cfg_node(#20172,#20117) +#20173=@"loc,{#10000},1,37,1,36" +locations_default(#20173,#10000,1,37,1,36) +hasLocation(#20172,#20173) +successor(#20125,#20122) +successor(#20124,#20125) +successor(#20122,#20172) +successor(#20121,#20124) +successor(#20170,#20121) +successor(#20116,#20103) +successor(#20105,#20107) +successor(#20113,#20116) +successor(#20110,#20113) +successor(#20107,#20110) +successor(#20103,#20117) +successor(#20101,#20126) +successor(#20159,#20100) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/class_accessors.js.trap b/javascript/extractor/tests/es2015/output/trap/class_accessors.js.trap index 278bb0c1d8a0..84f8cf0b2f11 100644 --- a/javascript/extractor/tests/es2015/output/trap/class_accessors.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/class_accessors.js.trap @@ -219,254 +219,266 @@ hasLocation(#20001,#20077) variables(#20078,"A",#20000) #20079=@"local_type_name;{A};{#20000}" local_type_names(#20079,"A",#20000) -#20080=* -stmts(#20080,26,#20001,0,"class A ... ;\n }\n}") -hasLocation(#20080,#20077) -stmt_containers(#20080,#20001) +#20080=@"var;{this};{#20000}" +variables(#20080,"this",#20000) #20081=* -exprs(#20081,78,#20080,0,"A") -hasLocation(#20081,#20021) -enclosing_stmt(#20081,#20080) -expr_containers(#20081,#20001) -literals("A","A",#20081) -decl(#20081,#20078) -typedecl(#20081,#20079) +stmts(#20081,26,#20001,0,"class A ... ;\n }\n}") +hasLocation(#20081,#20077) +stmt_containers(#20081,#20001) #20082=* -scopes(#20082,10) -scopenodes(#20080,#20082) -scopenesting(#20082,#20000) +exprs(#20082,78,#20081,0,"A") +hasLocation(#20082,#20021) +enclosing_stmt(#20082,#20081) +expr_containers(#20082,#20001) +literals("A","A",#20082) +decl(#20082,#20078) +typedecl(#20082,#20079) #20083=* -properties(#20083,#20080,2,1,"get x() ... _x;\n }") -#20084=@"loc,{#10000},2,3,4,3" -locations_default(#20084,#10000,2,3,4,3) -hasLocation(#20083,#20084) +scopes(#20083,10) +scopenodes(#20081,#20083) +scopenesting(#20083,#20000) +#20084=@"var;{this};{#20083}" +variables(#20084,"this",#20083) #20085=* -exprs(#20085,0,#20083,0,"x") -hasLocation(#20085,#20027) -enclosing_stmt(#20085,#20080) -expr_containers(#20085,#20001) -literals("x","x",#20085) -#20086=* -exprs(#20086,9,#20083,1,"() {\n ... _x;\n }") -#20087=@"loc,{#10000},2,8,4,3" -locations_default(#20087,#10000,2,8,4,3) -hasLocation(#20086,#20087) -enclosing_stmt(#20086,#20080) -expr_containers(#20086,#20001) +properties(#20085,#20081,2,1,"get x() ... _x;\n }") +#20086=@"loc,{#10000},2,3,4,3" +locations_default(#20086,#10000,2,3,4,3) +hasLocation(#20085,#20086) +#20087=* +exprs(#20087,0,#20085,0,"x") +hasLocation(#20087,#20027) +enclosing_stmt(#20087,#20081) +expr_containers(#20087,#20001) +literals("x","x",#20087) #20088=* -scopes(#20088,1) -scopenodes(#20086,#20088) -scopenesting(#20088,#20082) -#20089=@"var;{arguments};{#20088}" -variables(#20089,"arguments",#20088) -is_arguments_object(#20089) +exprs(#20088,9,#20085,1,"() {\n ... _x;\n }") +#20089=@"loc,{#10000},2,8,4,3" +locations_default(#20089,#10000,2,8,4,3) +hasLocation(#20088,#20089) +enclosing_stmt(#20088,#20081) +expr_containers(#20088,#20001) #20090=* -stmts(#20090,1,#20086,-2,"{\n r ... _x;\n }") -#20091=@"loc,{#10000},2,11,4,3" -locations_default(#20091,#10000,2,11,4,3) -hasLocation(#20090,#20091) -stmt_containers(#20090,#20086) -#20092=* -stmts(#20092,9,#20090,0,"return this._x;") -#20093=@"loc,{#10000},3,5,3,19" -locations_default(#20093,#10000,3,5,3,19) -hasLocation(#20092,#20093) -stmt_containers(#20092,#20086) -#20094=* -exprs(#20094,14,#20092,0,"this._x") -#20095=@"loc,{#10000},3,12,3,18" -locations_default(#20095,#10000,3,12,3,18) -hasLocation(#20094,#20095) -enclosing_stmt(#20094,#20092) -expr_containers(#20094,#20086) -#20096=* -exprs(#20096,6,#20094,0,"this") -hasLocation(#20096,#20037) -enclosing_stmt(#20096,#20092) -expr_containers(#20096,#20086) +scopes(#20090,1) +scopenodes(#20088,#20090) +scopenesting(#20090,#20083) +#20091=@"var;{this};{#20090}" +variables(#20091,"this",#20090) +#20092=@"var;{arguments};{#20090}" +variables(#20092,"arguments",#20090) +is_arguments_object(#20092) +#20093=* +stmts(#20093,1,#20088,-2,"{\n r ... _x;\n }") +#20094=@"loc,{#10000},2,11,4,3" +locations_default(#20094,#10000,2,11,4,3) +hasLocation(#20093,#20094) +stmt_containers(#20093,#20088) +#20095=* +stmts(#20095,9,#20093,0,"return this._x;") +#20096=@"loc,{#10000},3,5,3,19" +locations_default(#20096,#10000,3,5,3,19) +hasLocation(#20095,#20096) +stmt_containers(#20095,#20088) #20097=* -exprs(#20097,0,#20094,1,"_x") -hasLocation(#20097,#20041) -enclosing_stmt(#20097,#20092) -expr_containers(#20097,#20086) -literals("_x","_x",#20097) -is_method(#20083) -#20098=* -properties(#20098,#20080,3,2,"set x(v ... +v;\n }") -#20099=@"loc,{#10000},5,3,7,3" -locations_default(#20099,#10000,5,3,7,3) -hasLocation(#20098,#20099) +exprs(#20097,14,#20095,0,"this._x") +#20098=@"loc,{#10000},3,12,3,18" +locations_default(#20098,#10000,3,12,3,18) +hasLocation(#20097,#20098) +enclosing_stmt(#20097,#20095) +expr_containers(#20097,#20088) +#20099=* +exprs(#20099,6,#20097,0,"this") +hasLocation(#20099,#20037) +enclosing_stmt(#20099,#20095) +expr_containers(#20099,#20088) +bind(#20099,#20091) #20100=* -exprs(#20100,0,#20098,0,"x") -hasLocation(#20100,#20049) -enclosing_stmt(#20100,#20080) -expr_containers(#20100,#20001) -literals("x","x",#20100) +exprs(#20100,0,#20097,1,"_x") +hasLocation(#20100,#20041) +enclosing_stmt(#20100,#20095) +expr_containers(#20100,#20088) +literals("_x","_x",#20100) +is_method(#20085) #20101=* -exprs(#20101,9,#20098,1,"(v) {\n ... +v;\n }") -#20102=@"loc,{#10000},5,8,7,3" -locations_default(#20102,#10000,5,8,7,3) +properties(#20101,#20081,3,2,"set x(v ... +v;\n }") +#20102=@"loc,{#10000},5,3,7,3" +locations_default(#20102,#10000,5,3,7,3) hasLocation(#20101,#20102) -enclosing_stmt(#20101,#20080) -expr_containers(#20101,#20001) #20103=* -scopes(#20103,1) -scopenodes(#20101,#20103) -scopenesting(#20103,#20082) -#20104=@"var;{v};{#20103}" -variables(#20104,"v",#20103) -#20105=* -exprs(#20105,78,#20101,0,"v") -hasLocation(#20105,#20053) -expr_containers(#20105,#20101) -literals("v","v",#20105) -decl(#20105,#20104) -#20106=@"var;{arguments};{#20103}" -variables(#20106,"arguments",#20103) -is_arguments_object(#20106) -#20107=* -stmts(#20107,1,#20101,-2,"{\n t ... +v;\n }") -#20108=@"loc,{#10000},5,12,7,3" -locations_default(#20108,#10000,5,12,7,3) -hasLocation(#20107,#20108) -stmt_containers(#20107,#20101) +exprs(#20103,0,#20101,0,"x") +hasLocation(#20103,#20049) +enclosing_stmt(#20103,#20081) +expr_containers(#20103,#20001) +literals("x","x",#20103) +#20104=* +exprs(#20104,9,#20101,1,"(v) {\n ... +v;\n }") +#20105=@"loc,{#10000},5,8,7,3" +locations_default(#20105,#10000,5,8,7,3) +hasLocation(#20104,#20105) +enclosing_stmt(#20104,#20081) +expr_containers(#20104,#20001) +#20106=* +scopes(#20106,1) +scopenodes(#20104,#20106) +scopenesting(#20106,#20083) +#20107=@"var;{this};{#20106}" +variables(#20107,"this",#20106) +#20108=@"var;{v};{#20106}" +variables(#20108,"v",#20106) #20109=* -stmts(#20109,2,#20107,0,"this._x = +v;") -#20110=@"loc,{#10000},6,5,6,17" -locations_default(#20110,#10000,6,5,6,17) -hasLocation(#20109,#20110) -stmt_containers(#20109,#20101) +exprs(#20109,78,#20104,0,"v") +hasLocation(#20109,#20053) +expr_containers(#20109,#20104) +literals("v","v",#20109) +decl(#20109,#20108) +#20110=@"var;{arguments};{#20106}" +variables(#20110,"arguments",#20106) +is_arguments_object(#20110) #20111=* -exprs(#20111,47,#20109,0,"this._x = +v") -#20112=@"loc,{#10000},6,5,6,16" -locations_default(#20112,#10000,6,5,6,16) +stmts(#20111,1,#20104,-2,"{\n t ... +v;\n }") +#20112=@"loc,{#10000},5,12,7,3" +locations_default(#20112,#10000,5,12,7,3) hasLocation(#20111,#20112) -enclosing_stmt(#20111,#20109) -expr_containers(#20111,#20101) +stmt_containers(#20111,#20104) #20113=* -exprs(#20113,14,#20111,0,"this._x") -#20114=@"loc,{#10000},6,5,6,11" -locations_default(#20114,#10000,6,5,6,11) +stmts(#20113,2,#20111,0,"this._x = +v;") +#20114=@"loc,{#10000},6,5,6,17" +locations_default(#20114,#10000,6,5,6,17) hasLocation(#20113,#20114) -enclosing_stmt(#20113,#20109) -expr_containers(#20113,#20101) +stmt_containers(#20113,#20104) #20115=* -exprs(#20115,6,#20113,0,"this") -hasLocation(#20115,#20059) -enclosing_stmt(#20115,#20109) -expr_containers(#20115,#20101) -#20116=* -exprs(#20116,0,#20113,1,"_x") -hasLocation(#20116,#20063) -enclosing_stmt(#20116,#20109) -expr_containers(#20116,#20101) -literals("_x","_x",#20116) +exprs(#20115,47,#20113,0,"this._x = +v") +#20116=@"loc,{#10000},6,5,6,16" +locations_default(#20116,#10000,6,5,6,16) +hasLocation(#20115,#20116) +enclosing_stmt(#20115,#20113) +expr_containers(#20115,#20104) #20117=* -exprs(#20117,17,#20111,1,"+v") -#20118=@"loc,{#10000},6,15,6,16" -locations_default(#20118,#10000,6,15,6,16) +exprs(#20117,14,#20115,0,"this._x") +#20118=@"loc,{#10000},6,5,6,11" +locations_default(#20118,#10000,6,5,6,11) hasLocation(#20117,#20118) -enclosing_stmt(#20117,#20109) -expr_containers(#20117,#20101) +enclosing_stmt(#20117,#20113) +expr_containers(#20117,#20104) #20119=* -exprs(#20119,79,#20117,0,"v") -hasLocation(#20119,#20069) -enclosing_stmt(#20119,#20109) -expr_containers(#20119,#20101) -literals("v","v",#20119) -bind(#20119,#20104) -is_method(#20098) +exprs(#20119,6,#20117,0,"this") +hasLocation(#20119,#20059) +enclosing_stmt(#20119,#20113) +expr_containers(#20119,#20104) +bind(#20119,#20107) #20120=* -properties(#20120,#20080,4,0,"constructor() {}") -#20121=@"loc,{#10000},1,9,1,8" -locations_default(#20121,#10000,1,9,1,8) -hasLocation(#20120,#20121) -#20122=* -exprs(#20122,0,#20120,0,"constructor") -hasLocation(#20122,#20121) -enclosing_stmt(#20122,#20080) -expr_containers(#20122,#20001) -literals("constructor","constructor",#20122) +exprs(#20120,0,#20117,1,"_x") +hasLocation(#20120,#20063) +enclosing_stmt(#20120,#20113) +expr_containers(#20120,#20104) +literals("_x","_x",#20120) +#20121=* +exprs(#20121,17,#20115,1,"+v") +#20122=@"loc,{#10000},6,15,6,16" +locations_default(#20122,#10000,6,15,6,16) +hasLocation(#20121,#20122) +enclosing_stmt(#20121,#20113) +expr_containers(#20121,#20104) #20123=* -exprs(#20123,9,#20120,1,"() {}") -hasLocation(#20123,#20121) -enclosing_stmt(#20123,#20080) -expr_containers(#20123,#20001) +exprs(#20123,79,#20121,0,"v") +hasLocation(#20123,#20069) +enclosing_stmt(#20123,#20113) +expr_containers(#20123,#20104) +literals("v","v",#20123) +bind(#20123,#20108) +is_method(#20101) #20124=* -scopes(#20124,1) -scopenodes(#20123,#20124) -scopenesting(#20124,#20082) -#20125=@"var;{arguments};{#20124}" -variables(#20125,"arguments",#20124) -is_arguments_object(#20125) +properties(#20124,#20081,4,0,"constructor() {}") +#20125=@"loc,{#10000},1,9,1,8" +locations_default(#20125,#10000,1,9,1,8) +hasLocation(#20124,#20125) #20126=* -stmts(#20126,1,#20123,-2,"{}") -hasLocation(#20126,#20121) -stmt_containers(#20126,#20123) -is_method(#20120) +exprs(#20126,0,#20124,0,"constructor") +hasLocation(#20126,#20125) +enclosing_stmt(#20126,#20081) +expr_containers(#20126,#20001) +literals("constructor","constructor",#20126) #20127=* -entry_cfg_node(#20127,#20001) -#20128=@"loc,{#10000},1,1,1,0" -locations_default(#20128,#10000,1,1,1,0) -hasLocation(#20127,#20128) -#20129=* -exit_cfg_node(#20129,#20001) -hasLocation(#20129,#20076) -successor(#20123,#20120) -#20130=* -entry_cfg_node(#20130,#20123) -hasLocation(#20130,#20121) +exprs(#20127,9,#20124,1,"() {}") +hasLocation(#20127,#20125) +enclosing_stmt(#20127,#20081) +expr_containers(#20127,#20001) +#20128=* +scopes(#20128,1) +scopenodes(#20127,#20128) +scopenesting(#20128,#20083) +#20129=@"var;{this};{#20128}" +variables(#20129,"this",#20128) +#20130=@"var;{arguments};{#20128}" +variables(#20130,"arguments",#20128) +is_arguments_object(#20130) #20131=* -exit_cfg_node(#20131,#20123) -hasLocation(#20131,#20121) -successor(#20126,#20131) -successor(#20130,#20126) -successor(#20122,#20123) -successor(#20120,#20080) -successor(#20101,#20098) +stmts(#20131,1,#20127,-2,"{}") +hasLocation(#20131,#20125) +stmt_containers(#20131,#20127) +is_method(#20124) #20132=* -entry_cfg_node(#20132,#20101) -#20133=@"loc,{#10000},5,8,5,7" -locations_default(#20133,#10000,5,8,5,7) +entry_cfg_node(#20132,#20001) +#20133=@"loc,{#10000},1,1,1,0" +locations_default(#20133,#10000,1,1,1,0) hasLocation(#20132,#20133) #20134=* -exit_cfg_node(#20134,#20101) -#20135=@"loc,{#10000},7,4,7,3" -locations_default(#20135,#10000,7,4,7,3) -hasLocation(#20134,#20135) -successor(#20109,#20115) -successor(#20119,#20117) -successor(#20117,#20111) -successor(#20116,#20113) -successor(#20115,#20116) -successor(#20113,#20119) -successor(#20111,#20134) -successor(#20107,#20109) -successor(#20105,#20107) -successor(#20132,#20105) -successor(#20100,#20101) -successor(#20098,#20122) -successor(#20086,#20083) +exit_cfg_node(#20134,#20001) +hasLocation(#20134,#20076) +successor(#20127,#20124) +#20135=* +entry_cfg_node(#20135,#20127) +hasLocation(#20135,#20125) #20136=* -entry_cfg_node(#20136,#20086) -#20137=@"loc,{#10000},2,8,2,7" -locations_default(#20137,#10000,2,8,2,7) -hasLocation(#20136,#20137) -#20138=* -exit_cfg_node(#20138,#20086) -#20139=@"loc,{#10000},4,4,4,3" -locations_default(#20139,#10000,4,4,4,3) -hasLocation(#20138,#20139) -successor(#20097,#20094) -successor(#20096,#20097) -successor(#20094,#20092) -successor(#20092,#20138) -successor(#20090,#20096) -successor(#20136,#20090) -successor(#20085,#20086) -successor(#20083,#20100) -successor(#20081,#20085) -successor(#20080,#20129) -successor(#20127,#20081) +exit_cfg_node(#20136,#20127) +hasLocation(#20136,#20125) +successor(#20131,#20136) +successor(#20135,#20131) +successor(#20126,#20127) +successor(#20124,#20081) +successor(#20104,#20101) +#20137=* +entry_cfg_node(#20137,#20104) +#20138=@"loc,{#10000},5,8,5,7" +locations_default(#20138,#10000,5,8,5,7) +hasLocation(#20137,#20138) +#20139=* +exit_cfg_node(#20139,#20104) +#20140=@"loc,{#10000},7,4,7,3" +locations_default(#20140,#10000,7,4,7,3) +hasLocation(#20139,#20140) +successor(#20113,#20119) +successor(#20123,#20121) +successor(#20121,#20115) +successor(#20120,#20117) +successor(#20119,#20120) +successor(#20117,#20123) +successor(#20115,#20139) +successor(#20111,#20113) +successor(#20109,#20111) +successor(#20137,#20109) +successor(#20103,#20104) +successor(#20101,#20126) +successor(#20088,#20085) +#20141=* +entry_cfg_node(#20141,#20088) +#20142=@"loc,{#10000},2,8,2,7" +locations_default(#20142,#10000,2,8,2,7) +hasLocation(#20141,#20142) +#20143=* +exit_cfg_node(#20143,#20088) +#20144=@"loc,{#10000},4,4,4,3" +locations_default(#20144,#10000,4,4,4,3) +hasLocation(#20143,#20144) +successor(#20100,#20097) +successor(#20099,#20100) +successor(#20097,#20095) +successor(#20095,#20143) +successor(#20093,#20099) +successor(#20141,#20093) +successor(#20087,#20088) +successor(#20085,#20103) +successor(#20082,#20087) +successor(#20081,#20134) +successor(#20132,#20082) numlines(#10000,8,8,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/class_ctor.js.trap b/javascript/extractor/tests/es2015/output/trap/class_ctor.js.trap index c7d5fb315023..86950475290f 100644 --- a/javascript/extractor/tests/es2015/output/trap/class_ctor.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/class_ctor.js.trap @@ -133,132 +133,139 @@ hasLocation(#20001,#20045) variables(#20046,"A",#20000) #20047=@"local_type_name;{A};{#20000}" local_type_names(#20047,"A",#20000) -#20048=* -stmts(#20048,26,#20001,0,"class A ... ;\n }\n}") -hasLocation(#20048,#20045) -stmt_containers(#20048,#20001) +#20048=@"var;{this};{#20000}" +variables(#20048,"this",#20000) #20049=* -exprs(#20049,78,#20048,0,"A") -hasLocation(#20049,#20015) -enclosing_stmt(#20049,#20048) -expr_containers(#20049,#20001) -literals("A","A",#20049) -decl(#20049,#20046) -typedecl(#20049,#20047) +stmts(#20049,26,#20001,0,"class A ... ;\n }\n}") +hasLocation(#20049,#20045) +stmt_containers(#20049,#20001) #20050=* -scopes(#20050,10) -scopenodes(#20048,#20050) -scopenesting(#20050,#20000) +exprs(#20050,78,#20049,0,"A") +hasLocation(#20050,#20015) +enclosing_stmt(#20050,#20049) +expr_containers(#20050,#20001) +literals("A","A",#20050) +decl(#20050,#20046) +typedecl(#20050,#20047) #20051=* -properties(#20051,#20048,2,0,"constru ... x;\n }") -#20052=@"loc,{#10000},2,3,4,3" -locations_default(#20052,#10000,2,3,4,3) -hasLocation(#20051,#20052) +scopes(#20051,10) +scopenodes(#20049,#20051) +scopenesting(#20051,#20000) +#20052=@"var;{this};{#20051}" +variables(#20052,"this",#20051) #20053=* -exprs(#20053,0,#20051,0,"constructor") -hasLocation(#20053,#20019) -enclosing_stmt(#20053,#20048) -expr_containers(#20053,#20001) -literals("constructor","constructor",#20053) -#20054=* -exprs(#20054,9,#20051,1,"(x) {\n ... x;\n }") -#20055=@"loc,{#10000},2,14,4,3" -locations_default(#20055,#10000,2,14,4,3) -hasLocation(#20054,#20055) -enclosing_stmt(#20054,#20048) -expr_containers(#20054,#20001) +properties(#20053,#20049,2,0,"constru ... x;\n }") +#20054=@"loc,{#10000},2,3,4,3" +locations_default(#20054,#10000,2,3,4,3) +hasLocation(#20053,#20054) +#20055=* +exprs(#20055,0,#20053,0,"constructor") +hasLocation(#20055,#20019) +enclosing_stmt(#20055,#20049) +expr_containers(#20055,#20001) +literals("constructor","constructor",#20055) #20056=* -scopes(#20056,1) -scopenodes(#20054,#20056) -scopenesting(#20056,#20050) -#20057=@"var;{x};{#20056}" -variables(#20057,"x",#20056) +exprs(#20056,9,#20053,1,"(x) {\n ... x;\n }") +#20057=@"loc,{#10000},2,14,4,3" +locations_default(#20057,#10000,2,14,4,3) +hasLocation(#20056,#20057) +enclosing_stmt(#20056,#20049) +expr_containers(#20056,#20001) #20058=* -exprs(#20058,78,#20054,0,"x") -hasLocation(#20058,#20023) -expr_containers(#20058,#20054) -literals("x","x",#20058) -decl(#20058,#20057) -#20059=@"var;{arguments};{#20056}" -variables(#20059,"arguments",#20056) -is_arguments_object(#20059) -#20060=* -stmts(#20060,1,#20054,-2,"{\n t ... x;\n }") -#20061=@"loc,{#10000},2,18,4,3" -locations_default(#20061,#10000,2,18,4,3) -hasLocation(#20060,#20061) -stmt_containers(#20060,#20054) -#20062=* -stmts(#20062,2,#20060,0,"this.x = x;") -#20063=@"loc,{#10000},3,5,3,15" -locations_default(#20063,#10000,3,5,3,15) -hasLocation(#20062,#20063) -stmt_containers(#20062,#20054) -#20064=* -exprs(#20064,47,#20062,0,"this.x = x") -#20065=@"loc,{#10000},3,5,3,14" -locations_default(#20065,#10000,3,5,3,14) -hasLocation(#20064,#20065) -enclosing_stmt(#20064,#20062) -expr_containers(#20064,#20054) -#20066=* -exprs(#20066,14,#20064,0,"this.x") -#20067=@"loc,{#10000},3,5,3,10" -locations_default(#20067,#10000,3,5,3,10) -hasLocation(#20066,#20067) -enclosing_stmt(#20066,#20062) -expr_containers(#20066,#20054) -#20068=* -exprs(#20068,6,#20066,0,"this") -hasLocation(#20068,#20029) -enclosing_stmt(#20068,#20062) -expr_containers(#20068,#20054) +scopes(#20058,1) +scopenodes(#20056,#20058) +scopenesting(#20058,#20051) +#20059=@"var;{this};{#20058}" +variables(#20059,"this",#20058) +#20060=@"var;{x};{#20058}" +variables(#20060,"x",#20058) +#20061=* +exprs(#20061,78,#20056,0,"x") +hasLocation(#20061,#20023) +expr_containers(#20061,#20056) +literals("x","x",#20061) +decl(#20061,#20060) +#20062=@"var;{arguments};{#20058}" +variables(#20062,"arguments",#20058) +is_arguments_object(#20062) +#20063=* +stmts(#20063,1,#20056,-2,"{\n t ... x;\n }") +#20064=@"loc,{#10000},2,18,4,3" +locations_default(#20064,#10000,2,18,4,3) +hasLocation(#20063,#20064) +stmt_containers(#20063,#20056) +#20065=* +stmts(#20065,2,#20063,0,"this.x = x;") +#20066=@"loc,{#10000},3,5,3,15" +locations_default(#20066,#10000,3,5,3,15) +hasLocation(#20065,#20066) +stmt_containers(#20065,#20056) +#20067=* +exprs(#20067,47,#20065,0,"this.x = x") +#20068=@"loc,{#10000},3,5,3,14" +locations_default(#20068,#10000,3,5,3,14) +hasLocation(#20067,#20068) +enclosing_stmt(#20067,#20065) +expr_containers(#20067,#20056) #20069=* -exprs(#20069,0,#20066,1,"x") -hasLocation(#20069,#20033) -enclosing_stmt(#20069,#20062) -expr_containers(#20069,#20054) -literals("x","x",#20069) -#20070=* -exprs(#20070,79,#20064,1,"x") -hasLocation(#20070,#20037) -enclosing_stmt(#20070,#20062) -expr_containers(#20070,#20054) -literals("x","x",#20070) -bind(#20070,#20057) -is_method(#20051) +exprs(#20069,14,#20067,0,"this.x") +#20070=@"loc,{#10000},3,5,3,10" +locations_default(#20070,#10000,3,5,3,10) +hasLocation(#20069,#20070) +enclosing_stmt(#20069,#20065) +expr_containers(#20069,#20056) #20071=* -entry_cfg_node(#20071,#20001) -#20072=@"loc,{#10000},1,1,1,0" -locations_default(#20072,#10000,1,1,1,0) -hasLocation(#20071,#20072) +exprs(#20071,6,#20069,0,"this") +hasLocation(#20071,#20029) +enclosing_stmt(#20071,#20065) +expr_containers(#20071,#20056) +bind(#20071,#20059) +#20072=* +exprs(#20072,0,#20069,1,"x") +hasLocation(#20072,#20033) +enclosing_stmt(#20072,#20065) +expr_containers(#20072,#20056) +literals("x","x",#20072) #20073=* -exit_cfg_node(#20073,#20001) -hasLocation(#20073,#20044) -successor(#20054,#20051) +exprs(#20073,79,#20067,1,"x") +hasLocation(#20073,#20037) +enclosing_stmt(#20073,#20065) +expr_containers(#20073,#20056) +literals("x","x",#20073) +bind(#20073,#20060) +is_method(#20053) #20074=* -entry_cfg_node(#20074,#20054) -#20075=@"loc,{#10000},2,14,2,13" -locations_default(#20075,#10000,2,14,2,13) +entry_cfg_node(#20074,#20001) +#20075=@"loc,{#10000},1,1,1,0" +locations_default(#20075,#10000,1,1,1,0) hasLocation(#20074,#20075) #20076=* -exit_cfg_node(#20076,#20054) -#20077=@"loc,{#10000},4,4,4,3" -locations_default(#20077,#10000,4,4,4,3) -hasLocation(#20076,#20077) -successor(#20062,#20068) -successor(#20070,#20064) -successor(#20069,#20066) -successor(#20068,#20069) -successor(#20066,#20070) -successor(#20064,#20076) -successor(#20060,#20062) -successor(#20058,#20060) -successor(#20074,#20058) -successor(#20053,#20054) -successor(#20051,#20048) -successor(#20049,#20053) -successor(#20048,#20073) -successor(#20071,#20049) +exit_cfg_node(#20076,#20001) +hasLocation(#20076,#20044) +successor(#20056,#20053) +#20077=* +entry_cfg_node(#20077,#20056) +#20078=@"loc,{#10000},2,14,2,13" +locations_default(#20078,#10000,2,14,2,13) +hasLocation(#20077,#20078) +#20079=* +exit_cfg_node(#20079,#20056) +#20080=@"loc,{#10000},4,4,4,3" +locations_default(#20080,#10000,4,4,4,3) +hasLocation(#20079,#20080) +successor(#20065,#20071) +successor(#20073,#20067) +successor(#20072,#20069) +successor(#20071,#20072) +successor(#20069,#20073) +successor(#20067,#20079) +successor(#20063,#20065) +successor(#20061,#20063) +successor(#20077,#20061) +successor(#20055,#20056) +successor(#20053,#20049) +successor(#20050,#20055) +successor(#20049,#20076) +successor(#20074,#20050) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/class_extends.js.trap b/javascript/extractor/tests/es2015/output/trap/class_extends.js.trap index ed10bdf317f9..b84b522dea9e 100644 --- a/javascript/extractor/tests/es2015/output/trap/class_extends.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/class_extends.js.trap @@ -56,122 +56,128 @@ hasLocation(#20001,#20003) variables(#20018,"Point",#20000) #20019=@"local_type_name;{Point};{#20000}" local_type_names(#20019,"Point",#20000) -#20020=* -stmts(#20020,26,#20001,0,"class P ... ject {}") -hasLocation(#20020,#20003) -stmt_containers(#20020,#20001) +#20020=@"var;{this};{#20000}" +variables(#20020,"this",#20000) #20021=* -exprs(#20021,78,#20020,0,"Point") -hasLocation(#20021,#20007) -enclosing_stmt(#20021,#20020) -expr_containers(#20021,#20001) -literals("Point","Point",#20021) -decl(#20021,#20018) -typedecl(#20021,#20019) +stmts(#20021,26,#20001,0,"class P ... ject {}") +hasLocation(#20021,#20003) +stmt_containers(#20021,#20001) #20022=* -scopes(#20022,10) -scopenodes(#20020,#20022) -scopenesting(#20022,#20000) +exprs(#20022,78,#20021,0,"Point") +hasLocation(#20022,#20007) +enclosing_stmt(#20022,#20021) +expr_containers(#20022,#20001) +literals("Point","Point",#20022) +decl(#20022,#20018) +typedecl(#20022,#20019) #20023=* -exprs(#20023,79,#20020,1,"Object") -hasLocation(#20023,#20011) -enclosing_stmt(#20023,#20020) -expr_containers(#20023,#20001) -literals("Object","Object",#20023) -#20024=@"var;{Object};{#20000}" -variables(#20024,"Object",#20000) -bind(#20023,#20024) +scopes(#20023,10) +scopenodes(#20021,#20023) +scopenesting(#20023,#20000) +#20024=@"var;{this};{#20023}" +variables(#20024,"this",#20023) #20025=* -properties(#20025,#20020,2,0,"constru ... rgs); }") -#20026=@"loc,{#10000},1,28,1,27" -locations_default(#20026,#10000,1,28,1,27) -hasLocation(#20025,#20026) +exprs(#20025,79,#20021,1,"Object") +hasLocation(#20025,#20011) +enclosing_stmt(#20025,#20021) +expr_containers(#20025,#20001) +literals("Object","Object",#20025) +#20026=@"var;{Object};{#20000}" +variables(#20026,"Object",#20000) +bind(#20025,#20026) #20027=* -exprs(#20027,0,#20025,0,"constructor") -hasLocation(#20027,#20026) -enclosing_stmt(#20027,#20020) -expr_containers(#20027,#20001) -literals("constructor","constructor",#20027) -#20028=* -exprs(#20028,9,#20025,1,"(...arg ... rgs); }") -hasLocation(#20028,#20026) -enclosing_stmt(#20028,#20020) -expr_containers(#20028,#20001) +properties(#20027,#20021,2,0,"constru ... rgs); }") +#20028=@"loc,{#10000},1,28,1,27" +locations_default(#20028,#10000,1,28,1,27) +hasLocation(#20027,#20028) #20029=* -scopes(#20029,1) -scopenodes(#20028,#20029) -scopenesting(#20029,#20022) -#20030=@"var;{args};{#20029}" -variables(#20030,"args",#20029) +exprs(#20029,0,#20027,0,"constructor") +hasLocation(#20029,#20028) +enclosing_stmt(#20029,#20021) +expr_containers(#20029,#20001) +literals("constructor","constructor",#20029) +#20030=* +exprs(#20030,9,#20027,1,"(...arg ... rgs); }") +hasLocation(#20030,#20028) +enclosing_stmt(#20030,#20021) +expr_containers(#20030,#20001) #20031=* -exprs(#20031,78,#20028,0,"args") -hasLocation(#20031,#20026) -expr_containers(#20031,#20028) -literals("args","args",#20031) -decl(#20031,#20030) -#20032=@"var;{arguments};{#20029}" -variables(#20032,"arguments",#20029) -is_arguments_object(#20032) -has_rest_parameter(#20028) -#20033=* -stmts(#20033,1,#20028,-2,"{ super(...args); }") -hasLocation(#20033,#20026) -stmt_containers(#20033,#20028) +scopes(#20031,1) +scopenodes(#20030,#20031) +scopenesting(#20031,#20023) +#20032=@"var;{this};{#20031}" +variables(#20032,"this",#20031) +#20033=@"var;{args};{#20031}" +variables(#20033,"args",#20031) #20034=* -stmts(#20034,2,#20033,0,"super(...args);") -hasLocation(#20034,#20026) -stmt_containers(#20034,#20028) -#20035=* -exprs(#20035,13,#20034,0,"super(...args)") -hasLocation(#20035,#20026) -enclosing_stmt(#20035,#20034) -expr_containers(#20035,#20028) +exprs(#20034,78,#20030,0,"args") +hasLocation(#20034,#20028) +expr_containers(#20034,#20030) +literals("args","args",#20034) +decl(#20034,#20033) +#20035=@"var;{arguments};{#20031}" +variables(#20035,"arguments",#20031) +is_arguments_object(#20035) +has_rest_parameter(#20030) #20036=* -exprs(#20036,81,#20035,-1,"super") -hasLocation(#20036,#20026) -enclosing_stmt(#20036,#20034) -expr_containers(#20036,#20028) +stmts(#20036,1,#20030,-2,"{ super(...args); }") +hasLocation(#20036,#20028) +stmt_containers(#20036,#20030) #20037=* -exprs(#20037,66,#20035,0,"...args") -hasLocation(#20037,#20026) -enclosing_stmt(#20037,#20034) -expr_containers(#20037,#20028) +stmts(#20037,2,#20036,0,"super(...args);") +hasLocation(#20037,#20028) +stmt_containers(#20037,#20030) #20038=* -exprs(#20038,79,#20037,0,"args") -hasLocation(#20038,#20026) -enclosing_stmt(#20038,#20034) -expr_containers(#20038,#20028) -literals("args","args",#20038) -bind(#20038,#20030) -is_method(#20025) +exprs(#20038,13,#20037,0,"super(...args)") +hasLocation(#20038,#20028) +enclosing_stmt(#20038,#20037) +expr_containers(#20038,#20030) #20039=* -entry_cfg_node(#20039,#20001) -#20040=@"loc,{#10000},1,1,1,0" -locations_default(#20040,#10000,1,1,1,0) -hasLocation(#20039,#20040) +exprs(#20039,81,#20038,-1,"super") +hasLocation(#20039,#20028) +enclosing_stmt(#20039,#20037) +expr_containers(#20039,#20030) +#20040=* +exprs(#20040,66,#20038,0,"...args") +hasLocation(#20040,#20028) +enclosing_stmt(#20040,#20037) +expr_containers(#20040,#20030) #20041=* -exit_cfg_node(#20041,#20001) -hasLocation(#20041,#20017) -successor(#20028,#20025) +exprs(#20041,79,#20040,0,"args") +hasLocation(#20041,#20028) +enclosing_stmt(#20041,#20037) +expr_containers(#20041,#20030) +literals("args","args",#20041) +bind(#20041,#20033) +is_method(#20027) #20042=* -entry_cfg_node(#20042,#20028) -hasLocation(#20042,#20026) -#20043=* -exit_cfg_node(#20043,#20028) -hasLocation(#20043,#20026) +entry_cfg_node(#20042,#20001) +#20043=@"loc,{#10000},1,1,1,0" +locations_default(#20043,#10000,1,1,1,0) +hasLocation(#20042,#20043) +#20044=* +exit_cfg_node(#20044,#20001) +hasLocation(#20044,#20017) +successor(#20030,#20027) +#20045=* +entry_cfg_node(#20045,#20030) +hasLocation(#20045,#20028) +#20046=* +exit_cfg_node(#20046,#20030) +hasLocation(#20046,#20028) +successor(#20037,#20039) +successor(#20041,#20040) +successor(#20040,#20038) +successor(#20039,#20041) +successor(#20038,#20046) +successor(#20036,#20037) successor(#20034,#20036) -successor(#20038,#20037) -successor(#20037,#20035) -successor(#20036,#20038) -successor(#20035,#20043) -successor(#20033,#20034) -successor(#20031,#20033) -successor(#20042,#20031) -successor(#20027,#20028) -successor(#20025,#20020) -successor(#20023,#20027) -successor(#20021,#20023) -successor(#20020,#20041) -successor(#20039,#20021) +successor(#20045,#20034) +successor(#20029,#20030) +successor(#20027,#20021) +successor(#20025,#20029) +successor(#20022,#20025) +successor(#20021,#20044) +successor(#20042,#20022) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/class_extends2.js.trap b/javascript/extractor/tests/es2015/output/trap/class_extends2.js.trap index f61c4206ea33..a88a7106bb10 100644 --- a/javascript/extractor/tests/es2015/output/trap/class_extends2.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/class_extends2.js.trap @@ -106,190 +106,196 @@ hasLocation(#20001,#20003) variables(#20038,"Point",#20000) #20039=@"local_type_name;{Point};{#20000}" local_type_names(#20039,"Point",#20000) -#20040=* -stmts(#20040,26,#20001,0,"class P ... ray) {}") -hasLocation(#20040,#20003) -stmt_containers(#20040,#20001) +#20040=@"var;{this};{#20000}" +variables(#20040,"this",#20000) #20041=* -exprs(#20041,78,#20040,0,"Point") -hasLocation(#20041,#20007) -enclosing_stmt(#20041,#20040) -expr_containers(#20041,#20001) -literals("Point","Point",#20041) -decl(#20041,#20038) -typedecl(#20041,#20039) +stmts(#20041,26,#20001,0,"class P ... ray) {}") +hasLocation(#20041,#20003) +stmt_containers(#20041,#20001) #20042=* -scopes(#20042,10) -scopenodes(#20040,#20042) -scopenesting(#20042,#20000) +exprs(#20042,78,#20041,0,"Point") +hasLocation(#20042,#20007) +enclosing_stmt(#20042,#20041) +expr_containers(#20042,#20001) +literals("Point","Point",#20042) +decl(#20042,#20038) +typedecl(#20042,#20039) #20043=* -exprs(#20043,63,#20040,1,"(Math.r ... Array)") -#20044=@"loc,{#10000},1,21,1,52" -locations_default(#20044,#10000,1,21,1,52) -hasLocation(#20043,#20044) -enclosing_stmt(#20043,#20040) -expr_containers(#20043,#20001) +scopes(#20043,10) +scopenodes(#20041,#20043) +scopenesting(#20043,#20000) +#20044=@"var;{this};{#20043}" +variables(#20044,"this",#20043) #20045=* -exprs(#20045,11,#20043,0,"Math.ra ... : Array") -#20046=@"loc,{#10000},1,22,1,51" -locations_default(#20046,#10000,1,22,1,51) +exprs(#20045,63,#20041,1,"(Math.r ... Array)") +#20046=@"loc,{#10000},1,21,1,52" +locations_default(#20046,#10000,1,21,1,52) hasLocation(#20045,#20046) -enclosing_stmt(#20045,#20040) +enclosing_stmt(#20045,#20041) expr_containers(#20045,#20001) #20047=* -exprs(#20047,13,#20045,0,"Math.random()") -#20048=@"loc,{#10000},1,22,1,34" -locations_default(#20048,#10000,1,22,1,34) +exprs(#20047,11,#20045,0,"Math.ra ... : Array") +#20048=@"loc,{#10000},1,22,1,51" +locations_default(#20048,#10000,1,22,1,51) hasLocation(#20047,#20048) -enclosing_stmt(#20047,#20040) +enclosing_stmt(#20047,#20041) expr_containers(#20047,#20001) #20049=* -exprs(#20049,14,#20047,-1,"Math.random") -#20050=@"loc,{#10000},1,22,1,32" -locations_default(#20050,#10000,1,22,1,32) +exprs(#20049,13,#20047,0,"Math.random()") +#20050=@"loc,{#10000},1,22,1,34" +locations_default(#20050,#10000,1,22,1,34) hasLocation(#20049,#20050) -enclosing_stmt(#20049,#20040) +enclosing_stmt(#20049,#20041) expr_containers(#20049,#20001) #20051=* -exprs(#20051,79,#20049,0,"Math") -hasLocation(#20051,#20013) -enclosing_stmt(#20051,#20040) +exprs(#20051,14,#20049,-1,"Math.random") +#20052=@"loc,{#10000},1,22,1,32" +locations_default(#20052,#10000,1,22,1,32) +hasLocation(#20051,#20052) +enclosing_stmt(#20051,#20041) expr_containers(#20051,#20001) -literals("Math","Math",#20051) -#20052=@"var;{Math};{#20000}" -variables(#20052,"Math",#20000) -bind(#20051,#20052) #20053=* -exprs(#20053,0,#20049,1,"random") -hasLocation(#20053,#20017) -enclosing_stmt(#20053,#20040) +exprs(#20053,79,#20051,0,"Math") +hasLocation(#20053,#20013) +enclosing_stmt(#20053,#20041) expr_containers(#20053,#20001) -literals("random","random",#20053) -#20054=* -exprs(#20054,79,#20045,1,"Object") -hasLocation(#20054,#20025) -enclosing_stmt(#20054,#20040) -expr_containers(#20054,#20001) -literals("Object","Object",#20054) -#20055=@"var;{Object};{#20000}" -variables(#20055,"Object",#20000) -bind(#20054,#20055) +literals("Math","Math",#20053) +#20054=@"var;{Math};{#20000}" +variables(#20054,"Math",#20000) +bind(#20053,#20054) +#20055=* +exprs(#20055,0,#20051,1,"random") +hasLocation(#20055,#20017) +enclosing_stmt(#20055,#20041) +expr_containers(#20055,#20001) +literals("random","random",#20055) #20056=* -exprs(#20056,79,#20045,2,"Array") -hasLocation(#20056,#20029) -enclosing_stmt(#20056,#20040) +exprs(#20056,79,#20047,1,"Object") +hasLocation(#20056,#20025) +enclosing_stmt(#20056,#20041) expr_containers(#20056,#20001) -literals("Array","Array",#20056) -#20057=@"var;{Array};{#20000}" -variables(#20057,"Array",#20000) +literals("Object","Object",#20056) +#20057=@"var;{Object};{#20000}" +variables(#20057,"Object",#20000) bind(#20056,#20057) #20058=* -properties(#20058,#20040,2,0,"constru ... rgs); }") -#20059=@"loc,{#10000},1,54,1,53" -locations_default(#20059,#10000,1,54,1,53) -hasLocation(#20058,#20059) +exprs(#20058,79,#20047,2,"Array") +hasLocation(#20058,#20029) +enclosing_stmt(#20058,#20041) +expr_containers(#20058,#20001) +literals("Array","Array",#20058) +#20059=@"var;{Array};{#20000}" +variables(#20059,"Array",#20000) +bind(#20058,#20059) #20060=* -exprs(#20060,0,#20058,0,"constructor") -hasLocation(#20060,#20059) -enclosing_stmt(#20060,#20040) -expr_containers(#20060,#20001) -literals("constructor","constructor",#20060) -#20061=* -exprs(#20061,9,#20058,1,"(...arg ... rgs); }") -hasLocation(#20061,#20059) -enclosing_stmt(#20061,#20040) -expr_containers(#20061,#20001) +properties(#20060,#20041,2,0,"constru ... rgs); }") +#20061=@"loc,{#10000},1,54,1,53" +locations_default(#20061,#10000,1,54,1,53) +hasLocation(#20060,#20061) #20062=* -scopes(#20062,1) -scopenodes(#20061,#20062) -scopenesting(#20062,#20042) -#20063=@"var;{args};{#20062}" -variables(#20063,"args",#20062) +exprs(#20062,0,#20060,0,"constructor") +hasLocation(#20062,#20061) +enclosing_stmt(#20062,#20041) +expr_containers(#20062,#20001) +literals("constructor","constructor",#20062) +#20063=* +exprs(#20063,9,#20060,1,"(...arg ... rgs); }") +hasLocation(#20063,#20061) +enclosing_stmt(#20063,#20041) +expr_containers(#20063,#20001) #20064=* -exprs(#20064,78,#20061,0,"args") -hasLocation(#20064,#20059) -expr_containers(#20064,#20061) -literals("args","args",#20064) -decl(#20064,#20063) -#20065=@"var;{arguments};{#20062}" -variables(#20065,"arguments",#20062) -is_arguments_object(#20065) -has_rest_parameter(#20061) -#20066=* -stmts(#20066,1,#20061,-2,"{ super(...args); }") -hasLocation(#20066,#20059) -stmt_containers(#20066,#20061) +scopes(#20064,1) +scopenodes(#20063,#20064) +scopenesting(#20064,#20043) +#20065=@"var;{this};{#20064}" +variables(#20065,"this",#20064) +#20066=@"var;{args};{#20064}" +variables(#20066,"args",#20064) #20067=* -stmts(#20067,2,#20066,0,"super(...args);") -hasLocation(#20067,#20059) -stmt_containers(#20067,#20061) -#20068=* -exprs(#20068,13,#20067,0,"super(...args)") -hasLocation(#20068,#20059) -enclosing_stmt(#20068,#20067) -expr_containers(#20068,#20061) +exprs(#20067,78,#20063,0,"args") +hasLocation(#20067,#20061) +expr_containers(#20067,#20063) +literals("args","args",#20067) +decl(#20067,#20066) +#20068=@"var;{arguments};{#20064}" +variables(#20068,"arguments",#20064) +is_arguments_object(#20068) +has_rest_parameter(#20063) #20069=* -exprs(#20069,81,#20068,-1,"super") -hasLocation(#20069,#20059) -enclosing_stmt(#20069,#20067) -expr_containers(#20069,#20061) +stmts(#20069,1,#20063,-2,"{ super(...args); }") +hasLocation(#20069,#20061) +stmt_containers(#20069,#20063) #20070=* -exprs(#20070,66,#20068,0,"...args") -hasLocation(#20070,#20059) -enclosing_stmt(#20070,#20067) -expr_containers(#20070,#20061) +stmts(#20070,2,#20069,0,"super(...args);") +hasLocation(#20070,#20061) +stmt_containers(#20070,#20063) #20071=* -exprs(#20071,79,#20070,0,"args") -hasLocation(#20071,#20059) -enclosing_stmt(#20071,#20067) -expr_containers(#20071,#20061) -literals("args","args",#20071) -bind(#20071,#20063) -is_method(#20058) +exprs(#20071,13,#20070,0,"super(...args)") +hasLocation(#20071,#20061) +enclosing_stmt(#20071,#20070) +expr_containers(#20071,#20063) #20072=* -entry_cfg_node(#20072,#20001) -#20073=@"loc,{#10000},1,1,1,0" -locations_default(#20073,#10000,1,1,1,0) -hasLocation(#20072,#20073) +exprs(#20072,81,#20071,-1,"super") +hasLocation(#20072,#20061) +enclosing_stmt(#20072,#20070) +expr_containers(#20072,#20063) +#20073=* +exprs(#20073,66,#20071,0,"...args") +hasLocation(#20073,#20061) +enclosing_stmt(#20073,#20070) +expr_containers(#20073,#20063) #20074=* -exit_cfg_node(#20074,#20001) -hasLocation(#20074,#20037) -successor(#20061,#20058) +exprs(#20074,79,#20073,0,"args") +hasLocation(#20074,#20061) +enclosing_stmt(#20074,#20070) +expr_containers(#20074,#20063) +literals("args","args",#20074) +bind(#20074,#20066) +is_method(#20060) #20075=* -entry_cfg_node(#20075,#20061) -hasLocation(#20075,#20059) -#20076=* -exit_cfg_node(#20076,#20061) -hasLocation(#20076,#20059) -successor(#20067,#20069) -successor(#20071,#20070) -successor(#20070,#20068) -successor(#20069,#20071) -successor(#20068,#20076) -successor(#20066,#20067) -successor(#20064,#20066) -successor(#20075,#20064) -successor(#20060,#20061) -successor(#20058,#20040) -successor(#20043,#20045) -successor(#20045,#20051) -successor(#20053,#20049) -successor(#20051,#20053) -successor(#20049,#20047) +entry_cfg_node(#20075,#20001) +#20076=@"loc,{#10000},1,1,1,0" +locations_default(#20076,#10000,1,1,1,0) +hasLocation(#20075,#20076) #20077=* -guard_node(#20077,1,#20047) -hasLocation(#20077,#20048) -successor(#20077,#20054) +exit_cfg_node(#20077,#20001) +hasLocation(#20077,#20037) +successor(#20063,#20060) #20078=* -guard_node(#20078,0,#20047) -hasLocation(#20078,#20048) -successor(#20078,#20056) -successor(#20047,#20077) -successor(#20047,#20078) -successor(#20054,#20060) -successor(#20056,#20060) -successor(#20041,#20043) -successor(#20040,#20074) -successor(#20072,#20041) +entry_cfg_node(#20078,#20063) +hasLocation(#20078,#20061) +#20079=* +exit_cfg_node(#20079,#20063) +hasLocation(#20079,#20061) +successor(#20070,#20072) +successor(#20074,#20073) +successor(#20073,#20071) +successor(#20072,#20074) +successor(#20071,#20079) +successor(#20069,#20070) +successor(#20067,#20069) +successor(#20078,#20067) +successor(#20062,#20063) +successor(#20060,#20041) +successor(#20045,#20047) +successor(#20047,#20053) +successor(#20055,#20051) +successor(#20053,#20055) +successor(#20051,#20049) +#20080=* +guard_node(#20080,1,#20049) +hasLocation(#20080,#20050) +successor(#20080,#20056) +#20081=* +guard_node(#20081,0,#20049) +hasLocation(#20081,#20050) +successor(#20081,#20058) +successor(#20049,#20080) +successor(#20049,#20081) +successor(#20056,#20062) +successor(#20058,#20062) +successor(#20042,#20045) +successor(#20041,#20077) +successor(#20075,#20042) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/class_method.js.trap b/javascript/extractor/tests/es2015/output/trap/class_method.js.trap index 18aec740ece8..b036feda23d1 100644 --- a/javascript/extractor/tests/es2015/output/trap/class_method.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/class_method.js.trap @@ -123,146 +123,155 @@ hasLocation(#20001,#20041) variables(#20042,"A",#20000) #20043=@"local_type_name;{A};{#20000}" local_type_names(#20043,"A",#20000) -#20044=* -stmts(#20044,26,#20001,0,"class A ... ;\n }\n}") -hasLocation(#20044,#20041) -stmt_containers(#20044,#20001) +#20044=@"var;{this};{#20000}" +variables(#20044,"this",#20000) #20045=* -exprs(#20045,78,#20044,0,"A") -hasLocation(#20045,#20015) -enclosing_stmt(#20045,#20044) -expr_containers(#20045,#20001) -literals("A","A",#20045) -decl(#20045,#20042) -typedecl(#20045,#20043) +stmts(#20045,26,#20001,0,"class A ... ;\n }\n}") +hasLocation(#20045,#20041) +stmt_containers(#20045,#20001) #20046=* -scopes(#20046,10) -scopenodes(#20044,#20046) -scopenesting(#20046,#20000) +exprs(#20046,78,#20045,0,"A") +hasLocation(#20046,#20015) +enclosing_stmt(#20046,#20045) +expr_containers(#20046,#20001) +literals("A","A",#20046) +decl(#20046,#20042) +typedecl(#20046,#20043) #20047=* -properties(#20047,#20044,2,0,"getX() ... .x;\n }") -#20048=@"loc,{#10000},2,3,4,3" -locations_default(#20048,#10000,2,3,4,3) -hasLocation(#20047,#20048) +scopes(#20047,10) +scopenodes(#20045,#20047) +scopenesting(#20047,#20000) +#20048=@"var;{this};{#20047}" +variables(#20048,"this",#20047) #20049=* -exprs(#20049,0,#20047,0,"getX") -hasLocation(#20049,#20019) -enclosing_stmt(#20049,#20044) -expr_containers(#20049,#20001) -literals("getX","getX",#20049) -#20050=* -exprs(#20050,9,#20047,1,"() {\n ... .x;\n }") -#20051=@"loc,{#10000},2,7,4,3" -locations_default(#20051,#10000,2,7,4,3) -hasLocation(#20050,#20051) -enclosing_stmt(#20050,#20044) -expr_containers(#20050,#20001) +properties(#20049,#20045,2,0,"getX() ... .x;\n }") +#20050=@"loc,{#10000},2,3,4,3" +locations_default(#20050,#10000,2,3,4,3) +hasLocation(#20049,#20050) +#20051=* +exprs(#20051,0,#20049,0,"getX") +hasLocation(#20051,#20019) +enclosing_stmt(#20051,#20045) +expr_containers(#20051,#20001) +literals("getX","getX",#20051) #20052=* -scopes(#20052,1) -scopenodes(#20050,#20052) -scopenesting(#20052,#20046) -#20053=@"var;{arguments};{#20052}" -variables(#20053,"arguments",#20052) -is_arguments_object(#20053) +exprs(#20052,9,#20049,1,"() {\n ... .x;\n }") +#20053=@"loc,{#10000},2,7,4,3" +locations_default(#20053,#10000,2,7,4,3) +hasLocation(#20052,#20053) +enclosing_stmt(#20052,#20045) +expr_containers(#20052,#20001) #20054=* -stmts(#20054,1,#20050,-2,"{\n r ... .x;\n }") -#20055=@"loc,{#10000},2,10,4,3" -locations_default(#20055,#10000,2,10,4,3) -hasLocation(#20054,#20055) -stmt_containers(#20054,#20050) -#20056=* -stmts(#20056,9,#20054,0,"return this.x;") -#20057=@"loc,{#10000},3,5,3,18" -locations_default(#20057,#10000,3,5,3,18) -hasLocation(#20056,#20057) -stmt_containers(#20056,#20050) -#20058=* -exprs(#20058,14,#20056,0,"this.x") -#20059=@"loc,{#10000},3,12,3,17" -locations_default(#20059,#10000,3,12,3,17) -hasLocation(#20058,#20059) -enclosing_stmt(#20058,#20056) -expr_containers(#20058,#20050) -#20060=* -exprs(#20060,6,#20058,0,"this") -hasLocation(#20060,#20029) -enclosing_stmt(#20060,#20056) -expr_containers(#20060,#20050) +scopes(#20054,1) +scopenodes(#20052,#20054) +scopenesting(#20054,#20047) +#20055=@"var;{this};{#20054}" +variables(#20055,"this",#20054) +#20056=@"var;{arguments};{#20054}" +variables(#20056,"arguments",#20054) +is_arguments_object(#20056) +#20057=* +stmts(#20057,1,#20052,-2,"{\n r ... .x;\n }") +#20058=@"loc,{#10000},2,10,4,3" +locations_default(#20058,#10000,2,10,4,3) +hasLocation(#20057,#20058) +stmt_containers(#20057,#20052) +#20059=* +stmts(#20059,9,#20057,0,"return this.x;") +#20060=@"loc,{#10000},3,5,3,18" +locations_default(#20060,#10000,3,5,3,18) +hasLocation(#20059,#20060) +stmt_containers(#20059,#20052) #20061=* -exprs(#20061,0,#20058,1,"x") -hasLocation(#20061,#20033) -enclosing_stmt(#20061,#20056) -expr_containers(#20061,#20050) -literals("x","x",#20061) -is_method(#20047) -#20062=* -properties(#20062,#20044,3,0,"constructor() {}") -#20063=@"loc,{#10000},1,9,1,8" -locations_default(#20063,#10000,1,9,1,8) -hasLocation(#20062,#20063) +exprs(#20061,14,#20059,0,"this.x") +#20062=@"loc,{#10000},3,12,3,17" +locations_default(#20062,#10000,3,12,3,17) +hasLocation(#20061,#20062) +enclosing_stmt(#20061,#20059) +expr_containers(#20061,#20052) +#20063=* +exprs(#20063,6,#20061,0,"this") +hasLocation(#20063,#20029) +enclosing_stmt(#20063,#20059) +expr_containers(#20063,#20052) +bind(#20063,#20055) #20064=* -exprs(#20064,0,#20062,0,"constructor") -hasLocation(#20064,#20063) -enclosing_stmt(#20064,#20044) -expr_containers(#20064,#20001) -literals("constructor","constructor",#20064) +exprs(#20064,0,#20061,1,"x") +hasLocation(#20064,#20033) +enclosing_stmt(#20064,#20059) +expr_containers(#20064,#20052) +literals("x","x",#20064) +is_method(#20049) #20065=* -exprs(#20065,9,#20062,1,"() {}") -hasLocation(#20065,#20063) -enclosing_stmt(#20065,#20044) -expr_containers(#20065,#20001) -#20066=* -scopes(#20066,1) -scopenodes(#20065,#20066) -scopenesting(#20066,#20046) -#20067=@"var;{arguments};{#20066}" -variables(#20067,"arguments",#20066) -is_arguments_object(#20067) +properties(#20065,#20045,3,0,"constructor() {}") +#20066=@"loc,{#10000},1,9,1,8" +locations_default(#20066,#10000,1,9,1,8) +hasLocation(#20065,#20066) +#20067=* +exprs(#20067,0,#20065,0,"constructor") +hasLocation(#20067,#20066) +enclosing_stmt(#20067,#20045) +expr_containers(#20067,#20001) +literals("constructor","constructor",#20067) #20068=* -stmts(#20068,1,#20065,-2,"{}") -hasLocation(#20068,#20063) -stmt_containers(#20068,#20065) -is_method(#20062) +exprs(#20068,9,#20065,1,"() {}") +hasLocation(#20068,#20066) +enclosing_stmt(#20068,#20045) +expr_containers(#20068,#20001) #20069=* -entry_cfg_node(#20069,#20001) -#20070=@"loc,{#10000},1,1,1,0" -locations_default(#20070,#10000,1,1,1,0) -hasLocation(#20069,#20070) -#20071=* -exit_cfg_node(#20071,#20001) -hasLocation(#20071,#20040) -successor(#20065,#20062) +scopes(#20069,1) +scopenodes(#20068,#20069) +scopenesting(#20069,#20047) +#20070=@"var;{this};{#20069}" +variables(#20070,"this",#20069) +#20071=@"var;{arguments};{#20069}" +variables(#20071,"arguments",#20069) +is_arguments_object(#20071) #20072=* -entry_cfg_node(#20072,#20065) -hasLocation(#20072,#20063) +stmts(#20072,1,#20068,-2,"{}") +hasLocation(#20072,#20066) +stmt_containers(#20072,#20068) +is_method(#20065) #20073=* -exit_cfg_node(#20073,#20065) -hasLocation(#20073,#20063) -successor(#20068,#20073) -successor(#20072,#20068) -successor(#20064,#20065) -successor(#20062,#20044) -successor(#20050,#20047) -#20074=* -entry_cfg_node(#20074,#20050) -#20075=@"loc,{#10000},2,7,2,6" -locations_default(#20075,#10000,2,7,2,6) -hasLocation(#20074,#20075) +entry_cfg_node(#20073,#20001) +#20074=@"loc,{#10000},1,1,1,0" +locations_default(#20074,#10000,1,1,1,0) +hasLocation(#20073,#20074) +#20075=* +exit_cfg_node(#20075,#20001) +hasLocation(#20075,#20040) +successor(#20068,#20065) #20076=* -exit_cfg_node(#20076,#20050) -#20077=@"loc,{#10000},4,4,4,3" -locations_default(#20077,#10000,4,4,4,3) -hasLocation(#20076,#20077) -successor(#20061,#20058) -successor(#20060,#20061) -successor(#20058,#20056) -successor(#20056,#20076) -successor(#20054,#20060) -successor(#20074,#20054) -successor(#20049,#20050) -successor(#20047,#20064) -successor(#20045,#20049) -successor(#20044,#20071) -successor(#20069,#20045) +entry_cfg_node(#20076,#20068) +hasLocation(#20076,#20066) +#20077=* +exit_cfg_node(#20077,#20068) +hasLocation(#20077,#20066) +successor(#20072,#20077) +successor(#20076,#20072) +successor(#20067,#20068) +successor(#20065,#20045) +successor(#20052,#20049) +#20078=* +entry_cfg_node(#20078,#20052) +#20079=@"loc,{#10000},2,7,2,6" +locations_default(#20079,#10000,2,7,2,6) +hasLocation(#20078,#20079) +#20080=* +exit_cfg_node(#20080,#20052) +#20081=@"loc,{#10000},4,4,4,3" +locations_default(#20081,#10000,4,4,4,3) +hasLocation(#20080,#20081) +successor(#20064,#20061) +successor(#20063,#20064) +successor(#20061,#20059) +successor(#20059,#20080) +successor(#20057,#20063) +successor(#20078,#20057) +successor(#20051,#20052) +successor(#20049,#20067) +successor(#20046,#20051) +successor(#20045,#20075) +successor(#20073,#20046) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/class_static.js.trap b/javascript/extractor/tests/es2015/output/trap/class_static.js.trap index 0be88f28c4d4..32a81939215f 100644 --- a/javascript/extractor/tests/es2015/output/trap/class_static.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/class_static.js.trap @@ -118,139 +118,147 @@ hasLocation(#20001,#20039) variables(#20040,"A",#20000) #20041=@"local_type_name;{A};{#20000}" local_type_names(#20041,"A",#20000) -#20042=* -stmts(#20042,26,#20001,0,"class A ... ;\n }\n}") -hasLocation(#20042,#20039) -stmt_containers(#20042,#20001) +#20042=@"var;{this};{#20000}" +variables(#20042,"this",#20000) #20043=* -exprs(#20043,78,#20042,0,"A") -hasLocation(#20043,#20015) -enclosing_stmt(#20043,#20042) -expr_containers(#20043,#20001) -literals("A","A",#20043) -decl(#20043,#20040) -typedecl(#20043,#20041) +stmts(#20043,26,#20001,0,"class A ... ;\n }\n}") +hasLocation(#20043,#20039) +stmt_containers(#20043,#20001) #20044=* -scopes(#20044,10) -scopenodes(#20042,#20044) -scopenesting(#20044,#20000) +exprs(#20044,78,#20043,0,"A") +hasLocation(#20044,#20015) +enclosing_stmt(#20044,#20043) +expr_containers(#20044,#20001) +literals("A","A",#20044) +decl(#20044,#20040) +typedecl(#20044,#20041) #20045=* -properties(#20045,#20042,2,0,"static ... A"";\n }") -#20046=@"loc,{#10000},2,3,4,3" -locations_default(#20046,#10000,2,3,4,3) -hasLocation(#20045,#20046) +scopes(#20045,10) +scopenodes(#20043,#20045) +scopenesting(#20045,#20000) +#20046=@"var;{this};{#20045}" +variables(#20046,"this",#20045) #20047=* -exprs(#20047,0,#20045,0,"className") -hasLocation(#20047,#20021) -enclosing_stmt(#20047,#20042) -expr_containers(#20047,#20001) -literals("className","className",#20047) -#20048=* -exprs(#20048,9,#20045,1,"() {\n ... A"";\n }") -#20049=@"loc,{#10000},2,19,4,3" -locations_default(#20049,#10000,2,19,4,3) -hasLocation(#20048,#20049) -enclosing_stmt(#20048,#20042) -expr_containers(#20048,#20001) +properties(#20047,#20043,2,0,"static ... A"";\n }") +#20048=@"loc,{#10000},2,3,4,3" +locations_default(#20048,#10000,2,3,4,3) +hasLocation(#20047,#20048) +#20049=* +exprs(#20049,0,#20047,0,"className") +hasLocation(#20049,#20021) +enclosing_stmt(#20049,#20043) +expr_containers(#20049,#20001) +literals("className","className",#20049) #20050=* -scopes(#20050,1) -scopenodes(#20048,#20050) -scopenesting(#20050,#20044) -#20051=@"var;{arguments};{#20050}" -variables(#20051,"arguments",#20050) -is_arguments_object(#20051) +exprs(#20050,9,#20047,1,"() {\n ... A"";\n }") +#20051=@"loc,{#10000},2,19,4,3" +locations_default(#20051,#10000,2,19,4,3) +hasLocation(#20050,#20051) +enclosing_stmt(#20050,#20043) +expr_containers(#20050,#20001) #20052=* -stmts(#20052,1,#20048,-2,"{\n r ... A"";\n }") -#20053=@"loc,{#10000},2,22,4,3" -locations_default(#20053,#10000,2,22,4,3) -hasLocation(#20052,#20053) -stmt_containers(#20052,#20048) -#20054=* -stmts(#20054,9,#20052,0,"return ""A"";") -#20055=@"loc,{#10000},3,5,3,15" -locations_default(#20055,#10000,3,5,3,15) -hasLocation(#20054,#20055) -stmt_containers(#20054,#20048) -#20056=* -exprs(#20056,4,#20054,0,"""A""") -hasLocation(#20056,#20031) -enclosing_stmt(#20056,#20054) -expr_containers(#20056,#20048) -literals("A","""A""",#20056) +scopes(#20052,1) +scopenodes(#20050,#20052) +scopenesting(#20052,#20045) +#20053=@"var;{this};{#20052}" +variables(#20053,"this",#20052) +#20054=@"var;{arguments};{#20052}" +variables(#20054,"arguments",#20052) +is_arguments_object(#20054) +#20055=* +stmts(#20055,1,#20050,-2,"{\n r ... A"";\n }") +#20056=@"loc,{#10000},2,22,4,3" +locations_default(#20056,#10000,2,22,4,3) +hasLocation(#20055,#20056) +stmt_containers(#20055,#20050) #20057=* -regexpterm(#20057,14,#20056,0,"A") -#20058=@"loc,{#10000},3,13,3,13" -locations_default(#20058,#10000,3,13,3,13) +stmts(#20057,9,#20055,0,"return ""A"";") +#20058=@"loc,{#10000},3,5,3,15" +locations_default(#20058,#10000,3,5,3,15) hasLocation(#20057,#20058) -regexp_const_value(#20057,"A") -is_method(#20045) -is_static(#20045) +stmt_containers(#20057,#20050) #20059=* -properties(#20059,#20042,3,0,"constructor() {}") -#20060=@"loc,{#10000},1,9,1,8" -locations_default(#20060,#10000,1,9,1,8) -hasLocation(#20059,#20060) -#20061=* -exprs(#20061,0,#20059,0,"constructor") -hasLocation(#20061,#20060) -enclosing_stmt(#20061,#20042) -expr_containers(#20061,#20001) -literals("constructor","constructor",#20061) +exprs(#20059,4,#20057,0,"""A""") +hasLocation(#20059,#20031) +enclosing_stmt(#20059,#20057) +expr_containers(#20059,#20050) +literals("A","""A""",#20059) +#20060=* +regexpterm(#20060,14,#20059,0,"A") +#20061=@"loc,{#10000},3,13,3,13" +locations_default(#20061,#10000,3,13,3,13) +hasLocation(#20060,#20061) +regexp_const_value(#20060,"A") +is_method(#20047) +is_static(#20047) #20062=* -exprs(#20062,9,#20059,1,"() {}") -hasLocation(#20062,#20060) -enclosing_stmt(#20062,#20042) -expr_containers(#20062,#20001) -#20063=* -scopes(#20063,1) -scopenodes(#20062,#20063) -scopenesting(#20063,#20044) -#20064=@"var;{arguments};{#20063}" -variables(#20064,"arguments",#20063) -is_arguments_object(#20064) +properties(#20062,#20043,3,0,"constructor() {}") +#20063=@"loc,{#10000},1,9,1,8" +locations_default(#20063,#10000,1,9,1,8) +hasLocation(#20062,#20063) +#20064=* +exprs(#20064,0,#20062,0,"constructor") +hasLocation(#20064,#20063) +enclosing_stmt(#20064,#20043) +expr_containers(#20064,#20001) +literals("constructor","constructor",#20064) #20065=* -stmts(#20065,1,#20062,-2,"{}") -hasLocation(#20065,#20060) -stmt_containers(#20065,#20062) -is_method(#20059) +exprs(#20065,9,#20062,1,"() {}") +hasLocation(#20065,#20063) +enclosing_stmt(#20065,#20043) +expr_containers(#20065,#20001) #20066=* -entry_cfg_node(#20066,#20001) -#20067=@"loc,{#10000},1,1,1,0" -locations_default(#20067,#10000,1,1,1,0) -hasLocation(#20066,#20067) -#20068=* -exit_cfg_node(#20068,#20001) -hasLocation(#20068,#20038) -successor(#20062,#20059) +scopes(#20066,1) +scopenodes(#20065,#20066) +scopenesting(#20066,#20045) +#20067=@"var;{this};{#20066}" +variables(#20067,"this",#20066) +#20068=@"var;{arguments};{#20066}" +variables(#20068,"arguments",#20066) +is_arguments_object(#20068) #20069=* -entry_cfg_node(#20069,#20062) -hasLocation(#20069,#20060) +stmts(#20069,1,#20065,-2,"{}") +hasLocation(#20069,#20063) +stmt_containers(#20069,#20065) +is_method(#20062) #20070=* -exit_cfg_node(#20070,#20062) -hasLocation(#20070,#20060) -successor(#20065,#20070) -successor(#20069,#20065) -successor(#20061,#20062) -successor(#20059,#20042) -successor(#20048,#20045) -#20071=* -entry_cfg_node(#20071,#20048) -#20072=@"loc,{#10000},2,19,2,18" -locations_default(#20072,#10000,2,19,2,18) -hasLocation(#20071,#20072) +entry_cfg_node(#20070,#20001) +#20071=@"loc,{#10000},1,1,1,0" +locations_default(#20071,#10000,1,1,1,0) +hasLocation(#20070,#20071) +#20072=* +exit_cfg_node(#20072,#20001) +hasLocation(#20072,#20038) +successor(#20065,#20062) #20073=* -exit_cfg_node(#20073,#20048) -#20074=@"loc,{#10000},4,4,4,3" -locations_default(#20074,#10000,4,4,4,3) -hasLocation(#20073,#20074) -successor(#20056,#20054) -successor(#20054,#20073) -successor(#20052,#20056) -successor(#20071,#20052) -successor(#20047,#20048) -successor(#20045,#20061) -successor(#20043,#20047) -successor(#20042,#20068) -successor(#20066,#20043) +entry_cfg_node(#20073,#20065) +hasLocation(#20073,#20063) +#20074=* +exit_cfg_node(#20074,#20065) +hasLocation(#20074,#20063) +successor(#20069,#20074) +successor(#20073,#20069) +successor(#20064,#20065) +successor(#20062,#20043) +successor(#20050,#20047) +#20075=* +entry_cfg_node(#20075,#20050) +#20076=@"loc,{#10000},2,19,2,18" +locations_default(#20076,#10000,2,19,2,18) +hasLocation(#20075,#20076) +#20077=* +exit_cfg_node(#20077,#20050) +#20078=@"loc,{#10000},4,4,4,3" +locations_default(#20078,#10000,4,4,4,3) +hasLocation(#20077,#20078) +successor(#20059,#20057) +successor(#20057,#20077) +successor(#20055,#20059) +successor(#20075,#20055) +successor(#20049,#20050) +successor(#20047,#20064) +successor(#20044,#20049) +successor(#20043,#20072) +successor(#20070,#20044) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/classdecl.js.trap b/javascript/extractor/tests/es2015/output/trap/classdecl.js.trap index e5a40dab4006..0906909eb09f 100644 --- a/javascript/extractor/tests/es2015/output/trap/classdecl.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/classdecl.js.trap @@ -46,71 +46,77 @@ hasLocation(#20001,#20003) variables(#20014,"Point",#20000) #20015=@"local_type_name;{Point};{#20000}" local_type_names(#20015,"Point",#20000) -#20016=* -stmts(#20016,26,#20001,0,"class Point {}") -hasLocation(#20016,#20003) -stmt_containers(#20016,#20001) +#20016=@"var;{this};{#20000}" +variables(#20016,"this",#20000) #20017=* -exprs(#20017,78,#20016,0,"Point") -hasLocation(#20017,#20007) -enclosing_stmt(#20017,#20016) -expr_containers(#20017,#20001) -literals("Point","Point",#20017) -decl(#20017,#20014) -typedecl(#20017,#20015) +stmts(#20017,26,#20001,0,"class Point {}") +hasLocation(#20017,#20003) +stmt_containers(#20017,#20001) #20018=* -scopes(#20018,10) -scopenodes(#20016,#20018) -scopenesting(#20018,#20000) +exprs(#20018,78,#20017,0,"Point") +hasLocation(#20018,#20007) +enclosing_stmt(#20018,#20017) +expr_containers(#20018,#20001) +literals("Point","Point",#20018) +decl(#20018,#20014) +typedecl(#20018,#20015) #20019=* -properties(#20019,#20016,2,0,"constructor() {}") -#20020=@"loc,{#10000},1,13,1,12" -locations_default(#20020,#10000,1,13,1,12) -hasLocation(#20019,#20020) +scopes(#20019,10) +scopenodes(#20017,#20019) +scopenesting(#20019,#20000) +#20020=@"var;{this};{#20019}" +variables(#20020,"this",#20019) #20021=* -exprs(#20021,0,#20019,0,"constructor") -hasLocation(#20021,#20020) -enclosing_stmt(#20021,#20016) -expr_containers(#20021,#20001) -literals("constructor","constructor",#20021) -#20022=* -exprs(#20022,9,#20019,1,"() {}") -hasLocation(#20022,#20020) -enclosing_stmt(#20022,#20016) -expr_containers(#20022,#20001) +properties(#20021,#20017,2,0,"constructor() {}") +#20022=@"loc,{#10000},1,13,1,12" +locations_default(#20022,#10000,1,13,1,12) +hasLocation(#20021,#20022) #20023=* -scopes(#20023,1) -scopenodes(#20022,#20023) -scopenesting(#20023,#20018) -#20024=@"var;{arguments};{#20023}" -variables(#20024,"arguments",#20023) -is_arguments_object(#20024) +exprs(#20023,0,#20021,0,"constructor") +hasLocation(#20023,#20022) +enclosing_stmt(#20023,#20017) +expr_containers(#20023,#20001) +literals("constructor","constructor",#20023) +#20024=* +exprs(#20024,9,#20021,1,"() {}") +hasLocation(#20024,#20022) +enclosing_stmt(#20024,#20017) +expr_containers(#20024,#20001) #20025=* -stmts(#20025,1,#20022,-2,"{}") -hasLocation(#20025,#20020) -stmt_containers(#20025,#20022) -is_method(#20019) -#20026=* -entry_cfg_node(#20026,#20001) -#20027=@"loc,{#10000},1,1,1,0" -locations_default(#20027,#10000,1,1,1,0) -hasLocation(#20026,#20027) +scopes(#20025,1) +scopenodes(#20024,#20025) +scopenesting(#20025,#20019) +#20026=@"var;{this};{#20025}" +variables(#20026,"this",#20025) +#20027=@"var;{arguments};{#20025}" +variables(#20027,"arguments",#20025) +is_arguments_object(#20027) #20028=* -exit_cfg_node(#20028,#20001) -hasLocation(#20028,#20013) -successor(#20022,#20019) +stmts(#20028,1,#20024,-2,"{}") +hasLocation(#20028,#20022) +stmt_containers(#20028,#20024) +is_method(#20021) #20029=* -entry_cfg_node(#20029,#20022) -hasLocation(#20029,#20020) -#20030=* -exit_cfg_node(#20030,#20022) -hasLocation(#20030,#20020) -successor(#20025,#20030) -successor(#20029,#20025) -successor(#20021,#20022) -successor(#20019,#20016) -successor(#20017,#20021) -successor(#20016,#20028) -successor(#20026,#20017) +entry_cfg_node(#20029,#20001) +#20030=@"loc,{#10000},1,1,1,0" +locations_default(#20030,#10000,1,1,1,0) +hasLocation(#20029,#20030) +#20031=* +exit_cfg_node(#20031,#20001) +hasLocation(#20031,#20013) +successor(#20024,#20021) +#20032=* +entry_cfg_node(#20032,#20024) +hasLocation(#20032,#20022) +#20033=* +exit_cfg_node(#20033,#20024) +hasLocation(#20033,#20022) +successor(#20028,#20033) +successor(#20032,#20028) +successor(#20023,#20024) +successor(#20021,#20017) +successor(#20018,#20023) +successor(#20017,#20031) +successor(#20029,#20018) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/classexpr.js.trap b/javascript/extractor/tests/es2015/output/trap/classexpr.js.trap index ad02e4ce6e3b..2f89081d2c1d 100644 --- a/javascript/extractor/tests/es2015/output/trap/classexpr.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/classexpr.js.trap @@ -52,89 +52,95 @@ locations_default(#20017,#10000,1,17,1,16) hasLocation(#20016,#20017) toplevels(#20001,0) hasLocation(#20001,#20003) -#20018=* -stmts(#20018,2,#20001,0,"(class Point {})") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,63,#20018,0,"(class Point {})") +stmts(#20019,2,#20001,0,"(class Point {})") hasLocation(#20019,#20003) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) +stmt_containers(#20019,#20001) #20020=* -exprs(#20020,80,#20019,0,"class Point {}") -#20021=@"loc,{#10000},1,2,1,15" -locations_default(#20021,#10000,1,2,1,15) -hasLocation(#20020,#20021) -enclosing_stmt(#20020,#20018) +exprs(#20020,63,#20019,0,"(class Point {})") +hasLocation(#20020,#20003) +enclosing_stmt(#20020,#20019) expr_containers(#20020,#20001) -#20022=* -scopes(#20022,8) -scopenodes(#20020,#20022) -scopenesting(#20022,#20000) -#20023=@"var;{Point};{#20022}" -variables(#20023,"Point",#20022) -#20024=@"local_type_name;{Point};{#20022}" -local_type_names(#20024,"Point",#20022) -#20025=* -exprs(#20025,78,#20020,0,"Point") -hasLocation(#20025,#20009) -enclosing_stmt(#20025,#20018) -expr_containers(#20025,#20001) -literals("Point","Point",#20025) -decl(#20025,#20023) -typedecl(#20025,#20024) -#20026=* -properties(#20026,#20020,2,0,"constructor() {}") -#20027=@"loc,{#10000},1,14,1,13" -locations_default(#20027,#10000,1,14,1,13) -hasLocation(#20026,#20027) +#20021=* +exprs(#20021,80,#20020,0,"class Point {}") +#20022=@"loc,{#10000},1,2,1,15" +locations_default(#20022,#10000,1,2,1,15) +hasLocation(#20021,#20022) +enclosing_stmt(#20021,#20019) +expr_containers(#20021,#20001) +#20023=* +scopes(#20023,8) +scopenodes(#20021,#20023) +scopenesting(#20023,#20000) +#20024=@"var;{this};{#20023}" +variables(#20024,"this",#20023) +#20025=@"var;{Point};{#20023}" +variables(#20025,"Point",#20023) +#20026=@"local_type_name;{Point};{#20023}" +local_type_names(#20026,"Point",#20023) +#20027=* +exprs(#20027,78,#20021,0,"Point") +hasLocation(#20027,#20009) +enclosing_stmt(#20027,#20019) +expr_containers(#20027,#20001) +literals("Point","Point",#20027) +decl(#20027,#20025) +typedecl(#20027,#20026) #20028=* -exprs(#20028,0,#20026,0,"constructor") -hasLocation(#20028,#20027) -enclosing_stmt(#20028,#20018) -expr_containers(#20028,#20001) -literals("constructor","constructor",#20028) -#20029=* -exprs(#20029,9,#20026,1,"() {}") -hasLocation(#20029,#20027) -enclosing_stmt(#20029,#20018) -expr_containers(#20029,#20001) +properties(#20028,#20021,2,0,"constructor() {}") +#20029=@"loc,{#10000},1,14,1,13" +locations_default(#20029,#10000,1,14,1,13) +hasLocation(#20028,#20029) #20030=* -scopes(#20030,1) -scopenodes(#20029,#20030) -scopenesting(#20030,#20022) -#20031=@"var;{arguments};{#20030}" -variables(#20031,"arguments",#20030) -is_arguments_object(#20031) +exprs(#20030,0,#20028,0,"constructor") +hasLocation(#20030,#20029) +enclosing_stmt(#20030,#20019) +expr_containers(#20030,#20001) +literals("constructor","constructor",#20030) +#20031=* +exprs(#20031,9,#20028,1,"() {}") +hasLocation(#20031,#20029) +enclosing_stmt(#20031,#20019) +expr_containers(#20031,#20001) #20032=* -stmts(#20032,1,#20029,-2,"{}") -hasLocation(#20032,#20027) -stmt_containers(#20032,#20029) -is_method(#20026) -#20033=* -entry_cfg_node(#20033,#20001) -#20034=@"loc,{#10000},1,1,1,0" -locations_default(#20034,#10000,1,1,1,0) -hasLocation(#20033,#20034) +scopes(#20032,1) +scopenodes(#20031,#20032) +scopenesting(#20032,#20023) +#20033=@"var;{this};{#20032}" +variables(#20033,"this",#20032) +#20034=@"var;{arguments};{#20032}" +variables(#20034,"arguments",#20032) +is_arguments_object(#20034) #20035=* -exit_cfg_node(#20035,#20001) -hasLocation(#20035,#20017) -successor(#20018,#20019) -successor(#20019,#20025) -successor(#20029,#20026) +stmts(#20035,1,#20031,-2,"{}") +hasLocation(#20035,#20029) +stmt_containers(#20035,#20031) +is_method(#20028) #20036=* -entry_cfg_node(#20036,#20029) -hasLocation(#20036,#20027) -#20037=* -exit_cfg_node(#20037,#20029) -hasLocation(#20037,#20027) -successor(#20032,#20037) -successor(#20036,#20032) -successor(#20028,#20029) -successor(#20026,#20020) -successor(#20025,#20028) -successor(#20020,#20035) -successor(#20033,#20018) +entry_cfg_node(#20036,#20001) +#20037=@"loc,{#10000},1,1,1,0" +locations_default(#20037,#10000,1,1,1,0) +hasLocation(#20036,#20037) +#20038=* +exit_cfg_node(#20038,#20001) +hasLocation(#20038,#20017) +successor(#20019,#20020) +successor(#20020,#20027) +successor(#20031,#20028) +#20039=* +entry_cfg_node(#20039,#20031) +hasLocation(#20039,#20029) +#20040=* +exit_cfg_node(#20040,#20031) +hasLocation(#20040,#20029) +successor(#20035,#20040) +successor(#20039,#20035) +successor(#20030,#20031) +successor(#20028,#20021) +successor(#20027,#20030) +successor(#20021,#20038) +successor(#20036,#20019) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/classexpr2.js.trap b/javascript/extractor/tests/es2015/output/trap/classexpr2.js.trap index 0380ce770f49..070cba610dce 100644 --- a/javascript/extractor/tests/es2015/output/trap/classexpr2.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/classexpr2.js.trap @@ -47,72 +47,82 @@ locations_default(#20015,#10000,1,17,1,16) hasLocation(#20014,#20015) toplevels(#20001,0) hasLocation(#20001,#20003) -#20016=* -stmts(#20016,2,#20001,0,"(class {})") -hasLocation(#20016,#20003) -stmt_containers(#20016,#20001) +#20016=@"var;{this};{#20000}" +variables(#20016,"this",#20000) #20017=* -exprs(#20017,63,#20016,0,"(class {})") +stmts(#20017,2,#20001,0,"(class {})") hasLocation(#20017,#20003) -enclosing_stmt(#20017,#20016) -expr_containers(#20017,#20001) +stmt_containers(#20017,#20001) #20018=* -exprs(#20018,80,#20017,0,"class {}") -#20019=@"loc,{#10000},1,2,1,15" -locations_default(#20019,#10000,1,2,1,15) -hasLocation(#20018,#20019) -enclosing_stmt(#20018,#20016) +exprs(#20018,63,#20017,0,"(class {})") +hasLocation(#20018,#20003) +enclosing_stmt(#20018,#20017) expr_containers(#20018,#20001) -#20020=* -properties(#20020,#20018,2,0,"constructor() {}") -#20021=@"loc,{#10000},1,14,1,13" -locations_default(#20021,#10000,1,14,1,13) -hasLocation(#20020,#20021) -#20022=* -exprs(#20022,0,#20020,0,"constructor") -hasLocation(#20022,#20021) -enclosing_stmt(#20022,#20016) -expr_containers(#20022,#20001) -literals("constructor","constructor",#20022) +#20019=* +exprs(#20019,80,#20018,0,"class {}") +#20020=@"loc,{#10000},1,2,1,15" +locations_default(#20020,#10000,1,2,1,15) +hasLocation(#20019,#20020) +enclosing_stmt(#20019,#20017) +expr_containers(#20019,#20001) +#20021=* +scopes(#20021,8) +scopenodes(#20019,#20021) +scopenesting(#20021,#20000) +#20022=@"var;{this};{#20021}" +variables(#20022,"this",#20021) #20023=* -exprs(#20023,9,#20020,1,"() {}") -hasLocation(#20023,#20021) -enclosing_stmt(#20023,#20016) -expr_containers(#20023,#20001) -#20024=* -scopes(#20024,1) -scopenodes(#20023,#20024) -scopenesting(#20024,#20000) -#20025=@"var;{arguments};{#20024}" -variables(#20025,"arguments",#20024) -is_arguments_object(#20025) +properties(#20023,#20019,2,0,"constructor() {}") +#20024=@"loc,{#10000},1,14,1,13" +locations_default(#20024,#10000,1,14,1,13) +hasLocation(#20023,#20024) +#20025=* +exprs(#20025,0,#20023,0,"constructor") +hasLocation(#20025,#20024) +enclosing_stmt(#20025,#20017) +expr_containers(#20025,#20001) +literals("constructor","constructor",#20025) #20026=* -stmts(#20026,1,#20023,-2,"{}") -hasLocation(#20026,#20021) -stmt_containers(#20026,#20023) -is_method(#20020) +exprs(#20026,9,#20023,1,"() {}") +hasLocation(#20026,#20024) +enclosing_stmt(#20026,#20017) +expr_containers(#20026,#20001) #20027=* -entry_cfg_node(#20027,#20001) -#20028=@"loc,{#10000},1,1,1,0" -locations_default(#20028,#10000,1,1,1,0) -hasLocation(#20027,#20028) -#20029=* -exit_cfg_node(#20029,#20001) -hasLocation(#20029,#20015) -successor(#20016,#20017) -successor(#20017,#20022) -successor(#20023,#20020) +scopes(#20027,1) +scopenodes(#20026,#20027) +scopenesting(#20027,#20021) +#20028=@"var;{this};{#20027}" +variables(#20028,"this",#20027) +#20029=@"var;{arguments};{#20027}" +variables(#20029,"arguments",#20027) +is_arguments_object(#20029) #20030=* -entry_cfg_node(#20030,#20023) -hasLocation(#20030,#20021) +stmts(#20030,1,#20026,-2,"{}") +hasLocation(#20030,#20024) +stmt_containers(#20030,#20026) +is_method(#20023) #20031=* -exit_cfg_node(#20031,#20023) -hasLocation(#20031,#20021) -successor(#20026,#20031) -successor(#20030,#20026) -successor(#20022,#20023) -successor(#20020,#20018) -successor(#20018,#20029) -successor(#20027,#20016) +entry_cfg_node(#20031,#20001) +#20032=@"loc,{#10000},1,1,1,0" +locations_default(#20032,#10000,1,1,1,0) +hasLocation(#20031,#20032) +#20033=* +exit_cfg_node(#20033,#20001) +hasLocation(#20033,#20015) +successor(#20017,#20018) +successor(#20018,#20025) +successor(#20026,#20023) +#20034=* +entry_cfg_node(#20034,#20026) +hasLocation(#20034,#20024) +#20035=* +exit_cfg_node(#20035,#20026) +hasLocation(#20035,#20024) +successor(#20030,#20035) +successor(#20034,#20030) +successor(#20025,#20026) +successor(#20023,#20019) +successor(#20019,#20033) +successor(#20031,#20017) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/complex_array_pattern.js.trap b/javascript/extractor/tests/es2015/output/trap/complex_array_pattern.js.trap index 2d46f91bfbb3..8a9821304903 100644 --- a/javascript/extractor/tests/es2015/output/trap/complex_array_pattern.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/complex_array_pattern.js.trap @@ -72,77 +72,79 @@ locations_default(#20025,#10000,1,14,1,13) hasLocation(#20024,#20025) toplevels(#20001,0) hasLocation(#20001,#20003) -#20026=* -stmts(#20026,2,#20001,0,"[o.x] = [42];") -hasLocation(#20026,#20003) -stmt_containers(#20026,#20001) +#20026=@"var;{this};{#20000}" +variables(#20026,"this",#20000) #20027=* -exprs(#20027,47,#20026,0,"[o.x] = [42]") -#20028=@"loc,{#10000},1,1,1,12" -locations_default(#20028,#10000,1,1,1,12) -hasLocation(#20027,#20028) -enclosing_stmt(#20027,#20026) -expr_containers(#20027,#20001) -#20029=* -exprs(#20029,67,#20027,0,"[o.x]") -#20030=@"loc,{#10000},1,1,1,5" -locations_default(#20030,#10000,1,1,1,5) -hasLocation(#20029,#20030) -enclosing_stmt(#20029,#20026) -expr_containers(#20029,#20001) -#20031=* -exprs(#20031,14,#20029,0,"o.x") -#20032=@"loc,{#10000},1,2,1,4" -locations_default(#20032,#10000,1,2,1,4) -hasLocation(#20031,#20032) -enclosing_stmt(#20031,#20026) -expr_containers(#20031,#20001) -#20033=* -exprs(#20033,79,#20031,0,"o") -hasLocation(#20033,#20007) -enclosing_stmt(#20033,#20026) -expr_containers(#20033,#20001) -literals("o","o",#20033) -#20034=@"var;{o};{#20000}" -variables(#20034,"o",#20000) -bind(#20033,#20034) -#20035=* -exprs(#20035,0,#20031,1,"x") -hasLocation(#20035,#20011) -enclosing_stmt(#20035,#20026) -expr_containers(#20035,#20001) -literals("x","x",#20035) -array_size(#20029,1) +stmts(#20027,2,#20001,0,"[o.x] = [42];") +hasLocation(#20027,#20003) +stmt_containers(#20027,#20001) +#20028=* +exprs(#20028,47,#20027,0,"[o.x] = [42]") +#20029=@"loc,{#10000},1,1,1,12" +locations_default(#20029,#10000,1,1,1,12) +hasLocation(#20028,#20029) +enclosing_stmt(#20028,#20027) +expr_containers(#20028,#20001) +#20030=* +exprs(#20030,67,#20028,0,"[o.x]") +#20031=@"loc,{#10000},1,1,1,5" +locations_default(#20031,#10000,1,1,1,5) +hasLocation(#20030,#20031) +enclosing_stmt(#20030,#20027) +expr_containers(#20030,#20001) +#20032=* +exprs(#20032,14,#20030,0,"o.x") +#20033=@"loc,{#10000},1,2,1,4" +locations_default(#20033,#10000,1,2,1,4) +hasLocation(#20032,#20033) +enclosing_stmt(#20032,#20027) +expr_containers(#20032,#20001) +#20034=* +exprs(#20034,79,#20032,0,"o") +hasLocation(#20034,#20007) +enclosing_stmt(#20034,#20027) +expr_containers(#20034,#20001) +literals("o","o",#20034) +#20035=@"var;{o};{#20000}" +variables(#20035,"o",#20000) +bind(#20034,#20035) #20036=* -exprs(#20036,7,#20027,1,"[42]") -#20037=@"loc,{#10000},1,9,1,12" -locations_default(#20037,#10000,1,9,1,12) -hasLocation(#20036,#20037) -enclosing_stmt(#20036,#20026) +exprs(#20036,0,#20032,1,"x") +hasLocation(#20036,#20011) +enclosing_stmt(#20036,#20027) expr_containers(#20036,#20001) -#20038=* -exprs(#20038,3,#20036,0,"42") -hasLocation(#20038,#20019) -enclosing_stmt(#20038,#20026) -expr_containers(#20038,#20001) -literals("42","42",#20038) -array_size(#20036,1) +literals("x","x",#20036) +array_size(#20030,1) +#20037=* +exprs(#20037,7,#20028,1,"[42]") +#20038=@"loc,{#10000},1,9,1,12" +locations_default(#20038,#10000,1,9,1,12) +hasLocation(#20037,#20038) +enclosing_stmt(#20037,#20027) +expr_containers(#20037,#20001) #20039=* -entry_cfg_node(#20039,#20001) -#20040=@"loc,{#10000},1,1,1,0" -locations_default(#20040,#10000,1,1,1,0) -hasLocation(#20039,#20040) -#20041=* -exit_cfg_node(#20041,#20001) -hasLocation(#20041,#20025) -successor(#20026,#20036) -successor(#20029,#20033) -successor(#20035,#20031) -successor(#20033,#20035) -successor(#20031,#20027) -successor(#20036,#20038) -successor(#20038,#20029) -successor(#20027,#20041) -successor(#20039,#20026) +exprs(#20039,3,#20037,0,"42") +hasLocation(#20039,#20019) +enclosing_stmt(#20039,#20027) +expr_containers(#20039,#20001) +literals("42","42",#20039) +array_size(#20037,1) +#20040=* +entry_cfg_node(#20040,#20001) +#20041=@"loc,{#10000},1,1,1,0" +locations_default(#20041,#10000,1,1,1,0) +hasLocation(#20040,#20041) +#20042=* +exit_cfg_node(#20042,#20001) +hasLocation(#20042,#20025) +successor(#20027,#20037) +successor(#20030,#20034) +successor(#20036,#20032) +successor(#20034,#20036) +successor(#20032,#20028) +successor(#20037,#20039) +successor(#20039,#20030) +successor(#20028,#20042) +successor(#20040,#20027) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/complex_object_pattern.js.trap b/javascript/extractor/tests/es2015/output/trap/complex_object_pattern.js.trap index aff5d4f99578..8239f4aaa21b 100644 --- a/javascript/extractor/tests/es2015/output/trap/complex_object_pattern.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/complex_object_pattern.js.trap @@ -82,91 +82,93 @@ locations_default(#20029,#10000,1,18,1,17) hasLocation(#20028,#20029) toplevels(#20001,0) hasLocation(#20001,#20003) -#20030=* -stmts(#20030,2,#20001,0,"({ x: o.x } = q);") -hasLocation(#20030,#20003) -stmt_containers(#20030,#20001) +#20030=@"var;{this};{#20000}" +variables(#20030,"this",#20000) #20031=* -exprs(#20031,63,#20030,0,"({ x: o.x } = q)") -#20032=@"loc,{#10000},1,1,1,16" -locations_default(#20032,#10000,1,1,1,16) -hasLocation(#20031,#20032) -enclosing_stmt(#20031,#20030) -expr_containers(#20031,#20001) -#20033=* -exprs(#20033,47,#20031,0,"{ x: o.x } = q") -#20034=@"loc,{#10000},1,2,1,15" -locations_default(#20034,#10000,1,2,1,15) -hasLocation(#20033,#20034) -enclosing_stmt(#20033,#20030) -expr_containers(#20033,#20001) -#20035=* -exprs(#20035,68,#20033,0,"{ x: o.x }") -#20036=@"loc,{#10000},1,2,1,11" -locations_default(#20036,#10000,1,2,1,11) -hasLocation(#20035,#20036) -enclosing_stmt(#20035,#20030) -expr_containers(#20035,#20001) -#20037=* -properties(#20037,#20035,0,0,"x: o.x") -#20038=@"loc,{#10000},1,4,1,9" -locations_default(#20038,#10000,1,4,1,9) -hasLocation(#20037,#20038) -#20039=* -exprs(#20039,0,#20037,0,"x") -hasLocation(#20039,#20009) -enclosing_stmt(#20039,#20030) -expr_containers(#20039,#20001) -literals("x","x",#20039) +stmts(#20031,2,#20001,0,"({ x: o.x } = q);") +hasLocation(#20031,#20003) +stmt_containers(#20031,#20001) +#20032=* +exprs(#20032,63,#20031,0,"({ x: o.x } = q)") +#20033=@"loc,{#10000},1,1,1,16" +locations_default(#20033,#10000,1,1,1,16) +hasLocation(#20032,#20033) +enclosing_stmt(#20032,#20031) +expr_containers(#20032,#20001) +#20034=* +exprs(#20034,47,#20032,0,"{ x: o.x } = q") +#20035=@"loc,{#10000},1,2,1,15" +locations_default(#20035,#10000,1,2,1,15) +hasLocation(#20034,#20035) +enclosing_stmt(#20034,#20031) +expr_containers(#20034,#20001) +#20036=* +exprs(#20036,68,#20034,0,"{ x: o.x }") +#20037=@"loc,{#10000},1,2,1,11" +locations_default(#20037,#10000,1,2,1,11) +hasLocation(#20036,#20037) +enclosing_stmt(#20036,#20031) +expr_containers(#20036,#20001) +#20038=* +properties(#20038,#20036,0,0,"x: o.x") +#20039=@"loc,{#10000},1,4,1,9" +locations_default(#20039,#10000,1,4,1,9) +hasLocation(#20038,#20039) #20040=* -exprs(#20040,14,#20037,1,"o.x") -#20041=@"loc,{#10000},1,7,1,9" -locations_default(#20041,#10000,1,7,1,9) -hasLocation(#20040,#20041) -enclosing_stmt(#20040,#20030) +exprs(#20040,0,#20038,0,"x") +hasLocation(#20040,#20009) +enclosing_stmt(#20040,#20031) expr_containers(#20040,#20001) -#20042=* -exprs(#20042,79,#20040,0,"o") -hasLocation(#20042,#20013) -enclosing_stmt(#20042,#20030) -expr_containers(#20042,#20001) -literals("o","o",#20042) -#20043=@"var;{o};{#20000}" -variables(#20043,"o",#20000) -bind(#20042,#20043) -#20044=* -exprs(#20044,0,#20040,1,"x") -hasLocation(#20044,#20017) -enclosing_stmt(#20044,#20030) -expr_containers(#20044,#20001) -literals("x","x",#20044) +literals("x","x",#20040) +#20041=* +exprs(#20041,14,#20038,1,"o.x") +#20042=@"loc,{#10000},1,7,1,9" +locations_default(#20042,#10000,1,7,1,9) +hasLocation(#20041,#20042) +enclosing_stmt(#20041,#20031) +expr_containers(#20041,#20001) +#20043=* +exprs(#20043,79,#20041,0,"o") +hasLocation(#20043,#20013) +enclosing_stmt(#20043,#20031) +expr_containers(#20043,#20001) +literals("o","o",#20043) +#20044=@"var;{o};{#20000}" +variables(#20044,"o",#20000) +bind(#20043,#20044) #20045=* -exprs(#20045,79,#20033,1,"q") -hasLocation(#20045,#20023) -enclosing_stmt(#20045,#20030) +exprs(#20045,0,#20041,1,"x") +hasLocation(#20045,#20017) +enclosing_stmt(#20045,#20031) expr_containers(#20045,#20001) -literals("q","q",#20045) -#20046=@"var;{q};{#20000}" -variables(#20046,"q",#20000) -bind(#20045,#20046) -#20047=* -entry_cfg_node(#20047,#20001) -#20048=@"loc,{#10000},1,1,1,0" -locations_default(#20048,#10000,1,1,1,0) -hasLocation(#20047,#20048) -#20049=* -exit_cfg_node(#20049,#20001) -hasLocation(#20049,#20029) -successor(#20030,#20031) -successor(#20031,#20045) -successor(#20035,#20039) -successor(#20044,#20040) -successor(#20042,#20044) -successor(#20040,#20037) -successor(#20039,#20042) -successor(#20037,#20033) -successor(#20045,#20035) -successor(#20033,#20049) -successor(#20047,#20030) +literals("x","x",#20045) +#20046=* +exprs(#20046,79,#20034,1,"q") +hasLocation(#20046,#20023) +enclosing_stmt(#20046,#20031) +expr_containers(#20046,#20001) +literals("q","q",#20046) +#20047=@"var;{q};{#20000}" +variables(#20047,"q",#20000) +bind(#20046,#20047) +#20048=* +entry_cfg_node(#20048,#20001) +#20049=@"loc,{#10000},1,1,1,0" +locations_default(#20049,#10000,1,1,1,0) +hasLocation(#20048,#20049) +#20050=* +exit_cfg_node(#20050,#20001) +hasLocation(#20050,#20029) +successor(#20031,#20032) +successor(#20032,#20046) +successor(#20036,#20040) +successor(#20045,#20041) +successor(#20043,#20045) +successor(#20041,#20038) +successor(#20040,#20043) +successor(#20038,#20034) +successor(#20046,#20036) +successor(#20034,#20050) +successor(#20048,#20031) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/const.js.trap b/javascript/extractor/tests/es2015/output/trap/const.js.trap index 08a72521d894..8aeb647ec39d 100644 --- a/javascript/extractor/tests/es2015/output/trap/const.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/const.js.trap @@ -52,42 +52,44 @@ locations_default(#20016,#10000,1,1,2,0) hasLocation(#20001,#20016) #20017=@"var;{x};{#20000}" variables(#20017,"x",#20000) -#20018=* -stmts(#20018,22,#20001,0,"const x = 23;") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,64,#20018,0,"x = 23") -#20020=@"loc,{#10000},1,7,1,12" -locations_default(#20020,#10000,1,7,1,12) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) -#20021=* -exprs(#20021,78,#20019,0,"x") -hasLocation(#20021,#20007) -enclosing_stmt(#20021,#20018) -expr_containers(#20021,#20001) -literals("x","x",#20021) -decl(#20021,#20017) +stmts(#20019,22,#20001,0,"const x = 23;") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) +#20020=* +exprs(#20020,64,#20019,0,"x = 23") +#20021=@"loc,{#10000},1,7,1,12" +locations_default(#20021,#10000,1,7,1,12) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20001) #20022=* -exprs(#20022,3,#20019,1,"23") -hasLocation(#20022,#20011) -enclosing_stmt(#20022,#20018) +exprs(#20022,78,#20020,0,"x") +hasLocation(#20022,#20007) +enclosing_stmt(#20022,#20019) expr_containers(#20022,#20001) -literals("23","23",#20022) +literals("x","x",#20022) +decl(#20022,#20017) #20023=* -entry_cfg_node(#20023,#20001) -#20024=@"loc,{#10000},1,1,1,0" -locations_default(#20024,#10000,1,1,1,0) -hasLocation(#20023,#20024) -#20025=* -exit_cfg_node(#20025,#20001) -hasLocation(#20025,#20015) -successor(#20018,#20021) -successor(#20022,#20019) -successor(#20021,#20022) -successor(#20019,#20025) -successor(#20023,#20018) +exprs(#20023,3,#20020,1,"23") +hasLocation(#20023,#20011) +enclosing_stmt(#20023,#20019) +expr_containers(#20023,#20001) +literals("23","23",#20023) +#20024=* +entry_cfg_node(#20024,#20001) +#20025=@"loc,{#10000},1,1,1,0" +locations_default(#20025,#10000,1,1,1,0) +hasLocation(#20024,#20025) +#20026=* +exit_cfg_node(#20026,#20001) +hasLocation(#20026,#20015) +successor(#20019,#20022) +successor(#20023,#20020) +successor(#20022,#20023) +successor(#20020,#20026) +successor(#20024,#20019) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/defaultargs.js.trap b/javascript/extractor/tests/es2015/output/trap/defaultargs.js.trap index 00a6d7b38a56..33dfffbac9bd 100644 --- a/javascript/extractor/tests/es2015/output/trap/defaultargs.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/defaultargs.js.trap @@ -89,85 +89,89 @@ toplevels(#20001,0) hasLocation(#20001,#20003) #20032=@"var;{f};{#20000}" variables(#20032,"f",#20000) -#20033=* -stmts(#20033,17,#20001,0,"functio ... +19) {}") -hasLocation(#20033,#20003) -stmt_containers(#20033,#20001) +#20033=@"var;{this};{#20000}" +variables(#20033,"this",#20000) #20034=* -exprs(#20034,78,#20033,-1,"f") -hasLocation(#20034,#20007) -expr_containers(#20034,#20033) -literals("f","f",#20034) -decl(#20034,#20032) +stmts(#20034,17,#20001,0,"functio ... +19) {}") +hasLocation(#20034,#20003) +stmt_containers(#20034,#20001) #20035=* -scopes(#20035,1) -scopenodes(#20033,#20035) -scopenesting(#20035,#20000) -#20036=@"var;{x};{#20035}" -variables(#20036,"x",#20035) -#20037=* -exprs(#20037,78,#20033,0,"x") -hasLocation(#20037,#20011) -expr_containers(#20037,#20033) -literals("x","x",#20037) -decl(#20037,#20036) -#20038=@"var;{y};{#20035}" -variables(#20038,"y",#20035) +exprs(#20035,78,#20034,-1,"f") +hasLocation(#20035,#20007) +expr_containers(#20035,#20034) +literals("f","f",#20035) +decl(#20035,#20032) +#20036=* +scopes(#20036,1) +scopenodes(#20034,#20036) +scopenesting(#20036,#20000) +#20037=@"var;{this};{#20036}" +variables(#20037,"this",#20036) +#20038=@"var;{x};{#20036}" +variables(#20038,"x",#20036) #20039=* -exprs(#20039,78,#20033,1,"y") -hasLocation(#20039,#20015) -expr_containers(#20039,#20033) -literals("y","y",#20039) +exprs(#20039,78,#20034,0,"x") +hasLocation(#20039,#20011) +expr_containers(#20039,#20034) +literals("x","x",#20039) decl(#20039,#20038) -#20040=@"var;{arguments};{#20035}" -variables(#20040,"arguments",#20035) -is_arguments_object(#20040) +#20040=@"var;{y};{#20036}" +variables(#20040,"y",#20036) #20041=* -exprs(#20041,34,#20033,-9,"x+19") -#20042=@"loc,{#10000},1,17,1,20" -locations_default(#20042,#10000,1,17,1,20) -hasLocation(#20041,#20042) -expr_containers(#20041,#20033) +exprs(#20041,78,#20034,1,"y") +hasLocation(#20041,#20015) +expr_containers(#20041,#20034) +literals("y","y",#20041) +decl(#20041,#20040) +#20042=@"var;{arguments};{#20036}" +variables(#20042,"arguments",#20036) +is_arguments_object(#20042) #20043=* -exprs(#20043,79,#20041,0,"x") -hasLocation(#20043,#20019) -expr_containers(#20043,#20033) -literals("x","x",#20043) -bind(#20043,#20036) -#20044=* -exprs(#20044,3,#20041,1,"19") -hasLocation(#20044,#20023) -expr_containers(#20044,#20033) -literals("19","19",#20044) +exprs(#20043,34,#20034,-9,"x+19") +#20044=@"loc,{#10000},1,17,1,20" +locations_default(#20044,#10000,1,17,1,20) +hasLocation(#20043,#20044) +expr_containers(#20043,#20034) #20045=* -stmts(#20045,1,#20033,-2,"{}") -#20046=@"loc,{#10000},1,23,1,24" -locations_default(#20046,#10000,1,23,1,24) -hasLocation(#20045,#20046) -stmt_containers(#20045,#20033) +exprs(#20045,79,#20043,0,"x") +hasLocation(#20045,#20019) +expr_containers(#20045,#20034) +literals("x","x",#20045) +bind(#20045,#20038) +#20046=* +exprs(#20046,3,#20043,1,"19") +hasLocation(#20046,#20023) +expr_containers(#20046,#20034) +literals("19","19",#20046) #20047=* -entry_cfg_node(#20047,#20001) -#20048=@"loc,{#10000},1,1,1,0" -locations_default(#20048,#10000,1,1,1,0) +stmts(#20047,1,#20034,-2,"{}") +#20048=@"loc,{#10000},1,23,1,24" +locations_default(#20048,#10000,1,23,1,24) hasLocation(#20047,#20048) +stmt_containers(#20047,#20034) #20049=* -exit_cfg_node(#20049,#20001) -hasLocation(#20049,#20031) -successor(#20033,#20049) -#20050=* -entry_cfg_node(#20050,#20033) -hasLocation(#20050,#20048) +entry_cfg_node(#20049,#20001) +#20050=@"loc,{#10000},1,1,1,0" +locations_default(#20050,#10000,1,1,1,0) +hasLocation(#20049,#20050) #20051=* -exit_cfg_node(#20051,#20033) +exit_cfg_node(#20051,#20001) hasLocation(#20051,#20031) -successor(#20045,#20051) +successor(#20034,#20051) +#20052=* +entry_cfg_node(#20052,#20034) +hasLocation(#20052,#20050) +#20053=* +exit_cfg_node(#20053,#20034) +hasLocation(#20053,#20031) +successor(#20047,#20053) +successor(#20041,#20047) +successor(#20046,#20043) +successor(#20045,#20046) +successor(#20043,#20041) successor(#20039,#20045) -successor(#20044,#20041) -successor(#20043,#20044) -successor(#20041,#20039) -successor(#20037,#20043) -successor(#20050,#20037) -successor(#20034,#20033) -successor(#20047,#20034) +successor(#20052,#20039) +successor(#20035,#20034) +successor(#20049,#20035) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/delegating_yield.js.trap b/javascript/extractor/tests/es2015/output/trap/delegating_yield.js.trap index 9b306a40f43c..cfeecbafb908 100644 --- a/javascript/extractor/tests/es2015/output/trap/delegating_yield.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/delegating_yield.js.trap @@ -102,82 +102,86 @@ locations_default(#20035,#10000,1,1,3,1) hasLocation(#20001,#20035) #20036=@"var;{f};{#20000}" variables(#20036,"f",#20000) -#20037=* -stmts(#20037,17,#20001,0,"functio ... g();\n}") -hasLocation(#20037,#20035) -stmt_containers(#20037,#20001) +#20037=@"var;{this};{#20000}" +variables(#20037,"this",#20000) #20038=* -exprs(#20038,78,#20037,-1,"f") -hasLocation(#20038,#20013) -expr_containers(#20038,#20037) -literals("f","f",#20038) -decl(#20038,#20036) +stmts(#20038,17,#20001,0,"functio ... g();\n}") +hasLocation(#20038,#20035) +stmt_containers(#20038,#20001) #20039=* -scopes(#20039,1) -scopenodes(#20037,#20039) -scopenesting(#20039,#20000) -#20040=@"var;{arguments};{#20039}" -variables(#20040,"arguments",#20039) -is_arguments_object(#20040) -is_generator(#20037) -#20041=* -stmts(#20041,1,#20037,-2,"{\n yield* g();\n}") -#20042=@"loc,{#10000},1,15,3,1" -locations_default(#20042,#10000,1,15,3,1) -hasLocation(#20041,#20042) -stmt_containers(#20041,#20037) +exprs(#20039,78,#20038,-1,"f") +hasLocation(#20039,#20013) +expr_containers(#20039,#20038) +literals("f","f",#20039) +decl(#20039,#20036) +#20040=* +scopes(#20040,1) +scopenodes(#20038,#20040) +scopenesting(#20040,#20000) +#20041=@"var;{this};{#20040}" +variables(#20041,"this",#20040) +#20042=@"var;{arguments};{#20040}" +variables(#20042,"arguments",#20040) +is_arguments_object(#20042) +is_generator(#20038) #20043=* -stmts(#20043,2,#20041,0,"yield* g();") -#20044=@"loc,{#10000},2,5,2,15" -locations_default(#20044,#10000,2,5,2,15) +stmts(#20043,1,#20038,-2,"{\n yield* g();\n}") +#20044=@"loc,{#10000},1,15,3,1" +locations_default(#20044,#10000,1,15,3,1) hasLocation(#20043,#20044) -stmt_containers(#20043,#20037) +stmt_containers(#20043,#20038) #20045=* -exprs(#20045,69,#20043,0,"yield* g()") -#20046=@"loc,{#10000},2,5,2,14" -locations_default(#20046,#10000,2,5,2,14) +stmts(#20045,2,#20043,0,"yield* g();") +#20046=@"loc,{#10000},2,5,2,15" +locations_default(#20046,#10000,2,5,2,15) hasLocation(#20045,#20046) -enclosing_stmt(#20045,#20043) -expr_containers(#20045,#20037) +stmt_containers(#20045,#20038) #20047=* -exprs(#20047,13,#20045,0,"g()") -#20048=@"loc,{#10000},2,12,2,14" -locations_default(#20048,#10000,2,12,2,14) +exprs(#20047,69,#20045,0,"yield* g()") +#20048=@"loc,{#10000},2,5,2,14" +locations_default(#20048,#10000,2,5,2,14) hasLocation(#20047,#20048) -enclosing_stmt(#20047,#20043) -expr_containers(#20047,#20037) +enclosing_stmt(#20047,#20045) +expr_containers(#20047,#20038) #20049=* -exprs(#20049,79,#20047,-1,"g") -hasLocation(#20049,#20025) -enclosing_stmt(#20049,#20043) -expr_containers(#20049,#20037) -literals("g","g",#20049) -#20050=@"var;{g};{#20000}" -variables(#20050,"g",#20000) -bind(#20049,#20050) -is_delegating(#20045) +exprs(#20049,13,#20047,0,"g()") +#20050=@"loc,{#10000},2,12,2,14" +locations_default(#20050,#10000,2,12,2,14) +hasLocation(#20049,#20050) +enclosing_stmt(#20049,#20045) +expr_containers(#20049,#20038) #20051=* -entry_cfg_node(#20051,#20001) -#20052=@"loc,{#10000},1,1,1,0" -locations_default(#20052,#10000,1,1,1,0) -hasLocation(#20051,#20052) +exprs(#20051,79,#20049,-1,"g") +hasLocation(#20051,#20025) +enclosing_stmt(#20051,#20045) +expr_containers(#20051,#20038) +literals("g","g",#20051) +#20052=@"var;{g};{#20000}" +variables(#20052,"g",#20000) +bind(#20051,#20052) +is_delegating(#20047) #20053=* -exit_cfg_node(#20053,#20001) -hasLocation(#20053,#20034) -successor(#20037,#20053) -#20054=* -entry_cfg_node(#20054,#20037) -hasLocation(#20054,#20052) +entry_cfg_node(#20053,#20001) +#20054=@"loc,{#10000},1,1,1,0" +locations_default(#20054,#10000,1,1,1,0) +hasLocation(#20053,#20054) #20055=* -exit_cfg_node(#20055,#20037) +exit_cfg_node(#20055,#20001) hasLocation(#20055,#20034) -successor(#20043,#20049) +successor(#20038,#20055) +#20056=* +entry_cfg_node(#20056,#20038) +hasLocation(#20056,#20054) +#20057=* +exit_cfg_node(#20057,#20038) +hasLocation(#20057,#20034) +successor(#20045,#20051) +successor(#20051,#20049) successor(#20049,#20047) -successor(#20047,#20045) -successor(#20045,#20055) -successor(#20041,#20043) -successor(#20054,#20041) -successor(#20038,#20037) -successor(#20051,#20038) +successor(#20047,#20057) +successor(#20043,#20045) +successor(#20056,#20043) +successor(#20039,#20038) +successor(#20053,#20039) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/destructuring.js.trap b/javascript/extractor/tests/es2015/output/trap/destructuring.js.trap index 4677b4ce45b9..493240593e89 100644 --- a/javascript/extractor/tests/es2015/output/trap/destructuring.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/destructuring.js.trap @@ -469,415 +469,421 @@ hasLocation(#20001,#20174) variables(#20175,"f",#20000) #20176=@"var;{g};{#20000}" variables(#20176,"g",#20000) -#20177=* -stmts(#20177,17,#20001,0,"functio ... );\n\t}\n}") -#20178=@"loc,{#10000},1,1,8,1" -locations_default(#20178,#10000,1,1,8,1) -hasLocation(#20177,#20178) -stmt_containers(#20177,#20001) -#20179=* -exprs(#20179,78,#20177,-1,"f") -hasLocation(#20179,#20031) -expr_containers(#20179,#20177) -literals("f","f",#20179) -decl(#20179,#20175) +#20177=@"var;{this};{#20000}" +variables(#20177,"this",#20000) +#20178=* +stmts(#20178,17,#20001,0,"functio ... );\n\t}\n}") +#20179=@"loc,{#10000},1,1,8,1" +locations_default(#20179,#10000,1,1,8,1) +hasLocation(#20178,#20179) +stmt_containers(#20178,#20001) #20180=* -scopes(#20180,1) -scopenodes(#20177,#20180) -scopenesting(#20180,#20000) -#20181=@"var;{a};{#20180}" -variables(#20181,"a",#20180) -#20182=@"var;{c};{#20180}" -variables(#20182,"c",#20180) -#20183=@"var;{x};{#20180}" -variables(#20183,"x",#20180) -#20184=@"var;{y};{#20180}" -variables(#20184,"y",#20180) -#20185=* -exprs(#20185,67,#20177,0,"[x, y]") -#20186=@"loc,{#10000},1,12,1,17" -locations_default(#20186,#10000,1,12,1,17) -hasLocation(#20185,#20186) -expr_containers(#20185,#20177) +exprs(#20180,78,#20178,-1,"f") +hasLocation(#20180,#20031) +expr_containers(#20180,#20178) +literals("f","f",#20180) +decl(#20180,#20175) +#20181=* +scopes(#20181,1) +scopenodes(#20178,#20181) +scopenesting(#20181,#20000) +#20182=@"var;{a};{#20181}" +variables(#20182,"a",#20181) +#20183=@"var;{c};{#20181}" +variables(#20183,"c",#20181) +#20184=@"var;{this};{#20181}" +variables(#20184,"this",#20181) +#20185=@"var;{x};{#20181}" +variables(#20185,"x",#20181) +#20186=@"var;{y};{#20181}" +variables(#20186,"y",#20181) #20187=* -exprs(#20187,78,#20185,0,"x") -hasLocation(#20187,#20037) -expr_containers(#20187,#20177) -literals("x","x",#20187) -decl(#20187,#20183) -#20188=* -exprs(#20188,78,#20185,1,"y") -hasLocation(#20188,#20041) -expr_containers(#20188,#20177) -literals("y","y",#20188) -decl(#20188,#20184) -array_size(#20185,2) -#20189=@"var;{arguments};{#20180}" -variables(#20189,"arguments",#20180) -is_arguments_object(#20189) +exprs(#20187,67,#20178,0,"[x, y]") +#20188=@"loc,{#10000},1,12,1,17" +locations_default(#20188,#10000,1,12,1,17) +hasLocation(#20187,#20188) +expr_containers(#20187,#20178) +#20189=* +exprs(#20189,78,#20187,0,"x") +hasLocation(#20189,#20037) +expr_containers(#20189,#20178) +literals("x","x",#20189) +decl(#20189,#20185) #20190=* -stmts(#20190,1,#20177,-2,"{\n\tvar ... );\n\t}\n}") -#20191=@"loc,{#10000},1,20,8,1" -locations_default(#20191,#10000,1,20,8,1) -hasLocation(#20190,#20191) -stmt_containers(#20190,#20177) +exprs(#20190,78,#20187,1,"y") +hasLocation(#20190,#20041) +expr_containers(#20190,#20178) +literals("y","y",#20190) +decl(#20190,#20186) +array_size(#20187,2) +#20191=@"var;{arguments};{#20181}" +variables(#20191,"arguments",#20181) +is_arguments_object(#20191) #20192=* -stmts(#20192,18,#20190,0,"var [a, [, c]] = x;") -#20193=@"loc,{#10000},2,2,2,20" -locations_default(#20193,#10000,2,2,2,20) +stmts(#20192,1,#20178,-2,"{\n\tvar ... );\n\t}\n}") +#20193=@"loc,{#10000},1,20,8,1" +locations_default(#20193,#10000,1,20,8,1) hasLocation(#20192,#20193) -stmt_containers(#20192,#20177) +stmt_containers(#20192,#20178) #20194=* -exprs(#20194,64,#20192,0,"[a, [, c]] = x") -#20195=@"loc,{#10000},2,6,2,19" -locations_default(#20195,#10000,2,6,2,19) +stmts(#20194,18,#20192,0,"var [a, [, c]] = x;") +#20195=@"loc,{#10000},2,2,2,20" +locations_default(#20195,#10000,2,2,2,20) hasLocation(#20194,#20195) -enclosing_stmt(#20194,#20192) -expr_containers(#20194,#20177) +stmt_containers(#20194,#20178) #20196=* -exprs(#20196,67,#20194,0,"[a, [, c]]") -#20197=@"loc,{#10000},2,6,2,15" -locations_default(#20197,#10000,2,6,2,15) +exprs(#20196,64,#20194,0,"[a, [, c]] = x") +#20197=@"loc,{#10000},2,6,2,19" +locations_default(#20197,#10000,2,6,2,19) hasLocation(#20196,#20197) -enclosing_stmt(#20196,#20192) -expr_containers(#20196,#20177) +enclosing_stmt(#20196,#20194) +expr_containers(#20196,#20178) #20198=* -exprs(#20198,78,#20196,0,"a") -hasLocation(#20198,#20053) -enclosing_stmt(#20198,#20192) -expr_containers(#20198,#20177) -literals("a","a",#20198) -decl(#20198,#20181) -#20199=* -exprs(#20199,67,#20196,1,"[, c]") -#20200=@"loc,{#10000},2,10,2,14" -locations_default(#20200,#10000,2,10,2,14) -hasLocation(#20199,#20200) -enclosing_stmt(#20199,#20192) -expr_containers(#20199,#20177) +exprs(#20198,67,#20196,0,"[a, [, c]]") +#20199=@"loc,{#10000},2,6,2,15" +locations_default(#20199,#10000,2,6,2,15) +hasLocation(#20198,#20199) +enclosing_stmt(#20198,#20194) +expr_containers(#20198,#20178) +#20200=* +exprs(#20200,78,#20198,0,"a") +hasLocation(#20200,#20053) +enclosing_stmt(#20200,#20194) +expr_containers(#20200,#20178) +literals("a","a",#20200) +decl(#20200,#20182) #20201=* -exprs(#20201,78,#20199,1,"c") -hasLocation(#20201,#20061) -enclosing_stmt(#20201,#20192) -expr_containers(#20201,#20177) -literals("c","c",#20201) -decl(#20201,#20182) -array_size(#20199,2) -array_size(#20196,2) -#20202=* -exprs(#20202,79,#20194,1,"x") -hasLocation(#20202,#20069) -enclosing_stmt(#20202,#20192) -expr_containers(#20202,#20177) -literals("x","x",#20202) -bind(#20202,#20183) +exprs(#20201,67,#20198,1,"[, c]") +#20202=@"loc,{#10000},2,10,2,14" +locations_default(#20202,#10000,2,10,2,14) +hasLocation(#20201,#20202) +enclosing_stmt(#20201,#20194) +expr_containers(#20201,#20178) #20203=* -stmts(#20203,11,#20190,1,"try {\n\t ... (d);\n\t}") -#20204=@"loc,{#10000},3,2,7,2" -locations_default(#20204,#10000,3,2,7,2) -hasLocation(#20203,#20204) -stmt_containers(#20203,#20177) +exprs(#20203,78,#20201,1,"c") +hasLocation(#20203,#20061) +enclosing_stmt(#20203,#20194) +expr_containers(#20203,#20178) +literals("c","c",#20203) +decl(#20203,#20183) +array_size(#20201,2) +array_size(#20198,2) +#20204=* +exprs(#20204,79,#20196,1,"x") +hasLocation(#20204,#20069) +enclosing_stmt(#20204,#20194) +expr_containers(#20204,#20178) +literals("x","x",#20204) +bind(#20204,#20185) #20205=* -stmts(#20205,1,#20203,0,"{\n\t\tthrow [a, c];\n\t}") -#20206=@"loc,{#10000},3,6,5,2" -locations_default(#20206,#10000,3,6,5,2) +stmts(#20205,11,#20192,1,"try {\n\t ... (d);\n\t}") +#20206=@"loc,{#10000},3,2,7,2" +locations_default(#20206,#10000,3,2,7,2) hasLocation(#20205,#20206) -stmt_containers(#20205,#20177) +stmt_containers(#20205,#20178) #20207=* -stmts(#20207,10,#20205,0,"throw [a, c];") -#20208=@"loc,{#10000},4,3,4,15" -locations_default(#20208,#10000,4,3,4,15) +stmts(#20207,1,#20205,0,"{\n\t\tthrow [a, c];\n\t}") +#20208=@"loc,{#10000},3,6,5,2" +locations_default(#20208,#10000,3,6,5,2) hasLocation(#20207,#20208) -stmt_containers(#20207,#20177) +stmt_containers(#20207,#20178) #20209=* -exprs(#20209,7,#20207,0,"[a, c]") -#20210=@"loc,{#10000},4,9,4,14" -locations_default(#20210,#10000,4,9,4,14) +stmts(#20209,10,#20207,0,"throw [a, c];") +#20210=@"loc,{#10000},4,3,4,15" +locations_default(#20210,#10000,4,3,4,15) hasLocation(#20209,#20210) -enclosing_stmt(#20209,#20207) -expr_containers(#20209,#20177) +stmt_containers(#20209,#20178) #20211=* -exprs(#20211,79,#20209,0,"a") -hasLocation(#20211,#20081) -enclosing_stmt(#20211,#20207) -expr_containers(#20211,#20177) -literals("a","a",#20211) -bind(#20211,#20181) -#20212=* -exprs(#20212,79,#20209,1,"c") -hasLocation(#20212,#20085) -enclosing_stmt(#20212,#20207) -expr_containers(#20212,#20177) -literals("c","c",#20212) -bind(#20212,#20182) -array_size(#20209,2) +exprs(#20211,7,#20209,0,"[a, c]") +#20212=@"loc,{#10000},4,9,4,14" +locations_default(#20212,#10000,4,9,4,14) +hasLocation(#20211,#20212) +enclosing_stmt(#20211,#20209) +expr_containers(#20211,#20178) #20213=* -stmts(#20213,20,#20203,1,"catch ( ... (d);\n\t}") -#20214=@"loc,{#10000},5,4,7,2" -locations_default(#20214,#10000,5,4,7,2) -hasLocation(#20213,#20214) -stmt_containers(#20213,#20177) +exprs(#20213,79,#20211,0,"a") +hasLocation(#20213,#20081) +enclosing_stmt(#20213,#20209) +expr_containers(#20213,#20178) +literals("a","a",#20213) +bind(#20213,#20182) +#20214=* +exprs(#20214,79,#20211,1,"c") +hasLocation(#20214,#20085) +enclosing_stmt(#20214,#20209) +expr_containers(#20214,#20178) +literals("c","c",#20214) +bind(#20214,#20183) +array_size(#20211,2) #20215=* -scopes(#20215,2) -scopenodes(#20213,#20215) -scopenesting(#20215,#20180) -#20216=@"var;{d};{#20215}" -variables(#20216,"d",#20215) +stmts(#20215,20,#20205,1,"catch ( ... (d);\n\t}") +#20216=@"loc,{#10000},5,4,7,2" +locations_default(#20216,#10000,5,4,7,2) +hasLocation(#20215,#20216) +stmt_containers(#20215,#20178) #20217=* -exprs(#20217,78,#20213,0,"d") -hasLocation(#20217,#20097) -enclosing_stmt(#20217,#20213) -expr_containers(#20217,#20177) -literals("d","d",#20217) -decl(#20217,#20216) -#20218=* -stmts(#20218,1,#20213,1,"{\n\t\tcon ... (d);\n\t}") -#20219=@"loc,{#10000},5,14,7,2" -locations_default(#20219,#10000,5,14,7,2) -hasLocation(#20218,#20219) -stmt_containers(#20218,#20177) +scopes(#20217,2) +scopenodes(#20215,#20217) +scopenesting(#20217,#20181) +#20218=@"var;{d};{#20217}" +variables(#20218,"d",#20217) +#20219=* +exprs(#20219,78,#20215,0,"d") +hasLocation(#20219,#20097) +enclosing_stmt(#20219,#20215) +expr_containers(#20219,#20178) +literals("d","d",#20219) +decl(#20219,#20218) #20220=* -stmts(#20220,2,#20218,0,"console.log(d);") -#20221=@"loc,{#10000},6,3,6,17" -locations_default(#20221,#10000,6,3,6,17) +stmts(#20220,1,#20215,1,"{\n\t\tcon ... (d);\n\t}") +#20221=@"loc,{#10000},5,14,7,2" +locations_default(#20221,#10000,5,14,7,2) hasLocation(#20220,#20221) -stmt_containers(#20220,#20177) +stmt_containers(#20220,#20178) #20222=* -exprs(#20222,13,#20220,0,"console.log(d)") -#20223=@"loc,{#10000},6,3,6,16" -locations_default(#20223,#10000,6,3,6,16) +stmts(#20222,2,#20220,0,"console.log(d);") +#20223=@"loc,{#10000},6,3,6,17" +locations_default(#20223,#10000,6,3,6,17) hasLocation(#20222,#20223) -enclosing_stmt(#20222,#20220) -expr_containers(#20222,#20177) +stmt_containers(#20222,#20178) #20224=* -exprs(#20224,14,#20222,-1,"console.log") -#20225=@"loc,{#10000},6,3,6,13" -locations_default(#20225,#10000,6,3,6,13) +exprs(#20224,13,#20222,0,"console.log(d)") +#20225=@"loc,{#10000},6,3,6,16" +locations_default(#20225,#10000,6,3,6,16) hasLocation(#20224,#20225) -enclosing_stmt(#20224,#20220) -expr_containers(#20224,#20177) +enclosing_stmt(#20224,#20222) +expr_containers(#20224,#20178) #20226=* -exprs(#20226,79,#20224,0,"console") -hasLocation(#20226,#20103) -enclosing_stmt(#20226,#20220) -expr_containers(#20226,#20177) -literals("console","console",#20226) -#20227=@"var;{console};{#20000}" -variables(#20227,"console",#20000) -bind(#20226,#20227) +exprs(#20226,14,#20224,-1,"console.log") +#20227=@"loc,{#10000},6,3,6,13" +locations_default(#20227,#10000,6,3,6,13) +hasLocation(#20226,#20227) +enclosing_stmt(#20226,#20222) +expr_containers(#20226,#20178) #20228=* -exprs(#20228,0,#20224,1,"log") -hasLocation(#20228,#20107) -enclosing_stmt(#20228,#20220) -expr_containers(#20228,#20177) -literals("log","log",#20228) -#20229=* -exprs(#20229,79,#20222,0,"d") -hasLocation(#20229,#20111) -enclosing_stmt(#20229,#20220) -expr_containers(#20229,#20177) -literals("d","d",#20229) -bind(#20229,#20216) +exprs(#20228,79,#20226,0,"console") +hasLocation(#20228,#20103) +enclosing_stmt(#20228,#20222) +expr_containers(#20228,#20178) +literals("console","console",#20228) +#20229=@"var;{console};{#20000}" +variables(#20229,"console",#20000) +bind(#20228,#20229) #20230=* -stmts(#20230,17,#20001,1,"functio ... rn w;\n}") -#20231=@"loc,{#10000},10,1,13,1" -locations_default(#20231,#10000,10,1,13,1) -hasLocation(#20230,#20231) -stmt_containers(#20230,#20001) +exprs(#20230,0,#20226,1,"log") +hasLocation(#20230,#20107) +enclosing_stmt(#20230,#20222) +expr_containers(#20230,#20178) +literals("log","log",#20230) +#20231=* +exprs(#20231,79,#20224,0,"d") +hasLocation(#20231,#20111) +enclosing_stmt(#20231,#20222) +expr_containers(#20231,#20178) +literals("d","d",#20231) +bind(#20231,#20218) #20232=* -exprs(#20232,78,#20230,-1,"g") -hasLocation(#20232,#20122) -expr_containers(#20232,#20230) -literals("g","g",#20232) -decl(#20232,#20176) -#20233=* -scopes(#20233,1) -scopenodes(#20230,#20233) -scopenesting(#20233,#20000) -#20234=@"var;{w};{#20233}" -variables(#20234,"w",#20233) -#20235=@"var;{x};{#20233}" -variables(#20235,"x",#20233) -#20236=@"var;{z};{#20233}" -variables(#20236,"z",#20233) -#20237=* -exprs(#20237,68,#20230,0,"{ x, y: z }") -#20238=@"loc,{#10000},10,12,10,22" -locations_default(#20238,#10000,10,12,10,22) -hasLocation(#20237,#20238) -expr_containers(#20237,#20230) -#20239=* -properties(#20239,#20237,0,0,"x") -hasLocation(#20239,#20128) +stmts(#20232,17,#20001,1,"functio ... rn w;\n}") +#20233=@"loc,{#10000},10,1,13,1" +locations_default(#20233,#10000,10,1,13,1) +hasLocation(#20232,#20233) +stmt_containers(#20232,#20001) +#20234=* +exprs(#20234,78,#20232,-1,"g") +hasLocation(#20234,#20122) +expr_containers(#20234,#20232) +literals("g","g",#20234) +decl(#20234,#20176) +#20235=* +scopes(#20235,1) +scopenodes(#20232,#20235) +scopenesting(#20235,#20000) +#20236=@"var;{w};{#20235}" +variables(#20236,"w",#20235) +#20237=@"var;{this};{#20235}" +variables(#20237,"this",#20235) +#20238=@"var;{x};{#20235}" +variables(#20238,"x",#20235) +#20239=@"var;{z};{#20235}" +variables(#20239,"z",#20235) #20240=* -exprs(#20240,0,#20239,0,"x") -hasLocation(#20240,#20128) -expr_containers(#20240,#20230) -literals("x","x",#20240) -#20241=* -exprs(#20241,78,#20239,1,"x") -hasLocation(#20241,#20128) -expr_containers(#20241,#20230) -literals("x","x",#20241) -decl(#20241,#20235) +exprs(#20240,68,#20232,0,"{ x, y: z }") +#20241=@"loc,{#10000},10,12,10,22" +locations_default(#20241,#10000,10,12,10,22) +hasLocation(#20240,#20241) +expr_containers(#20240,#20232) #20242=* -properties(#20242,#20237,1,0,"y: z") -#20243=@"loc,{#10000},10,17,10,20" -locations_default(#20243,#10000,10,17,10,20) -hasLocation(#20242,#20243) +properties(#20242,#20240,0,0,"x") +hasLocation(#20242,#20128) +#20243=* +exprs(#20243,0,#20242,0,"x") +hasLocation(#20243,#20128) +expr_containers(#20243,#20232) +literals("x","x",#20243) #20244=* -exprs(#20244,0,#20242,0,"y") -hasLocation(#20244,#20132) -expr_containers(#20244,#20230) -literals("y","y",#20244) +exprs(#20244,78,#20242,1,"x") +hasLocation(#20244,#20128) +expr_containers(#20244,#20232) +literals("x","x",#20244) +decl(#20244,#20238) #20245=* -exprs(#20245,78,#20242,1,"z") -hasLocation(#20245,#20136) -expr_containers(#20245,#20230) -literals("z","z",#20245) -decl(#20245,#20236) -#20246=@"var;{arguments};{#20233}" -variables(#20246,"arguments",#20233) -is_arguments_object(#20246) +properties(#20245,#20240,1,0,"y: z") +#20246=@"loc,{#10000},10,17,10,20" +locations_default(#20246,#10000,10,17,10,20) +hasLocation(#20245,#20246) #20247=* -stmts(#20247,1,#20230,-2,"{\n\tvar ... rn w;\n}") -#20248=@"loc,{#10000},10,25,13,1" -locations_default(#20248,#10000,10,25,13,1) -hasLocation(#20247,#20248) -stmt_containers(#20247,#20230) -#20249=* -stmts(#20249,18,#20247,0,"var { [x]: w } = z;") -#20250=@"loc,{#10000},11,2,11,20" -locations_default(#20250,#10000,11,2,11,20) -hasLocation(#20249,#20250) -stmt_containers(#20249,#20230) -#20251=* -exprs(#20251,64,#20249,0,"{ [x]: w } = z") -#20252=@"loc,{#10000},11,6,11,19" -locations_default(#20252,#10000,11,6,11,19) -hasLocation(#20251,#20252) -enclosing_stmt(#20251,#20249) -expr_containers(#20251,#20230) -#20253=* -exprs(#20253,68,#20251,0,"{ [x]: w }") -#20254=@"loc,{#10000},11,6,11,15" -locations_default(#20254,#10000,11,6,11,15) -hasLocation(#20253,#20254) -enclosing_stmt(#20253,#20249) -expr_containers(#20253,#20230) -#20255=* -properties(#20255,#20253,0,0,"[x]: w") -#20256=@"loc,{#10000},11,8,11,13" -locations_default(#20256,#10000,11,8,11,13) -hasLocation(#20255,#20256) -#20257=* -exprs(#20257,79,#20255,0,"x") -hasLocation(#20257,#20150) -enclosing_stmt(#20257,#20249) -expr_containers(#20257,#20230) -literals("x","x",#20257) -bind(#20257,#20235) +exprs(#20247,0,#20245,0,"y") +hasLocation(#20247,#20132) +expr_containers(#20247,#20232) +literals("y","y",#20247) +#20248=* +exprs(#20248,78,#20245,1,"z") +hasLocation(#20248,#20136) +expr_containers(#20248,#20232) +literals("z","z",#20248) +decl(#20248,#20239) +#20249=@"var;{arguments};{#20235}" +variables(#20249,"arguments",#20235) +is_arguments_object(#20249) +#20250=* +stmts(#20250,1,#20232,-2,"{\n\tvar ... rn w;\n}") +#20251=@"loc,{#10000},10,25,13,1" +locations_default(#20251,#10000,10,25,13,1) +hasLocation(#20250,#20251) +stmt_containers(#20250,#20232) +#20252=* +stmts(#20252,18,#20250,0,"var { [x]: w } = z;") +#20253=@"loc,{#10000},11,2,11,20" +locations_default(#20253,#10000,11,2,11,20) +hasLocation(#20252,#20253) +stmt_containers(#20252,#20232) +#20254=* +exprs(#20254,64,#20252,0,"{ [x]: w } = z") +#20255=@"loc,{#10000},11,6,11,19" +locations_default(#20255,#10000,11,6,11,19) +hasLocation(#20254,#20255) +enclosing_stmt(#20254,#20252) +expr_containers(#20254,#20232) +#20256=* +exprs(#20256,68,#20254,0,"{ [x]: w }") +#20257=@"loc,{#10000},11,6,11,15" +locations_default(#20257,#10000,11,6,11,15) +hasLocation(#20256,#20257) +enclosing_stmt(#20256,#20252) +expr_containers(#20256,#20232) #20258=* -exprs(#20258,78,#20255,1,"w") -hasLocation(#20258,#20156) -enclosing_stmt(#20258,#20249) -expr_containers(#20258,#20230) -literals("w","w",#20258) -decl(#20258,#20234) -is_computed(#20255) -#20259=* -exprs(#20259,79,#20251,1,"z") -hasLocation(#20259,#20162) -enclosing_stmt(#20259,#20249) -expr_containers(#20259,#20230) -literals("z","z",#20259) -bind(#20259,#20236) +properties(#20258,#20256,0,0,"[x]: w") +#20259=@"loc,{#10000},11,8,11,13" +locations_default(#20259,#10000,11,8,11,13) +hasLocation(#20258,#20259) #20260=* -stmts(#20260,9,#20247,1,"return w;") -#20261=@"loc,{#10000},12,2,12,10" -locations_default(#20261,#10000,12,2,12,10) -hasLocation(#20260,#20261) -stmt_containers(#20260,#20230) +exprs(#20260,79,#20258,0,"x") +hasLocation(#20260,#20150) +enclosing_stmt(#20260,#20252) +expr_containers(#20260,#20232) +literals("x","x",#20260) +bind(#20260,#20238) +#20261=* +exprs(#20261,78,#20258,1,"w") +hasLocation(#20261,#20156) +enclosing_stmt(#20261,#20252) +expr_containers(#20261,#20232) +literals("w","w",#20261) +decl(#20261,#20236) +is_computed(#20258) #20262=* -exprs(#20262,79,#20260,0,"w") -hasLocation(#20262,#20168) -enclosing_stmt(#20262,#20260) -expr_containers(#20262,#20230) -literals("w","w",#20262) -bind(#20262,#20234) +exprs(#20262,79,#20254,1,"z") +hasLocation(#20262,#20162) +enclosing_stmt(#20262,#20252) +expr_containers(#20262,#20232) +literals("z","z",#20262) +bind(#20262,#20239) #20263=* -entry_cfg_node(#20263,#20001) -#20264=@"loc,{#10000},1,1,1,0" -locations_default(#20264,#10000,1,1,1,0) +stmts(#20263,9,#20250,1,"return w;") +#20264=@"loc,{#10000},12,2,12,10" +locations_default(#20264,#10000,12,2,12,10) hasLocation(#20263,#20264) +stmt_containers(#20263,#20232) #20265=* -exit_cfg_node(#20265,#20001) -hasLocation(#20265,#20173) -successor(#20230,#20265) +exprs(#20265,79,#20263,0,"w") +hasLocation(#20265,#20168) +enclosing_stmt(#20265,#20263) +expr_containers(#20265,#20232) +literals("w","w",#20265) +bind(#20265,#20236) #20266=* -entry_cfg_node(#20266,#20230) -#20267=@"loc,{#10000},10,1,10,0" -locations_default(#20267,#10000,10,1,10,0) +entry_cfg_node(#20266,#20001) +#20267=@"loc,{#10000},1,1,1,0" +locations_default(#20267,#10000,1,1,1,0) hasLocation(#20266,#20267) #20268=* -exit_cfg_node(#20268,#20230) +exit_cfg_node(#20268,#20001) hasLocation(#20268,#20173) -successor(#20262,#20260) -successor(#20260,#20268) -successor(#20249,#20259) -successor(#20253,#20257) -successor(#20258,#20255) -successor(#20257,#20258) -successor(#20255,#20251) -successor(#20259,#20253) -successor(#20251,#20262) -successor(#20247,#20249) -successor(#20237,#20240) -successor(#20245,#20242) -successor(#20244,#20245) -successor(#20242,#20247) -successor(#20241,#20239) -successor(#20240,#20241) -successor(#20239,#20244) -successor(#20266,#20237) -successor(#20177,#20230) +successor(#20232,#20268) #20269=* -entry_cfg_node(#20269,#20177) -hasLocation(#20269,#20264) -#20270=* -exit_cfg_node(#20270,#20177) -#20271=@"loc,{#10000},8,2,8,1" -locations_default(#20271,#10000,8,2,8,1) -hasLocation(#20270,#20271) -successor(#20203,#20205) -successor(#20209,#20211) -successor(#20212,#20207) -successor(#20211,#20212) -successor(#20207,#20213) -successor(#20205,#20209) -successor(#20213,#20217) -successor(#20220,#20226) -successor(#20229,#20222) -successor(#20228,#20224) -successor(#20226,#20228) -successor(#20224,#20229) -successor(#20222,#20270) -successor(#20218,#20220) -successor(#20217,#20218) -successor(#20192,#20202) -successor(#20196,#20198) -successor(#20199,#20201) -successor(#20201,#20194) -successor(#20198,#20199) -successor(#20202,#20196) -successor(#20194,#20203) +entry_cfg_node(#20269,#20232) +#20270=@"loc,{#10000},10,1,10,0" +locations_default(#20270,#10000,10,1,10,0) +hasLocation(#20269,#20270) +#20271=* +exit_cfg_node(#20271,#20232) +hasLocation(#20271,#20173) +successor(#20265,#20263) +successor(#20263,#20271) +successor(#20252,#20262) +successor(#20256,#20260) +successor(#20261,#20258) +successor(#20260,#20261) +successor(#20258,#20254) +successor(#20262,#20256) +successor(#20254,#20265) +successor(#20250,#20252) +successor(#20240,#20243) +successor(#20248,#20245) +successor(#20247,#20248) +successor(#20245,#20250) +successor(#20244,#20242) +successor(#20243,#20244) +successor(#20242,#20247) +successor(#20269,#20240) +successor(#20178,#20232) +#20272=* +entry_cfg_node(#20272,#20178) +hasLocation(#20272,#20267) +#20273=* +exit_cfg_node(#20273,#20178) +#20274=@"loc,{#10000},8,2,8,1" +locations_default(#20274,#10000,8,2,8,1) +hasLocation(#20273,#20274) +successor(#20205,#20207) +successor(#20211,#20213) +successor(#20214,#20209) +successor(#20213,#20214) +successor(#20209,#20215) +successor(#20207,#20211) +successor(#20215,#20219) +successor(#20222,#20228) +successor(#20231,#20224) +successor(#20230,#20226) +successor(#20228,#20230) +successor(#20226,#20231) +successor(#20224,#20273) +successor(#20220,#20222) +successor(#20219,#20220) +successor(#20194,#20204) +successor(#20198,#20200) +successor(#20201,#20203) +successor(#20203,#20196) +successor(#20200,#20201) +successor(#20204,#20198) +successor(#20196,#20205) +successor(#20192,#20194) +successor(#20187,#20189) successor(#20190,#20192) -successor(#20185,#20187) -successor(#20188,#20190) -successor(#20187,#20188) -successor(#20269,#20185) -successor(#20232,#20177) -successor(#20179,#20232) -successor(#20263,#20179) +successor(#20189,#20190) +successor(#20272,#20187) +successor(#20234,#20178) +successor(#20180,#20234) +successor(#20266,#20180) numlines(#10000,13,12,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export1.js.trap b/javascript/extractor/tests/es2015/output/trap/export1.js.trap index c1a7da9c4f40..fb5bd3bfe535 100644 --- a/javascript/extractor/tests/es2015/output/trap/export1.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export1.js.trap @@ -60,49 +60,51 @@ is_module(#20001) is_es2015_module(#20001) #20019=@"var;{x};{#20018}" variables(#20019,"x",#20018) -#20020=* -stmts(#20020,30,#20001,0,"export var x = 23;") -hasLocation(#20020,#20003) -stmt_containers(#20020,#20001) +#20020=@"var;{this};{#20018}" +variables(#20020,"this",#20018) #20021=* -stmts(#20021,18,#20020,-1,"var x = 23;") -#20022=@"loc,{#10000},1,8,1,18" -locations_default(#20022,#10000,1,8,1,18) -hasLocation(#20021,#20022) +stmts(#20021,30,#20001,0,"export var x = 23;") +hasLocation(#20021,#20003) stmt_containers(#20021,#20001) -#20023=* -exprs(#20023,64,#20021,0,"x = 23") -#20024=@"loc,{#10000},1,12,1,17" -locations_default(#20024,#10000,1,12,1,17) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20021) -expr_containers(#20023,#20001) -#20025=* -exprs(#20025,78,#20023,0,"x") -hasLocation(#20025,#20009) -enclosing_stmt(#20025,#20021) -expr_containers(#20025,#20001) -literals("x","x",#20025) -decl(#20025,#20019) +#20022=* +stmts(#20022,18,#20021,-1,"var x = 23;") +#20023=@"loc,{#10000},1,8,1,18" +locations_default(#20023,#10000,1,8,1,18) +hasLocation(#20022,#20023) +stmt_containers(#20022,#20001) +#20024=* +exprs(#20024,64,#20022,0,"x = 23") +#20025=@"loc,{#10000},1,12,1,17" +locations_default(#20025,#10000,1,12,1,17) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20022) +expr_containers(#20024,#20001) #20026=* -exprs(#20026,3,#20023,1,"23") -hasLocation(#20026,#20013) -enclosing_stmt(#20026,#20021) +exprs(#20026,78,#20024,0,"x") +hasLocation(#20026,#20009) +enclosing_stmt(#20026,#20022) expr_containers(#20026,#20001) -literals("23","23",#20026) +literals("x","x",#20026) +decl(#20026,#20019) #20027=* -entry_cfg_node(#20027,#20001) -#20028=@"loc,{#10000},1,1,1,0" -locations_default(#20028,#10000,1,1,1,0) -hasLocation(#20027,#20028) -#20029=* -exit_cfg_node(#20029,#20001) -hasLocation(#20029,#20017) -successor(#20020,#20021) -successor(#20021,#20025) -successor(#20026,#20023) -successor(#20025,#20026) -successor(#20023,#20029) -successor(#20027,#20020) +exprs(#20027,3,#20024,1,"23") +hasLocation(#20027,#20013) +enclosing_stmt(#20027,#20022) +expr_containers(#20027,#20001) +literals("23","23",#20027) +#20028=* +entry_cfg_node(#20028,#20001) +#20029=@"loc,{#10000},1,1,1,0" +locations_default(#20029,#10000,1,1,1,0) +hasLocation(#20028,#20029) +#20030=* +exit_cfg_node(#20030,#20001) +hasLocation(#20030,#20017) +successor(#20021,#20022) +successor(#20022,#20026) +successor(#20027,#20024) +successor(#20026,#20027) +successor(#20024,#20030) +successor(#20028,#20021) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export10.js.trap b/javascript/extractor/tests/es2015/output/trap/export10.js.trap index 518cb55c45c3..bacab841be43 100644 --- a/javascript/extractor/tests/es2015/output/trap/export10.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export10.js.trap @@ -88,74 +88,78 @@ is_module(#20001) is_es2015_module(#20001) #20030=@"var;{f};{#20029}" variables(#20030,"f",#20029) -#20031=* -stmts(#20031,29,#20001,0,"export ... f () {}") -#20032=@"loc,{#10000},1,1,1,31" -locations_default(#20032,#10000,1,1,1,31) -hasLocation(#20031,#20032) -stmt_containers(#20031,#20001) -#20033=* -stmts(#20033,17,#20031,0,"function f () {}") -#20034=@"loc,{#10000},1,16,1,31" -locations_default(#20034,#10000,1,16,1,31) -hasLocation(#20033,#20034) -stmt_containers(#20033,#20001) -#20035=* -exprs(#20035,78,#20033,-1,"f") -hasLocation(#20035,#20011) -expr_containers(#20035,#20033) -literals("f","f",#20035) -decl(#20035,#20030) +#20031=@"var;{this};{#20029}" +variables(#20031,"this",#20029) +#20032=* +stmts(#20032,29,#20001,0,"export ... f () {}") +#20033=@"loc,{#10000},1,1,1,31" +locations_default(#20033,#10000,1,1,1,31) +hasLocation(#20032,#20033) +stmt_containers(#20032,#20001) +#20034=* +stmts(#20034,17,#20032,0,"function f () {}") +#20035=@"loc,{#10000},1,16,1,31" +locations_default(#20035,#10000,1,16,1,31) +hasLocation(#20034,#20035) +stmt_containers(#20034,#20001) #20036=* -scopes(#20036,1) -scopenodes(#20033,#20036) -scopenesting(#20036,#20029) -#20037=@"var;{arguments};{#20036}" -variables(#20037,"arguments",#20036) -is_arguments_object(#20037) -#20038=* -stmts(#20038,1,#20033,-2,"{}") -#20039=@"loc,{#10000},1,30,1,31" -locations_default(#20039,#10000,1,30,1,31) -hasLocation(#20038,#20039) -stmt_containers(#20038,#20033) +exprs(#20036,78,#20034,-1,"f") +hasLocation(#20036,#20011) +expr_containers(#20036,#20034) +literals("f","f",#20036) +decl(#20036,#20030) +#20037=* +scopes(#20037,1) +scopenodes(#20034,#20037) +scopenesting(#20037,#20029) +#20038=@"var;{this};{#20037}" +variables(#20038,"this",#20037) +#20039=@"var;{arguments};{#20037}" +variables(#20039,"arguments",#20037) +is_arguments_object(#20039) #20040=* -stmts(#20040,2,#20001,1,"[,]") -#20041=@"loc,{#10000},1,33,1,35" -locations_default(#20041,#10000,1,33,1,35) +stmts(#20040,1,#20034,-2,"{}") +#20041=@"loc,{#10000},1,30,1,31" +locations_default(#20041,#10000,1,30,1,31) hasLocation(#20040,#20041) -stmt_containers(#20040,#20001) +stmt_containers(#20040,#20034) #20042=* -exprs(#20042,7,#20040,0,"[,]") -hasLocation(#20042,#20041) -enclosing_stmt(#20042,#20040) -expr_containers(#20042,#20001) -array_size(#20042,1) -#20043=* -entry_cfg_node(#20043,#20001) -#20044=@"loc,{#10000},1,1,1,0" -locations_default(#20044,#10000,1,1,1,0) -hasLocation(#20043,#20044) +stmts(#20042,2,#20001,1,"[,]") +#20043=@"loc,{#10000},1,33,1,35" +locations_default(#20043,#10000,1,33,1,35) +hasLocation(#20042,#20043) +stmt_containers(#20042,#20001) +#20044=* +exprs(#20044,7,#20042,0,"[,]") +hasLocation(#20044,#20043) +enclosing_stmt(#20044,#20042) +expr_containers(#20044,#20001) +array_size(#20044,1) #20045=* -exit_cfg_node(#20045,#20001) -hasLocation(#20045,#20027) -successor(#20040,#20042) -successor(#20042,#20045) -successor(#20031,#20033) -successor(#20033,#20040) -#20046=* -entry_cfg_node(#20046,#20033) -#20047=@"loc,{#10000},1,16,1,15" -locations_default(#20047,#10000,1,16,1,15) -hasLocation(#20046,#20047) +entry_cfg_node(#20045,#20001) +#20046=@"loc,{#10000},1,1,1,0" +locations_default(#20046,#10000,1,1,1,0) +hasLocation(#20045,#20046) +#20047=* +exit_cfg_node(#20047,#20001) +hasLocation(#20047,#20027) +successor(#20042,#20044) +successor(#20044,#20047) +successor(#20032,#20034) +successor(#20034,#20042) #20048=* -exit_cfg_node(#20048,#20033) -#20049=@"loc,{#10000},1,32,1,31" -locations_default(#20049,#10000,1,32,1,31) +entry_cfg_node(#20048,#20034) +#20049=@"loc,{#10000},1,16,1,15" +locations_default(#20049,#10000,1,16,1,15) hasLocation(#20048,#20049) -successor(#20038,#20048) -successor(#20046,#20038) -successor(#20035,#20031) -successor(#20043,#20035) +#20050=* +exit_cfg_node(#20050,#20034) +#20051=@"loc,{#10000},1,32,1,31" +locations_default(#20051,#10000,1,32,1,31) +hasLocation(#20050,#20051) +successor(#20040,#20050) +successor(#20048,#20040) +successor(#20036,#20032) +successor(#20045,#20036) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export11.js.trap b/javascript/extractor/tests/es2015/output/trap/export11.js.trap index 57c45f044a1d..32484bb7344a 100644 --- a/javascript/extractor/tests/es2015/output/trap/export11.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export11.js.trap @@ -56,66 +56,76 @@ scopenodes(#20001,#20017) scopenesting(#20017,#20000) is_module(#20001) is_es2015_module(#20001) -#20018=* -stmts(#20018,29,#20001,0,"export ... lass {}") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20017}" +variables(#20018,"this",#20017) #20019=* -exprs(#20019,80,#20018,0,"class {}") -#20020=@"loc,{#10000},1,16,1,23" -locations_default(#20020,#10000,1,16,1,23) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) -#20021=* -properties(#20021,#20019,2,0,"constructor() {}") -#20022=@"loc,{#10000},1,22,1,21" -locations_default(#20022,#10000,1,22,1,21) -hasLocation(#20021,#20022) -#20023=* -exprs(#20023,0,#20021,0,"constructor") -hasLocation(#20023,#20022) -enclosing_stmt(#20023,#20018) -expr_containers(#20023,#20001) -literals("constructor","constructor",#20023) +stmts(#20019,29,#20001,0,"export ... lass {}") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) +#20020=* +exprs(#20020,80,#20019,0,"class {}") +#20021=@"loc,{#10000},1,16,1,23" +locations_default(#20021,#10000,1,16,1,23) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20001) +#20022=* +scopes(#20022,8) +scopenodes(#20020,#20022) +scopenesting(#20022,#20017) +#20023=@"var;{this};{#20022}" +variables(#20023,"this",#20022) #20024=* -exprs(#20024,9,#20021,1,"() {}") -hasLocation(#20024,#20022) -enclosing_stmt(#20024,#20018) -expr_containers(#20024,#20001) -#20025=* -scopes(#20025,1) -scopenodes(#20024,#20025) -scopenesting(#20025,#20017) -#20026=@"var;{arguments};{#20025}" -variables(#20026,"arguments",#20025) -is_arguments_object(#20026) +properties(#20024,#20020,2,0,"constructor() {}") +#20025=@"loc,{#10000},1,22,1,21" +locations_default(#20025,#10000,1,22,1,21) +hasLocation(#20024,#20025) +#20026=* +exprs(#20026,0,#20024,0,"constructor") +hasLocation(#20026,#20025) +enclosing_stmt(#20026,#20019) +expr_containers(#20026,#20001) +literals("constructor","constructor",#20026) #20027=* -stmts(#20027,1,#20024,-2,"{}") -hasLocation(#20027,#20022) -stmt_containers(#20027,#20024) -is_method(#20021) +exprs(#20027,9,#20024,1,"() {}") +hasLocation(#20027,#20025) +enclosing_stmt(#20027,#20019) +expr_containers(#20027,#20001) #20028=* -entry_cfg_node(#20028,#20001) -#20029=@"loc,{#10000},1,1,1,0" -locations_default(#20029,#10000,1,1,1,0) -hasLocation(#20028,#20029) -#20030=* -exit_cfg_node(#20030,#20001) -hasLocation(#20030,#20015) -successor(#20018,#20023) -successor(#20024,#20021) +scopes(#20028,1) +scopenodes(#20027,#20028) +scopenesting(#20028,#20022) +#20029=@"var;{this};{#20028}" +variables(#20029,"this",#20028) +#20030=@"var;{arguments};{#20028}" +variables(#20030,"arguments",#20028) +is_arguments_object(#20030) #20031=* -entry_cfg_node(#20031,#20024) -hasLocation(#20031,#20022) +stmts(#20031,1,#20027,-2,"{}") +hasLocation(#20031,#20025) +stmt_containers(#20031,#20027) +is_method(#20024) #20032=* -exit_cfg_node(#20032,#20024) -hasLocation(#20032,#20022) -successor(#20027,#20032) -successor(#20031,#20027) -successor(#20023,#20024) -successor(#20021,#20019) -successor(#20019,#20030) -successor(#20028,#20018) +entry_cfg_node(#20032,#20001) +#20033=@"loc,{#10000},1,1,1,0" +locations_default(#20033,#10000,1,1,1,0) +hasLocation(#20032,#20033) +#20034=* +exit_cfg_node(#20034,#20001) +hasLocation(#20034,#20015) +successor(#20019,#20026) +successor(#20027,#20024) +#20035=* +entry_cfg_node(#20035,#20027) +hasLocation(#20035,#20025) +#20036=* +exit_cfg_node(#20036,#20027) +hasLocation(#20036,#20025) +successor(#20031,#20036) +successor(#20035,#20031) +successor(#20026,#20027) +successor(#20024,#20020) +successor(#20020,#20034) +successor(#20032,#20019) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export2.js.trap b/javascript/extractor/tests/es2015/output/trap/export2.js.trap index 27a07ed5c9ef..215e7539e6c9 100644 --- a/javascript/extractor/tests/es2015/output/trap/export2.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export2.js.trap @@ -70,65 +70,69 @@ is_module(#20001) is_es2015_module(#20001) #20023=@"var;{f};{#20022}" variables(#20023,"f",#20022) -#20024=* -stmts(#20024,30,#20001,0,"export ... f() {}") -#20025=@"loc,{#10000},1,1,1,22" -locations_default(#20025,#10000,1,1,1,22) -hasLocation(#20024,#20025) -stmt_containers(#20024,#20001) -#20026=* -stmts(#20026,17,#20024,-1,"function f() {}") -#20027=@"loc,{#10000},1,8,1,22" -locations_default(#20027,#10000,1,8,1,22) -hasLocation(#20026,#20027) -stmt_containers(#20026,#20001) -#20028=* -exprs(#20028,78,#20026,-1,"f") -hasLocation(#20028,#20009) -expr_containers(#20028,#20026) -literals("f","f",#20028) -decl(#20028,#20023) +#20024=@"var;{this};{#20022}" +variables(#20024,"this",#20022) +#20025=* +stmts(#20025,30,#20001,0,"export ... f() {}") +#20026=@"loc,{#10000},1,1,1,22" +locations_default(#20026,#10000,1,1,1,22) +hasLocation(#20025,#20026) +stmt_containers(#20025,#20001) +#20027=* +stmts(#20027,17,#20025,-1,"function f() {}") +#20028=@"loc,{#10000},1,8,1,22" +locations_default(#20028,#10000,1,8,1,22) +hasLocation(#20027,#20028) +stmt_containers(#20027,#20001) #20029=* -scopes(#20029,1) -scopenodes(#20026,#20029) -scopenesting(#20029,#20022) -#20030=@"var;{arguments};{#20029}" -variables(#20030,"arguments",#20029) -is_arguments_object(#20030) -#20031=* -stmts(#20031,1,#20026,-2,"{}") -#20032=@"loc,{#10000},1,21,1,22" -locations_default(#20032,#10000,1,21,1,22) -hasLocation(#20031,#20032) -stmt_containers(#20031,#20026) +exprs(#20029,78,#20027,-1,"f") +hasLocation(#20029,#20009) +expr_containers(#20029,#20027) +literals("f","f",#20029) +decl(#20029,#20023) +#20030=* +scopes(#20030,1) +scopenodes(#20027,#20030) +scopenesting(#20030,#20022) +#20031=@"var;{this};{#20030}" +variables(#20031,"this",#20030) +#20032=@"var;{arguments};{#20030}" +variables(#20032,"arguments",#20030) +is_arguments_object(#20032) #20033=* -stmts(#20033,0,#20001,1,";") -hasLocation(#20033,#20019) -stmt_containers(#20033,#20001) -#20034=* -entry_cfg_node(#20034,#20001) -#20035=@"loc,{#10000},1,1,1,0" -locations_default(#20035,#10000,1,1,1,0) -hasLocation(#20034,#20035) +stmts(#20033,1,#20027,-2,"{}") +#20034=@"loc,{#10000},1,21,1,22" +locations_default(#20034,#10000,1,21,1,22) +hasLocation(#20033,#20034) +stmt_containers(#20033,#20027) +#20035=* +stmts(#20035,0,#20001,1,";") +hasLocation(#20035,#20019) +stmt_containers(#20035,#20001) #20036=* -exit_cfg_node(#20036,#20001) -hasLocation(#20036,#20021) -successor(#20033,#20036) -successor(#20024,#20026) -successor(#20026,#20033) -#20037=* -entry_cfg_node(#20037,#20026) -#20038=@"loc,{#10000},1,8,1,7" -locations_default(#20038,#10000,1,8,1,7) -hasLocation(#20037,#20038) +entry_cfg_node(#20036,#20001) +#20037=@"loc,{#10000},1,1,1,0" +locations_default(#20037,#10000,1,1,1,0) +hasLocation(#20036,#20037) +#20038=* +exit_cfg_node(#20038,#20001) +hasLocation(#20038,#20021) +successor(#20035,#20038) +successor(#20025,#20027) +successor(#20027,#20035) #20039=* -exit_cfg_node(#20039,#20026) -#20040=@"loc,{#10000},1,23,1,22" -locations_default(#20040,#10000,1,23,1,22) +entry_cfg_node(#20039,#20027) +#20040=@"loc,{#10000},1,8,1,7" +locations_default(#20040,#10000,1,8,1,7) hasLocation(#20039,#20040) -successor(#20031,#20039) -successor(#20037,#20031) -successor(#20028,#20024) -successor(#20034,#20028) +#20041=* +exit_cfg_node(#20041,#20027) +#20042=@"loc,{#10000},1,23,1,22" +locations_default(#20042,#10000,1,23,1,22) +hasLocation(#20041,#20042) +successor(#20033,#20041) +successor(#20039,#20033) +successor(#20029,#20025) +successor(#20036,#20029) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export3.js.trap b/javascript/extractor/tests/es2015/output/trap/export3.js.trap index df259c34824d..5625d2815a4e 100644 --- a/javascript/extractor/tests/es2015/output/trap/export3.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export3.js.trap @@ -75,65 +75,69 @@ is_module(#20001) is_es2015_module(#20001) #20025=@"var;{f};{#20024}" variables(#20025,"f",#20024) -#20026=* -stmts(#20026,29,#20001,0,"export ... f() {}") -#20027=@"loc,{#10000},1,1,1,30" -locations_default(#20027,#10000,1,1,1,30) -hasLocation(#20026,#20027) -stmt_containers(#20026,#20001) -#20028=* -stmts(#20028,17,#20026,0,"function f() {}") -#20029=@"loc,{#10000},1,16,1,30" -locations_default(#20029,#10000,1,16,1,30) -hasLocation(#20028,#20029) -stmt_containers(#20028,#20001) -#20030=* -exprs(#20030,78,#20028,-1,"f") -hasLocation(#20030,#20011) -expr_containers(#20030,#20028) -literals("f","f",#20030) -decl(#20030,#20025) +#20026=@"var;{this};{#20024}" +variables(#20026,"this",#20024) +#20027=* +stmts(#20027,29,#20001,0,"export ... f() {}") +#20028=@"loc,{#10000},1,1,1,30" +locations_default(#20028,#10000,1,1,1,30) +hasLocation(#20027,#20028) +stmt_containers(#20027,#20001) +#20029=* +stmts(#20029,17,#20027,0,"function f() {}") +#20030=@"loc,{#10000},1,16,1,30" +locations_default(#20030,#10000,1,16,1,30) +hasLocation(#20029,#20030) +stmt_containers(#20029,#20001) #20031=* -scopes(#20031,1) -scopenodes(#20028,#20031) -scopenesting(#20031,#20024) -#20032=@"var;{arguments};{#20031}" -variables(#20032,"arguments",#20031) -is_arguments_object(#20032) -#20033=* -stmts(#20033,1,#20028,-2,"{}") -#20034=@"loc,{#10000},1,29,1,30" -locations_default(#20034,#10000,1,29,1,30) -hasLocation(#20033,#20034) -stmt_containers(#20033,#20028) +exprs(#20031,78,#20029,-1,"f") +hasLocation(#20031,#20011) +expr_containers(#20031,#20029) +literals("f","f",#20031) +decl(#20031,#20025) +#20032=* +scopes(#20032,1) +scopenodes(#20029,#20032) +scopenesting(#20032,#20024) +#20033=@"var;{this};{#20032}" +variables(#20033,"this",#20032) +#20034=@"var;{arguments};{#20032}" +variables(#20034,"arguments",#20032) +is_arguments_object(#20034) #20035=* -stmts(#20035,0,#20001,1,";") -hasLocation(#20035,#20021) -stmt_containers(#20035,#20001) -#20036=* -entry_cfg_node(#20036,#20001) -#20037=@"loc,{#10000},1,1,1,0" -locations_default(#20037,#10000,1,1,1,0) -hasLocation(#20036,#20037) +stmts(#20035,1,#20029,-2,"{}") +#20036=@"loc,{#10000},1,29,1,30" +locations_default(#20036,#10000,1,29,1,30) +hasLocation(#20035,#20036) +stmt_containers(#20035,#20029) +#20037=* +stmts(#20037,0,#20001,1,";") +hasLocation(#20037,#20021) +stmt_containers(#20037,#20001) #20038=* -exit_cfg_node(#20038,#20001) -hasLocation(#20038,#20023) -successor(#20035,#20038) -successor(#20026,#20028) -successor(#20028,#20035) -#20039=* -entry_cfg_node(#20039,#20028) -#20040=@"loc,{#10000},1,16,1,15" -locations_default(#20040,#10000,1,16,1,15) -hasLocation(#20039,#20040) +entry_cfg_node(#20038,#20001) +#20039=@"loc,{#10000},1,1,1,0" +locations_default(#20039,#10000,1,1,1,0) +hasLocation(#20038,#20039) +#20040=* +exit_cfg_node(#20040,#20001) +hasLocation(#20040,#20023) +successor(#20037,#20040) +successor(#20027,#20029) +successor(#20029,#20037) #20041=* -exit_cfg_node(#20041,#20028) -#20042=@"loc,{#10000},1,31,1,30" -locations_default(#20042,#10000,1,31,1,30) +entry_cfg_node(#20041,#20029) +#20042=@"loc,{#10000},1,16,1,15" +locations_default(#20042,#10000,1,16,1,15) hasLocation(#20041,#20042) -successor(#20033,#20041) -successor(#20039,#20033) -successor(#20030,#20026) -successor(#20036,#20030) +#20043=* +exit_cfg_node(#20043,#20029) +#20044=@"loc,{#10000},1,31,1,30" +locations_default(#20044,#10000,1,31,1,30) +hasLocation(#20043,#20044) +successor(#20035,#20043) +successor(#20041,#20035) +successor(#20031,#20027) +successor(#20038,#20031) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export4.js.trap b/javascript/extractor/tests/es2015/output/trap/export4.js.trap index 50a6952b59ec..dec70dcd8aec 100644 --- a/javascript/extractor/tests/es2015/output/trap/export4.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export4.js.trap @@ -68,59 +68,63 @@ scopenodes(#20001,#20022) scopenesting(#20022,#20000) is_module(#20001) is_es2015_module(#20001) -#20023=* -stmts(#20023,29,#20001,0,"export ... n () {}") -#20024=@"loc,{#10000},1,1,1,29" -locations_default(#20024,#10000,1,1,1,29) -hasLocation(#20023,#20024) -stmt_containers(#20023,#20001) -#20025=* -exprs(#20025,9,#20023,0,"function () {}") -#20026=@"loc,{#10000},1,16,1,29" -locations_default(#20026,#10000,1,16,1,29) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20023) -expr_containers(#20025,#20001) -#20027=* -scopes(#20027,1) -scopenodes(#20025,#20027) -scopenesting(#20027,#20022) -#20028=@"var;{arguments};{#20027}" -variables(#20028,"arguments",#20027) -is_arguments_object(#20028) -#20029=* -stmts(#20029,1,#20025,-2,"{}") -#20030=@"loc,{#10000},1,28,1,29" -locations_default(#20030,#10000,1,28,1,29) -hasLocation(#20029,#20030) -stmt_containers(#20029,#20025) +#20023=@"var;{this};{#20022}" +variables(#20023,"this",#20022) +#20024=* +stmts(#20024,29,#20001,0,"export ... n () {}") +#20025=@"loc,{#10000},1,1,1,29" +locations_default(#20025,#10000,1,1,1,29) +hasLocation(#20024,#20025) +stmt_containers(#20024,#20001) +#20026=* +exprs(#20026,9,#20024,0,"function () {}") +#20027=@"loc,{#10000},1,16,1,29" +locations_default(#20027,#10000,1,16,1,29) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20024) +expr_containers(#20026,#20001) +#20028=* +scopes(#20028,1) +scopenodes(#20026,#20028) +scopenesting(#20028,#20022) +#20029=@"var;{this};{#20028}" +variables(#20029,"this",#20028) +#20030=@"var;{arguments};{#20028}" +variables(#20030,"arguments",#20028) +is_arguments_object(#20030) #20031=* -stmts(#20031,0,#20001,1,";") -hasLocation(#20031,#20019) -stmt_containers(#20031,#20001) -#20032=* -entry_cfg_node(#20032,#20001) -#20033=@"loc,{#10000},1,1,1,0" -locations_default(#20033,#10000,1,1,1,0) -hasLocation(#20032,#20033) +stmts(#20031,1,#20026,-2,"{}") +#20032=@"loc,{#10000},1,28,1,29" +locations_default(#20032,#10000,1,28,1,29) +hasLocation(#20031,#20032) +stmt_containers(#20031,#20026) +#20033=* +stmts(#20033,0,#20001,1,";") +hasLocation(#20033,#20019) +stmt_containers(#20033,#20001) #20034=* -exit_cfg_node(#20034,#20001) -hasLocation(#20034,#20021) -successor(#20031,#20034) -successor(#20023,#20025) -successor(#20025,#20031) -#20035=* -entry_cfg_node(#20035,#20025) -#20036=@"loc,{#10000},1,16,1,15" -locations_default(#20036,#10000,1,16,1,15) -hasLocation(#20035,#20036) +entry_cfg_node(#20034,#20001) +#20035=@"loc,{#10000},1,1,1,0" +locations_default(#20035,#10000,1,1,1,0) +hasLocation(#20034,#20035) +#20036=* +exit_cfg_node(#20036,#20001) +hasLocation(#20036,#20021) +successor(#20033,#20036) +successor(#20024,#20026) +successor(#20026,#20033) #20037=* -exit_cfg_node(#20037,#20025) -#20038=@"loc,{#10000},1,30,1,29" -locations_default(#20038,#10000,1,30,1,29) +entry_cfg_node(#20037,#20026) +#20038=@"loc,{#10000},1,16,1,15" +locations_default(#20038,#10000,1,16,1,15) hasLocation(#20037,#20038) -successor(#20029,#20037) -successor(#20035,#20029) -successor(#20032,#20023) +#20039=* +exit_cfg_node(#20039,#20026) +#20040=@"loc,{#10000},1,30,1,29" +locations_default(#20040,#10000,1,30,1,29) +hasLocation(#20039,#20040) +successor(#20031,#20039) +successor(#20037,#20031) +successor(#20034,#20024) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export5.js.trap b/javascript/extractor/tests/es2015/output/trap/export5.js.trap index 861ea6d12c11..25ede7767a53 100644 --- a/javascript/extractor/tests/es2015/output/trap/export5.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export5.js.trap @@ -130,114 +130,116 @@ is_es2015_module(#20001) variables(#20046,"x",#20045) #20047=@"var;{y};{#20045}" variables(#20047,"y",#20045) -#20048=* -stmts(#20048,18,#20001,0,"var x = 23, y = 42;") -hasLocation(#20048,#20003) -stmt_containers(#20048,#20001) +#20048=@"var;{this};{#20045}" +variables(#20048,"this",#20045) #20049=* -exprs(#20049,64,#20048,0,"x = 23") -#20050=@"loc,{#10000},1,5,1,10" -locations_default(#20050,#10000,1,5,1,10) -hasLocation(#20049,#20050) -enclosing_stmt(#20049,#20048) -expr_containers(#20049,#20001) -#20051=* -exprs(#20051,78,#20049,0,"x") -hasLocation(#20051,#20009) -enclosing_stmt(#20051,#20048) -expr_containers(#20051,#20001) -literals("x","x",#20051) -decl(#20051,#20046) +stmts(#20049,18,#20001,0,"var x = 23, y = 42;") +hasLocation(#20049,#20003) +stmt_containers(#20049,#20001) +#20050=* +exprs(#20050,64,#20049,0,"x = 23") +#20051=@"loc,{#10000},1,5,1,10" +locations_default(#20051,#10000,1,5,1,10) +hasLocation(#20050,#20051) +enclosing_stmt(#20050,#20049) +expr_containers(#20050,#20001) #20052=* -exprs(#20052,3,#20049,1,"23") -hasLocation(#20052,#20013) -enclosing_stmt(#20052,#20048) +exprs(#20052,78,#20050,0,"x") +hasLocation(#20052,#20009) +enclosing_stmt(#20052,#20049) expr_containers(#20052,#20001) -literals("23","23",#20052) +literals("x","x",#20052) +decl(#20052,#20046) #20053=* -exprs(#20053,64,#20048,1,"y = 42") -#20054=@"loc,{#10000},1,13,1,18" -locations_default(#20054,#10000,1,13,1,18) -hasLocation(#20053,#20054) -enclosing_stmt(#20053,#20048) +exprs(#20053,3,#20050,1,"23") +hasLocation(#20053,#20013) +enclosing_stmt(#20053,#20049) expr_containers(#20053,#20001) -#20055=* -exprs(#20055,78,#20053,0,"y") -hasLocation(#20055,#20017) -enclosing_stmt(#20055,#20048) -expr_containers(#20055,#20001) -literals("y","y",#20055) -decl(#20055,#20047) +literals("23","23",#20053) +#20054=* +exprs(#20054,64,#20049,1,"y = 42") +#20055=@"loc,{#10000},1,13,1,18" +locations_default(#20055,#10000,1,13,1,18) +hasLocation(#20054,#20055) +enclosing_stmt(#20054,#20049) +expr_containers(#20054,#20001) #20056=* -exprs(#20056,3,#20053,1,"42") -hasLocation(#20056,#20021) -enclosing_stmt(#20056,#20048) +exprs(#20056,78,#20054,0,"y") +hasLocation(#20056,#20017) +enclosing_stmt(#20056,#20049) expr_containers(#20056,#20001) -literals("42","42",#20056) +literals("y","y",#20056) +decl(#20056,#20047) #20057=* -stmts(#20057,30,#20001,1,"export ... as z };") -hasLocation(#20057,#20005) -stmt_containers(#20057,#20001) +exprs(#20057,3,#20054,1,"42") +hasLocation(#20057,#20021) +enclosing_stmt(#20057,#20049) +expr_containers(#20057,#20001) +literals("42","42",#20057) #20058=* -exprs(#20058,86,#20057,0,"x") -hasLocation(#20058,#20029) -enclosing_stmt(#20058,#20057) -expr_containers(#20058,#20001) +stmts(#20058,30,#20001,1,"export ... as z };") +hasLocation(#20058,#20005) +stmt_containers(#20058,#20001) #20059=* -exprs(#20059,103,#20058,0,"x") +exprs(#20059,86,#20058,0,"x") hasLocation(#20059,#20029) -enclosing_stmt(#20059,#20057) +enclosing_stmt(#20059,#20058) expr_containers(#20059,#20001) -literals("x","x",#20059) -bind(#20059,#20046) #20060=* -exprs(#20060,0,#20058,1,"x") +exprs(#20060,103,#20059,0,"x") hasLocation(#20060,#20029) -enclosing_stmt(#20060,#20057) +enclosing_stmt(#20060,#20058) expr_containers(#20060,#20001) literals("x","x",#20060) +bind(#20060,#20046) #20061=* -exprs(#20061,86,#20057,1,"y as z") -#20062=@"loc,{#10000},2,13,2,18" -locations_default(#20062,#10000,2,13,2,18) -hasLocation(#20061,#20062) -enclosing_stmt(#20061,#20057) +exprs(#20061,0,#20059,1,"x") +hasLocation(#20061,#20029) +enclosing_stmt(#20061,#20058) expr_containers(#20061,#20001) -#20063=* -exprs(#20063,103,#20061,0,"y") -hasLocation(#20063,#20033) -enclosing_stmt(#20063,#20057) -expr_containers(#20063,#20001) -literals("y","y",#20063) -bind(#20063,#20047) +literals("x","x",#20061) +#20062=* +exprs(#20062,86,#20058,1,"y as z") +#20063=@"loc,{#10000},2,13,2,18" +locations_default(#20063,#10000,2,13,2,18) +hasLocation(#20062,#20063) +enclosing_stmt(#20062,#20058) +expr_containers(#20062,#20001) #20064=* -exprs(#20064,0,#20061,1,"z") -hasLocation(#20064,#20037) -enclosing_stmt(#20064,#20057) +exprs(#20064,103,#20062,0,"y") +hasLocation(#20064,#20033) +enclosing_stmt(#20064,#20058) expr_containers(#20064,#20001) -literals("z","z",#20064) +literals("y","y",#20064) +bind(#20064,#20047) #20065=* -entry_cfg_node(#20065,#20001) -#20066=@"loc,{#10000},1,1,1,0" -locations_default(#20066,#10000,1,1,1,0) -hasLocation(#20065,#20066) -#20067=* -exit_cfg_node(#20067,#20001) -hasLocation(#20067,#20043) -successor(#20057,#20058) -successor(#20061,#20063) -successor(#20064,#20067) -successor(#20063,#20064) +exprs(#20065,0,#20062,1,"z") +hasLocation(#20065,#20037) +enclosing_stmt(#20065,#20058) +expr_containers(#20065,#20001) +literals("z","z",#20065) +#20066=* +entry_cfg_node(#20066,#20001) +#20067=@"loc,{#10000},1,1,1,0" +locations_default(#20067,#10000,1,1,1,0) +hasLocation(#20066,#20067) +#20068=* +exit_cfg_node(#20068,#20001) +hasLocation(#20068,#20043) successor(#20058,#20059) -successor(#20060,#20061) +successor(#20062,#20064) +successor(#20065,#20068) +successor(#20064,#20065) successor(#20059,#20060) -successor(#20048,#20051) -successor(#20056,#20053) -successor(#20055,#20056) -successor(#20053,#20057) -successor(#20052,#20049) -successor(#20051,#20052) -successor(#20049,#20055) -successor(#20065,#20048) +successor(#20061,#20062) +successor(#20060,#20061) +successor(#20049,#20052) +successor(#20057,#20054) +successor(#20056,#20057) +successor(#20054,#20058) +successor(#20053,#20050) +successor(#20052,#20053) +successor(#20050,#20056) +successor(#20066,#20049) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export6.js.trap b/javascript/extractor/tests/es2015/output/trap/export6.js.trap index 58381bfa820f..8067f1536dcb 100644 --- a/javascript/extractor/tests/es2015/output/trap/export6.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export6.js.trap @@ -53,32 +53,34 @@ scopenodes(#20001,#20016) scopenesting(#20016,#20000) is_module(#20001) is_es2015_module(#20001) -#20017=* -stmts(#20017,28,#20001,0,"export * from 'foo';") -hasLocation(#20017,#20003) -stmt_containers(#20017,#20001) +#20017=@"var;{this};{#20016}" +variables(#20017,"this",#20016) #20018=* -exprs(#20018,4,#20017,0,"'foo'") -hasLocation(#20018,#20011) -enclosing_stmt(#20018,#20017) -expr_containers(#20018,#20001) -literals("foo","'foo'",#20018) +stmts(#20018,28,#20001,0,"export * from 'foo';") +hasLocation(#20018,#20003) +stmt_containers(#20018,#20001) #20019=* -regexpterm(#20019,14,#20018,0,"foo") -#20020=@"loc,{#10000},1,16,1,18" -locations_default(#20020,#10000,1,16,1,18) -hasLocation(#20019,#20020) -regexp_const_value(#20019,"foo") -#20021=* -entry_cfg_node(#20021,#20001) -#20022=@"loc,{#10000},1,1,1,0" -locations_default(#20022,#10000,1,1,1,0) -hasLocation(#20021,#20022) -#20023=* -exit_cfg_node(#20023,#20001) -hasLocation(#20023,#20015) -successor(#20017,#20018) -successor(#20018,#20023) -successor(#20021,#20017) +exprs(#20019,4,#20018,0,"'foo'") +hasLocation(#20019,#20011) +enclosing_stmt(#20019,#20018) +expr_containers(#20019,#20001) +literals("foo","'foo'",#20019) +#20020=* +regexpterm(#20020,14,#20019,0,"foo") +#20021=@"loc,{#10000},1,16,1,18" +locations_default(#20021,#10000,1,16,1,18) +hasLocation(#20020,#20021) +regexp_const_value(#20020,"foo") +#20022=* +entry_cfg_node(#20022,#20001) +#20023=@"loc,{#10000},1,1,1,0" +locations_default(#20023,#10000,1,1,1,0) +hasLocation(#20022,#20023) +#20024=* +exit_cfg_node(#20024,#20001) +hasLocation(#20024,#20015) +successor(#20018,#20019) +successor(#20019,#20024) +successor(#20022,#20018) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export7.js.trap b/javascript/extractor/tests/es2015/output/trap/export7.js.trap index 37370b5d502d..1750e4959353 100644 --- a/javascript/extractor/tests/es2015/output/trap/export7.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export7.js.trap @@ -83,74 +83,76 @@ scopenodes(#20001,#20028) scopenesting(#20028,#20000) is_module(#20001) is_es2015_module(#20001) -#20029=* -stmts(#20029,30,#20001,0,"export ... 'foo';") -hasLocation(#20029,#20003) -stmt_containers(#20029,#20001) +#20029=@"var;{this};{#20028}" +variables(#20029,"this",#20028) #20030=* -exprs(#20030,4,#20029,-2,"'foo'") -hasLocation(#20030,#20023) -enclosing_stmt(#20030,#20029) -expr_containers(#20030,#20001) -literals("foo","'foo'",#20030) +stmts(#20030,30,#20001,0,"export ... 'foo';") +hasLocation(#20030,#20003) +stmt_containers(#20030,#20001) #20031=* -regexpterm(#20031,14,#20030,0,"foo") -#20032=@"loc,{#10000},1,28,1,30" -locations_default(#20032,#10000,1,28,1,30) -hasLocation(#20031,#20032) -regexp_const_value(#20031,"foo") -#20033=* -exprs(#20033,86,#20029,0,"x") -hasLocation(#20033,#20009) -enclosing_stmt(#20033,#20029) -expr_containers(#20033,#20001) +exprs(#20031,4,#20030,-2,"'foo'") +hasLocation(#20031,#20023) +enclosing_stmt(#20031,#20030) +expr_containers(#20031,#20001) +literals("foo","'foo'",#20031) +#20032=* +regexpterm(#20032,14,#20031,0,"foo") +#20033=@"loc,{#10000},1,28,1,30" +locations_default(#20033,#10000,1,28,1,30) +hasLocation(#20032,#20033) +regexp_const_value(#20032,"foo") #20034=* -exprs(#20034,0,#20033,0,"x") +exprs(#20034,86,#20030,0,"x") hasLocation(#20034,#20009) -enclosing_stmt(#20034,#20029) +enclosing_stmt(#20034,#20030) expr_containers(#20034,#20001) -literals("x","x",#20034) #20035=* -exprs(#20035,0,#20033,1,"x") +exprs(#20035,0,#20034,0,"x") hasLocation(#20035,#20009) -enclosing_stmt(#20035,#20029) +enclosing_stmt(#20035,#20030) expr_containers(#20035,#20001) literals("x","x",#20035) #20036=* -exprs(#20036,86,#20029,1,"y as z") -#20037=@"loc,{#10000},1,13,1,18" -locations_default(#20037,#10000,1,13,1,18) -hasLocation(#20036,#20037) -enclosing_stmt(#20036,#20029) +exprs(#20036,0,#20034,1,"x") +hasLocation(#20036,#20009) +enclosing_stmt(#20036,#20030) expr_containers(#20036,#20001) -#20038=* -exprs(#20038,0,#20036,0,"y") -hasLocation(#20038,#20013) -enclosing_stmt(#20038,#20029) -expr_containers(#20038,#20001) -literals("y","y",#20038) +literals("x","x",#20036) +#20037=* +exprs(#20037,86,#20030,1,"y as z") +#20038=@"loc,{#10000},1,13,1,18" +locations_default(#20038,#10000,1,13,1,18) +hasLocation(#20037,#20038) +enclosing_stmt(#20037,#20030) +expr_containers(#20037,#20001) #20039=* -exprs(#20039,0,#20036,1,"z") -hasLocation(#20039,#20017) -enclosing_stmt(#20039,#20029) +exprs(#20039,0,#20037,0,"y") +hasLocation(#20039,#20013) +enclosing_stmt(#20039,#20030) expr_containers(#20039,#20001) -literals("z","z",#20039) +literals("y","y",#20039) #20040=* -entry_cfg_node(#20040,#20001) -#20041=@"loc,{#10000},1,1,1,0" -locations_default(#20041,#10000,1,1,1,0) -hasLocation(#20040,#20041) -#20042=* -exit_cfg_node(#20042,#20001) -hasLocation(#20042,#20027) -successor(#20029,#20030) -successor(#20036,#20038) -successor(#20039,#20042) -successor(#20038,#20039) -successor(#20033,#20034) -successor(#20035,#20036) +exprs(#20040,0,#20037,1,"z") +hasLocation(#20040,#20017) +enclosing_stmt(#20040,#20030) +expr_containers(#20040,#20001) +literals("z","z",#20040) +#20041=* +entry_cfg_node(#20041,#20001) +#20042=@"loc,{#10000},1,1,1,0" +locations_default(#20042,#10000,1,1,1,0) +hasLocation(#20041,#20042) +#20043=* +exit_cfg_node(#20043,#20001) +hasLocation(#20043,#20027) +successor(#20030,#20031) +successor(#20037,#20039) +successor(#20040,#20043) +successor(#20039,#20040) successor(#20034,#20035) -successor(#20030,#20033) -successor(#20040,#20029) +successor(#20036,#20037) +successor(#20035,#20036) +successor(#20031,#20034) +successor(#20041,#20030) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export8.js.trap b/javascript/extractor/tests/es2015/output/trap/export8.js.trap index d79edbb8826b..aac88cafa7f1 100644 --- a/javascript/extractor/tests/es2015/output/trap/export8.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export8.js.trap @@ -76,57 +76,59 @@ scopenodes(#20001,#20025) scopenesting(#20025,#20000) is_module(#20001) is_es2015_module(#20001) -#20026=* -stmts(#20026,2,#20001,0,"foo = 42;") -hasLocation(#20026,#20003) -stmt_containers(#20026,#20001) +#20026=@"var;{this};{#20025}" +variables(#20026,"this",#20025) #20027=* -exprs(#20027,47,#20026,0,"foo = 42") -#20028=@"loc,{#10000},1,1,1,8" -locations_default(#20028,#10000,1,1,1,8) -hasLocation(#20027,#20028) -enclosing_stmt(#20027,#20026) -expr_containers(#20027,#20001) -#20029=* -exprs(#20029,79,#20027,0,"foo") -hasLocation(#20029,#20007) -enclosing_stmt(#20029,#20026) -expr_containers(#20029,#20001) -literals("foo","foo",#20029) -#20030=@"var;{foo};{#20000}" -variables(#20030,"foo",#20000) -bind(#20029,#20030) -#20031=* -exprs(#20031,3,#20027,1,"42") -hasLocation(#20031,#20011) -enclosing_stmt(#20031,#20026) -expr_containers(#20031,#20001) -literals("42","42",#20031) +stmts(#20027,2,#20001,0,"foo = 42;") +hasLocation(#20027,#20003) +stmt_containers(#20027,#20001) +#20028=* +exprs(#20028,47,#20027,0,"foo = 42") +#20029=@"loc,{#10000},1,1,1,8" +locations_default(#20029,#10000,1,1,1,8) +hasLocation(#20028,#20029) +enclosing_stmt(#20028,#20027) +expr_containers(#20028,#20001) +#20030=* +exprs(#20030,79,#20028,0,"foo") +hasLocation(#20030,#20007) +enclosing_stmt(#20030,#20027) +expr_containers(#20030,#20001) +literals("foo","foo",#20030) +#20031=@"var;{foo};{#20000}" +variables(#20031,"foo",#20000) +bind(#20030,#20031) #20032=* -stmts(#20032,29,#20001,1,"export default foo;") -hasLocation(#20032,#20005) -stmt_containers(#20032,#20001) +exprs(#20032,3,#20028,1,"42") +hasLocation(#20032,#20011) +enclosing_stmt(#20032,#20027) +expr_containers(#20032,#20001) +literals("42","42",#20032) #20033=* -exprs(#20033,103,#20032,0,"foo") -hasLocation(#20033,#20019) -enclosing_stmt(#20033,#20032) -expr_containers(#20033,#20001) -literals("foo","foo",#20033) -bind(#20033,#20030) +stmts(#20033,29,#20001,1,"export default foo;") +hasLocation(#20033,#20005) +stmt_containers(#20033,#20001) #20034=* -entry_cfg_node(#20034,#20001) -#20035=@"loc,{#10000},1,1,1,0" -locations_default(#20035,#10000,1,1,1,0) -hasLocation(#20034,#20035) -#20036=* -exit_cfg_node(#20036,#20001) -hasLocation(#20036,#20023) -successor(#20032,#20033) -successor(#20033,#20036) -successor(#20026,#20029) -successor(#20031,#20027) -successor(#20029,#20031) -successor(#20027,#20032) -successor(#20034,#20026) +exprs(#20034,103,#20033,0,"foo") +hasLocation(#20034,#20019) +enclosing_stmt(#20034,#20033) +expr_containers(#20034,#20001) +literals("foo","foo",#20034) +bind(#20034,#20031) +#20035=* +entry_cfg_node(#20035,#20001) +#20036=@"loc,{#10000},1,1,1,0" +locations_default(#20036,#10000,1,1,1,0) +hasLocation(#20035,#20036) +#20037=* +exit_cfg_node(#20037,#20001) +hasLocation(#20037,#20023) +successor(#20033,#20034) +successor(#20034,#20037) +successor(#20027,#20030) +successor(#20032,#20028) +successor(#20030,#20032) +successor(#20028,#20033) +successor(#20035,#20027) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/export9.js.trap b/javascript/extractor/tests/es2015/output/trap/export9.js.trap index 7bfdace65308..2aab6f65ab9f 100644 --- a/javascript/extractor/tests/es2015/output/trap/export9.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/export9.js.trap @@ -80,94 +80,100 @@ is_es2015_module(#20001) variables(#20026,"C",#20025) #20027=@"local_type_name;{C};{#20025}" local_type_names(#20027,"C",#20025) -#20028=* -stmts(#20028,29,#20001,0,"export ... ss C {}") -#20029=@"loc,{#10000},1,1,1,25" -locations_default(#20029,#10000,1,1,1,25) -hasLocation(#20028,#20029) -stmt_containers(#20028,#20001) -#20030=* -stmts(#20030,26,#20028,0,"class C {}") -#20031=@"loc,{#10000},1,16,1,25" -locations_default(#20031,#10000,1,16,1,25) -hasLocation(#20030,#20031) -stmt_containers(#20030,#20001) -#20032=* -exprs(#20032,78,#20030,0,"C") -hasLocation(#20032,#20011) -enclosing_stmt(#20032,#20030) -expr_containers(#20032,#20001) -literals("C","C",#20032) -decl(#20032,#20026) -typedecl(#20032,#20027) +#20028=@"var;{this};{#20025}" +variables(#20028,"this",#20025) +#20029=* +stmts(#20029,29,#20001,0,"export ... ss C {}") +#20030=@"loc,{#10000},1,1,1,25" +locations_default(#20030,#10000,1,1,1,25) +hasLocation(#20029,#20030) +stmt_containers(#20029,#20001) +#20031=* +stmts(#20031,26,#20029,0,"class C {}") +#20032=@"loc,{#10000},1,16,1,25" +locations_default(#20032,#10000,1,16,1,25) +hasLocation(#20031,#20032) +stmt_containers(#20031,#20001) #20033=* -scopes(#20033,10) -scopenodes(#20030,#20033) -scopenesting(#20033,#20025) +exprs(#20033,78,#20031,0,"C") +hasLocation(#20033,#20011) +enclosing_stmt(#20033,#20031) +expr_containers(#20033,#20001) +literals("C","C",#20033) +decl(#20033,#20026) +typedecl(#20033,#20027) #20034=* -properties(#20034,#20030,2,0,"constructor() {}") -#20035=@"loc,{#10000},1,24,1,23" -locations_default(#20035,#10000,1,24,1,23) -hasLocation(#20034,#20035) +scopes(#20034,10) +scopenodes(#20031,#20034) +scopenesting(#20034,#20025) +#20035=@"var;{this};{#20034}" +variables(#20035,"this",#20034) #20036=* -exprs(#20036,0,#20034,0,"constructor") -hasLocation(#20036,#20035) -enclosing_stmt(#20036,#20030) -expr_containers(#20036,#20001) -literals("constructor","constructor",#20036) -#20037=* -exprs(#20037,9,#20034,1,"() {}") -hasLocation(#20037,#20035) -enclosing_stmt(#20037,#20030) -expr_containers(#20037,#20001) +properties(#20036,#20031,2,0,"constructor() {}") +#20037=@"loc,{#10000},1,24,1,23" +locations_default(#20037,#10000,1,24,1,23) +hasLocation(#20036,#20037) #20038=* -scopes(#20038,1) -scopenodes(#20037,#20038) -scopenesting(#20038,#20033) -#20039=@"var;{arguments};{#20038}" -variables(#20039,"arguments",#20038) -is_arguments_object(#20039) +exprs(#20038,0,#20036,0,"constructor") +hasLocation(#20038,#20037) +enclosing_stmt(#20038,#20031) +expr_containers(#20038,#20001) +literals("constructor","constructor",#20038) +#20039=* +exprs(#20039,9,#20036,1,"() {}") +hasLocation(#20039,#20037) +enclosing_stmt(#20039,#20031) +expr_containers(#20039,#20001) #20040=* -stmts(#20040,1,#20037,-2,"{}") -hasLocation(#20040,#20035) -stmt_containers(#20040,#20037) -is_method(#20034) -#20041=* -stmts(#20041,2,#20001,1,"[,]") -#20042=@"loc,{#10000},1,27,1,29" -locations_default(#20042,#10000,1,27,1,29) -hasLocation(#20041,#20042) -stmt_containers(#20041,#20001) +scopes(#20040,1) +scopenodes(#20039,#20040) +scopenesting(#20040,#20034) +#20041=@"var;{this};{#20040}" +variables(#20041,"this",#20040) +#20042=@"var;{arguments};{#20040}" +variables(#20042,"arguments",#20040) +is_arguments_object(#20042) #20043=* -exprs(#20043,7,#20041,0,"[,]") -hasLocation(#20043,#20042) -enclosing_stmt(#20043,#20041) -expr_containers(#20043,#20001) -array_size(#20043,1) +stmts(#20043,1,#20039,-2,"{}") +hasLocation(#20043,#20037) +stmt_containers(#20043,#20039) +is_method(#20036) #20044=* -entry_cfg_node(#20044,#20001) -#20045=@"loc,{#10000},1,1,1,0" -locations_default(#20045,#10000,1,1,1,0) +stmts(#20044,2,#20001,1,"[,]") +#20045=@"loc,{#10000},1,27,1,29" +locations_default(#20045,#10000,1,27,1,29) hasLocation(#20044,#20045) +stmt_containers(#20044,#20001) #20046=* -exit_cfg_node(#20046,#20001) -hasLocation(#20046,#20023) -successor(#20041,#20043) -successor(#20043,#20046) -successor(#20028,#20032) -successor(#20037,#20034) +exprs(#20046,7,#20044,0,"[,]") +hasLocation(#20046,#20045) +enclosing_stmt(#20046,#20044) +expr_containers(#20046,#20001) +array_size(#20046,1) #20047=* -entry_cfg_node(#20047,#20037) -hasLocation(#20047,#20035) -#20048=* -exit_cfg_node(#20048,#20037) -hasLocation(#20048,#20035) -successor(#20040,#20048) -successor(#20047,#20040) -successor(#20036,#20037) -successor(#20034,#20030) -successor(#20032,#20036) -successor(#20030,#20041) -successor(#20044,#20028) +entry_cfg_node(#20047,#20001) +#20048=@"loc,{#10000},1,1,1,0" +locations_default(#20048,#10000,1,1,1,0) +hasLocation(#20047,#20048) +#20049=* +exit_cfg_node(#20049,#20001) +hasLocation(#20049,#20023) +successor(#20044,#20046) +successor(#20046,#20049) +successor(#20029,#20033) +successor(#20039,#20036) +#20050=* +entry_cfg_node(#20050,#20039) +hasLocation(#20050,#20037) +#20051=* +exit_cfg_node(#20051,#20039) +hasLocation(#20051,#20037) +successor(#20043,#20051) +successor(#20050,#20043) +successor(#20038,#20039) +successor(#20036,#20031) +successor(#20033,#20038) +successor(#20031,#20044) +successor(#20047,#20029) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/forof.js.trap b/javascript/extractor/tests/es2015/output/trap/forof.js.trap index f9e606176143..9477e45051fb 100644 --- a/javascript/extractor/tests/es2015/output/trap/forof.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/forof.js.trap @@ -246,222 +246,226 @@ locations_default(#20090,#10000,1,1,8,0) hasLocation(#20001,#20090) #20091=@"var;{f};{#20000}" variables(#20091,"f",#20000) -#20092=* -stmts(#20092,21,#20001,0,"for (le ... x+1;\n}") -#20093=@"loc,{#10000},1,1,3,1" -locations_default(#20093,#10000,1,1,3,1) -hasLocation(#20092,#20093) -stmt_containers(#20092,#20001) -#20094=* -exprs(#20094,7,#20092,1,"[1,2,3]") -#20095=@"loc,{#10000},1,15,1,21" -locations_default(#20095,#10000,1,15,1,21) -hasLocation(#20094,#20095) -enclosing_stmt(#20094,#20092) -expr_containers(#20094,#20001) -#20096=* -exprs(#20096,3,#20094,0,"1") -hasLocation(#20096,#20029) -enclosing_stmt(#20096,#20092) -expr_containers(#20096,#20001) -literals("1","1",#20096) +#20092=@"var;{this};{#20000}" +variables(#20092,"this",#20000) +#20093=* +stmts(#20093,21,#20001,0,"for (le ... x+1;\n}") +#20094=@"loc,{#10000},1,1,3,1" +locations_default(#20094,#10000,1,1,3,1) +hasLocation(#20093,#20094) +stmt_containers(#20093,#20001) +#20095=* +exprs(#20095,7,#20093,1,"[1,2,3]") +#20096=@"loc,{#10000},1,15,1,21" +locations_default(#20096,#10000,1,15,1,21) +hasLocation(#20095,#20096) +enclosing_stmt(#20095,#20093) +expr_containers(#20095,#20001) #20097=* -exprs(#20097,3,#20094,1,"2") -hasLocation(#20097,#20033) -enclosing_stmt(#20097,#20092) +exprs(#20097,3,#20095,0,"1") +hasLocation(#20097,#20029) +enclosing_stmt(#20097,#20093) expr_containers(#20097,#20001) -literals("2","2",#20097) +literals("1","1",#20097) #20098=* -exprs(#20098,3,#20094,2,"3") -hasLocation(#20098,#20037) -enclosing_stmt(#20098,#20092) +exprs(#20098,3,#20095,1,"2") +hasLocation(#20098,#20033) +enclosing_stmt(#20098,#20093) expr_containers(#20098,#20001) -literals("3","3",#20098) -array_size(#20094,3) +literals("2","2",#20098) #20099=* -scopes(#20099,6) -scopenodes(#20092,#20099) -scopenesting(#20099,#20000) -#20100=@"var;{x};{#20099}" -variables(#20100,"x",#20099) -#20101=* -stmts(#20101,23,#20092,0,"let x") -#20102=@"loc,{#10000},1,6,1,10" -locations_default(#20102,#10000,1,6,1,10) -hasLocation(#20101,#20102) -stmt_containers(#20101,#20001) -#20103=* -exprs(#20103,64,#20101,0,"x") -hasLocation(#20103,#20023) -enclosing_stmt(#20103,#20101) -expr_containers(#20103,#20001) +exprs(#20099,3,#20095,2,"3") +hasLocation(#20099,#20037) +enclosing_stmt(#20099,#20093) +expr_containers(#20099,#20001) +literals("3","3",#20099) +array_size(#20095,3) +#20100=* +scopes(#20100,6) +scopenodes(#20093,#20100) +scopenesting(#20100,#20000) +#20101=@"var;{x};{#20100}" +variables(#20101,"x",#20100) +#20102=* +stmts(#20102,23,#20093,0,"let x") +#20103=@"loc,{#10000},1,6,1,10" +locations_default(#20103,#10000,1,6,1,10) +hasLocation(#20102,#20103) +stmt_containers(#20102,#20001) #20104=* -exprs(#20104,78,#20103,0,"x") +exprs(#20104,64,#20102,0,"x") hasLocation(#20104,#20023) -enclosing_stmt(#20104,#20101) +enclosing_stmt(#20104,#20102) expr_containers(#20104,#20001) -literals("x","x",#20104) -decl(#20104,#20100) #20105=* -stmts(#20105,1,#20092,2,"{\n let y = x+1;\n}") -#20106=@"loc,{#10000},1,24,3,1" -locations_default(#20106,#10000,1,24,3,1) -hasLocation(#20105,#20106) -stmt_containers(#20105,#20001) -#20107=* -scopes(#20107,4) -scopenodes(#20105,#20107) -scopenesting(#20107,#20099) -#20108=@"var;{y};{#20107}" -variables(#20108,"y",#20107) -#20109=* -stmts(#20109,23,#20105,0,"let y = x+1;") -#20110=@"loc,{#10000},2,5,2,16" -locations_default(#20110,#10000,2,5,2,16) -hasLocation(#20109,#20110) -stmt_containers(#20109,#20001) -#20111=* -exprs(#20111,64,#20109,0,"y = x+1") -#20112=@"loc,{#10000},2,9,2,15" -locations_default(#20112,#10000,2,9,2,15) -hasLocation(#20111,#20112) -enclosing_stmt(#20111,#20109) -expr_containers(#20111,#20001) -#20113=* -exprs(#20113,78,#20111,0,"y") -hasLocation(#20113,#20047) -enclosing_stmt(#20113,#20109) -expr_containers(#20113,#20001) -literals("y","y",#20113) -decl(#20113,#20108) +exprs(#20105,78,#20104,0,"x") +hasLocation(#20105,#20023) +enclosing_stmt(#20105,#20102) +expr_containers(#20105,#20001) +literals("x","x",#20105) +decl(#20105,#20101) +#20106=* +stmts(#20106,1,#20093,2,"{\n let y = x+1;\n}") +#20107=@"loc,{#10000},1,24,3,1" +locations_default(#20107,#10000,1,24,3,1) +hasLocation(#20106,#20107) +stmt_containers(#20106,#20001) +#20108=* +scopes(#20108,4) +scopenodes(#20106,#20108) +scopenesting(#20108,#20100) +#20109=@"var;{y};{#20108}" +variables(#20109,"y",#20108) +#20110=* +stmts(#20110,23,#20106,0,"let y = x+1;") +#20111=@"loc,{#10000},2,5,2,16" +locations_default(#20111,#10000,2,5,2,16) +hasLocation(#20110,#20111) +stmt_containers(#20110,#20001) +#20112=* +exprs(#20112,64,#20110,0,"y = x+1") +#20113=@"loc,{#10000},2,9,2,15" +locations_default(#20113,#10000,2,9,2,15) +hasLocation(#20112,#20113) +enclosing_stmt(#20112,#20110) +expr_containers(#20112,#20001) #20114=* -exprs(#20114,34,#20111,1,"x+1") -#20115=@"loc,{#10000},2,13,2,15" -locations_default(#20115,#10000,2,13,2,15) -hasLocation(#20114,#20115) -enclosing_stmt(#20114,#20109) +exprs(#20114,78,#20112,0,"y") +hasLocation(#20114,#20047) +enclosing_stmt(#20114,#20110) expr_containers(#20114,#20001) -#20116=* -exprs(#20116,79,#20114,0,"x") -hasLocation(#20116,#20051) -enclosing_stmt(#20116,#20109) -expr_containers(#20116,#20001) -literals("x","x",#20116) -bind(#20116,#20100) +literals("y","y",#20114) +decl(#20114,#20109) +#20115=* +exprs(#20115,34,#20112,1,"x+1") +#20116=@"loc,{#10000},2,13,2,15" +locations_default(#20116,#10000,2,13,2,15) +hasLocation(#20115,#20116) +enclosing_stmt(#20115,#20110) +expr_containers(#20115,#20001) #20117=* -exprs(#20117,3,#20114,1,"1") -hasLocation(#20117,#20055) -enclosing_stmt(#20117,#20109) +exprs(#20117,79,#20115,0,"x") +hasLocation(#20117,#20051) +enclosing_stmt(#20117,#20110) expr_containers(#20117,#20001) -literals("1","1",#20117) +literals("x","x",#20117) +bind(#20117,#20101) #20118=* -stmts(#20118,17,#20001,1,"functio ... []);\n}") -#20119=@"loc,{#10000},5,1,7,1" -locations_default(#20119,#10000,5,1,7,1) -hasLocation(#20118,#20119) -stmt_containers(#20118,#20001) -#20120=* -exprs(#20120,78,#20118,-1,"f") -hasLocation(#20120,#20062) -expr_containers(#20120,#20118) -literals("f","f",#20120) -decl(#20120,#20091) +exprs(#20118,3,#20115,1,"1") +hasLocation(#20118,#20055) +enclosing_stmt(#20118,#20110) +expr_containers(#20118,#20001) +literals("1","1",#20118) +#20119=* +stmts(#20119,17,#20001,1,"functio ... []);\n}") +#20120=@"loc,{#10000},5,1,7,1" +locations_default(#20120,#10000,5,1,7,1) +hasLocation(#20119,#20120) +stmt_containers(#20119,#20001) #20121=* -scopes(#20121,1) -scopenodes(#20118,#20121) -scopenesting(#20121,#20000) -#20122=@"var;{x};{#20121}" -variables(#20122,"x",#20121) -#20123=@"var;{arguments};{#20121}" -variables(#20123,"arguments",#20121) -is_arguments_object(#20123) -#20124=* -stmts(#20124,1,#20118,-2,"{\n f ... []);\n}") -#20125=@"loc,{#10000},5,14,7,1" -locations_default(#20125,#10000,5,14,7,1) -hasLocation(#20124,#20125) -stmt_containers(#20124,#20118) +exprs(#20121,78,#20119,-1,"f") +hasLocation(#20121,#20062) +expr_containers(#20121,#20119) +literals("f","f",#20121) +decl(#20121,#20091) +#20122=* +scopes(#20122,1) +scopenodes(#20119,#20122) +scopenesting(#20122,#20000) +#20123=@"var;{x};{#20122}" +variables(#20123,"x",#20122) +#20124=@"var;{this};{#20122}" +variables(#20124,"this",#20122) +#20125=@"var;{arguments};{#20122}" +variables(#20125,"arguments",#20122) +is_arguments_object(#20125) #20126=* -stmts(#20126,21,#20124,0,"for (var x of []);") -#20127=@"loc,{#10000},6,5,6,22" -locations_default(#20127,#10000,6,5,6,22) +stmts(#20126,1,#20119,-2,"{\n f ... []);\n}") +#20127=@"loc,{#10000},5,14,7,1" +locations_default(#20127,#10000,5,14,7,1) hasLocation(#20126,#20127) -stmt_containers(#20126,#20118) +stmt_containers(#20126,#20119) #20128=* -exprs(#20128,7,#20126,1,"[]") -#20129=@"loc,{#10000},6,19,6,20" -locations_default(#20129,#10000,6,19,6,20) +stmts(#20128,21,#20126,0,"for (var x of []);") +#20129=@"loc,{#10000},6,5,6,22" +locations_default(#20129,#10000,6,5,6,22) hasLocation(#20128,#20129) -enclosing_stmt(#20128,#20126) -expr_containers(#20128,#20118) -array_size(#20128,0) +stmt_containers(#20128,#20119) #20130=* -stmts(#20130,18,#20126,0,"var x") -#20131=@"loc,{#10000},6,10,6,14" -locations_default(#20131,#10000,6,10,6,14) +exprs(#20130,7,#20128,1,"[]") +#20131=@"loc,{#10000},6,19,6,20" +locations_default(#20131,#10000,6,19,6,20) hasLocation(#20130,#20131) -stmt_containers(#20130,#20118) +enclosing_stmt(#20130,#20128) +expr_containers(#20130,#20119) +array_size(#20130,0) #20132=* -exprs(#20132,64,#20130,0,"x") -hasLocation(#20132,#20076) -enclosing_stmt(#20132,#20130) -expr_containers(#20132,#20118) -#20133=* -exprs(#20133,78,#20132,0,"x") -hasLocation(#20133,#20076) -enclosing_stmt(#20133,#20130) -expr_containers(#20133,#20118) -literals("x","x",#20133) -decl(#20133,#20122) +stmts(#20132,18,#20128,0,"var x") +#20133=@"loc,{#10000},6,10,6,14" +locations_default(#20133,#10000,6,10,6,14) +hasLocation(#20132,#20133) +stmt_containers(#20132,#20119) #20134=* -stmts(#20134,0,#20126,2,";") -hasLocation(#20134,#20086) -stmt_containers(#20134,#20118) +exprs(#20134,64,#20132,0,"x") +hasLocation(#20134,#20076) +enclosing_stmt(#20134,#20132) +expr_containers(#20134,#20119) #20135=* -entry_cfg_node(#20135,#20001) -#20136=@"loc,{#10000},1,1,1,0" -locations_default(#20136,#10000,1,1,1,0) -hasLocation(#20135,#20136) +exprs(#20135,78,#20134,0,"x") +hasLocation(#20135,#20076) +enclosing_stmt(#20135,#20132) +expr_containers(#20135,#20119) +literals("x","x",#20135) +decl(#20135,#20123) +#20136=* +stmts(#20136,0,#20128,2,";") +hasLocation(#20136,#20086) +stmt_containers(#20136,#20119) #20137=* -exit_cfg_node(#20137,#20001) -hasLocation(#20137,#20089) -successor(#20118,#20137) -#20138=* -entry_cfg_node(#20138,#20118) -#20139=@"loc,{#10000},5,1,5,0" -locations_default(#20139,#10000,5,1,5,0) -hasLocation(#20138,#20139) +entry_cfg_node(#20137,#20001) +#20138=@"loc,{#10000},1,1,1,0" +locations_default(#20138,#10000,1,1,1,0) +hasLocation(#20137,#20138) +#20139=* +exit_cfg_node(#20139,#20001) +hasLocation(#20139,#20089) +successor(#20119,#20139) #20140=* -exit_cfg_node(#20140,#20118) -#20141=@"loc,{#10000},7,2,7,1" -locations_default(#20141,#10000,7,2,7,1) +entry_cfg_node(#20140,#20119) +#20141=@"loc,{#10000},5,1,5,0" +locations_default(#20141,#10000,5,1,5,0) hasLocation(#20140,#20141) -successor(#20128,#20126) +#20142=* +exit_cfg_node(#20142,#20119) +#20143=@"loc,{#10000},7,2,7,1" +locations_default(#20143,#10000,7,2,7,1) +hasLocation(#20142,#20143) +successor(#20130,#20128) +successor(#20128,#20132) +successor(#20128,#20142) +successor(#20136,#20128) +successor(#20132,#20135) +successor(#20135,#20134) +successor(#20134,#20136) successor(#20126,#20130) -successor(#20126,#20140) -successor(#20134,#20126) -successor(#20130,#20133) -successor(#20133,#20132) -successor(#20132,#20134) -successor(#20124,#20128) -successor(#20138,#20124) -successor(#20094,#20096) -successor(#20098,#20092) +successor(#20140,#20126) +successor(#20095,#20097) +successor(#20099,#20093) +successor(#20098,#20099) successor(#20097,#20098) -successor(#20096,#20097) -successor(#20092,#20101) -successor(#20092,#20118) -successor(#20109,#20113) -successor(#20117,#20114) -successor(#20116,#20117) -successor(#20114,#20111) -successor(#20113,#20116) -successor(#20111,#20092) -successor(#20105,#20109) -successor(#20101,#20104) -successor(#20104,#20103) -successor(#20103,#20105) -successor(#20120,#20094) -successor(#20135,#20120) +successor(#20093,#20102) +successor(#20093,#20119) +successor(#20110,#20114) +successor(#20118,#20115) +successor(#20117,#20118) +successor(#20115,#20112) +successor(#20114,#20117) +successor(#20112,#20093) +successor(#20106,#20110) +successor(#20102,#20105) +successor(#20105,#20104) +successor(#20104,#20106) +successor(#20121,#20095) +successor(#20137,#20121) numlines(#10000,7,6,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/import1.js.trap b/javascript/extractor/tests/es2015/output/trap/import1.js.trap index b02b3375bba7..ef8c3d0b3ef5 100644 --- a/javascript/extractor/tests/es2015/output/trap/import1.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/import1.js.trap @@ -62,46 +62,48 @@ local_namespace_names(#20019,"x",#20016) variables(#20017,"x",#20016) local_type_names(#20018,"x",#20016) local_namespace_names(#20019,"x",#20016) -#20020=* -stmts(#20020,27,#20001,0,"import x from 'foo';") -hasLocation(#20020,#20003) -stmt_containers(#20020,#20001) +#20020=@"var;{this};{#20016}" +variables(#20020,"this",#20016) #20021=* -exprs(#20021,4,#20020,-1,"'foo'") -hasLocation(#20021,#20011) -enclosing_stmt(#20021,#20020) -expr_containers(#20021,#20001) -literals("foo","'foo'",#20021) +stmts(#20021,27,#20001,0,"import x from 'foo';") +hasLocation(#20021,#20003) +stmt_containers(#20021,#20001) #20022=* -regexpterm(#20022,14,#20021,0,"foo") -#20023=@"loc,{#10000},1,16,1,18" -locations_default(#20023,#10000,1,16,1,18) -hasLocation(#20022,#20023) -regexp_const_value(#20022,"foo") -#20024=* -exprs(#20024,84,#20020,0,"x") -hasLocation(#20024,#20007) -enclosing_stmt(#20024,#20020) -expr_containers(#20024,#20001) +exprs(#20022,4,#20021,-1,"'foo'") +hasLocation(#20022,#20011) +enclosing_stmt(#20022,#20021) +expr_containers(#20022,#20001) +literals("foo","'foo'",#20022) +#20023=* +regexpterm(#20023,14,#20022,0,"foo") +#20024=@"loc,{#10000},1,16,1,18" +locations_default(#20024,#10000,1,16,1,18) +hasLocation(#20023,#20024) +regexp_const_value(#20023,"foo") #20025=* -exprs(#20025,78,#20024,1,"x") +exprs(#20025,84,#20021,0,"x") hasLocation(#20025,#20007) -enclosing_stmt(#20025,#20020) +enclosing_stmt(#20025,#20021) expr_containers(#20025,#20001) -literals("x","x",#20025) -decl(#20025,#20017) -typedecl(#20025,#20018) -namespacedecl(#20025,#20019) #20026=* -entry_cfg_node(#20026,#20001) -#20027=@"loc,{#10000},1,1,1,0" -locations_default(#20027,#10000,1,1,1,0) -hasLocation(#20026,#20027) -#20028=* -exit_cfg_node(#20028,#20001) -hasLocation(#20028,#20015) -successor(#20020,#20028) -successor(#20024,#20020) -successor(#20026,#20024) +exprs(#20026,78,#20025,1,"x") +hasLocation(#20026,#20007) +enclosing_stmt(#20026,#20021) +expr_containers(#20026,#20001) +literals("x","x",#20026) +decl(#20026,#20017) +typedecl(#20026,#20018) +namespacedecl(#20026,#20019) +#20027=* +entry_cfg_node(#20027,#20001) +#20028=@"loc,{#10000},1,1,1,0" +locations_default(#20028,#10000,1,1,1,0) +hasLocation(#20027,#20028) +#20029=* +exit_cfg_node(#20029,#20001) +hasLocation(#20029,#20015) +successor(#20021,#20029) +successor(#20025,#20021) +successor(#20027,#20025) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/import2.js.trap b/javascript/extractor/tests/es2015/output/trap/import2.js.trap index 360b201cdc8a..3881f5e88d84 100644 --- a/javascript/extractor/tests/es2015/output/trap/import2.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/import2.js.trap @@ -72,52 +72,54 @@ local_namespace_names(#20023,"y",#20020) variables(#20021,"y",#20020) local_type_names(#20022,"y",#20020) local_namespace_names(#20023,"y",#20020) -#20024=* -stmts(#20024,27,#20001,0,"import ... 'foo';") -hasLocation(#20024,#20003) -stmt_containers(#20024,#20001) +#20024=@"var;{this};{#20020}" +variables(#20024,"this",#20020) #20025=* -exprs(#20025,4,#20024,-1,"'foo'") -hasLocation(#20025,#20015) -enclosing_stmt(#20025,#20024) -expr_containers(#20025,#20001) -literals("foo","'foo'",#20025) +stmts(#20025,27,#20001,0,"import ... 'foo';") +hasLocation(#20025,#20003) +stmt_containers(#20025,#20001) #20026=* -regexpterm(#20026,14,#20025,0,"foo") -#20027=@"loc,{#10000},1,20,1,22" -locations_default(#20027,#10000,1,20,1,22) -hasLocation(#20026,#20027) -regexp_const_value(#20026,"foo") -#20028=* -exprs(#20028,83,#20024,0,"y") -hasLocation(#20028,#20009) -enclosing_stmt(#20028,#20024) -expr_containers(#20028,#20001) +exprs(#20026,4,#20025,-1,"'foo'") +hasLocation(#20026,#20015) +enclosing_stmt(#20026,#20025) +expr_containers(#20026,#20001) +literals("foo","'foo'",#20026) +#20027=* +regexpterm(#20027,14,#20026,0,"foo") +#20028=@"loc,{#10000},1,20,1,22" +locations_default(#20028,#10000,1,20,1,22) +hasLocation(#20027,#20028) +regexp_const_value(#20027,"foo") #20029=* -exprs(#20029,0,#20028,0,"y") +exprs(#20029,83,#20025,0,"y") hasLocation(#20029,#20009) -enclosing_stmt(#20029,#20024) +enclosing_stmt(#20029,#20025) expr_containers(#20029,#20001) -literals("y","y",#20029) #20030=* -exprs(#20030,78,#20028,1,"y") +exprs(#20030,0,#20029,0,"y") hasLocation(#20030,#20009) -enclosing_stmt(#20030,#20024) +enclosing_stmt(#20030,#20025) expr_containers(#20030,#20001) literals("y","y",#20030) -decl(#20030,#20021) -typedecl(#20030,#20022) -namespacedecl(#20030,#20023) #20031=* -entry_cfg_node(#20031,#20001) -#20032=@"loc,{#10000},1,1,1,0" -locations_default(#20032,#10000,1,1,1,0) -hasLocation(#20031,#20032) -#20033=* -exit_cfg_node(#20033,#20001) -hasLocation(#20033,#20019) -successor(#20024,#20033) -successor(#20028,#20024) -successor(#20031,#20028) +exprs(#20031,78,#20029,1,"y") +hasLocation(#20031,#20009) +enclosing_stmt(#20031,#20025) +expr_containers(#20031,#20001) +literals("y","y",#20031) +decl(#20031,#20021) +typedecl(#20031,#20022) +namespacedecl(#20031,#20023) +#20032=* +entry_cfg_node(#20032,#20001) +#20033=@"loc,{#10000},1,1,1,0" +locations_default(#20033,#10000,1,1,1,0) +hasLocation(#20032,#20033) +#20034=* +exit_cfg_node(#20034,#20001) +hasLocation(#20034,#20019) +successor(#20025,#20034) +successor(#20029,#20025) +successor(#20032,#20029) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/import3.js.trap b/javascript/extractor/tests/es2015/output/trap/import3.js.trap index 5d2c1a7c6765..209bcb08e508 100644 --- a/javascript/extractor/tests/es2015/output/trap/import3.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/import3.js.trap @@ -82,54 +82,56 @@ local_namespace_names(#20027,"z",#20024) variables(#20025,"z",#20024) local_type_names(#20026,"z",#20024) local_namespace_names(#20027,"z",#20024) -#20028=* -stmts(#20028,27,#20001,0,"import ... 'foo';") -hasLocation(#20028,#20003) -stmt_containers(#20028,#20001) +#20028=@"var;{this};{#20024}" +variables(#20028,"this",#20024) #20029=* -exprs(#20029,4,#20028,-1,"'foo'") -hasLocation(#20029,#20019) -enclosing_stmt(#20029,#20028) -expr_containers(#20029,#20001) -literals("foo","'foo'",#20029) +stmts(#20029,27,#20001,0,"import ... 'foo';") +hasLocation(#20029,#20003) +stmt_containers(#20029,#20001) #20030=* -regexpterm(#20030,14,#20029,0,"foo") -#20031=@"loc,{#10000},1,25,1,27" -locations_default(#20031,#10000,1,25,1,27) -hasLocation(#20030,#20031) -regexp_const_value(#20030,"foo") -#20032=* -exprs(#20032,83,#20028,0,"y as z") -#20033=@"loc,{#10000},1,10,1,15" -locations_default(#20033,#10000,1,10,1,15) -hasLocation(#20032,#20033) -enclosing_stmt(#20032,#20028) -expr_containers(#20032,#20001) -#20034=* -exprs(#20034,0,#20032,0,"y") -hasLocation(#20034,#20009) -enclosing_stmt(#20034,#20028) -expr_containers(#20034,#20001) -literals("y","y",#20034) +exprs(#20030,4,#20029,-1,"'foo'") +hasLocation(#20030,#20019) +enclosing_stmt(#20030,#20029) +expr_containers(#20030,#20001) +literals("foo","'foo'",#20030) +#20031=* +regexpterm(#20031,14,#20030,0,"foo") +#20032=@"loc,{#10000},1,25,1,27" +locations_default(#20032,#10000,1,25,1,27) +hasLocation(#20031,#20032) +regexp_const_value(#20031,"foo") +#20033=* +exprs(#20033,83,#20029,0,"y as z") +#20034=@"loc,{#10000},1,10,1,15" +locations_default(#20034,#10000,1,10,1,15) +hasLocation(#20033,#20034) +enclosing_stmt(#20033,#20029) +expr_containers(#20033,#20001) #20035=* -exprs(#20035,78,#20032,1,"z") -hasLocation(#20035,#20013) -enclosing_stmt(#20035,#20028) +exprs(#20035,0,#20033,0,"y") +hasLocation(#20035,#20009) +enclosing_stmt(#20035,#20029) expr_containers(#20035,#20001) -literals("z","z",#20035) -decl(#20035,#20025) -typedecl(#20035,#20026) -namespacedecl(#20035,#20027) +literals("y","y",#20035) #20036=* -entry_cfg_node(#20036,#20001) -#20037=@"loc,{#10000},1,1,1,0" -locations_default(#20037,#10000,1,1,1,0) -hasLocation(#20036,#20037) -#20038=* -exit_cfg_node(#20038,#20001) -hasLocation(#20038,#20023) -successor(#20028,#20038) -successor(#20032,#20028) -successor(#20036,#20032) +exprs(#20036,78,#20033,1,"z") +hasLocation(#20036,#20013) +enclosing_stmt(#20036,#20029) +expr_containers(#20036,#20001) +literals("z","z",#20036) +decl(#20036,#20025) +typedecl(#20036,#20026) +namespacedecl(#20036,#20027) +#20037=* +entry_cfg_node(#20037,#20001) +#20038=@"loc,{#10000},1,1,1,0" +locations_default(#20038,#10000,1,1,1,0) +hasLocation(#20037,#20038) +#20039=* +exit_cfg_node(#20039,#20001) +hasLocation(#20039,#20023) +successor(#20029,#20039) +successor(#20033,#20029) +successor(#20037,#20033) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/import4.js.trap b/javascript/extractor/tests/es2015/output/trap/import4.js.trap index 3d0694f2e037..06883f4ffdbb 100644 --- a/javascript/extractor/tests/es2015/output/trap/import4.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/import4.js.trap @@ -101,69 +101,71 @@ local_type_names(#20031,"x",#20028) local_type_names(#20032,"z",#20028) local_namespace_names(#20033,"x",#20028) local_namespace_names(#20034,"z",#20028) -#20035=* -stmts(#20035,27,#20001,0,"import ... 'foo';") -hasLocation(#20035,#20003) -stmt_containers(#20035,#20001) +#20035=@"var;{this};{#20028}" +variables(#20035,"this",#20028) #20036=* -exprs(#20036,4,#20035,-1,"'foo'") -hasLocation(#20036,#20023) -enclosing_stmt(#20036,#20035) -expr_containers(#20036,#20001) -literals("foo","'foo'",#20036) +stmts(#20036,27,#20001,0,"import ... 'foo';") +hasLocation(#20036,#20003) +stmt_containers(#20036,#20001) #20037=* -regexpterm(#20037,14,#20036,0,"foo") -#20038=@"loc,{#10000},1,28,1,30" -locations_default(#20038,#10000,1,28,1,30) -hasLocation(#20037,#20038) -regexp_const_value(#20037,"foo") -#20039=* -exprs(#20039,84,#20035,0,"x") -hasLocation(#20039,#20007) -enclosing_stmt(#20039,#20035) -expr_containers(#20039,#20001) +exprs(#20037,4,#20036,-1,"'foo'") +hasLocation(#20037,#20023) +enclosing_stmt(#20037,#20036) +expr_containers(#20037,#20001) +literals("foo","'foo'",#20037) +#20038=* +regexpterm(#20038,14,#20037,0,"foo") +#20039=@"loc,{#10000},1,28,1,30" +locations_default(#20039,#10000,1,28,1,30) +hasLocation(#20038,#20039) +regexp_const_value(#20038,"foo") #20040=* -exprs(#20040,78,#20039,1,"x") +exprs(#20040,84,#20036,0,"x") hasLocation(#20040,#20007) -enclosing_stmt(#20040,#20035) +enclosing_stmt(#20040,#20036) expr_containers(#20040,#20001) -literals("x","x",#20040) -decl(#20040,#20029) -typedecl(#20040,#20031) -namespacedecl(#20040,#20033) #20041=* -exprs(#20041,83,#20035,1,"y as z") -#20042=@"loc,{#10000},1,13,1,18" -locations_default(#20042,#10000,1,13,1,18) -hasLocation(#20041,#20042) -enclosing_stmt(#20041,#20035) +exprs(#20041,78,#20040,1,"x") +hasLocation(#20041,#20007) +enclosing_stmt(#20041,#20036) expr_containers(#20041,#20001) -#20043=* -exprs(#20043,0,#20041,0,"y") -hasLocation(#20043,#20013) -enclosing_stmt(#20043,#20035) -expr_containers(#20043,#20001) -literals("y","y",#20043) +literals("x","x",#20041) +decl(#20041,#20029) +typedecl(#20041,#20031) +namespacedecl(#20041,#20033) +#20042=* +exprs(#20042,83,#20036,1,"y as z") +#20043=@"loc,{#10000},1,13,1,18" +locations_default(#20043,#10000,1,13,1,18) +hasLocation(#20042,#20043) +enclosing_stmt(#20042,#20036) +expr_containers(#20042,#20001) #20044=* -exprs(#20044,78,#20041,1,"z") -hasLocation(#20044,#20017) -enclosing_stmt(#20044,#20035) +exprs(#20044,0,#20042,0,"y") +hasLocation(#20044,#20013) +enclosing_stmt(#20044,#20036) expr_containers(#20044,#20001) -literals("z","z",#20044) -decl(#20044,#20030) -typedecl(#20044,#20032) -namespacedecl(#20044,#20034) +literals("y","y",#20044) #20045=* -entry_cfg_node(#20045,#20001) -#20046=@"loc,{#10000},1,1,1,0" -locations_default(#20046,#10000,1,1,1,0) -hasLocation(#20045,#20046) -#20047=* -exit_cfg_node(#20047,#20001) -hasLocation(#20047,#20027) -successor(#20035,#20047) -successor(#20041,#20035) -successor(#20039,#20041) -successor(#20045,#20039) +exprs(#20045,78,#20042,1,"z") +hasLocation(#20045,#20017) +enclosing_stmt(#20045,#20036) +expr_containers(#20045,#20001) +literals("z","z",#20045) +decl(#20045,#20030) +typedecl(#20045,#20032) +namespacedecl(#20045,#20034) +#20046=* +entry_cfg_node(#20046,#20001) +#20047=@"loc,{#10000},1,1,1,0" +locations_default(#20047,#10000,1,1,1,0) +hasLocation(#20046,#20047) +#20048=* +exit_cfg_node(#20048,#20001) +hasLocation(#20048,#20027) +successor(#20036,#20048) +successor(#20042,#20036) +successor(#20040,#20042) +successor(#20046,#20040) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/import5.js.trap b/javascript/extractor/tests/es2015/output/trap/import5.js.trap index a410731eff40..fc2157edacdb 100644 --- a/javascript/extractor/tests/es2015/output/trap/import5.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/import5.js.trap @@ -72,48 +72,50 @@ local_namespace_names(#20023,"foo",#20020) variables(#20021,"foo",#20020) local_type_names(#20022,"foo",#20020) local_namespace_names(#20023,"foo",#20020) -#20024=* -stmts(#20024,27,#20001,0,"import ... 'foo';") -hasLocation(#20024,#20003) -stmt_containers(#20024,#20001) +#20024=@"var;{this};{#20020}" +variables(#20024,"this",#20020) #20025=* -exprs(#20025,4,#20024,-1,"'foo'") -hasLocation(#20025,#20015) -enclosing_stmt(#20025,#20024) -expr_containers(#20025,#20001) -literals("foo","'foo'",#20025) +stmts(#20025,27,#20001,0,"import ... 'foo';") +hasLocation(#20025,#20003) +stmt_containers(#20025,#20001) #20026=* -regexpterm(#20026,14,#20025,0,"foo") -#20027=@"loc,{#10000},1,23,1,25" -locations_default(#20027,#10000,1,23,1,25) -hasLocation(#20026,#20027) -regexp_const_value(#20026,"foo") -#20028=* -exprs(#20028,85,#20024,0,"* as foo") -#20029=@"loc,{#10000},1,8,1,15" -locations_default(#20029,#10000,1,8,1,15) -hasLocation(#20028,#20029) -enclosing_stmt(#20028,#20024) -expr_containers(#20028,#20001) -#20030=* -exprs(#20030,78,#20028,1,"foo") -hasLocation(#20030,#20011) -enclosing_stmt(#20030,#20024) -expr_containers(#20030,#20001) -literals("foo","foo",#20030) -decl(#20030,#20021) -typedecl(#20030,#20022) -namespacedecl(#20030,#20023) +exprs(#20026,4,#20025,-1,"'foo'") +hasLocation(#20026,#20015) +enclosing_stmt(#20026,#20025) +expr_containers(#20026,#20001) +literals("foo","'foo'",#20026) +#20027=* +regexpterm(#20027,14,#20026,0,"foo") +#20028=@"loc,{#10000},1,23,1,25" +locations_default(#20028,#10000,1,23,1,25) +hasLocation(#20027,#20028) +regexp_const_value(#20027,"foo") +#20029=* +exprs(#20029,85,#20025,0,"* as foo") +#20030=@"loc,{#10000},1,8,1,15" +locations_default(#20030,#10000,1,8,1,15) +hasLocation(#20029,#20030) +enclosing_stmt(#20029,#20025) +expr_containers(#20029,#20001) #20031=* -entry_cfg_node(#20031,#20001) -#20032=@"loc,{#10000},1,1,1,0" -locations_default(#20032,#10000,1,1,1,0) -hasLocation(#20031,#20032) -#20033=* -exit_cfg_node(#20033,#20001) -hasLocation(#20033,#20019) -successor(#20024,#20033) -successor(#20028,#20024) -successor(#20031,#20028) +exprs(#20031,78,#20029,1,"foo") +hasLocation(#20031,#20011) +enclosing_stmt(#20031,#20025) +expr_containers(#20031,#20001) +literals("foo","foo",#20031) +decl(#20031,#20021) +typedecl(#20031,#20022) +namespacedecl(#20031,#20023) +#20032=* +entry_cfg_node(#20032,#20001) +#20033=@"loc,{#10000},1,1,1,0" +locations_default(#20033,#10000,1,1,1,0) +hasLocation(#20032,#20033) +#20034=* +exit_cfg_node(#20034,#20001) +hasLocation(#20034,#20019) +successor(#20025,#20034) +successor(#20029,#20025) +successor(#20032,#20029) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/import6.js.trap b/javascript/extractor/tests/es2015/output/trap/import6.js.trap index 429035fa6ed7..bea74c406bec 100644 --- a/javascript/extractor/tests/es2015/output/trap/import6.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/import6.js.trap @@ -43,31 +43,33 @@ scopenodes(#20001,#20012) scopenesting(#20012,#20000) is_module(#20001) is_es2015_module(#20001) -#20013=* -stmts(#20013,27,#20001,0,"import 'foo';") -hasLocation(#20013,#20003) -stmt_containers(#20013,#20001) +#20013=@"var;{this};{#20012}" +variables(#20013,"this",#20012) #20014=* -exprs(#20014,4,#20013,-1,"'foo'") -hasLocation(#20014,#20007) -enclosing_stmt(#20014,#20013) -expr_containers(#20014,#20001) -literals("foo","'foo'",#20014) +stmts(#20014,27,#20001,0,"import 'foo';") +hasLocation(#20014,#20003) +stmt_containers(#20014,#20001) #20015=* -regexpterm(#20015,14,#20014,0,"foo") -#20016=@"loc,{#10000},1,9,1,11" -locations_default(#20016,#10000,1,9,1,11) -hasLocation(#20015,#20016) -regexp_const_value(#20015,"foo") -#20017=* -entry_cfg_node(#20017,#20001) -#20018=@"loc,{#10000},1,1,1,0" -locations_default(#20018,#10000,1,1,1,0) -hasLocation(#20017,#20018) -#20019=* -exit_cfg_node(#20019,#20001) -hasLocation(#20019,#20011) -successor(#20013,#20019) -successor(#20017,#20013) +exprs(#20015,4,#20014,-1,"'foo'") +hasLocation(#20015,#20007) +enclosing_stmt(#20015,#20014) +expr_containers(#20015,#20001) +literals("foo","'foo'",#20015) +#20016=* +regexpterm(#20016,14,#20015,0,"foo") +#20017=@"loc,{#10000},1,9,1,11" +locations_default(#20017,#10000,1,9,1,11) +hasLocation(#20016,#20017) +regexp_const_value(#20016,"foo") +#20018=* +entry_cfg_node(#20018,#20001) +#20019=@"loc,{#10000},1,1,1,0" +locations_default(#20019,#10000,1,1,1,0) +hasLocation(#20018,#20019) +#20020=* +exit_cfg_node(#20020,#20001) +hasLocation(#20020,#20011) +successor(#20014,#20020) +successor(#20018,#20014) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/import7.js.trap b/javascript/extractor/tests/es2015/output/trap/import7.js.trap index 315afa6d01bb..a307e8d9f1ed 100644 --- a/javascript/extractor/tests/es2015/output/trap/import7.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/import7.js.trap @@ -145,103 +145,105 @@ local_type_names(#20048,"x",#20045) local_type_names(#20049,"z",#20045) local_namespace_names(#20050,"x",#20045) local_namespace_names(#20051,"z",#20045) -#20052=* -stmts(#20052,27,#20001,0,"import x from 'foo';") -hasLocation(#20052,#20003) -stmt_containers(#20052,#20001) +#20052=@"var;{this};{#20045}" +variables(#20052,"this",#20045) #20053=* -exprs(#20053,4,#20052,-1,"'foo'") -hasLocation(#20053,#20015) -enclosing_stmt(#20053,#20052) -expr_containers(#20053,#20001) -literals("foo","'foo'",#20053) +stmts(#20053,27,#20001,0,"import x from 'foo';") +hasLocation(#20053,#20003) +stmt_containers(#20053,#20001) #20054=* -regexpterm(#20054,14,#20053,0,"foo") -#20055=@"loc,{#10000},1,16,1,18" -locations_default(#20055,#10000,1,16,1,18) -hasLocation(#20054,#20055) -regexp_const_value(#20054,"foo") -#20056=* -exprs(#20056,84,#20052,0,"x") -hasLocation(#20056,#20011) -enclosing_stmt(#20056,#20052) -expr_containers(#20056,#20001) +exprs(#20054,4,#20053,-1,"'foo'") +hasLocation(#20054,#20015) +enclosing_stmt(#20054,#20053) +expr_containers(#20054,#20001) +literals("foo","'foo'",#20054) +#20055=* +regexpterm(#20055,14,#20054,0,"foo") +#20056=@"loc,{#10000},1,16,1,18" +locations_default(#20056,#10000,1,16,1,18) +hasLocation(#20055,#20056) +regexp_const_value(#20055,"foo") #20057=* -exprs(#20057,78,#20056,1,"x") +exprs(#20057,84,#20053,0,"x") hasLocation(#20057,#20011) -enclosing_stmt(#20057,#20052) +enclosing_stmt(#20057,#20053) expr_containers(#20057,#20001) -literals("x","x",#20057) -decl(#20057,#20046) -typedecl(#20057,#20048) -namespacedecl(#20057,#20050) #20058=* -stmts(#20058,27,#20001,1,"import 'bar';") -hasLocation(#20058,#20005) -stmt_containers(#20058,#20001) +exprs(#20058,78,#20057,1,"x") +hasLocation(#20058,#20011) +enclosing_stmt(#20058,#20053) +expr_containers(#20058,#20001) +literals("x","x",#20058) +decl(#20058,#20046) +typedecl(#20058,#20048) +namespacedecl(#20058,#20050) #20059=* -exprs(#20059,4,#20058,-1,"'bar'") -hasLocation(#20059,#20021) -enclosing_stmt(#20059,#20058) -expr_containers(#20059,#20001) -literals("bar","'bar'",#20059) +stmts(#20059,27,#20001,1,"import 'bar';") +hasLocation(#20059,#20005) +stmt_containers(#20059,#20001) #20060=* -regexpterm(#20060,14,#20059,0,"bar") -#20061=@"loc,{#10000},2,9,2,11" -locations_default(#20061,#10000,2,9,2,11) -hasLocation(#20060,#20061) -regexp_const_value(#20060,"bar") -#20062=* -stmts(#20062,27,#20001,2,"import ... 'baz';") -hasLocation(#20062,#20007) -stmt_containers(#20062,#20001) +exprs(#20060,4,#20059,-1,"'bar'") +hasLocation(#20060,#20021) +enclosing_stmt(#20060,#20059) +expr_containers(#20060,#20001) +literals("bar","'bar'",#20060) +#20061=* +regexpterm(#20061,14,#20060,0,"bar") +#20062=@"loc,{#10000},2,9,2,11" +locations_default(#20062,#10000,2,9,2,11) +hasLocation(#20061,#20062) +regexp_const_value(#20061,"bar") #20063=* -exprs(#20063,4,#20062,-1,"'baz'") -hasLocation(#20063,#20039) -enclosing_stmt(#20063,#20062) -expr_containers(#20063,#20001) -literals("baz","'baz'",#20063) +stmts(#20063,27,#20001,2,"import ... 'baz';") +hasLocation(#20063,#20007) +stmt_containers(#20063,#20001) #20064=* -regexpterm(#20064,14,#20063,0,"baz") -#20065=@"loc,{#10000},3,25,3,27" -locations_default(#20065,#10000,3,25,3,27) -hasLocation(#20064,#20065) -regexp_const_value(#20064,"baz") -#20066=* -exprs(#20066,83,#20062,0,"y as z") -#20067=@"loc,{#10000},3,10,3,15" -locations_default(#20067,#10000,3,10,3,15) -hasLocation(#20066,#20067) -enclosing_stmt(#20066,#20062) -expr_containers(#20066,#20001) -#20068=* -exprs(#20068,0,#20066,0,"y") -hasLocation(#20068,#20029) -enclosing_stmt(#20068,#20062) -expr_containers(#20068,#20001) -literals("y","y",#20068) +exprs(#20064,4,#20063,-1,"'baz'") +hasLocation(#20064,#20039) +enclosing_stmt(#20064,#20063) +expr_containers(#20064,#20001) +literals("baz","'baz'",#20064) +#20065=* +regexpterm(#20065,14,#20064,0,"baz") +#20066=@"loc,{#10000},3,25,3,27" +locations_default(#20066,#10000,3,25,3,27) +hasLocation(#20065,#20066) +regexp_const_value(#20065,"baz") +#20067=* +exprs(#20067,83,#20063,0,"y as z") +#20068=@"loc,{#10000},3,10,3,15" +locations_default(#20068,#10000,3,10,3,15) +hasLocation(#20067,#20068) +enclosing_stmt(#20067,#20063) +expr_containers(#20067,#20001) #20069=* -exprs(#20069,78,#20066,1,"z") -hasLocation(#20069,#20033) -enclosing_stmt(#20069,#20062) +exprs(#20069,0,#20067,0,"y") +hasLocation(#20069,#20029) +enclosing_stmt(#20069,#20063) expr_containers(#20069,#20001) -literals("z","z",#20069) -decl(#20069,#20047) -typedecl(#20069,#20049) -namespacedecl(#20069,#20051) +literals("y","y",#20069) #20070=* -entry_cfg_node(#20070,#20001) -#20071=@"loc,{#10000},1,1,1,0" -locations_default(#20071,#10000,1,1,1,0) -hasLocation(#20070,#20071) -#20072=* -exit_cfg_node(#20072,#20001) -hasLocation(#20072,#20043) -successor(#20062,#20072) -successor(#20058,#20062) -successor(#20052,#20058) -successor(#20066,#20052) -successor(#20056,#20066) -successor(#20070,#20056) +exprs(#20070,78,#20067,1,"z") +hasLocation(#20070,#20033) +enclosing_stmt(#20070,#20063) +expr_containers(#20070,#20001) +literals("z","z",#20070) +decl(#20070,#20047) +typedecl(#20070,#20049) +namespacedecl(#20070,#20051) +#20071=* +entry_cfg_node(#20071,#20001) +#20072=@"loc,{#10000},1,1,1,0" +locations_default(#20072,#10000,1,1,1,0) +hasLocation(#20071,#20072) +#20073=* +exit_cfg_node(#20073,#20001) +hasLocation(#20073,#20043) +successor(#20063,#20073) +successor(#20059,#20063) +successor(#20053,#20059) +successor(#20067,#20053) +successor(#20057,#20067) +successor(#20071,#20057) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/let.js.trap b/javascript/extractor/tests/es2015/output/trap/let.js.trap index 3fbdfba7303b..22c8f1c11169 100644 --- a/javascript/extractor/tests/es2015/output/trap/let.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/let.js.trap @@ -371,359 +371,361 @@ toplevels(#20001,0) #20136=@"loc,{#10000},1,1,12,1" locations_default(#20136,#10000,1,1,12,1) hasLocation(#20001,#20136) -#20137=* -stmts(#20137,1,#20001,0,"{\n l ... }\n}") -hasLocation(#20137,#20136) -stmt_containers(#20137,#20001) +#20137=@"var;{this};{#20000}" +variables(#20137,"this",#20000) #20138=* -scopes(#20138,4) -scopenodes(#20137,#20138) -scopenesting(#20138,#20000) -#20139=@"var;{x};{#20138}" -variables(#20139,"x",#20138) -#20140=* -stmts(#20140,23,#20137,0,"let x = 23;") -#20141=@"loc,{#10000},2,5,2,15" -locations_default(#20141,#10000,2,5,2,15) -hasLocation(#20140,#20141) -stmt_containers(#20140,#20001) -#20142=* -exprs(#20142,64,#20140,0,"x = 23") -#20143=@"loc,{#10000},2,9,2,14" -locations_default(#20143,#10000,2,9,2,14) -hasLocation(#20142,#20143) -enclosing_stmt(#20142,#20140) -expr_containers(#20142,#20001) -#20144=* -exprs(#20144,78,#20142,0,"x") -hasLocation(#20144,#20030) -enclosing_stmt(#20144,#20140) -expr_containers(#20144,#20001) -literals("x","x",#20144) -decl(#20144,#20139) +stmts(#20138,1,#20001,0,"{\n l ... }\n}") +hasLocation(#20138,#20136) +stmt_containers(#20138,#20001) +#20139=* +scopes(#20139,4) +scopenodes(#20138,#20139) +scopenesting(#20139,#20000) +#20140=@"var;{x};{#20139}" +variables(#20140,"x",#20139) +#20141=* +stmts(#20141,23,#20138,0,"let x = 23;") +#20142=@"loc,{#10000},2,5,2,15" +locations_default(#20142,#10000,2,5,2,15) +hasLocation(#20141,#20142) +stmt_containers(#20141,#20001) +#20143=* +exprs(#20143,64,#20141,0,"x = 23") +#20144=@"loc,{#10000},2,9,2,14" +locations_default(#20144,#10000,2,9,2,14) +hasLocation(#20143,#20144) +enclosing_stmt(#20143,#20141) +expr_containers(#20143,#20001) #20145=* -exprs(#20145,3,#20142,1,"23") -hasLocation(#20145,#20034) -enclosing_stmt(#20145,#20140) +exprs(#20145,78,#20143,0,"x") +hasLocation(#20145,#20030) +enclosing_stmt(#20145,#20141) expr_containers(#20145,#20001) -literals("23","23",#20145) +literals("x","x",#20145) +decl(#20145,#20140) #20146=* -stmts(#20146,1,#20137,1,"{\n ... ;\n }") -#20147=@"loc,{#10000},3,5,11,5" -locations_default(#20147,#10000,3,5,11,5) -hasLocation(#20146,#20147) -stmt_containers(#20146,#20001) -#20148=* -scopes(#20148,4) -scopenodes(#20146,#20148) -scopenesting(#20148,#20138) -#20149=@"var;{x};{#20148}" -variables(#20149,"x",#20148) -#20150=* -stmts(#20150,23,#20146,0,"let x = 42;") -#20151=@"loc,{#10000},4,9,4,19" -locations_default(#20151,#10000,4,9,4,19) -hasLocation(#20150,#20151) -stmt_containers(#20150,#20001) -#20152=* -exprs(#20152,64,#20150,0,"x = 42") -#20153=@"loc,{#10000},4,13,4,18" -locations_default(#20153,#10000,4,13,4,18) -hasLocation(#20152,#20153) -enclosing_stmt(#20152,#20150) -expr_containers(#20152,#20001) -#20154=* -exprs(#20154,78,#20152,0,"x") -hasLocation(#20154,#20042) -enclosing_stmt(#20154,#20150) -expr_containers(#20154,#20001) -literals("x","x",#20154) -decl(#20154,#20149) +exprs(#20146,3,#20143,1,"23") +hasLocation(#20146,#20034) +enclosing_stmt(#20146,#20141) +expr_containers(#20146,#20001) +literals("23","23",#20146) +#20147=* +stmts(#20147,1,#20138,1,"{\n ... ;\n }") +#20148=@"loc,{#10000},3,5,11,5" +locations_default(#20148,#10000,3,5,11,5) +hasLocation(#20147,#20148) +stmt_containers(#20147,#20001) +#20149=* +scopes(#20149,4) +scopenodes(#20147,#20149) +scopenesting(#20149,#20139) +#20150=@"var;{x};{#20149}" +variables(#20150,"x",#20149) +#20151=* +stmts(#20151,23,#20147,0,"let x = 42;") +#20152=@"loc,{#10000},4,9,4,19" +locations_default(#20152,#10000,4,9,4,19) +hasLocation(#20151,#20152) +stmt_containers(#20151,#20001) +#20153=* +exprs(#20153,64,#20151,0,"x = 42") +#20154=@"loc,{#10000},4,13,4,18" +locations_default(#20154,#10000,4,13,4,18) +hasLocation(#20153,#20154) +enclosing_stmt(#20153,#20151) +expr_containers(#20153,#20001) #20155=* -exprs(#20155,3,#20152,1,"42") -hasLocation(#20155,#20046) -enclosing_stmt(#20155,#20150) +exprs(#20155,78,#20153,0,"x") +hasLocation(#20155,#20042) +enclosing_stmt(#20155,#20151) expr_containers(#20155,#20001) -literals("42","42",#20155) +literals("x","x",#20155) +decl(#20155,#20150) #20156=* -stmts(#20156,14,#20146,1,"for (le ... }") -#20157=@"loc,{#10000},5,9,8,9" -locations_default(#20157,#10000,5,9,8,9) -hasLocation(#20156,#20157) -stmt_containers(#20156,#20001) -#20158=* -scopes(#20158,5) -scopenodes(#20156,#20158) -scopenesting(#20158,#20148) -#20159=@"var;{x};{#20158}" -variables(#20159,"x",#20158) -#20160=* -exprs(#20160,27,#20156,1,"x<42") -#20161=@"loc,{#10000},5,28,5,31" -locations_default(#20161,#10000,5,28,5,31) -hasLocation(#20160,#20161) -enclosing_stmt(#20160,#20156) -expr_containers(#20160,#20001) -#20162=* -exprs(#20162,79,#20160,0,"x") -hasLocation(#20162,#20068) -enclosing_stmt(#20162,#20156) -expr_containers(#20162,#20001) -literals("x","x",#20162) -bind(#20162,#20159) +exprs(#20156,3,#20153,1,"42") +hasLocation(#20156,#20046) +enclosing_stmt(#20156,#20151) +expr_containers(#20156,#20001) +literals("42","42",#20156) +#20157=* +stmts(#20157,14,#20147,1,"for (le ... }") +#20158=@"loc,{#10000},5,9,8,9" +locations_default(#20158,#10000,5,9,8,9) +hasLocation(#20157,#20158) +stmt_containers(#20157,#20001) +#20159=* +scopes(#20159,5) +scopenodes(#20157,#20159) +scopenesting(#20159,#20149) +#20160=@"var;{x};{#20159}" +variables(#20160,"x",#20159) +#20161=* +exprs(#20161,27,#20157,1,"x<42") +#20162=@"loc,{#10000},5,28,5,31" +locations_default(#20162,#10000,5,28,5,31) +hasLocation(#20161,#20162) +enclosing_stmt(#20161,#20157) +expr_containers(#20161,#20001) #20163=* -exprs(#20163,3,#20160,1,"42") -hasLocation(#20163,#20072) -enclosing_stmt(#20163,#20156) +exprs(#20163,79,#20161,0,"x") +hasLocation(#20163,#20068) +enclosing_stmt(#20163,#20157) expr_containers(#20163,#20001) -literals("42","42",#20163) +literals("x","x",#20163) +bind(#20163,#20160) #20164=* -stmts(#20164,23,#20156,0,"let x = x-19") -#20165=@"loc,{#10000},5,14,5,25" -locations_default(#20165,#10000,5,14,5,25) -hasLocation(#20164,#20165) -stmt_containers(#20164,#20001) -#20166=* -exprs(#20166,64,#20164,0,"x = x-19") -#20167=@"loc,{#10000},5,18,5,25" -locations_default(#20167,#10000,5,18,5,25) -hasLocation(#20166,#20167) -enclosing_stmt(#20166,#20164) -expr_containers(#20166,#20001) -#20168=* -exprs(#20168,78,#20166,0,"x") -hasLocation(#20168,#20056) -enclosing_stmt(#20168,#20164) -expr_containers(#20168,#20001) -literals("x","x",#20168) -decl(#20168,#20159) +exprs(#20164,3,#20161,1,"42") +hasLocation(#20164,#20072) +enclosing_stmt(#20164,#20157) +expr_containers(#20164,#20001) +literals("42","42",#20164) +#20165=* +stmts(#20165,23,#20157,0,"let x = x-19") +#20166=@"loc,{#10000},5,14,5,25" +locations_default(#20166,#10000,5,14,5,25) +hasLocation(#20165,#20166) +stmt_containers(#20165,#20001) +#20167=* +exprs(#20167,64,#20165,0,"x = x-19") +#20168=@"loc,{#10000},5,18,5,25" +locations_default(#20168,#10000,5,18,5,25) +hasLocation(#20167,#20168) +enclosing_stmt(#20167,#20165) +expr_containers(#20167,#20001) #20169=* -exprs(#20169,35,#20166,1,"x-19") -#20170=@"loc,{#10000},5,22,5,25" -locations_default(#20170,#10000,5,22,5,25) -hasLocation(#20169,#20170) -enclosing_stmt(#20169,#20164) +exprs(#20169,78,#20167,0,"x") +hasLocation(#20169,#20056) +enclosing_stmt(#20169,#20165) expr_containers(#20169,#20001) -#20171=* -exprs(#20171,79,#20169,0,"x") -hasLocation(#20171,#20060) -enclosing_stmt(#20171,#20164) -expr_containers(#20171,#20001) -literals("x","x",#20171) -bind(#20171,#20149) +literals("x","x",#20169) +decl(#20169,#20160) +#20170=* +exprs(#20170,35,#20167,1,"x-19") +#20171=@"loc,{#10000},5,22,5,25" +locations_default(#20171,#10000,5,22,5,25) +hasLocation(#20170,#20171) +enclosing_stmt(#20170,#20165) +expr_containers(#20170,#20001) #20172=* -exprs(#20172,3,#20169,1,"19") -hasLocation(#20172,#20064) -enclosing_stmt(#20172,#20164) +exprs(#20172,79,#20170,0,"x") +hasLocation(#20172,#20060) +enclosing_stmt(#20172,#20165) expr_containers(#20172,#20001) -literals("19","19",#20172) +literals("x","x",#20172) +bind(#20172,#20150) #20173=* -stmts(#20173,1,#20156,3,"{\n ... }") -#20174=@"loc,{#10000},5,35,8,9" -locations_default(#20174,#10000,5,35,8,9) -hasLocation(#20173,#20174) -stmt_containers(#20173,#20001) -#20175=* -scopes(#20175,4) -scopenodes(#20173,#20175) -scopenesting(#20175,#20158) -#20176=@"var;{x};{#20175}" -variables(#20176,"x",#20175) -#20177=* -stmts(#20177,23,#20173,0,"let x = 56;") -#20178=@"loc,{#10000},6,13,6,23" -locations_default(#20178,#10000,6,13,6,23) -hasLocation(#20177,#20178) -stmt_containers(#20177,#20001) -#20179=* -exprs(#20179,64,#20177,0,"x = 56") -#20180=@"loc,{#10000},6,17,6,22" -locations_default(#20180,#10000,6,17,6,22) -hasLocation(#20179,#20180) -enclosing_stmt(#20179,#20177) -expr_containers(#20179,#20001) -#20181=* -exprs(#20181,78,#20179,0,"x") -hasLocation(#20181,#20082) -enclosing_stmt(#20181,#20177) -expr_containers(#20181,#20001) -literals("x","x",#20181) -decl(#20181,#20176) +exprs(#20173,3,#20170,1,"19") +hasLocation(#20173,#20064) +enclosing_stmt(#20173,#20165) +expr_containers(#20173,#20001) +literals("19","19",#20173) +#20174=* +stmts(#20174,1,#20157,3,"{\n ... }") +#20175=@"loc,{#10000},5,35,8,9" +locations_default(#20175,#10000,5,35,8,9) +hasLocation(#20174,#20175) +stmt_containers(#20174,#20001) +#20176=* +scopes(#20176,4) +scopenodes(#20174,#20176) +scopenesting(#20176,#20159) +#20177=@"var;{x};{#20176}" +variables(#20177,"x",#20176) +#20178=* +stmts(#20178,23,#20174,0,"let x = 56;") +#20179=@"loc,{#10000},6,13,6,23" +locations_default(#20179,#10000,6,13,6,23) +hasLocation(#20178,#20179) +stmt_containers(#20178,#20001) +#20180=* +exprs(#20180,64,#20178,0,"x = 56") +#20181=@"loc,{#10000},6,17,6,22" +locations_default(#20181,#10000,6,17,6,22) +hasLocation(#20180,#20181) +enclosing_stmt(#20180,#20178) +expr_containers(#20180,#20001) #20182=* -exprs(#20182,3,#20179,1,"56") -hasLocation(#20182,#20086) -enclosing_stmt(#20182,#20177) +exprs(#20182,78,#20180,0,"x") +hasLocation(#20182,#20082) +enclosing_stmt(#20182,#20178) expr_containers(#20182,#20001) -literals("56","56",#20182) +literals("x","x",#20182) +decl(#20182,#20177) #20183=* -stmts(#20183,2,#20173,1,"console.log(x);") -#20184=@"loc,{#10000},7,13,7,27" -locations_default(#20184,#10000,7,13,7,27) -hasLocation(#20183,#20184) -stmt_containers(#20183,#20001) -#20185=* -exprs(#20185,13,#20183,0,"console.log(x)") -#20186=@"loc,{#10000},7,13,7,26" -locations_default(#20186,#10000,7,13,7,26) -hasLocation(#20185,#20186) -enclosing_stmt(#20185,#20183) -expr_containers(#20185,#20001) -#20187=* -exprs(#20187,14,#20185,-1,"console.log") -#20188=@"loc,{#10000},7,13,7,23" -locations_default(#20188,#10000,7,13,7,23) -hasLocation(#20187,#20188) -enclosing_stmt(#20187,#20183) -expr_containers(#20187,#20001) -#20189=* -exprs(#20189,79,#20187,0,"console") -hasLocation(#20189,#20090) -enclosing_stmt(#20189,#20183) -expr_containers(#20189,#20001) -literals("console","console",#20189) -#20190=@"var;{console};{#20000}" -variables(#20190,"console",#20000) -bind(#20189,#20190) -#20191=* -exprs(#20191,0,#20187,1,"log") -hasLocation(#20191,#20094) -enclosing_stmt(#20191,#20183) -expr_containers(#20191,#20001) -literals("log","log",#20191) +exprs(#20183,3,#20180,1,"56") +hasLocation(#20183,#20086) +enclosing_stmt(#20183,#20178) +expr_containers(#20183,#20001) +literals("56","56",#20183) +#20184=* +stmts(#20184,2,#20174,1,"console.log(x);") +#20185=@"loc,{#10000},7,13,7,27" +locations_default(#20185,#10000,7,13,7,27) +hasLocation(#20184,#20185) +stmt_containers(#20184,#20001) +#20186=* +exprs(#20186,13,#20184,0,"console.log(x)") +#20187=@"loc,{#10000},7,13,7,26" +locations_default(#20187,#10000,7,13,7,26) +hasLocation(#20186,#20187) +enclosing_stmt(#20186,#20184) +expr_containers(#20186,#20001) +#20188=* +exprs(#20188,14,#20186,-1,"console.log") +#20189=@"loc,{#10000},7,13,7,23" +locations_default(#20189,#10000,7,13,7,23) +hasLocation(#20188,#20189) +enclosing_stmt(#20188,#20184) +expr_containers(#20188,#20001) +#20190=* +exprs(#20190,79,#20188,0,"console") +hasLocation(#20190,#20090) +enclosing_stmt(#20190,#20184) +expr_containers(#20190,#20001) +literals("console","console",#20190) +#20191=@"var;{console};{#20000}" +variables(#20191,"console",#20000) +bind(#20190,#20191) #20192=* -exprs(#20192,79,#20185,0,"x") -hasLocation(#20192,#20098) -enclosing_stmt(#20192,#20183) +exprs(#20192,0,#20188,1,"log") +hasLocation(#20192,#20094) +enclosing_stmt(#20192,#20184) expr_containers(#20192,#20001) -literals("x","x",#20192) -bind(#20192,#20176) +literals("log","log",#20192) #20193=* -stmts(#20193,15,#20146,2,"for (le ... x;") -#20194=@"loc,{#10000},9,9,10,14" -locations_default(#20194,#10000,9,9,10,14) -hasLocation(#20193,#20194) -stmt_containers(#20193,#20001) -#20195=* -exprs(#20195,8,#20193,1,"{ x: x }") -#20196=@"loc,{#10000},9,23,9,30" -locations_default(#20196,#10000,9,23,9,30) -hasLocation(#20195,#20196) -enclosing_stmt(#20195,#20193) -expr_containers(#20195,#20001) -#20197=* -properties(#20197,#20195,0,0,"x: x") -#20198=@"loc,{#10000},9,25,9,28" -locations_default(#20198,#10000,9,25,9,28) -hasLocation(#20197,#20198) -#20199=* -exprs(#20199,0,#20197,0,"x") -hasLocation(#20199,#20118) -enclosing_stmt(#20199,#20193) -expr_containers(#20199,#20001) -literals("x","x",#20199) +exprs(#20193,79,#20186,0,"x") +hasLocation(#20193,#20098) +enclosing_stmt(#20193,#20184) +expr_containers(#20193,#20001) +literals("x","x",#20193) +bind(#20193,#20177) +#20194=* +stmts(#20194,15,#20147,2,"for (le ... x;") +#20195=@"loc,{#10000},9,9,10,14" +locations_default(#20195,#10000,9,9,10,14) +hasLocation(#20194,#20195) +stmt_containers(#20194,#20001) +#20196=* +exprs(#20196,8,#20194,1,"{ x: x }") +#20197=@"loc,{#10000},9,23,9,30" +locations_default(#20197,#10000,9,23,9,30) +hasLocation(#20196,#20197) +enclosing_stmt(#20196,#20194) +expr_containers(#20196,#20001) +#20198=* +properties(#20198,#20196,0,0,"x: x") +#20199=@"loc,{#10000},9,25,9,28" +locations_default(#20199,#10000,9,25,9,28) +hasLocation(#20198,#20199) #20200=* -exprs(#20200,79,#20197,1,"x") -hasLocation(#20200,#20122) -enclosing_stmt(#20200,#20193) +exprs(#20200,0,#20198,0,"x") +hasLocation(#20200,#20118) +enclosing_stmt(#20200,#20194) expr_containers(#20200,#20001) literals("x","x",#20200) -bind(#20200,#20149) #20201=* -scopes(#20201,6) -scopenodes(#20193,#20201) -scopenesting(#20201,#20148) -#20202=@"var;{x};{#20201}" -variables(#20202,"x",#20201) -#20203=* -stmts(#20203,23,#20193,0,"let x") -#20204=@"loc,{#10000},9,14,9,18" -locations_default(#20204,#10000,9,14,9,18) -hasLocation(#20203,#20204) -stmt_containers(#20203,#20001) -#20205=* -exprs(#20205,64,#20203,0,"x") -hasLocation(#20205,#20112) -enclosing_stmt(#20205,#20203) -expr_containers(#20205,#20001) +exprs(#20201,79,#20198,1,"x") +hasLocation(#20201,#20122) +enclosing_stmt(#20201,#20194) +expr_containers(#20201,#20001) +literals("x","x",#20201) +bind(#20201,#20150) +#20202=* +scopes(#20202,6) +scopenodes(#20194,#20202) +scopenesting(#20202,#20149) +#20203=@"var;{x};{#20202}" +variables(#20203,"x",#20202) +#20204=* +stmts(#20204,23,#20194,0,"let x") +#20205=@"loc,{#10000},9,14,9,18" +locations_default(#20205,#10000,9,14,9,18) +hasLocation(#20204,#20205) +stmt_containers(#20204,#20001) #20206=* -exprs(#20206,78,#20205,0,"x") +exprs(#20206,64,#20204,0,"x") hasLocation(#20206,#20112) -enclosing_stmt(#20206,#20203) +enclosing_stmt(#20206,#20204) expr_containers(#20206,#20001) -literals("x","x",#20206) -decl(#20206,#20202) #20207=* -stmts(#20207,2,#20193,2,"x;") -#20208=@"loc,{#10000},10,13,10,14" -locations_default(#20208,#10000,10,13,10,14) -hasLocation(#20207,#20208) -stmt_containers(#20207,#20001) -#20209=* -exprs(#20209,79,#20207,0,"x") -hasLocation(#20209,#20128) -enclosing_stmt(#20209,#20207) -expr_containers(#20209,#20001) -literals("x","x",#20209) -bind(#20209,#20202) +exprs(#20207,78,#20206,0,"x") +hasLocation(#20207,#20112) +enclosing_stmt(#20207,#20204) +expr_containers(#20207,#20001) +literals("x","x",#20207) +decl(#20207,#20203) +#20208=* +stmts(#20208,2,#20194,2,"x;") +#20209=@"loc,{#10000},10,13,10,14" +locations_default(#20209,#10000,10,13,10,14) +hasLocation(#20208,#20209) +stmt_containers(#20208,#20001) #20210=* -entry_cfg_node(#20210,#20001) -#20211=@"loc,{#10000},1,1,1,0" -locations_default(#20211,#10000,1,1,1,0) -hasLocation(#20210,#20211) -#20212=* -exit_cfg_node(#20212,#20001) -hasLocation(#20212,#20135) -successor(#20195,#20199) -successor(#20200,#20197) -successor(#20199,#20200) -successor(#20197,#20193) -successor(#20193,#20203) -successor(#20193,#20212) -successor(#20207,#20209) -successor(#20209,#20193) -successor(#20203,#20206) -successor(#20206,#20205) -successor(#20205,#20207) -successor(#20156,#20164) -successor(#20164,#20168) -successor(#20172,#20169) -successor(#20171,#20172) -successor(#20169,#20166) -successor(#20168,#20171) -successor(#20166,#20162) -successor(#20163,#20160) -successor(#20162,#20163) +exprs(#20210,79,#20208,0,"x") +hasLocation(#20210,#20128) +enclosing_stmt(#20210,#20208) +expr_containers(#20210,#20001) +literals("x","x",#20210) +bind(#20210,#20203) +#20211=* +entry_cfg_node(#20211,#20001) +#20212=@"loc,{#10000},1,1,1,0" +locations_default(#20212,#10000,1,1,1,0) +hasLocation(#20211,#20212) #20213=* -guard_node(#20213,1,#20160) -hasLocation(#20213,#20161) -successor(#20213,#20173) +exit_cfg_node(#20213,#20001) +hasLocation(#20213,#20135) +successor(#20196,#20200) +successor(#20201,#20198) +successor(#20200,#20201) +successor(#20198,#20194) +successor(#20194,#20204) +successor(#20194,#20213) +successor(#20208,#20210) +successor(#20210,#20194) +successor(#20204,#20207) +successor(#20207,#20206) +successor(#20206,#20208) +successor(#20157,#20165) +successor(#20165,#20169) +successor(#20173,#20170) +successor(#20172,#20173) +successor(#20170,#20167) +successor(#20169,#20172) +successor(#20167,#20163) +successor(#20164,#20161) +successor(#20163,#20164) #20214=* -guard_node(#20214,0,#20160) -hasLocation(#20214,#20161) -successor(#20214,#20195) -successor(#20160,#20213) -successor(#20160,#20214) -successor(#20183,#20189) -successor(#20192,#20185) -successor(#20191,#20187) -successor(#20189,#20191) -successor(#20187,#20192) -successor(#20185,#20162) -successor(#20177,#20181) -successor(#20182,#20179) -successor(#20181,#20182) -successor(#20179,#20183) -successor(#20173,#20177) -successor(#20150,#20154) -successor(#20155,#20152) -successor(#20154,#20155) -successor(#20152,#20156) -successor(#20146,#20150) -successor(#20140,#20144) -successor(#20145,#20142) -successor(#20144,#20145) -successor(#20142,#20146) -successor(#20137,#20140) -successor(#20210,#20137) +guard_node(#20214,1,#20161) +hasLocation(#20214,#20162) +successor(#20214,#20174) +#20215=* +guard_node(#20215,0,#20161) +hasLocation(#20215,#20162) +successor(#20215,#20196) +successor(#20161,#20214) +successor(#20161,#20215) +successor(#20184,#20190) +successor(#20193,#20186) +successor(#20192,#20188) +successor(#20190,#20192) +successor(#20188,#20193) +successor(#20186,#20163) +successor(#20178,#20182) +successor(#20183,#20180) +successor(#20182,#20183) +successor(#20180,#20184) +successor(#20174,#20178) +successor(#20151,#20155) +successor(#20156,#20153) +successor(#20155,#20156) +successor(#20153,#20157) +successor(#20147,#20151) +successor(#20141,#20145) +successor(#20146,#20143) +successor(#20145,#20146) +successor(#20143,#20147) +successor(#20138,#20141) +successor(#20211,#20138) numlines(#10000,12,12,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/let2.js.trap b/javascript/extractor/tests/es2015/output/trap/let2.js.trap index a05cddac4106..b3fdace73880 100644 --- a/javascript/extractor/tests/es2015/output/trap/let2.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/let2.js.trap @@ -58,42 +58,44 @@ locations_default(#20018,#10000,1,1,2,0) hasLocation(#20001,#20018) #20019=@"var;{x};{#20000}" variables(#20019,"x",#20000) -#20020=* -stmts(#20020,23,#20001,0,"let /* **/ x = 42;") -hasLocation(#20020,#20005) -stmt_containers(#20020,#20001) +#20020=@"var;{this};{#20000}" +variables(#20020,"this",#20000) #20021=* -exprs(#20021,64,#20020,0,"x = 42") -#20022=@"loc,{#10000},1,12,1,17" -locations_default(#20022,#10000,1,12,1,17) -hasLocation(#20021,#20022) -enclosing_stmt(#20021,#20020) -expr_containers(#20021,#20001) -#20023=* -exprs(#20023,78,#20021,0,"x") -hasLocation(#20023,#20009) -enclosing_stmt(#20023,#20020) -expr_containers(#20023,#20001) -literals("x","x",#20023) -decl(#20023,#20019) +stmts(#20021,23,#20001,0,"let /* **/ x = 42;") +hasLocation(#20021,#20005) +stmt_containers(#20021,#20001) +#20022=* +exprs(#20022,64,#20021,0,"x = 42") +#20023=@"loc,{#10000},1,12,1,17" +locations_default(#20023,#10000,1,12,1,17) +hasLocation(#20022,#20023) +enclosing_stmt(#20022,#20021) +expr_containers(#20022,#20001) #20024=* -exprs(#20024,3,#20021,1,"42") -hasLocation(#20024,#20013) -enclosing_stmt(#20024,#20020) +exprs(#20024,78,#20022,0,"x") +hasLocation(#20024,#20009) +enclosing_stmt(#20024,#20021) expr_containers(#20024,#20001) -literals("42","42",#20024) +literals("x","x",#20024) +decl(#20024,#20019) #20025=* -entry_cfg_node(#20025,#20001) -#20026=@"loc,{#10000},1,1,1,0" -locations_default(#20026,#10000,1,1,1,0) -hasLocation(#20025,#20026) -#20027=* -exit_cfg_node(#20027,#20001) -hasLocation(#20027,#20017) -successor(#20020,#20023) -successor(#20024,#20021) -successor(#20023,#20024) -successor(#20021,#20027) -successor(#20025,#20020) +exprs(#20025,3,#20022,1,"42") +hasLocation(#20025,#20013) +enclosing_stmt(#20025,#20021) +expr_containers(#20025,#20001) +literals("42","42",#20025) +#20026=* +entry_cfg_node(#20026,#20001) +#20027=@"loc,{#10000},1,1,1,0" +locations_default(#20027,#10000,1,1,1,0) +hasLocation(#20026,#20027) +#20028=* +exit_cfg_node(#20028,#20001) +hasLocation(#20028,#20017) +successor(#20021,#20024) +successor(#20025,#20022) +successor(#20024,#20025) +successor(#20022,#20028) +successor(#20026,#20021) numlines(#10000,1,1,1) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/nested_import.js.trap b/javascript/extractor/tests/es2015/output/trap/nested_import.js.trap index 7de82196cf64..f549fc0da0d6 100644 --- a/javascript/extractor/tests/es2015/output/trap/nested_import.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/nested_import.js.trap @@ -195,172 +195,174 @@ local_namespace_names(#20070,"y",#20064) variables(#20065,"x",#20064) local_type_names(#20067,"x",#20064) local_namespace_names(#20069,"x",#20064) -#20071=* -stmts(#20071,27,#20001,0,"import ... om 'm';") -hasLocation(#20071,#20003) -stmt_containers(#20071,#20001) +#20071=@"var;{this};{#20064}" +variables(#20071,"this",#20064) #20072=* -exprs(#20072,4,#20071,-1,"'m'") -hasLocation(#20072,#20023) -enclosing_stmt(#20072,#20071) -expr_containers(#20072,#20001) -literals("m","'m'",#20072) +stmts(#20072,27,#20001,0,"import ... om 'm';") +hasLocation(#20072,#20003) +stmt_containers(#20072,#20001) #20073=* -regexpterm(#20073,14,#20072,0,"m") -#20074=@"loc,{#10000},1,20,1,20" -locations_default(#20074,#10000,1,20,1,20) -hasLocation(#20073,#20074) -regexp_const_value(#20073,"m") -#20075=* -exprs(#20075,83,#20071,0,"x") -hasLocation(#20075,#20017) -enclosing_stmt(#20075,#20071) -expr_containers(#20075,#20001) +exprs(#20073,4,#20072,-1,"'m'") +hasLocation(#20073,#20023) +enclosing_stmt(#20073,#20072) +expr_containers(#20073,#20001) +literals("m","'m'",#20073) +#20074=* +regexpterm(#20074,14,#20073,0,"m") +#20075=@"loc,{#10000},1,20,1,20" +locations_default(#20075,#10000,1,20,1,20) +hasLocation(#20074,#20075) +regexp_const_value(#20074,"m") #20076=* -exprs(#20076,0,#20075,0,"x") +exprs(#20076,83,#20072,0,"x") hasLocation(#20076,#20017) -enclosing_stmt(#20076,#20071) +enclosing_stmt(#20076,#20072) expr_containers(#20076,#20001) -literals("x","x",#20076) #20077=* -exprs(#20077,78,#20075,1,"x") +exprs(#20077,0,#20076,0,"x") hasLocation(#20077,#20017) -enclosing_stmt(#20077,#20071) +enclosing_stmt(#20077,#20072) expr_containers(#20077,#20001) literals("x","x",#20077) -decl(#20077,#20065) -typedecl(#20077,#20067) -namespacedecl(#20077,#20069) #20078=* -stmts(#20078,3,#20001,1,"if (!x) ... = y;\n}") -#20079=@"loc,{#10000},2,1,5,1" -locations_default(#20079,#10000,2,1,5,1) -hasLocation(#20078,#20079) -stmt_containers(#20078,#20001) -#20080=* -exprs(#20080,18,#20078,0,"!x") -#20081=@"loc,{#10000},2,5,2,6" -locations_default(#20081,#10000,2,5,2,6) -hasLocation(#20080,#20081) -enclosing_stmt(#20080,#20078) -expr_containers(#20080,#20001) -#20082=* -exprs(#20082,79,#20080,0,"x") -hasLocation(#20082,#20033) -enclosing_stmt(#20082,#20078) -expr_containers(#20082,#20001) -literals("x","x",#20082) -bind(#20082,#20065) +exprs(#20078,78,#20076,1,"x") +hasLocation(#20078,#20017) +enclosing_stmt(#20078,#20072) +expr_containers(#20078,#20001) +literals("x","x",#20078) +decl(#20078,#20065) +typedecl(#20078,#20067) +namespacedecl(#20078,#20069) +#20079=* +stmts(#20079,3,#20001,1,"if (!x) ... = y;\n}") +#20080=@"loc,{#10000},2,1,5,1" +locations_default(#20080,#10000,2,1,5,1) +hasLocation(#20079,#20080) +stmt_containers(#20079,#20001) +#20081=* +exprs(#20081,18,#20079,0,"!x") +#20082=@"loc,{#10000},2,5,2,6" +locations_default(#20082,#10000,2,5,2,6) +hasLocation(#20081,#20082) +enclosing_stmt(#20081,#20079) +expr_containers(#20081,#20001) #20083=* -stmts(#20083,1,#20078,1,"{\n imp ... = y;\n}") -#20084=@"loc,{#10000},2,9,5,1" -locations_default(#20084,#10000,2,9,5,1) -hasLocation(#20083,#20084) -stmt_containers(#20083,#20001) -#20085=* -scopes(#20085,4) -scopenodes(#20083,#20085) -scopenesting(#20085,#20064) -#20086=@"var;{y};{#20085}" -variables(#20086,"y",#20085) -#20087=@"local_type_name;{y};{#20085}" -local_type_names(#20087,"y",#20085) -#20088=@"local_namespace_name;{y};{#20085}" -local_namespace_names(#20088,"y",#20085) -#20089=* -stmts(#20089,27,#20083,0,"import ... om 'm';") -#20090=@"loc,{#10000},3,3,3,24" -locations_default(#20090,#10000,3,3,3,24) -hasLocation(#20089,#20090) -stmt_containers(#20089,#20001) -#20091=* -exprs(#20091,4,#20089,-1,"'m'") -hasLocation(#20091,#20049) -enclosing_stmt(#20091,#20089) -expr_containers(#20091,#20001) -literals("m","'m'",#20091) +exprs(#20083,79,#20081,0,"x") +hasLocation(#20083,#20033) +enclosing_stmt(#20083,#20079) +expr_containers(#20083,#20001) +literals("x","x",#20083) +bind(#20083,#20065) +#20084=* +stmts(#20084,1,#20079,1,"{\n imp ... = y;\n}") +#20085=@"loc,{#10000},2,9,5,1" +locations_default(#20085,#10000,2,9,5,1) +hasLocation(#20084,#20085) +stmt_containers(#20084,#20001) +#20086=* +scopes(#20086,4) +scopenodes(#20084,#20086) +scopenesting(#20086,#20064) +#20087=@"var;{y};{#20086}" +variables(#20087,"y",#20086) +#20088=@"local_type_name;{y};{#20086}" +local_type_names(#20088,"y",#20086) +#20089=@"local_namespace_name;{y};{#20086}" +local_namespace_names(#20089,"y",#20086) +#20090=* +stmts(#20090,27,#20084,0,"import ... om 'm';") +#20091=@"loc,{#10000},3,3,3,24" +locations_default(#20091,#10000,3,3,3,24) +hasLocation(#20090,#20091) +stmt_containers(#20090,#20001) #20092=* -regexpterm(#20092,14,#20091,0,"m") -#20093=@"loc,{#10000},3,22,3,22" -locations_default(#20093,#10000,3,22,3,22) -hasLocation(#20092,#20093) -regexp_const_value(#20092,"m") -#20094=* -exprs(#20094,83,#20089,0,"y") -hasLocation(#20094,#20043) -enclosing_stmt(#20094,#20089) -expr_containers(#20094,#20001) +exprs(#20092,4,#20090,-1,"'m'") +hasLocation(#20092,#20049) +enclosing_stmt(#20092,#20090) +expr_containers(#20092,#20001) +literals("m","'m'",#20092) +#20093=* +regexpterm(#20093,14,#20092,0,"m") +#20094=@"loc,{#10000},3,22,3,22" +locations_default(#20094,#10000,3,22,3,22) +hasLocation(#20093,#20094) +regexp_const_value(#20093,"m") #20095=* -exprs(#20095,0,#20094,0,"y") +exprs(#20095,83,#20090,0,"y") hasLocation(#20095,#20043) -enclosing_stmt(#20095,#20089) +enclosing_stmt(#20095,#20090) expr_containers(#20095,#20001) -literals("y","y",#20095) #20096=* -exprs(#20096,78,#20094,1,"y") +exprs(#20096,0,#20095,0,"y") hasLocation(#20096,#20043) -enclosing_stmt(#20096,#20089) +enclosing_stmt(#20096,#20090) expr_containers(#20096,#20001) literals("y","y",#20096) -decl(#20096,#20086) -typedecl(#20096,#20087) -namespacedecl(#20096,#20088) #20097=* -stmts(#20097,2,#20083,1,"x = y;") -#20098=@"loc,{#10000},4,3,4,8" -locations_default(#20098,#10000,4,3,4,8) -hasLocation(#20097,#20098) -stmt_containers(#20097,#20001) -#20099=* -exprs(#20099,47,#20097,0,"x = y") -#20100=@"loc,{#10000},4,3,4,7" -locations_default(#20100,#10000,4,3,4,7) -hasLocation(#20099,#20100) -enclosing_stmt(#20099,#20097) -expr_containers(#20099,#20001) -#20101=* -exprs(#20101,79,#20099,0,"x") -hasLocation(#20101,#20053) -enclosing_stmt(#20101,#20097) -expr_containers(#20101,#20001) -literals("x","x",#20101) -bind(#20101,#20065) +exprs(#20097,78,#20095,1,"y") +hasLocation(#20097,#20043) +enclosing_stmt(#20097,#20090) +expr_containers(#20097,#20001) +literals("y","y",#20097) +decl(#20097,#20087) +typedecl(#20097,#20088) +namespacedecl(#20097,#20089) +#20098=* +stmts(#20098,2,#20084,1,"x = y;") +#20099=@"loc,{#10000},4,3,4,8" +locations_default(#20099,#10000,4,3,4,8) +hasLocation(#20098,#20099) +stmt_containers(#20098,#20001) +#20100=* +exprs(#20100,47,#20098,0,"x = y") +#20101=@"loc,{#10000},4,3,4,7" +locations_default(#20101,#10000,4,3,4,7) +hasLocation(#20100,#20101) +enclosing_stmt(#20100,#20098) +expr_containers(#20100,#20001) #20102=* -exprs(#20102,79,#20099,1,"y") -hasLocation(#20102,#20057) -enclosing_stmt(#20102,#20097) +exprs(#20102,79,#20100,0,"x") +hasLocation(#20102,#20053) +enclosing_stmt(#20102,#20098) expr_containers(#20102,#20001) -literals("y","y",#20102) -bind(#20102,#20086) +literals("x","x",#20102) +bind(#20102,#20065) #20103=* -entry_cfg_node(#20103,#20001) -#20104=@"loc,{#10000},1,1,1,0" -locations_default(#20104,#10000,1,1,1,0) -hasLocation(#20103,#20104) -#20105=* -exit_cfg_node(#20105,#20001) -hasLocation(#20105,#20062) -successor(#20078,#20082) -successor(#20082,#20080) +exprs(#20103,79,#20100,1,"y") +hasLocation(#20103,#20057) +enclosing_stmt(#20103,#20098) +expr_containers(#20103,#20001) +literals("y","y",#20103) +bind(#20103,#20087) +#20104=* +entry_cfg_node(#20104,#20001) +#20105=@"loc,{#10000},1,1,1,0" +locations_default(#20105,#10000,1,1,1,0) +hasLocation(#20104,#20105) #20106=* -guard_node(#20106,0,#20082) -hasLocation(#20106,#20033) -successor(#20106,#20083) +exit_cfg_node(#20106,#20001) +hasLocation(#20106,#20062) +successor(#20079,#20083) +successor(#20083,#20081) #20107=* -guard_node(#20107,1,#20082) +guard_node(#20107,0,#20083) hasLocation(#20107,#20033) -successor(#20107,#20105) -successor(#20080,#20106) -successor(#20080,#20107) -successor(#20097,#20101) -successor(#20102,#20099) -successor(#20101,#20102) -successor(#20099,#20105) -successor(#20089,#20094) -successor(#20094,#20097) -successor(#20083,#20089) -successor(#20071,#20078) -successor(#20075,#20071) -successor(#20103,#20075) +successor(#20107,#20084) +#20108=* +guard_node(#20108,1,#20083) +hasLocation(#20108,#20033) +successor(#20108,#20106) +successor(#20081,#20107) +successor(#20081,#20108) +successor(#20098,#20102) +successor(#20103,#20100) +successor(#20102,#20103) +successor(#20100,#20106) +successor(#20090,#20095) +successor(#20095,#20098) +successor(#20084,#20090) +successor(#20072,#20079) +successor(#20076,#20072) +successor(#20104,#20076) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/new_target.js.trap b/javascript/extractor/tests/es2015/output/trap/new_target.js.trap index f517fb8e8988..fc745ccfe479 100644 --- a/javascript/extractor/tests/es2015/output/trap/new_target.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/new_target.js.trap @@ -102,78 +102,82 @@ locations_default(#20035,#10000,1,1,3,1) hasLocation(#20001,#20035) #20036=@"var;{f};{#20000}" variables(#20036,"f",#20000) -#20037=* -stmts(#20037,17,#20001,0,"functio ... rget;\n}") -hasLocation(#20037,#20035) -stmt_containers(#20037,#20001) +#20037=@"var;{this};{#20000}" +variables(#20037,"this",#20000) #20038=* -exprs(#20038,78,#20037,-1,"f") -hasLocation(#20038,#20011) -expr_containers(#20038,#20037) -literals("f","f",#20038) -decl(#20038,#20036) +stmts(#20038,17,#20001,0,"functio ... rget;\n}") +hasLocation(#20038,#20035) +stmt_containers(#20038,#20001) #20039=* -scopes(#20039,1) -scopenodes(#20037,#20039) -scopenesting(#20039,#20000) -#20040=@"var;{arguments};{#20039}" -variables(#20040,"arguments",#20039) -is_arguments_object(#20040) -#20041=* -stmts(#20041,1,#20037,-2,"{\n ret ... rget;\n}") -#20042=@"loc,{#10000},1,14,3,1" -locations_default(#20042,#10000,1,14,3,1) -hasLocation(#20041,#20042) -stmt_containers(#20041,#20037) +exprs(#20039,78,#20038,-1,"f") +hasLocation(#20039,#20011) +expr_containers(#20039,#20038) +literals("f","f",#20039) +decl(#20039,#20036) +#20040=* +scopes(#20040,1) +scopenodes(#20038,#20040) +scopenesting(#20040,#20000) +#20041=@"var;{this};{#20040}" +variables(#20041,"this",#20040) +#20042=@"var;{arguments};{#20040}" +variables(#20042,"arguments",#20040) +is_arguments_object(#20042) #20043=* -stmts(#20043,9,#20041,0,"return !!new.target;") -#20044=@"loc,{#10000},2,3,2,22" -locations_default(#20044,#10000,2,3,2,22) +stmts(#20043,1,#20038,-2,"{\n ret ... rget;\n}") +#20044=@"loc,{#10000},1,14,3,1" +locations_default(#20044,#10000,1,14,3,1) hasLocation(#20043,#20044) -stmt_containers(#20043,#20037) +stmt_containers(#20043,#20038) #20045=* -exprs(#20045,18,#20043,0,"!!new.target") -#20046=@"loc,{#10000},2,10,2,21" -locations_default(#20046,#10000,2,10,2,21) +stmts(#20045,9,#20043,0,"return !!new.target;") +#20046=@"loc,{#10000},2,3,2,22" +locations_default(#20046,#10000,2,3,2,22) hasLocation(#20045,#20046) -enclosing_stmt(#20045,#20043) -expr_containers(#20045,#20037) +stmt_containers(#20045,#20038) #20047=* -exprs(#20047,18,#20045,0,"!new.target") -#20048=@"loc,{#10000},2,11,2,21" -locations_default(#20048,#10000,2,11,2,21) +exprs(#20047,18,#20045,0,"!!new.target") +#20048=@"loc,{#10000},2,10,2,21" +locations_default(#20048,#10000,2,10,2,21) hasLocation(#20047,#20048) -enclosing_stmt(#20047,#20043) -expr_containers(#20047,#20037) +enclosing_stmt(#20047,#20045) +expr_containers(#20047,#20038) #20049=* -exprs(#20049,82,#20047,0,"new.target") -#20050=@"loc,{#10000},2,12,2,21" -locations_default(#20050,#10000,2,12,2,21) +exprs(#20049,18,#20047,0,"!new.target") +#20050=@"loc,{#10000},2,11,2,21" +locations_default(#20050,#10000,2,11,2,21) hasLocation(#20049,#20050) -enclosing_stmt(#20049,#20043) -expr_containers(#20049,#20037) +enclosing_stmt(#20049,#20045) +expr_containers(#20049,#20038) #20051=* -entry_cfg_node(#20051,#20001) -#20052=@"loc,{#10000},1,1,1,0" -locations_default(#20052,#10000,1,1,1,0) +exprs(#20051,82,#20049,0,"new.target") +#20052=@"loc,{#10000},2,12,2,21" +locations_default(#20052,#10000,2,12,2,21) hasLocation(#20051,#20052) +enclosing_stmt(#20051,#20045) +expr_containers(#20051,#20038) #20053=* -exit_cfg_node(#20053,#20001) -hasLocation(#20053,#20034) -successor(#20037,#20053) -#20054=* -entry_cfg_node(#20054,#20037) -hasLocation(#20054,#20052) +entry_cfg_node(#20053,#20001) +#20054=@"loc,{#10000},1,1,1,0" +locations_default(#20054,#10000,1,1,1,0) +hasLocation(#20053,#20054) #20055=* -exit_cfg_node(#20055,#20037) +exit_cfg_node(#20055,#20001) hasLocation(#20055,#20034) +successor(#20038,#20055) +#20056=* +entry_cfg_node(#20056,#20038) +hasLocation(#20056,#20054) +#20057=* +exit_cfg_node(#20057,#20038) +hasLocation(#20057,#20034) +successor(#20051,#20049) successor(#20049,#20047) successor(#20047,#20045) -successor(#20045,#20043) -successor(#20043,#20055) -successor(#20041,#20049) -successor(#20054,#20041) -successor(#20038,#20037) -successor(#20051,#20038) +successor(#20045,#20057) +successor(#20043,#20051) +successor(#20056,#20043) +successor(#20039,#20038) +successor(#20053,#20039) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/no-substitution.js.trap b/javascript/extractor/tests/es2015/output/trap/no-substitution.js.trap index b7c9df13a7f3..27ec327c9608 100644 --- a/javascript/extractor/tests/es2015/output/trap/no-substitution.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/no-substitution.js.trap @@ -40,25 +40,27 @@ toplevels(#20001,0) #20012=@"loc,{#10000},1,1,2,0" locations_default(#20012,#10000,1,1,2,0) hasLocation(#20001,#20012) -#20013=* -stmts(#20013,2,#20001,0,"``") -hasLocation(#20013,#20003) -stmt_containers(#20013,#20001) +#20013=@"var;{this};{#20000}" +variables(#20013,"this",#20000) #20014=* -exprs(#20014,71,#20013,0,"``") +stmts(#20014,2,#20001,0,"``") hasLocation(#20014,#20003) -enclosing_stmt(#20014,#20013) -expr_containers(#20014,#20001) +stmt_containers(#20014,#20001) #20015=* -entry_cfg_node(#20015,#20001) -#20016=@"loc,{#10000},1,1,1,0" -locations_default(#20016,#10000,1,1,1,0) -hasLocation(#20015,#20016) -#20017=* -exit_cfg_node(#20017,#20001) -hasLocation(#20017,#20011) -successor(#20013,#20014) -successor(#20014,#20017) -successor(#20015,#20013) +exprs(#20015,71,#20014,0,"``") +hasLocation(#20015,#20003) +enclosing_stmt(#20015,#20014) +expr_containers(#20015,#20001) +#20016=* +entry_cfg_node(#20016,#20001) +#20017=@"loc,{#10000},1,1,1,0" +locations_default(#20017,#10000,1,1,1,0) +hasLocation(#20016,#20017) +#20018=* +exit_cfg_node(#20018,#20001) +hasLocation(#20018,#20011) +successor(#20014,#20015) +successor(#20015,#20018) +successor(#20016,#20014) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/nullMethodName.js.trap b/javascript/extractor/tests/es2015/output/trap/nullMethodName.js.trap index 215478482990..d19a621b4588 100644 --- a/javascript/extractor/tests/es2015/output/trap/nullMethodName.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/nullMethodName.js.trap @@ -105,130 +105,138 @@ hasLocation(#20001,#20035) variables(#20036,"C",#20000) #20037=@"local_type_name;{C};{#20000}" local_type_names(#20037,"C",#20000) -#20038=* -stmts(#20038,26,#20001,0,"class C ... ) { }\n}") -#20039=@"loc,{#10000},1,1,3,1" -locations_default(#20039,#10000,1,1,3,1) -hasLocation(#20038,#20039) -stmt_containers(#20038,#20001) -#20040=* -exprs(#20040,78,#20038,0,"C") -hasLocation(#20040,#20011) -enclosing_stmt(#20040,#20038) -expr_containers(#20040,#20001) -literals("C","C",#20040) -decl(#20040,#20036) -typedecl(#20040,#20037) +#20038=@"var;{this};{#20000}" +variables(#20038,"this",#20000) +#20039=* +stmts(#20039,26,#20001,0,"class C ... ) { }\n}") +#20040=@"loc,{#10000},1,1,3,1" +locations_default(#20040,#10000,1,1,3,1) +hasLocation(#20039,#20040) +stmt_containers(#20039,#20001) #20041=* -scopes(#20041,10) -scopenodes(#20038,#20041) -scopenesting(#20041,#20000) +exprs(#20041,78,#20039,0,"C") +hasLocation(#20041,#20011) +enclosing_stmt(#20041,#20039) +expr_containers(#20041,#20001) +literals("C","C",#20041) +decl(#20041,#20036) +typedecl(#20041,#20037) #20042=* -properties(#20042,#20038,2,2,"set [null](v) { }") -#20043=@"loc,{#10000},2,3,2,19" -locations_default(#20043,#10000,2,3,2,19) -hasLocation(#20042,#20043) +scopes(#20042,10) +scopenodes(#20039,#20042) +scopenesting(#20042,#20000) +#20043=@"var;{this};{#20042}" +variables(#20043,"this",#20042) #20044=* -exprs(#20044,1,#20042,0,"null") -hasLocation(#20044,#20019) -enclosing_stmt(#20044,#20038) -expr_containers(#20044,#20001) -literals("null","null",#20044) -#20045=* -exprs(#20045,9,#20042,1,"(v) { }") -#20046=@"loc,{#10000},2,13,2,19" -locations_default(#20046,#10000,2,13,2,19) -hasLocation(#20045,#20046) -enclosing_stmt(#20045,#20038) -expr_containers(#20045,#20001) +properties(#20044,#20039,2,2,"set [null](v) { }") +#20045=@"loc,{#10000},2,3,2,19" +locations_default(#20045,#10000,2,3,2,19) +hasLocation(#20044,#20045) +#20046=* +exprs(#20046,1,#20044,0,"null") +hasLocation(#20046,#20019) +enclosing_stmt(#20046,#20039) +expr_containers(#20046,#20001) +literals("null","null",#20046) #20047=* -scopes(#20047,1) -scopenodes(#20045,#20047) -scopenesting(#20047,#20041) -#20048=@"var;{v};{#20047}" -variables(#20048,"v",#20047) +exprs(#20047,9,#20044,1,"(v) { }") +#20048=@"loc,{#10000},2,13,2,19" +locations_default(#20048,#10000,2,13,2,19) +hasLocation(#20047,#20048) +enclosing_stmt(#20047,#20039) +expr_containers(#20047,#20001) #20049=* -exprs(#20049,78,#20045,0,"v") -hasLocation(#20049,#20025) -expr_containers(#20049,#20045) -literals("v","v",#20049) -decl(#20049,#20048) -#20050=@"var;{arguments};{#20047}" -variables(#20050,"arguments",#20047) -is_arguments_object(#20050) -#20051=* -stmts(#20051,1,#20045,-2,"{ }") -#20052=@"loc,{#10000},2,17,2,19" -locations_default(#20052,#10000,2,17,2,19) -hasLocation(#20051,#20052) -stmt_containers(#20051,#20045) -is_method(#20042) -is_computed(#20042) -#20053=* -properties(#20053,#20038,3,0,"constructor() {}") -#20054=@"loc,{#10000},1,9,1,8" -locations_default(#20054,#10000,1,9,1,8) -hasLocation(#20053,#20054) -#20055=* -exprs(#20055,0,#20053,0,"constructor") -hasLocation(#20055,#20054) -enclosing_stmt(#20055,#20038) -expr_containers(#20055,#20001) -literals("constructor","constructor",#20055) +scopes(#20049,1) +scopenodes(#20047,#20049) +scopenesting(#20049,#20042) +#20050=@"var;{this};{#20049}" +variables(#20050,"this",#20049) +#20051=@"var;{v};{#20049}" +variables(#20051,"v",#20049) +#20052=* +exprs(#20052,78,#20047,0,"v") +hasLocation(#20052,#20025) +expr_containers(#20052,#20047) +literals("v","v",#20052) +decl(#20052,#20051) +#20053=@"var;{arguments};{#20049}" +variables(#20053,"arguments",#20049) +is_arguments_object(#20053) +#20054=* +stmts(#20054,1,#20047,-2,"{ }") +#20055=@"loc,{#10000},2,17,2,19" +locations_default(#20055,#10000,2,17,2,19) +hasLocation(#20054,#20055) +stmt_containers(#20054,#20047) +is_method(#20044) +is_computed(#20044) #20056=* -exprs(#20056,9,#20053,1,"() {}") -hasLocation(#20056,#20054) -enclosing_stmt(#20056,#20038) -expr_containers(#20056,#20001) -#20057=* -scopes(#20057,1) -scopenodes(#20056,#20057) -scopenesting(#20057,#20041) -#20058=@"var;{arguments};{#20057}" -variables(#20058,"arguments",#20057) -is_arguments_object(#20058) +properties(#20056,#20039,3,0,"constructor() {}") +#20057=@"loc,{#10000},1,9,1,8" +locations_default(#20057,#10000,1,9,1,8) +hasLocation(#20056,#20057) +#20058=* +exprs(#20058,0,#20056,0,"constructor") +hasLocation(#20058,#20057) +enclosing_stmt(#20058,#20039) +expr_containers(#20058,#20001) +literals("constructor","constructor",#20058) #20059=* -stmts(#20059,1,#20056,-2,"{}") -hasLocation(#20059,#20054) -stmt_containers(#20059,#20056) -is_method(#20053) +exprs(#20059,9,#20056,1,"() {}") +hasLocation(#20059,#20057) +enclosing_stmt(#20059,#20039) +expr_containers(#20059,#20001) #20060=* -entry_cfg_node(#20060,#20001) -#20061=@"loc,{#10000},1,1,1,0" -locations_default(#20061,#10000,1,1,1,0) -hasLocation(#20060,#20061) -#20062=* -exit_cfg_node(#20062,#20001) -hasLocation(#20062,#20034) -successor(#20056,#20053) +scopes(#20060,1) +scopenodes(#20059,#20060) +scopenesting(#20060,#20042) +#20061=@"var;{this};{#20060}" +variables(#20061,"this",#20060) +#20062=@"var;{arguments};{#20060}" +variables(#20062,"arguments",#20060) +is_arguments_object(#20062) #20063=* -entry_cfg_node(#20063,#20056) -hasLocation(#20063,#20054) +stmts(#20063,1,#20059,-2,"{}") +hasLocation(#20063,#20057) +stmt_containers(#20063,#20059) +is_method(#20056) #20064=* -exit_cfg_node(#20064,#20056) -hasLocation(#20064,#20054) -successor(#20059,#20064) -successor(#20063,#20059) -successor(#20055,#20056) -successor(#20053,#20038) -successor(#20045,#20042) -#20065=* -entry_cfg_node(#20065,#20045) -#20066=@"loc,{#10000},2,13,2,12" -locations_default(#20066,#10000,2,13,2,12) -hasLocation(#20065,#20066) +entry_cfg_node(#20064,#20001) +#20065=@"loc,{#10000},1,1,1,0" +locations_default(#20065,#10000,1,1,1,0) +hasLocation(#20064,#20065) +#20066=* +exit_cfg_node(#20066,#20001) +hasLocation(#20066,#20034) +successor(#20059,#20056) #20067=* -exit_cfg_node(#20067,#20045) -#20068=@"loc,{#10000},2,20,2,19" -locations_default(#20068,#10000,2,20,2,19) -hasLocation(#20067,#20068) -successor(#20051,#20067) -successor(#20049,#20051) -successor(#20065,#20049) -successor(#20044,#20045) -successor(#20042,#20055) -successor(#20040,#20044) -successor(#20038,#20062) -successor(#20060,#20040) +entry_cfg_node(#20067,#20059) +hasLocation(#20067,#20057) +#20068=* +exit_cfg_node(#20068,#20059) +hasLocation(#20068,#20057) +successor(#20063,#20068) +successor(#20067,#20063) +successor(#20058,#20059) +successor(#20056,#20039) +successor(#20047,#20044) +#20069=* +entry_cfg_node(#20069,#20047) +#20070=@"loc,{#10000},2,13,2,12" +locations_default(#20070,#10000,2,13,2,12) +hasLocation(#20069,#20070) +#20071=* +exit_cfg_node(#20071,#20047) +#20072=@"loc,{#10000},2,20,2,19" +locations_default(#20072,#10000,2,20,2,19) +hasLocation(#20071,#20072) +successor(#20054,#20071) +successor(#20052,#20054) +successor(#20069,#20052) +successor(#20046,#20047) +successor(#20044,#20058) +successor(#20041,#20046) +successor(#20039,#20066) +successor(#20064,#20041) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/odasa-2593.js.trap b/javascript/extractor/tests/es2015/output/trap/odasa-2593.js.trap index 7cc4e9be2216..899b4a770716 100644 --- a/javascript/extractor/tests/es2015/output/trap/odasa-2593.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/odasa-2593.js.trap @@ -109,95 +109,99 @@ locations_default(#20037,#10000,1,1,4,1) hasLocation(#20001,#20037) #20038=@"var;{test};{#20000}" variables(#20038,"test",#20000) -#20039=* -stmts(#20039,17,#20001,0,"functio ... nts);\n}") -hasLocation(#20039,#20037) -stmt_containers(#20039,#20001) +#20039=@"var;{this};{#20000}" +variables(#20039,"this",#20000) #20040=* -exprs(#20040,78,#20039,-1,"test") -hasLocation(#20040,#20013) -expr_containers(#20040,#20039) -literals("test","test",#20040) -decl(#20040,#20038) +stmts(#20040,17,#20001,0,"functio ... nts);\n}") +hasLocation(#20040,#20037) +stmt_containers(#20040,#20001) #20041=* -scopes(#20041,1) -scopenodes(#20039,#20041) -scopenesting(#20041,#20000) -#20042=@"var;{arguments};{#20041}" -variables(#20042,"arguments",#20041) -is_arguments_object(#20042) -#20043=* -stmts(#20043,1,#20039,-2,"{\n a ... nts);\n}") -#20044=@"loc,{#10000},1,17,4,1" -locations_default(#20044,#10000,1,17,4,1) -hasLocation(#20043,#20044) -stmt_containers(#20043,#20039) +exprs(#20041,78,#20040,-1,"test") +hasLocation(#20041,#20013) +expr_containers(#20041,#20040) +literals("test","test",#20041) +decl(#20041,#20038) +#20042=* +scopes(#20042,1) +scopenodes(#20040,#20042) +scopenesting(#20042,#20000) +#20043=@"var;{this};{#20042}" +variables(#20043,"this",#20042) +#20044=@"var;{arguments};{#20042}" +variables(#20044,"arguments",#20042) +is_arguments_object(#20044) #20045=* -stmts(#20045,2,#20043,0,"arguments;") -#20046=@"loc,{#10000},2,5,2,14" -locations_default(#20046,#10000,2,5,2,14) +stmts(#20045,1,#20040,-2,"{\n a ... nts);\n}") +#20046=@"loc,{#10000},1,17,4,1" +locations_default(#20046,#10000,1,17,4,1) hasLocation(#20045,#20046) -stmt_containers(#20045,#20039) +stmt_containers(#20045,#20040) #20047=* -exprs(#20047,79,#20045,0,"arguments") -hasLocation(#20047,#20021) -enclosing_stmt(#20047,#20045) -expr_containers(#20047,#20039) -literals("arguments","arguments",#20047) -bind(#20047,#20042) -#20048=* -stmts(#20048,2,#20043,1,"let (arguments);") -#20049=@"loc,{#10000},3,5,3,20" -locations_default(#20049,#10000,3,5,3,20) -hasLocation(#20048,#20049) -stmt_containers(#20048,#20039) +stmts(#20047,2,#20045,0,"arguments;") +#20048=@"loc,{#10000},2,5,2,14" +locations_default(#20048,#10000,2,5,2,14) +hasLocation(#20047,#20048) +stmt_containers(#20047,#20040) +#20049=* +exprs(#20049,79,#20047,0,"arguments") +hasLocation(#20049,#20021) +enclosing_stmt(#20049,#20047) +expr_containers(#20049,#20040) +literals("arguments","arguments",#20049) +bind(#20049,#20044) #20050=* -exprs(#20050,13,#20048,0,"let (arguments)") -#20051=@"loc,{#10000},3,5,3,19" -locations_default(#20051,#10000,3,5,3,19) +stmts(#20050,2,#20045,1,"let (arguments);") +#20051=@"loc,{#10000},3,5,3,20" +locations_default(#20051,#10000,3,5,3,20) hasLocation(#20050,#20051) -enclosing_stmt(#20050,#20048) -expr_containers(#20050,#20039) +stmt_containers(#20050,#20040) #20052=* -exprs(#20052,79,#20050,-1,"let") -hasLocation(#20052,#20025) -enclosing_stmt(#20052,#20048) -expr_containers(#20052,#20039) -literals("let","let",#20052) -#20053=@"var;{let};{#20000}" -variables(#20053,"let",#20000) -bind(#20052,#20053) +exprs(#20052,13,#20050,0,"let (arguments)") +#20053=@"loc,{#10000},3,5,3,19" +locations_default(#20053,#10000,3,5,3,19) +hasLocation(#20052,#20053) +enclosing_stmt(#20052,#20050) +expr_containers(#20052,#20040) #20054=* -exprs(#20054,79,#20050,0,"arguments") -hasLocation(#20054,#20029) -enclosing_stmt(#20054,#20048) -expr_containers(#20054,#20039) -literals("arguments","arguments",#20054) -bind(#20054,#20042) -#20055=* -entry_cfg_node(#20055,#20001) -#20056=@"loc,{#10000},1,1,1,0" -locations_default(#20056,#10000,1,1,1,0) -hasLocation(#20055,#20056) +exprs(#20054,79,#20052,-1,"let") +hasLocation(#20054,#20025) +enclosing_stmt(#20054,#20050) +expr_containers(#20054,#20040) +literals("let","let",#20054) +#20055=@"var;{let};{#20000}" +variables(#20055,"let",#20000) +bind(#20054,#20055) +#20056=* +exprs(#20056,79,#20052,0,"arguments") +hasLocation(#20056,#20029) +enclosing_stmt(#20056,#20050) +expr_containers(#20056,#20040) +literals("arguments","arguments",#20056) +bind(#20056,#20044) #20057=* -exit_cfg_node(#20057,#20001) -hasLocation(#20057,#20036) -successor(#20039,#20057) -#20058=* -entry_cfg_node(#20058,#20039) -hasLocation(#20058,#20056) +entry_cfg_node(#20057,#20001) +#20058=@"loc,{#10000},1,1,1,0" +locations_default(#20058,#10000,1,1,1,0) +hasLocation(#20057,#20058) #20059=* -exit_cfg_node(#20059,#20039) +exit_cfg_node(#20059,#20001) hasLocation(#20059,#20036) -successor(#20048,#20052) -successor(#20054,#20050) -successor(#20052,#20054) -successor(#20050,#20059) +successor(#20040,#20059) +#20060=* +entry_cfg_node(#20060,#20040) +hasLocation(#20060,#20058) +#20061=* +exit_cfg_node(#20061,#20040) +hasLocation(#20061,#20036) +successor(#20050,#20054) +successor(#20056,#20052) +successor(#20054,#20056) +successor(#20052,#20061) +successor(#20047,#20049) +successor(#20049,#20050) successor(#20045,#20047) -successor(#20047,#20048) -successor(#20043,#20045) -successor(#20058,#20043) -successor(#20040,#20039) -successor(#20055,#20040) +successor(#20060,#20045) +successor(#20041,#20040) +successor(#20057,#20041) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/properties.js.trap b/javascript/extractor/tests/es2015/output/trap/properties.js.trap index 98746bb399de..b42ebda9dfe9 100644 --- a/javascript/extractor/tests/es2015/output/trap/properties.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/properties.js.trap @@ -223,208 +223,212 @@ hasLocation(#20001,#20080) variables(#20081,"x",#20000) #20082=@"var;{o};{#20000}" variables(#20082,"o",#20000) -#20083=* -stmts(#20083,18,#20001,0,"var x = ... \n };") -hasLocation(#20083,#20080) -stmt_containers(#20083,#20001) +#20083=@"var;{this};{#20000}" +variables(#20083,"this",#20000) #20084=* -exprs(#20084,64,#20083,0,"x = 42") -#20085=@"loc,{#10000},1,5,1,10" -locations_default(#20085,#10000,1,5,1,10) -hasLocation(#20084,#20085) -enclosing_stmt(#20084,#20083) -expr_containers(#20084,#20001) -#20086=* -exprs(#20086,78,#20084,0,"x") -hasLocation(#20086,#20017) -enclosing_stmt(#20086,#20083) -expr_containers(#20086,#20001) -literals("x","x",#20086) -decl(#20086,#20081) +stmts(#20084,18,#20001,0,"var x = ... \n };") +hasLocation(#20084,#20080) +stmt_containers(#20084,#20001) +#20085=* +exprs(#20085,64,#20084,0,"x = 42") +#20086=@"loc,{#10000},1,5,1,10" +locations_default(#20086,#10000,1,5,1,10) +hasLocation(#20085,#20086) +enclosing_stmt(#20085,#20084) +expr_containers(#20085,#20001) #20087=* -exprs(#20087,3,#20084,1,"42") -hasLocation(#20087,#20021) -enclosing_stmt(#20087,#20083) +exprs(#20087,78,#20085,0,"x") +hasLocation(#20087,#20017) +enclosing_stmt(#20087,#20084) expr_containers(#20087,#20001) -literals("42","42",#20087) +literals("x","x",#20087) +decl(#20087,#20081) #20088=* -exprs(#20088,64,#20083,1,"o = {\n ... }\n }") -#20089=@"loc,{#10000},2,5,6,5" -locations_default(#20089,#10000,2,5,6,5) -hasLocation(#20088,#20089) -enclosing_stmt(#20088,#20083) +exprs(#20088,3,#20085,1,"42") +hasLocation(#20088,#20021) +enclosing_stmt(#20088,#20084) expr_containers(#20088,#20001) -#20090=* -exprs(#20090,78,#20088,0,"o") -hasLocation(#20090,#20025) -enclosing_stmt(#20090,#20083) -expr_containers(#20090,#20001) -literals("o","o",#20090) -decl(#20090,#20082) +literals("42","42",#20088) +#20089=* +exprs(#20089,64,#20084,1,"o = {\n ... }\n }") +#20090=@"loc,{#10000},2,5,6,5" +locations_default(#20090,#10000,2,5,6,5) +hasLocation(#20089,#20090) +enclosing_stmt(#20089,#20084) +expr_containers(#20089,#20001) #20091=* -exprs(#20091,8,#20088,1,"{\n ... }\n }") -#20092=@"loc,{#10000},2,9,6,5" -locations_default(#20092,#10000,2,9,6,5) -hasLocation(#20091,#20092) -enclosing_stmt(#20091,#20083) +exprs(#20091,78,#20089,0,"o") +hasLocation(#20091,#20025) +enclosing_stmt(#20091,#20084) expr_containers(#20091,#20001) -#20093=* -properties(#20093,#20091,0,0,"[""prop"" ... ()]: 23") -#20094=@"loc,{#10000},3,9,3,36" -locations_default(#20094,#10000,3,9,3,36) -hasLocation(#20093,#20094) -#20095=* -exprs(#20095,34,#20093,0,"""prop"" ... andom()") -#20096=@"loc,{#10000},3,10,3,31" -locations_default(#20096,#10000,3,10,3,31) -hasLocation(#20095,#20096) -enclosing_stmt(#20095,#20083) -expr_containers(#20095,#20001) -#20097=* -exprs(#20097,4,#20095,0,"""prop""") -hasLocation(#20097,#20033) -enclosing_stmt(#20097,#20083) -expr_containers(#20097,#20001) -literals("prop","""prop""",#20097) +literals("o","o",#20091) +decl(#20091,#20082) +#20092=* +exprs(#20092,8,#20089,1,"{\n ... }\n }") +#20093=@"loc,{#10000},2,9,6,5" +locations_default(#20093,#10000,2,9,6,5) +hasLocation(#20092,#20093) +enclosing_stmt(#20092,#20084) +expr_containers(#20092,#20001) +#20094=* +properties(#20094,#20092,0,0,"[""prop"" ... ()]: 23") +#20095=@"loc,{#10000},3,9,3,36" +locations_default(#20095,#10000,3,9,3,36) +hasLocation(#20094,#20095) +#20096=* +exprs(#20096,34,#20094,0,"""prop"" ... andom()") +#20097=@"loc,{#10000},3,10,3,31" +locations_default(#20097,#10000,3,10,3,31) +hasLocation(#20096,#20097) +enclosing_stmt(#20096,#20084) +expr_containers(#20096,#20001) #20098=* -exprs(#20098,13,#20095,1,"Math.random()") -#20099=@"loc,{#10000},3,19,3,31" -locations_default(#20099,#10000,3,19,3,31) -hasLocation(#20098,#20099) -enclosing_stmt(#20098,#20083) +exprs(#20098,4,#20096,0,"""prop""") +hasLocation(#20098,#20033) +enclosing_stmt(#20098,#20084) expr_containers(#20098,#20001) -#20100=* -exprs(#20100,14,#20098,-1,"Math.random") -#20101=@"loc,{#10000},3,19,3,29" -locations_default(#20101,#10000,3,19,3,29) -hasLocation(#20100,#20101) -enclosing_stmt(#20100,#20083) -expr_containers(#20100,#20001) -#20102=* -exprs(#20102,79,#20100,0,"Math") -hasLocation(#20102,#20037) -enclosing_stmt(#20102,#20083) -expr_containers(#20102,#20001) -literals("Math","Math",#20102) -#20103=@"var;{Math};{#20000}" -variables(#20103,"Math",#20000) -bind(#20102,#20103) -#20104=* -exprs(#20104,0,#20100,1,"random") -hasLocation(#20104,#20041) -enclosing_stmt(#20104,#20083) -expr_containers(#20104,#20001) -literals("random","random",#20104) +literals("prop","""prop""",#20098) +#20099=* +exprs(#20099,13,#20096,1,"Math.random()") +#20100=@"loc,{#10000},3,19,3,31" +locations_default(#20100,#10000,3,19,3,31) +hasLocation(#20099,#20100) +enclosing_stmt(#20099,#20084) +expr_containers(#20099,#20001) +#20101=* +exprs(#20101,14,#20099,-1,"Math.random") +#20102=@"loc,{#10000},3,19,3,29" +locations_default(#20102,#10000,3,19,3,29) +hasLocation(#20101,#20102) +enclosing_stmt(#20101,#20084) +expr_containers(#20101,#20001) +#20103=* +exprs(#20103,79,#20101,0,"Math") +hasLocation(#20103,#20037) +enclosing_stmt(#20103,#20084) +expr_containers(#20103,#20001) +literals("Math","Math",#20103) +#20104=@"var;{Math};{#20000}" +variables(#20104,"Math",#20000) +bind(#20103,#20104) #20105=* -exprs(#20105,3,#20093,1,"23") -hasLocation(#20105,#20051) -enclosing_stmt(#20105,#20083) +exprs(#20105,0,#20101,1,"random") +hasLocation(#20105,#20041) +enclosing_stmt(#20105,#20084) expr_containers(#20105,#20001) -literals("23","23",#20105) -is_computed(#20093) +literals("random","random",#20105) #20106=* -properties(#20106,#20091,1,0,"x") -hasLocation(#20106,#20055) +exprs(#20106,3,#20094,1,"23") +hasLocation(#20106,#20051) +enclosing_stmt(#20106,#20084) +expr_containers(#20106,#20001) +literals("23","23",#20106) +is_computed(#20094) #20107=* -exprs(#20107,0,#20106,0,"x") +properties(#20107,#20092,1,0,"x") hasLocation(#20107,#20055) -enclosing_stmt(#20107,#20083) -expr_containers(#20107,#20001) -literals("x","x",#20107) #20108=* -exprs(#20108,79,#20106,1,"x") +exprs(#20108,0,#20107,0,"x") hasLocation(#20108,#20055) -enclosing_stmt(#20108,#20083) +enclosing_stmt(#20108,#20084) expr_containers(#20108,#20001) literals("x","x",#20108) -bind(#20108,#20081) #20109=* -properties(#20109,#20091,2,0,"m() { return 56; }") -#20110=@"loc,{#10000},5,9,5,26" -locations_default(#20110,#10000,5,9,5,26) -hasLocation(#20109,#20110) -#20111=* -exprs(#20111,0,#20109,0,"m") -hasLocation(#20111,#20059) -enclosing_stmt(#20111,#20083) -expr_containers(#20111,#20001) -literals("m","m",#20111) +exprs(#20109,79,#20107,1,"x") +hasLocation(#20109,#20055) +enclosing_stmt(#20109,#20084) +expr_containers(#20109,#20001) +literals("x","x",#20109) +bind(#20109,#20081) +#20110=* +properties(#20110,#20092,2,0,"m() { return 56; }") +#20111=@"loc,{#10000},5,9,5,26" +locations_default(#20111,#10000,5,9,5,26) +hasLocation(#20110,#20111) #20112=* -exprs(#20112,9,#20109,1,"() { return 56; }") -#20113=@"loc,{#10000},5,10,5,26" -locations_default(#20113,#10000,5,10,5,26) -hasLocation(#20112,#20113) -enclosing_stmt(#20112,#20083) +exprs(#20112,0,#20110,0,"m") +hasLocation(#20112,#20059) +enclosing_stmt(#20112,#20084) expr_containers(#20112,#20001) -#20114=* -scopes(#20114,1) -scopenodes(#20112,#20114) -scopenesting(#20114,#20000) -#20115=@"var;{arguments};{#20114}" -variables(#20115,"arguments",#20114) -is_arguments_object(#20115) -#20116=* -stmts(#20116,1,#20112,-2,"{ return 56; }") -#20117=@"loc,{#10000},5,13,5,26" -locations_default(#20117,#10000,5,13,5,26) -hasLocation(#20116,#20117) -stmt_containers(#20116,#20112) +literals("m","m",#20112) +#20113=* +exprs(#20113,9,#20110,1,"() { return 56; }") +#20114=@"loc,{#10000},5,10,5,26" +locations_default(#20114,#10000,5,10,5,26) +hasLocation(#20113,#20114) +enclosing_stmt(#20113,#20084) +expr_containers(#20113,#20001) +#20115=* +scopes(#20115,1) +scopenodes(#20113,#20115) +scopenesting(#20115,#20000) +#20116=@"var;{this};{#20115}" +variables(#20116,"this",#20115) +#20117=@"var;{arguments};{#20115}" +variables(#20117,"arguments",#20115) +is_arguments_object(#20117) #20118=* -stmts(#20118,9,#20116,0,"return 56;") -#20119=@"loc,{#10000},5,15,5,24" -locations_default(#20119,#10000,5,15,5,24) +stmts(#20118,1,#20113,-2,"{ return 56; }") +#20119=@"loc,{#10000},5,13,5,26" +locations_default(#20119,#10000,5,13,5,26) hasLocation(#20118,#20119) -stmt_containers(#20118,#20112) +stmt_containers(#20118,#20113) #20120=* -exprs(#20120,3,#20118,0,"56") -hasLocation(#20120,#20069) -enclosing_stmt(#20120,#20118) -expr_containers(#20120,#20112) -literals("56","56",#20120) -is_method(#20109) -#20121=* -entry_cfg_node(#20121,#20001) -#20122=@"loc,{#10000},1,1,1,0" -locations_default(#20122,#10000,1,1,1,0) -hasLocation(#20121,#20122) +stmts(#20120,9,#20118,0,"return 56;") +#20121=@"loc,{#10000},5,15,5,24" +locations_default(#20121,#10000,5,15,5,24) +hasLocation(#20120,#20121) +stmt_containers(#20120,#20113) +#20122=* +exprs(#20122,3,#20120,0,"56") +hasLocation(#20122,#20069) +enclosing_stmt(#20122,#20120) +expr_containers(#20122,#20113) +literals("56","56",#20122) +is_method(#20110) #20123=* -exit_cfg_node(#20123,#20001) -hasLocation(#20123,#20079) -successor(#20083,#20086) -successor(#20091,#20097) -successor(#20112,#20109) -#20124=* -entry_cfg_node(#20124,#20112) -#20125=@"loc,{#10000},5,10,5,9" -locations_default(#20125,#10000,5,10,5,9) -hasLocation(#20124,#20125) +entry_cfg_node(#20123,#20001) +#20124=@"loc,{#10000},1,1,1,0" +locations_default(#20124,#10000,1,1,1,0) +hasLocation(#20123,#20124) +#20125=* +exit_cfg_node(#20125,#20001) +hasLocation(#20125,#20079) +successor(#20084,#20087) +successor(#20092,#20098) +successor(#20113,#20110) #20126=* -exit_cfg_node(#20126,#20112) -#20127=@"loc,{#10000},5,27,5,26" -locations_default(#20127,#10000,5,27,5,26) +entry_cfg_node(#20126,#20113) +#20127=@"loc,{#10000},5,10,5,9" +locations_default(#20127,#10000,5,10,5,9) hasLocation(#20126,#20127) -successor(#20120,#20118) -successor(#20118,#20126) -successor(#20116,#20120) -successor(#20124,#20116) -successor(#20111,#20112) -successor(#20109,#20088) -successor(#20108,#20106) -successor(#20107,#20108) -successor(#20106,#20111) -successor(#20105,#20093) -successor(#20104,#20100) -successor(#20102,#20104) -successor(#20100,#20098) -successor(#20098,#20095) -successor(#20097,#20102) -successor(#20095,#20105) -successor(#20093,#20107) -successor(#20090,#20091) -successor(#20088,#20123) -successor(#20087,#20084) -successor(#20086,#20087) -successor(#20084,#20090) -successor(#20121,#20083) +#20128=* +exit_cfg_node(#20128,#20113) +#20129=@"loc,{#10000},5,27,5,26" +locations_default(#20129,#10000,5,27,5,26) +hasLocation(#20128,#20129) +successor(#20122,#20120) +successor(#20120,#20128) +successor(#20118,#20122) +successor(#20126,#20118) +successor(#20112,#20113) +successor(#20110,#20089) +successor(#20109,#20107) +successor(#20108,#20109) +successor(#20107,#20112) +successor(#20106,#20094) +successor(#20105,#20101) +successor(#20103,#20105) +successor(#20101,#20099) +successor(#20099,#20096) +successor(#20098,#20103) +successor(#20096,#20106) +successor(#20094,#20108) +successor(#20091,#20092) +successor(#20089,#20125) +successor(#20088,#20085) +successor(#20087,#20088) +successor(#20085,#20091) +successor(#20123,#20084) numlines(#10000,6,6,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/property_pattern_with_default.js.trap b/javascript/extractor/tests/es2015/output/trap/property_pattern_with_default.js.trap index 2cc1015094f9..f93e2fb0ceda 100644 --- a/javascript/extractor/tests/es2015/output/trap/property_pattern_with_default.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/property_pattern_with_default.js.trap @@ -72,81 +72,83 @@ locations_default(#20025,#10000,1,16,1,15) hasLocation(#20024,#20025) toplevels(#20001,0) hasLocation(#20001,#20003) -#20026=* -stmts(#20026,2,#20001,0,"({x = 1}) => x;") -hasLocation(#20026,#20003) -stmt_containers(#20026,#20001) +#20026=@"var;{this};{#20000}" +variables(#20026,"this",#20000) #20027=* -exprs(#20027,65,#20026,0,"({x = 1}) => x") -#20028=@"loc,{#10000},1,1,1,14" -locations_default(#20028,#10000,1,1,1,14) -hasLocation(#20027,#20028) -enclosing_stmt(#20027,#20026) -expr_containers(#20027,#20001) -#20029=* -scopes(#20029,1) -scopenodes(#20027,#20029) -scopenesting(#20029,#20000) -#20030=@"var;{x};{#20029}" -variables(#20030,"x",#20029) -#20031=* -exprs(#20031,68,#20027,0,"{x = 1}") -#20032=@"loc,{#10000},1,2,1,8" -locations_default(#20032,#10000,1,2,1,8) -hasLocation(#20031,#20032) -expr_containers(#20031,#20027) -#20033=* -properties(#20033,#20031,0,0,"x = 1") -#20034=@"loc,{#10000},1,3,1,7" -locations_default(#20034,#10000,1,3,1,7) -hasLocation(#20033,#20034) -#20035=* -exprs(#20035,0,#20033,0,"x") -hasLocation(#20035,#20009) -expr_containers(#20035,#20027) -literals("x","x",#20035) +stmts(#20027,2,#20001,0,"({x = 1}) => x;") +hasLocation(#20027,#20003) +stmt_containers(#20027,#20001) +#20028=* +exprs(#20028,65,#20027,0,"({x = 1}) => x") +#20029=@"loc,{#10000},1,1,1,14" +locations_default(#20029,#10000,1,1,1,14) +hasLocation(#20028,#20029) +enclosing_stmt(#20028,#20027) +expr_containers(#20028,#20001) +#20030=* +scopes(#20030,1) +scopenodes(#20028,#20030) +scopenesting(#20030,#20000) +#20031=@"var;{x};{#20030}" +variables(#20031,"x",#20030) +#20032=* +exprs(#20032,68,#20028,0,"{x = 1}") +#20033=@"loc,{#10000},1,2,1,8" +locations_default(#20033,#10000,1,2,1,8) +hasLocation(#20032,#20033) +expr_containers(#20032,#20028) +#20034=* +properties(#20034,#20032,0,0,"x = 1") +#20035=@"loc,{#10000},1,3,1,7" +locations_default(#20035,#10000,1,3,1,7) +hasLocation(#20034,#20035) #20036=* -exprs(#20036,78,#20033,1,"x") +exprs(#20036,0,#20034,0,"x") hasLocation(#20036,#20009) -expr_containers(#20036,#20027) +expr_containers(#20036,#20028) literals("x","x",#20036) -decl(#20036,#20030) #20037=* -exprs(#20037,3,#20033,2,"1") -hasLocation(#20037,#20013) -expr_containers(#20037,#20027) -literals("1","1",#20037) +exprs(#20037,78,#20034,1,"x") +hasLocation(#20037,#20009) +expr_containers(#20037,#20028) +literals("x","x",#20037) +decl(#20037,#20031) #20038=* -exprs(#20038,79,#20027,-2,"x") -hasLocation(#20038,#20021) -expr_containers(#20038,#20027) -literals("x","x",#20038) -bind(#20038,#20030) +exprs(#20038,3,#20034,2,"1") +hasLocation(#20038,#20013) +expr_containers(#20038,#20028) +literals("1","1",#20038) #20039=* -entry_cfg_node(#20039,#20001) -#20040=@"loc,{#10000},1,1,1,0" -locations_default(#20040,#10000,1,1,1,0) -hasLocation(#20039,#20040) -#20041=* -exit_cfg_node(#20041,#20001) -hasLocation(#20041,#20025) -successor(#20026,#20027) -successor(#20027,#20041) +exprs(#20039,79,#20028,-2,"x") +hasLocation(#20039,#20021) +expr_containers(#20039,#20028) +literals("x","x",#20039) +bind(#20039,#20031) +#20040=* +entry_cfg_node(#20040,#20001) +#20041=@"loc,{#10000},1,1,1,0" +locations_default(#20041,#10000,1,1,1,0) +hasLocation(#20040,#20041) #20042=* -entry_cfg_node(#20042,#20027) -hasLocation(#20042,#20040) +exit_cfg_node(#20042,#20001) +hasLocation(#20042,#20025) +successor(#20027,#20028) +successor(#20028,#20042) #20043=* -exit_cfg_node(#20043,#20027) -#20044=@"loc,{#10000},1,15,1,14" -locations_default(#20044,#10000,1,15,1,14) -hasLocation(#20043,#20044) -successor(#20038,#20043) -successor(#20031,#20035) -successor(#20037,#20033) +entry_cfg_node(#20043,#20028) +hasLocation(#20043,#20041) +#20044=* +exit_cfg_node(#20044,#20028) +#20045=@"loc,{#10000},1,15,1,14" +locations_default(#20045,#10000,1,15,1,14) +hasLocation(#20044,#20045) +successor(#20039,#20044) +successor(#20032,#20036) +successor(#20038,#20034) +successor(#20037,#20038) successor(#20036,#20037) -successor(#20035,#20036) -successor(#20033,#20038) -successor(#20042,#20031) -successor(#20039,#20026) +successor(#20034,#20039) +successor(#20043,#20032) +successor(#20040,#20027) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/restparms.js.trap b/javascript/extractor/tests/es2015/output/trap/restparms.js.trap index 627aaa15bcb1..7359442ec2e2 100644 --- a/javascript/extractor/tests/es2015/output/trap/restparms.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/restparms.js.trap @@ -80,66 +80,70 @@ locations_default(#20027,#10000,1,1,2,1) hasLocation(#20001,#20027) #20028=@"var;{f};{#20000}" variables(#20028,"f",#20000) -#20029=* -stmts(#20029,17,#20001,0,"functio ... ys) {\n}") -hasLocation(#20029,#20027) -stmt_containers(#20029,#20001) +#20029=@"var;{this};{#20000}" +variables(#20029,"this",#20000) #20030=* -exprs(#20030,78,#20029,-1,"f") -hasLocation(#20030,#20009) -expr_containers(#20030,#20029) -literals("f","f",#20030) -decl(#20030,#20028) +stmts(#20030,17,#20001,0,"functio ... ys) {\n}") +hasLocation(#20030,#20027) +stmt_containers(#20030,#20001) #20031=* -scopes(#20031,1) -scopenodes(#20029,#20031) -scopenesting(#20031,#20000) -#20032=@"var;{x};{#20031}" -variables(#20032,"x",#20031) -#20033=* -exprs(#20033,78,#20029,0,"x") -hasLocation(#20033,#20013) -expr_containers(#20033,#20029) -literals("x","x",#20033) -decl(#20033,#20032) -#20034=@"var;{ys};{#20031}" -variables(#20034,"ys",#20031) +exprs(#20031,78,#20030,-1,"f") +hasLocation(#20031,#20009) +expr_containers(#20031,#20030) +literals("f","f",#20031) +decl(#20031,#20028) +#20032=* +scopes(#20032,1) +scopenodes(#20030,#20032) +scopenesting(#20032,#20000) +#20033=@"var;{this};{#20032}" +variables(#20033,"this",#20032) +#20034=@"var;{x};{#20032}" +variables(#20034,"x",#20032) #20035=* -exprs(#20035,78,#20029,1,"ys") -hasLocation(#20035,#20019) -expr_containers(#20035,#20029) -literals("ys","ys",#20035) +exprs(#20035,78,#20030,0,"x") +hasLocation(#20035,#20013) +expr_containers(#20035,#20030) +literals("x","x",#20035) decl(#20035,#20034) -#20036=@"var;{arguments};{#20031}" -variables(#20036,"arguments",#20031) -is_arguments_object(#20036) -has_rest_parameter(#20029) +#20036=@"var;{ys};{#20032}" +variables(#20036,"ys",#20032) #20037=* -stmts(#20037,1,#20029,-2,"{\n}") -#20038=@"loc,{#10000},1,22,2,1" -locations_default(#20038,#10000,1,22,2,1) -hasLocation(#20037,#20038) -stmt_containers(#20037,#20029) +exprs(#20037,78,#20030,1,"ys") +hasLocation(#20037,#20019) +expr_containers(#20037,#20030) +literals("ys","ys",#20037) +decl(#20037,#20036) +#20038=@"var;{arguments};{#20032}" +variables(#20038,"arguments",#20032) +is_arguments_object(#20038) +has_rest_parameter(#20030) #20039=* -entry_cfg_node(#20039,#20001) -#20040=@"loc,{#10000},1,1,1,0" -locations_default(#20040,#10000,1,1,1,0) +stmts(#20039,1,#20030,-2,"{\n}") +#20040=@"loc,{#10000},1,22,2,1" +locations_default(#20040,#10000,1,22,2,1) hasLocation(#20039,#20040) +stmt_containers(#20039,#20030) #20041=* -exit_cfg_node(#20041,#20001) -hasLocation(#20041,#20026) -successor(#20029,#20041) -#20042=* -entry_cfg_node(#20042,#20029) -hasLocation(#20042,#20040) +entry_cfg_node(#20041,#20001) +#20042=@"loc,{#10000},1,1,1,0" +locations_default(#20042,#10000,1,1,1,0) +hasLocation(#20041,#20042) #20043=* -exit_cfg_node(#20043,#20029) +exit_cfg_node(#20043,#20001) hasLocation(#20043,#20026) -successor(#20037,#20043) +successor(#20030,#20043) +#20044=* +entry_cfg_node(#20044,#20030) +hasLocation(#20044,#20042) +#20045=* +exit_cfg_node(#20045,#20030) +hasLocation(#20045,#20026) +successor(#20039,#20045) +successor(#20037,#20039) successor(#20035,#20037) -successor(#20033,#20035) -successor(#20042,#20033) -successor(#20030,#20029) -successor(#20039,#20030) +successor(#20044,#20035) +successor(#20031,#20030) +successor(#20041,#20031) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/spreadelement.js.trap b/javascript/extractor/tests/es2015/output/trap/spreadelement.js.trap index 8c5c77232806..ce17adfce0b0 100644 --- a/javascript/extractor/tests/es2015/output/trap/spreadelement.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/spreadelement.js.trap @@ -100,97 +100,99 @@ toplevels(#20001,0) #20036=@"loc,{#10000},1,1,2,19" locations_default(#20036,#10000,1,1,2,19) hasLocation(#20001,#20036) -#20037=* -stmts(#20037,2,#20001,0,"[a, ...as];") -hasLocation(#20037,#20003) -stmt_containers(#20037,#20001) +#20037=@"var;{this};{#20000}" +variables(#20037,"this",#20000) #20038=* -exprs(#20038,7,#20037,0,"[a, ...as]") -#20039=@"loc,{#10000},1,1,1,10" -locations_default(#20039,#10000,1,1,1,10) -hasLocation(#20038,#20039) -enclosing_stmt(#20038,#20037) -expr_containers(#20038,#20001) -#20040=* -exprs(#20040,79,#20038,0,"a") -hasLocation(#20040,#20009) -enclosing_stmt(#20040,#20037) -expr_containers(#20040,#20001) -literals("a","a",#20040) -#20041=@"var;{a};{#20000}" -variables(#20041,"a",#20000) -bind(#20040,#20041) -#20042=* -exprs(#20042,66,#20038,1,"...as") -#20043=@"loc,{#10000},1,5,1,9" -locations_default(#20043,#10000,1,5,1,9) -hasLocation(#20042,#20043) -enclosing_stmt(#20042,#20037) -expr_containers(#20042,#20001) -#20044=* -exprs(#20044,79,#20042,0,"as") -hasLocation(#20044,#20015) -enclosing_stmt(#20044,#20037) -expr_containers(#20044,#20001) -literals("as","as",#20044) -#20045=@"var;{as};{#20000}" -variables(#20045,"as",#20000) -bind(#20044,#20045) -array_size(#20038,2) -#20046=* -stmts(#20046,2,#20001,1,"new Array(...elts);") -hasLocation(#20046,#20005) -stmt_containers(#20046,#20001) +stmts(#20038,2,#20001,0,"[a, ...as];") +hasLocation(#20038,#20003) +stmt_containers(#20038,#20001) +#20039=* +exprs(#20039,7,#20038,0,"[a, ...as]") +#20040=@"loc,{#10000},1,1,1,10" +locations_default(#20040,#10000,1,1,1,10) +hasLocation(#20039,#20040) +enclosing_stmt(#20039,#20038) +expr_containers(#20039,#20001) +#20041=* +exprs(#20041,79,#20039,0,"a") +hasLocation(#20041,#20009) +enclosing_stmt(#20041,#20038) +expr_containers(#20041,#20001) +literals("a","a",#20041) +#20042=@"var;{a};{#20000}" +variables(#20042,"a",#20000) +bind(#20041,#20042) +#20043=* +exprs(#20043,66,#20039,1,"...as") +#20044=@"loc,{#10000},1,5,1,9" +locations_default(#20044,#10000,1,5,1,9) +hasLocation(#20043,#20044) +enclosing_stmt(#20043,#20038) +expr_containers(#20043,#20001) +#20045=* +exprs(#20045,79,#20043,0,"as") +hasLocation(#20045,#20015) +enclosing_stmt(#20045,#20038) +expr_containers(#20045,#20001) +literals("as","as",#20045) +#20046=@"var;{as};{#20000}" +variables(#20046,"as",#20000) +bind(#20045,#20046) +array_size(#20039,2) #20047=* -exprs(#20047,12,#20046,0,"new Array(...elts)") -#20048=@"loc,{#10000},2,1,2,18" -locations_default(#20048,#10000,2,1,2,18) -hasLocation(#20047,#20048) -enclosing_stmt(#20047,#20046) -expr_containers(#20047,#20001) -#20049=* -exprs(#20049,79,#20047,-1,"Array") -hasLocation(#20049,#20023) -enclosing_stmt(#20049,#20046) -expr_containers(#20049,#20001) -literals("Array","Array",#20049) -#20050=@"var;{Array};{#20000}" -variables(#20050,"Array",#20000) -bind(#20049,#20050) -#20051=* -exprs(#20051,66,#20047,0,"...elts") -#20052=@"loc,{#10000},2,11,2,17" -locations_default(#20052,#10000,2,11,2,17) -hasLocation(#20051,#20052) -enclosing_stmt(#20051,#20046) -expr_containers(#20051,#20001) -#20053=* -exprs(#20053,79,#20051,0,"elts") -hasLocation(#20053,#20029) -enclosing_stmt(#20053,#20046) -expr_containers(#20053,#20001) -literals("elts","elts",#20053) -#20054=@"var;{elts};{#20000}" -variables(#20054,"elts",#20000) -bind(#20053,#20054) -#20055=* -entry_cfg_node(#20055,#20001) -#20056=@"loc,{#10000},1,1,1,0" -locations_default(#20056,#10000,1,1,1,0) -hasLocation(#20055,#20056) -#20057=* -exit_cfg_node(#20057,#20001) -hasLocation(#20057,#20035) -successor(#20046,#20049) -successor(#20053,#20051) -successor(#20051,#20047) -successor(#20049,#20053) -successor(#20047,#20057) -successor(#20037,#20038) -successor(#20038,#20040) -successor(#20044,#20042) -successor(#20042,#20046) -successor(#20040,#20044) -successor(#20055,#20037) +stmts(#20047,2,#20001,1,"new Array(...elts);") +hasLocation(#20047,#20005) +stmt_containers(#20047,#20001) +#20048=* +exprs(#20048,12,#20047,0,"new Array(...elts)") +#20049=@"loc,{#10000},2,1,2,18" +locations_default(#20049,#10000,2,1,2,18) +hasLocation(#20048,#20049) +enclosing_stmt(#20048,#20047) +expr_containers(#20048,#20001) +#20050=* +exprs(#20050,79,#20048,-1,"Array") +hasLocation(#20050,#20023) +enclosing_stmt(#20050,#20047) +expr_containers(#20050,#20001) +literals("Array","Array",#20050) +#20051=@"var;{Array};{#20000}" +variables(#20051,"Array",#20000) +bind(#20050,#20051) +#20052=* +exprs(#20052,66,#20048,0,"...elts") +#20053=@"loc,{#10000},2,11,2,17" +locations_default(#20053,#10000,2,11,2,17) +hasLocation(#20052,#20053) +enclosing_stmt(#20052,#20047) +expr_containers(#20052,#20001) +#20054=* +exprs(#20054,79,#20052,0,"elts") +hasLocation(#20054,#20029) +enclosing_stmt(#20054,#20047) +expr_containers(#20054,#20001) +literals("elts","elts",#20054) +#20055=@"var;{elts};{#20000}" +variables(#20055,"elts",#20000) +bind(#20054,#20055) +#20056=* +entry_cfg_node(#20056,#20001) +#20057=@"loc,{#10000},1,1,1,0" +locations_default(#20057,#10000,1,1,1,0) +hasLocation(#20056,#20057) +#20058=* +exit_cfg_node(#20058,#20001) +hasLocation(#20058,#20035) +successor(#20047,#20050) +successor(#20054,#20052) +successor(#20052,#20048) +successor(#20050,#20054) +successor(#20048,#20058) +successor(#20038,#20039) +successor(#20039,#20041) +successor(#20045,#20043) +successor(#20043,#20047) +successor(#20041,#20045) +successor(#20056,#20038) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/super_call.js.trap b/javascript/extractor/tests/es2015/output/trap/super_call.js.trap index dfcf41920444..5cd884d04012 100644 --- a/javascript/extractor/tests/es2015/output/trap/super_call.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/super_call.js.trap @@ -153,220 +153,228 @@ hasLocation(#20001,#20053) variables(#20054,"A",#20000) #20055=@"local_type_name;{A};{#20000}" local_type_names(#20055,"A",#20000) -#20056=* -stmts(#20056,26,#20001,0,"class A ... ;\n }\n}") -hasLocation(#20056,#20053) -stmt_containers(#20056,#20001) +#20056=@"var;{this};{#20000}" +variables(#20056,"this",#20000) #20057=* -exprs(#20057,78,#20056,0,"A") -hasLocation(#20057,#20015) -enclosing_stmt(#20057,#20056) -expr_containers(#20057,#20001) -literals("A","A",#20057) -decl(#20057,#20054) -typedecl(#20057,#20055) +stmts(#20057,26,#20001,0,"class A ... ;\n }\n}") +hasLocation(#20057,#20053) +stmt_containers(#20057,#20001) #20058=* -scopes(#20058,10) -scopenodes(#20056,#20058) -scopenesting(#20058,#20000) +exprs(#20058,78,#20057,0,"A") +hasLocation(#20058,#20015) +enclosing_stmt(#20058,#20057) +expr_containers(#20058,#20001) +literals("A","A",#20058) +decl(#20058,#20054) +typedecl(#20058,#20055) #20059=* -exprs(#20059,79,#20056,1,"B") -hasLocation(#20059,#20019) -enclosing_stmt(#20059,#20056) -expr_containers(#20059,#20001) -literals("B","B",#20059) -#20060=@"var;{B};{#20000}" -variables(#20060,"B",#20000) -bind(#20059,#20060) +scopes(#20059,10) +scopenodes(#20057,#20059) +scopenesting(#20059,#20000) +#20060=@"var;{this};{#20059}" +variables(#20060,"this",#20059) #20061=* -properties(#20061,#20056,2,0,"m() {\n ... 19;\n }") -#20062=@"loc,{#10000},2,3,4,3" -locations_default(#20062,#10000,2,3,4,3) -hasLocation(#20061,#20062) +exprs(#20061,79,#20057,1,"B") +hasLocation(#20061,#20019) +enclosing_stmt(#20061,#20057) +expr_containers(#20061,#20001) +literals("B","B",#20061) +#20062=@"var;{B};{#20000}" +variables(#20062,"B",#20000) +bind(#20061,#20062) #20063=* -exprs(#20063,0,#20061,0,"m") -hasLocation(#20063,#20023) -enclosing_stmt(#20063,#20056) -expr_containers(#20063,#20001) -literals("m","m",#20063) -#20064=* -exprs(#20064,9,#20061,1,"() {\n ... 19;\n }") -#20065=@"loc,{#10000},2,4,4,3" -locations_default(#20065,#10000,2,4,4,3) -hasLocation(#20064,#20065) -enclosing_stmt(#20064,#20056) -expr_containers(#20064,#20001) +properties(#20063,#20057,2,0,"m() {\n ... 19;\n }") +#20064=@"loc,{#10000},2,3,4,3" +locations_default(#20064,#10000,2,3,4,3) +hasLocation(#20063,#20064) +#20065=* +exprs(#20065,0,#20063,0,"m") +hasLocation(#20065,#20023) +enclosing_stmt(#20065,#20057) +expr_containers(#20065,#20001) +literals("m","m",#20065) #20066=* -scopes(#20066,1) -scopenodes(#20064,#20066) -scopenesting(#20066,#20058) -#20067=@"var;{arguments};{#20066}" -variables(#20067,"arguments",#20066) -is_arguments_object(#20067) +exprs(#20066,9,#20063,1,"() {\n ... 19;\n }") +#20067=@"loc,{#10000},2,4,4,3" +locations_default(#20067,#10000,2,4,4,3) +hasLocation(#20066,#20067) +enclosing_stmt(#20066,#20057) +expr_containers(#20066,#20001) #20068=* -stmts(#20068,1,#20064,-2,"{\n r ... 19;\n }") -#20069=@"loc,{#10000},2,7,4,3" -locations_default(#20069,#10000,2,7,4,3) -hasLocation(#20068,#20069) -stmt_containers(#20068,#20064) -#20070=* -stmts(#20070,9,#20068,0,"return ... ) + 19;") -#20071=@"loc,{#10000},3,5,3,26" -locations_default(#20071,#10000,3,5,3,26) -hasLocation(#20070,#20071) -stmt_containers(#20070,#20064) -#20072=* -exprs(#20072,34,#20070,0,"super.m() + 19") -#20073=@"loc,{#10000},3,12,3,25" -locations_default(#20073,#10000,3,12,3,25) -hasLocation(#20072,#20073) -enclosing_stmt(#20072,#20070) -expr_containers(#20072,#20064) -#20074=* -exprs(#20074,13,#20072,0,"super.m()") -#20075=@"loc,{#10000},3,12,3,20" -locations_default(#20075,#10000,3,12,3,20) -hasLocation(#20074,#20075) -enclosing_stmt(#20074,#20070) -expr_containers(#20074,#20064) -#20076=* -exprs(#20076,14,#20074,-1,"super.m") -#20077=@"loc,{#10000},3,12,3,18" -locations_default(#20077,#10000,3,12,3,18) -hasLocation(#20076,#20077) -enclosing_stmt(#20076,#20070) -expr_containers(#20076,#20064) -#20078=* -exprs(#20078,81,#20076,0,"super") -hasLocation(#20078,#20033) -enclosing_stmt(#20078,#20070) -expr_containers(#20078,#20064) +scopes(#20068,1) +scopenodes(#20066,#20068) +scopenesting(#20068,#20059) +#20069=@"var;{this};{#20068}" +variables(#20069,"this",#20068) +#20070=@"var;{arguments};{#20068}" +variables(#20070,"arguments",#20068) +is_arguments_object(#20070) +#20071=* +stmts(#20071,1,#20066,-2,"{\n r ... 19;\n }") +#20072=@"loc,{#10000},2,7,4,3" +locations_default(#20072,#10000,2,7,4,3) +hasLocation(#20071,#20072) +stmt_containers(#20071,#20066) +#20073=* +stmts(#20073,9,#20071,0,"return ... ) + 19;") +#20074=@"loc,{#10000},3,5,3,26" +locations_default(#20074,#10000,3,5,3,26) +hasLocation(#20073,#20074) +stmt_containers(#20073,#20066) +#20075=* +exprs(#20075,34,#20073,0,"super.m() + 19") +#20076=@"loc,{#10000},3,12,3,25" +locations_default(#20076,#10000,3,12,3,25) +hasLocation(#20075,#20076) +enclosing_stmt(#20075,#20073) +expr_containers(#20075,#20066) +#20077=* +exprs(#20077,13,#20075,0,"super.m()") +#20078=@"loc,{#10000},3,12,3,20" +locations_default(#20078,#10000,3,12,3,20) +hasLocation(#20077,#20078) +enclosing_stmt(#20077,#20073) +expr_containers(#20077,#20066) #20079=* -exprs(#20079,0,#20076,1,"m") -hasLocation(#20079,#20037) -enclosing_stmt(#20079,#20070) -expr_containers(#20079,#20064) -literals("m","m",#20079) -#20080=* -exprs(#20080,3,#20072,1,"19") -hasLocation(#20080,#20045) -enclosing_stmt(#20080,#20070) -expr_containers(#20080,#20064) -literals("19","19",#20080) -is_method(#20061) +exprs(#20079,14,#20077,-1,"super.m") +#20080=@"loc,{#10000},3,12,3,18" +locations_default(#20080,#10000,3,12,3,18) +hasLocation(#20079,#20080) +enclosing_stmt(#20079,#20073) +expr_containers(#20079,#20066) #20081=* -properties(#20081,#20056,3,0,"constru ... rgs); }") -#20082=@"loc,{#10000},1,19,1,18" -locations_default(#20082,#10000,1,19,1,18) -hasLocation(#20081,#20082) +exprs(#20081,81,#20079,0,"super") +hasLocation(#20081,#20033) +enclosing_stmt(#20081,#20073) +expr_containers(#20081,#20066) +#20082=* +exprs(#20082,0,#20079,1,"m") +hasLocation(#20082,#20037) +enclosing_stmt(#20082,#20073) +expr_containers(#20082,#20066) +literals("m","m",#20082) #20083=* -exprs(#20083,0,#20081,0,"constructor") -hasLocation(#20083,#20082) -enclosing_stmt(#20083,#20056) -expr_containers(#20083,#20001) -literals("constructor","constructor",#20083) +exprs(#20083,3,#20075,1,"19") +hasLocation(#20083,#20045) +enclosing_stmt(#20083,#20073) +expr_containers(#20083,#20066) +literals("19","19",#20083) +is_method(#20063) #20084=* -exprs(#20084,9,#20081,1,"(...arg ... rgs); }") -hasLocation(#20084,#20082) -enclosing_stmt(#20084,#20056) -expr_containers(#20084,#20001) -#20085=* -scopes(#20085,1) -scopenodes(#20084,#20085) -scopenesting(#20085,#20058) -#20086=@"var;{args};{#20085}" -variables(#20086,"args",#20085) +properties(#20084,#20057,3,0,"constru ... rgs); }") +#20085=@"loc,{#10000},1,19,1,18" +locations_default(#20085,#10000,1,19,1,18) +hasLocation(#20084,#20085) +#20086=* +exprs(#20086,0,#20084,0,"constructor") +hasLocation(#20086,#20085) +enclosing_stmt(#20086,#20057) +expr_containers(#20086,#20001) +literals("constructor","constructor",#20086) #20087=* -exprs(#20087,78,#20084,0,"args") -hasLocation(#20087,#20082) -expr_containers(#20087,#20084) -literals("args","args",#20087) -decl(#20087,#20086) -#20088=@"var;{arguments};{#20085}" -variables(#20088,"arguments",#20085) -is_arguments_object(#20088) -has_rest_parameter(#20084) -#20089=* -stmts(#20089,1,#20084,-2,"{ super(...args); }") -hasLocation(#20089,#20082) -stmt_containers(#20089,#20084) -#20090=* -stmts(#20090,2,#20089,0,"super(...args);") -hasLocation(#20090,#20082) -stmt_containers(#20090,#20084) +exprs(#20087,9,#20084,1,"(...arg ... rgs); }") +hasLocation(#20087,#20085) +enclosing_stmt(#20087,#20057) +expr_containers(#20087,#20001) +#20088=* +scopes(#20088,1) +scopenodes(#20087,#20088) +scopenesting(#20088,#20059) +#20089=@"var;{this};{#20088}" +variables(#20089,"this",#20088) +#20090=@"var;{args};{#20088}" +variables(#20090,"args",#20088) #20091=* -exprs(#20091,13,#20090,0,"super(...args)") -hasLocation(#20091,#20082) -enclosing_stmt(#20091,#20090) -expr_containers(#20091,#20084) -#20092=* -exprs(#20092,81,#20091,-1,"super") -hasLocation(#20092,#20082) -enclosing_stmt(#20092,#20090) -expr_containers(#20092,#20084) +exprs(#20091,78,#20087,0,"args") +hasLocation(#20091,#20085) +expr_containers(#20091,#20087) +literals("args","args",#20091) +decl(#20091,#20090) +#20092=@"var;{arguments};{#20088}" +variables(#20092,"arguments",#20088) +is_arguments_object(#20092) +has_rest_parameter(#20087) #20093=* -exprs(#20093,66,#20091,0,"...args") -hasLocation(#20093,#20082) -enclosing_stmt(#20093,#20090) -expr_containers(#20093,#20084) +stmts(#20093,1,#20087,-2,"{ super(...args); }") +hasLocation(#20093,#20085) +stmt_containers(#20093,#20087) #20094=* -exprs(#20094,79,#20093,0,"args") -hasLocation(#20094,#20082) -enclosing_stmt(#20094,#20090) -expr_containers(#20094,#20084) -literals("args","args",#20094) -bind(#20094,#20086) -is_method(#20081) +stmts(#20094,2,#20093,0,"super(...args);") +hasLocation(#20094,#20085) +stmt_containers(#20094,#20087) #20095=* -entry_cfg_node(#20095,#20001) -#20096=@"loc,{#10000},1,1,1,0" -locations_default(#20096,#10000,1,1,1,0) -hasLocation(#20095,#20096) +exprs(#20095,13,#20094,0,"super(...args)") +hasLocation(#20095,#20085) +enclosing_stmt(#20095,#20094) +expr_containers(#20095,#20087) +#20096=* +exprs(#20096,81,#20095,-1,"super") +hasLocation(#20096,#20085) +enclosing_stmt(#20096,#20094) +expr_containers(#20096,#20087) #20097=* -exit_cfg_node(#20097,#20001) -hasLocation(#20097,#20052) -successor(#20084,#20081) +exprs(#20097,66,#20095,0,"...args") +hasLocation(#20097,#20085) +enclosing_stmt(#20097,#20094) +expr_containers(#20097,#20087) #20098=* -entry_cfg_node(#20098,#20084) -hasLocation(#20098,#20082) +exprs(#20098,79,#20097,0,"args") +hasLocation(#20098,#20085) +enclosing_stmt(#20098,#20094) +expr_containers(#20098,#20087) +literals("args","args",#20098) +bind(#20098,#20090) +is_method(#20084) #20099=* -exit_cfg_node(#20099,#20084) -hasLocation(#20099,#20082) -successor(#20090,#20092) -successor(#20094,#20093) -successor(#20093,#20091) -successor(#20092,#20094) -successor(#20091,#20099) -successor(#20089,#20090) -successor(#20087,#20089) -successor(#20098,#20087) -successor(#20083,#20084) -successor(#20081,#20056) -successor(#20064,#20061) -#20100=* -entry_cfg_node(#20100,#20064) -#20101=@"loc,{#10000},2,4,2,3" -locations_default(#20101,#10000,2,4,2,3) -hasLocation(#20100,#20101) +entry_cfg_node(#20099,#20001) +#20100=@"loc,{#10000},1,1,1,0" +locations_default(#20100,#10000,1,1,1,0) +hasLocation(#20099,#20100) +#20101=* +exit_cfg_node(#20101,#20001) +hasLocation(#20101,#20052) +successor(#20087,#20084) #20102=* -exit_cfg_node(#20102,#20064) -#20103=@"loc,{#10000},4,4,4,3" -locations_default(#20103,#10000,4,4,4,3) -hasLocation(#20102,#20103) -successor(#20080,#20072) -successor(#20079,#20076) -successor(#20078,#20079) -successor(#20076,#20074) -successor(#20074,#20080) -successor(#20072,#20070) -successor(#20070,#20102) -successor(#20068,#20078) -successor(#20100,#20068) -successor(#20063,#20064) -successor(#20061,#20083) -successor(#20059,#20063) -successor(#20057,#20059) -successor(#20056,#20097) -successor(#20095,#20057) +entry_cfg_node(#20102,#20087) +hasLocation(#20102,#20085) +#20103=* +exit_cfg_node(#20103,#20087) +hasLocation(#20103,#20085) +successor(#20094,#20096) +successor(#20098,#20097) +successor(#20097,#20095) +successor(#20096,#20098) +successor(#20095,#20103) +successor(#20093,#20094) +successor(#20091,#20093) +successor(#20102,#20091) +successor(#20086,#20087) +successor(#20084,#20057) +successor(#20066,#20063) +#20104=* +entry_cfg_node(#20104,#20066) +#20105=@"loc,{#10000},2,4,2,3" +locations_default(#20105,#10000,2,4,2,3) +hasLocation(#20104,#20105) +#20106=* +exit_cfg_node(#20106,#20066) +#20107=@"loc,{#10000},4,4,4,3" +locations_default(#20107,#10000,4,4,4,3) +hasLocation(#20106,#20107) +successor(#20083,#20075) +successor(#20082,#20079) +successor(#20081,#20082) +successor(#20079,#20077) +successor(#20077,#20083) +successor(#20075,#20073) +successor(#20073,#20106) +successor(#20071,#20081) +successor(#20104,#20071) +successor(#20065,#20066) +successor(#20063,#20086) +successor(#20061,#20065) +successor(#20058,#20061) +successor(#20057,#20101) +successor(#20099,#20058) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/super_ctor.js.trap b/javascript/extractor/tests/es2015/output/trap/super_ctor.js.trap index f5d8013e555b..7fd482a7a6e9 100644 --- a/javascript/extractor/tests/es2015/output/trap/super_ctor.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/super_ctor.js.trap @@ -133,117 +133,123 @@ hasLocation(#20001,#20045) variables(#20046,"A",#20000) #20047=@"local_type_name;{A};{#20000}" local_type_names(#20047,"A",#20000) -#20048=* -stmts(#20048,26,#20001,0,"class A ... ;\n }\n}") -hasLocation(#20048,#20045) -stmt_containers(#20048,#20001) +#20048=@"var;{this};{#20000}" +variables(#20048,"this",#20000) #20049=* -exprs(#20049,78,#20048,0,"A") -hasLocation(#20049,#20015) -enclosing_stmt(#20049,#20048) -expr_containers(#20049,#20001) -literals("A","A",#20049) -decl(#20049,#20046) -typedecl(#20049,#20047) +stmts(#20049,26,#20001,0,"class A ... ;\n }\n}") +hasLocation(#20049,#20045) +stmt_containers(#20049,#20001) #20050=* -scopes(#20050,10) -scopenodes(#20048,#20050) -scopenesting(#20050,#20000) +exprs(#20050,78,#20049,0,"A") +hasLocation(#20050,#20015) +enclosing_stmt(#20050,#20049) +expr_containers(#20050,#20001) +literals("A","A",#20050) +decl(#20050,#20046) +typedecl(#20050,#20047) #20051=* -exprs(#20051,79,#20048,1,"B") -hasLocation(#20051,#20019) -enclosing_stmt(#20051,#20048) -expr_containers(#20051,#20001) -literals("B","B",#20051) -#20052=@"var;{B};{#20000}" -variables(#20052,"B",#20000) -bind(#20051,#20052) +scopes(#20051,10) +scopenodes(#20049,#20051) +scopenesting(#20051,#20000) +#20052=@"var;{this};{#20051}" +variables(#20052,"this",#20051) #20053=* -properties(#20053,#20048,2,0,"constru ... 2);\n }") -#20054=@"loc,{#10000},2,3,4,3" -locations_default(#20054,#10000,2,3,4,3) -hasLocation(#20053,#20054) +exprs(#20053,79,#20049,1,"B") +hasLocation(#20053,#20019) +enclosing_stmt(#20053,#20049) +expr_containers(#20053,#20001) +literals("B","B",#20053) +#20054=@"var;{B};{#20000}" +variables(#20054,"B",#20000) +bind(#20053,#20054) #20055=* -exprs(#20055,0,#20053,0,"constructor") -hasLocation(#20055,#20023) -enclosing_stmt(#20055,#20048) -expr_containers(#20055,#20001) -literals("constructor","constructor",#20055) -#20056=* -exprs(#20056,9,#20053,1,"() {\n ... 2);\n }") -#20057=@"loc,{#10000},2,14,4,3" -locations_default(#20057,#10000,2,14,4,3) -hasLocation(#20056,#20057) -enclosing_stmt(#20056,#20048) -expr_containers(#20056,#20001) +properties(#20055,#20049,2,0,"constru ... 2);\n }") +#20056=@"loc,{#10000},2,3,4,3" +locations_default(#20056,#10000,2,3,4,3) +hasLocation(#20055,#20056) +#20057=* +exprs(#20057,0,#20055,0,"constructor") +hasLocation(#20057,#20023) +enclosing_stmt(#20057,#20049) +expr_containers(#20057,#20001) +literals("constructor","constructor",#20057) #20058=* -scopes(#20058,1) -scopenodes(#20056,#20058) -scopenesting(#20058,#20050) -#20059=@"var;{arguments};{#20058}" -variables(#20059,"arguments",#20058) -is_arguments_object(#20059) +exprs(#20058,9,#20055,1,"() {\n ... 2);\n }") +#20059=@"loc,{#10000},2,14,4,3" +locations_default(#20059,#10000,2,14,4,3) +hasLocation(#20058,#20059) +enclosing_stmt(#20058,#20049) +expr_containers(#20058,#20001) #20060=* -stmts(#20060,1,#20056,-2,"{\n super(42);\n }") -#20061=@"loc,{#10000},2,17,4,3" -locations_default(#20061,#10000,2,17,4,3) -hasLocation(#20060,#20061) -stmt_containers(#20060,#20056) -#20062=* -stmts(#20062,2,#20060,0,"super(42);") -#20063=@"loc,{#10000},3,5,3,14" -locations_default(#20063,#10000,3,5,3,14) -hasLocation(#20062,#20063) -stmt_containers(#20062,#20056) -#20064=* -exprs(#20064,13,#20062,0,"super(42)") -#20065=@"loc,{#10000},3,5,3,13" -locations_default(#20065,#10000,3,5,3,13) -hasLocation(#20064,#20065) -enclosing_stmt(#20064,#20062) -expr_containers(#20064,#20056) -#20066=* -exprs(#20066,81,#20064,-1,"super") -hasLocation(#20066,#20031) -enclosing_stmt(#20066,#20062) -expr_containers(#20066,#20056) +scopes(#20060,1) +scopenodes(#20058,#20060) +scopenesting(#20060,#20051) +#20061=@"var;{this};{#20060}" +variables(#20061,"this",#20060) +#20062=@"var;{arguments};{#20060}" +variables(#20062,"arguments",#20060) +is_arguments_object(#20062) +#20063=* +stmts(#20063,1,#20058,-2,"{\n super(42);\n }") +#20064=@"loc,{#10000},2,17,4,3" +locations_default(#20064,#10000,2,17,4,3) +hasLocation(#20063,#20064) +stmt_containers(#20063,#20058) +#20065=* +stmts(#20065,2,#20063,0,"super(42);") +#20066=@"loc,{#10000},3,5,3,14" +locations_default(#20066,#10000,3,5,3,14) +hasLocation(#20065,#20066) +stmt_containers(#20065,#20058) #20067=* -exprs(#20067,3,#20064,0,"42") -hasLocation(#20067,#20035) -enclosing_stmt(#20067,#20062) -expr_containers(#20067,#20056) -literals("42","42",#20067) -is_method(#20053) -#20068=* -entry_cfg_node(#20068,#20001) -#20069=@"loc,{#10000},1,1,1,0" -locations_default(#20069,#10000,1,1,1,0) -hasLocation(#20068,#20069) +exprs(#20067,13,#20065,0,"super(42)") +#20068=@"loc,{#10000},3,5,3,13" +locations_default(#20068,#10000,3,5,3,13) +hasLocation(#20067,#20068) +enclosing_stmt(#20067,#20065) +expr_containers(#20067,#20058) +#20069=* +exprs(#20069,81,#20067,-1,"super") +hasLocation(#20069,#20031) +enclosing_stmt(#20069,#20065) +expr_containers(#20069,#20058) #20070=* -exit_cfg_node(#20070,#20001) -hasLocation(#20070,#20044) -successor(#20056,#20053) +exprs(#20070,3,#20067,0,"42") +hasLocation(#20070,#20035) +enclosing_stmt(#20070,#20065) +expr_containers(#20070,#20058) +literals("42","42",#20070) +is_method(#20055) #20071=* -entry_cfg_node(#20071,#20056) -#20072=@"loc,{#10000},2,14,2,13" -locations_default(#20072,#10000,2,14,2,13) +entry_cfg_node(#20071,#20001) +#20072=@"loc,{#10000},1,1,1,0" +locations_default(#20072,#10000,1,1,1,0) hasLocation(#20071,#20072) #20073=* -exit_cfg_node(#20073,#20056) -#20074=@"loc,{#10000},4,4,4,3" -locations_default(#20074,#10000,4,4,4,3) -hasLocation(#20073,#20074) -successor(#20062,#20066) -successor(#20067,#20064) -successor(#20066,#20067) -successor(#20064,#20073) -successor(#20060,#20062) -successor(#20071,#20060) -successor(#20055,#20056) -successor(#20053,#20048) -successor(#20051,#20055) -successor(#20049,#20051) -successor(#20048,#20070) -successor(#20068,#20049) +exit_cfg_node(#20073,#20001) +hasLocation(#20073,#20044) +successor(#20058,#20055) +#20074=* +entry_cfg_node(#20074,#20058) +#20075=@"loc,{#10000},2,14,2,13" +locations_default(#20075,#10000,2,14,2,13) +hasLocation(#20074,#20075) +#20076=* +exit_cfg_node(#20076,#20058) +#20077=@"loc,{#10000},4,4,4,3" +locations_default(#20077,#10000,4,4,4,3) +hasLocation(#20076,#20077) +successor(#20065,#20069) +successor(#20070,#20067) +successor(#20069,#20070) +successor(#20067,#20076) +successor(#20063,#20065) +successor(#20074,#20063) +successor(#20057,#20058) +successor(#20055,#20049) +successor(#20053,#20057) +successor(#20050,#20053) +successor(#20049,#20073) +successor(#20071,#20050) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/templates.js.trap b/javascript/extractor/tests/es2015/output/trap/templates.js.trap index 01688946f3fb..8d7dffe88e06 100644 --- a/javascript/extractor/tests/es2015/output/trap/templates.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/templates.js.trap @@ -406,342 +406,346 @@ variables(#20154,"tag",#20000) variables(#20155,"x",#20000) #20156=@"var;{y};{#20000}" variables(#20156,"y",#20000) -#20157=* -stmts(#20157,17,#20001,0,"functio ... , ');\n}") -#20158=@"loc,{#10000},1,1,3,1" -locations_default(#20158,#10000,1,1,3,1) -hasLocation(#20157,#20158) -stmt_containers(#20157,#20001) -#20159=* -exprs(#20159,78,#20157,-1,"tag") -hasLocation(#20159,#20021) -expr_containers(#20159,#20157) -literals("tag","tag",#20159) -decl(#20159,#20154) +#20157=@"var;{this};{#20000}" +variables(#20157,"this",#20000) +#20158=* +stmts(#20158,17,#20001,0,"functio ... , ');\n}") +#20159=@"loc,{#10000},1,1,3,1" +locations_default(#20159,#10000,1,1,3,1) +hasLocation(#20158,#20159) +stmt_containers(#20158,#20001) #20160=* -scopes(#20160,1) -scopenodes(#20157,#20160) -scopenesting(#20160,#20000) -#20161=@"var;{strings};{#20160}" -variables(#20161,"strings",#20160) -#20162=* -exprs(#20162,78,#20157,0,"strings") -hasLocation(#20162,#20025) -expr_containers(#20162,#20157) -literals("strings","strings",#20162) -decl(#20162,#20161) -#20163=@"var;{values};{#20160}" -variables(#20163,"values",#20160) +exprs(#20160,78,#20158,-1,"tag") +hasLocation(#20160,#20021) +expr_containers(#20160,#20158) +literals("tag","tag",#20160) +decl(#20160,#20154) +#20161=* +scopes(#20161,1) +scopenodes(#20158,#20161) +scopenesting(#20161,#20000) +#20162=@"var;{this};{#20161}" +variables(#20162,"this",#20161) +#20163=@"var;{strings};{#20161}" +variables(#20163,"strings",#20161) #20164=* -exprs(#20164,78,#20157,1,"values") -hasLocation(#20164,#20031) -expr_containers(#20164,#20157) -literals("values","values",#20164) +exprs(#20164,78,#20158,0,"strings") +hasLocation(#20164,#20025) +expr_containers(#20164,#20158) +literals("strings","strings",#20164) decl(#20164,#20163) -#20165=@"var;{arguments};{#20160}" -variables(#20165,"arguments",#20160) -is_arguments_object(#20165) -has_rest_parameter(#20157) +#20165=@"var;{values};{#20161}" +variables(#20165,"values",#20161) #20166=* -stmts(#20166,1,#20157,-2,"{\n ret ... , ');\n}") -#20167=@"loc,{#10000},1,34,3,1" -locations_default(#20167,#10000,1,34,3,1) -hasLocation(#20166,#20167) -stmt_containers(#20166,#20157) +exprs(#20166,78,#20158,1,"values") +hasLocation(#20166,#20031) +expr_containers(#20166,#20158) +literals("values","values",#20166) +decl(#20166,#20165) +#20167=@"var;{arguments};{#20161}" +variables(#20167,"arguments",#20161) +is_arguments_object(#20167) +has_rest_parameter(#20158) #20168=* -stmts(#20168,9,#20166,0,"return ... (', ');") -#20169=@"loc,{#10000},2,3,2,40" -locations_default(#20169,#10000,2,3,2,40) +stmts(#20168,1,#20158,-2,"{\n ret ... , ');\n}") +#20169=@"loc,{#10000},1,34,3,1" +locations_default(#20169,#10000,1,34,3,1) hasLocation(#20168,#20169) -stmt_containers(#20168,#20157) +stmt_containers(#20168,#20158) #20170=* -exprs(#20170,34,#20168,0,"""values ... n(', ')") -#20171=@"loc,{#10000},2,10,2,39" -locations_default(#20171,#10000,2,10,2,39) +stmts(#20170,9,#20168,0,"return ... (', ');") +#20171=@"loc,{#10000},2,3,2,40" +locations_default(#20171,#10000,2,3,2,40) hasLocation(#20170,#20171) -enclosing_stmt(#20170,#20168) -expr_containers(#20170,#20157) +stmt_containers(#20170,#20158) #20172=* -exprs(#20172,4,#20170,0,"""values: """) -hasLocation(#20172,#20039) -enclosing_stmt(#20172,#20168) -expr_containers(#20172,#20157) -literals("values: ","""values: """,#20172) -#20173=* -exprs(#20173,13,#20170,1,"values.join(', ')") -#20174=@"loc,{#10000},2,23,2,39" -locations_default(#20174,#10000,2,23,2,39) -hasLocation(#20173,#20174) -enclosing_stmt(#20173,#20168) -expr_containers(#20173,#20157) +exprs(#20172,34,#20170,0,"""values ... n(', ')") +#20173=@"loc,{#10000},2,10,2,39" +locations_default(#20173,#10000,2,10,2,39) +hasLocation(#20172,#20173) +enclosing_stmt(#20172,#20170) +expr_containers(#20172,#20158) +#20174=* +exprs(#20174,4,#20172,0,"""values: """) +hasLocation(#20174,#20039) +enclosing_stmt(#20174,#20170) +expr_containers(#20174,#20158) +literals("values: ","""values: """,#20174) #20175=* -exprs(#20175,14,#20173,-1,"values.join") -#20176=@"loc,{#10000},2,23,2,33" -locations_default(#20176,#10000,2,23,2,33) +exprs(#20175,13,#20172,1,"values.join(', ')") +#20176=@"loc,{#10000},2,23,2,39" +locations_default(#20176,#10000,2,23,2,39) hasLocation(#20175,#20176) -enclosing_stmt(#20175,#20168) -expr_containers(#20175,#20157) +enclosing_stmt(#20175,#20170) +expr_containers(#20175,#20158) #20177=* -exprs(#20177,79,#20175,0,"values") -hasLocation(#20177,#20043) -enclosing_stmt(#20177,#20168) -expr_containers(#20177,#20157) -literals("values","values",#20177) -bind(#20177,#20163) -#20178=* -exprs(#20178,0,#20175,1,"join") -hasLocation(#20178,#20047) -enclosing_stmt(#20178,#20168) -expr_containers(#20178,#20157) -literals("join","join",#20178) +exprs(#20177,14,#20175,-1,"values.join") +#20178=@"loc,{#10000},2,23,2,33" +locations_default(#20178,#10000,2,23,2,33) +hasLocation(#20177,#20178) +enclosing_stmt(#20177,#20170) +expr_containers(#20177,#20158) #20179=* -exprs(#20179,4,#20173,0,"', '") -hasLocation(#20179,#20051) -enclosing_stmt(#20179,#20168) -expr_containers(#20179,#20157) -literals(", ","', '",#20179) +exprs(#20179,79,#20177,0,"values") +hasLocation(#20179,#20043) +enclosing_stmt(#20179,#20170) +expr_containers(#20179,#20158) +literals("values","values",#20179) +bind(#20179,#20165) #20180=* -regexpterm(#20180,14,#20179,0,", ") -#20181=@"loc,{#10000},2,36,2,37" -locations_default(#20181,#10000,2,36,2,37) -hasLocation(#20180,#20181) -regexp_const_value(#20180,", ") +exprs(#20180,0,#20177,1,"join") +hasLocation(#20180,#20047) +enclosing_stmt(#20180,#20170) +expr_containers(#20180,#20158) +literals("join","join",#20180) +#20181=* +exprs(#20181,4,#20175,0,"', '") +hasLocation(#20181,#20051) +enclosing_stmt(#20181,#20170) +expr_containers(#20181,#20158) +literals(", ","', '",#20181) #20182=* -stmts(#20182,18,#20001,1,"var x = 23;") -hasLocation(#20182,#20011) -stmt_containers(#20182,#20001) -#20183=* -exprs(#20183,64,#20182,0,"x = 23") -#20184=@"loc,{#10000},5,5,5,10" -locations_default(#20184,#10000,5,5,5,10) -hasLocation(#20183,#20184) -enclosing_stmt(#20183,#20182) -expr_containers(#20183,#20001) +regexpterm(#20182,14,#20181,0,", ") +#20183=@"loc,{#10000},2,36,2,37" +locations_default(#20183,#10000,2,36,2,37) +hasLocation(#20182,#20183) +regexp_const_value(#20182,", ") +#20184=* +stmts(#20184,18,#20001,1,"var x = 23;") +hasLocation(#20184,#20011) +stmt_containers(#20184,#20001) #20185=* -exprs(#20185,78,#20183,0,"x") -hasLocation(#20185,#20060) -enclosing_stmt(#20185,#20182) +exprs(#20185,64,#20184,0,"x = 23") +#20186=@"loc,{#10000},5,5,5,10" +locations_default(#20186,#10000,5,5,5,10) +hasLocation(#20185,#20186) +enclosing_stmt(#20185,#20184) expr_containers(#20185,#20001) -literals("x","x",#20185) -decl(#20185,#20155) -#20186=* -exprs(#20186,3,#20183,1,"23") -hasLocation(#20186,#20064) -enclosing_stmt(#20186,#20182) -expr_containers(#20186,#20001) -literals("23","23",#20186) #20187=* -stmts(#20187,18,#20001,2,"var y = 19;") -hasLocation(#20187,#20013) -stmt_containers(#20187,#20001) +exprs(#20187,78,#20185,0,"x") +hasLocation(#20187,#20060) +enclosing_stmt(#20187,#20184) +expr_containers(#20187,#20001) +literals("x","x",#20187) +decl(#20187,#20155) #20188=* -exprs(#20188,64,#20187,0,"y = 19") -#20189=@"loc,{#10000},6,5,6,10" -locations_default(#20189,#10000,6,5,6,10) -hasLocation(#20188,#20189) -enclosing_stmt(#20188,#20187) +exprs(#20188,3,#20185,1,"23") +hasLocation(#20188,#20064) +enclosing_stmt(#20188,#20184) expr_containers(#20188,#20001) +literals("23","23",#20188) +#20189=* +stmts(#20189,18,#20001,2,"var y = 19;") +hasLocation(#20189,#20013) +stmt_containers(#20189,#20001) #20190=* -exprs(#20190,78,#20188,0,"y") -hasLocation(#20190,#20070) -enclosing_stmt(#20190,#20187) +exprs(#20190,64,#20189,0,"y = 19") +#20191=@"loc,{#10000},6,5,6,10" +locations_default(#20191,#10000,6,5,6,10) +hasLocation(#20190,#20191) +enclosing_stmt(#20190,#20189) expr_containers(#20190,#20001) -literals("y","y",#20190) -decl(#20190,#20156) -#20191=* -exprs(#20191,3,#20188,1,"19") -hasLocation(#20191,#20074) -enclosing_stmt(#20191,#20187) -expr_containers(#20191,#20001) -literals("19","19",#20191) #20192=* -stmts(#20192,2,#20001,3,"`${x} + ... + y}`;") -hasLocation(#20192,#20015) -stmt_containers(#20192,#20001) +exprs(#20192,78,#20190,0,"y") +hasLocation(#20192,#20070) +enclosing_stmt(#20192,#20189) +expr_containers(#20192,#20001) +literals("y","y",#20192) +decl(#20192,#20156) #20193=* -exprs(#20193,71,#20192,0,"`${x} + ... x + y}`") -#20194=@"loc,{#10000},7,1,7,24" -locations_default(#20194,#10000,7,1,7,24) -hasLocation(#20193,#20194) -enclosing_stmt(#20193,#20192) +exprs(#20193,3,#20190,1,"19") +hasLocation(#20193,#20074) +enclosing_stmt(#20193,#20189) expr_containers(#20193,#20001) +literals("19","19",#20193) +#20194=* +stmts(#20194,2,#20001,3,"`${x} + ... + y}`;") +hasLocation(#20194,#20015) +stmt_containers(#20194,#20001) #20195=* -exprs(#20195,79,#20193,0,"x") -hasLocation(#20195,#20084) -enclosing_stmt(#20195,#20192) +exprs(#20195,71,#20194,0,"`${x} + ... x + y}`") +#20196=@"loc,{#10000},7,1,7,24" +locations_default(#20196,#10000,7,1,7,24) +hasLocation(#20195,#20196) +enclosing_stmt(#20195,#20194) expr_containers(#20195,#20001) -literals("x","x",#20195) -bind(#20195,#20155) -#20196=* -exprs(#20196,72,#20193,1," + ") -hasLocation(#20196,#20088) -enclosing_stmt(#20196,#20192) -expr_containers(#20196,#20001) -literals(" + "," + ",#20196) #20197=* -exprs(#20197,79,#20193,2,"y") -hasLocation(#20197,#20092) -enclosing_stmt(#20197,#20192) +exprs(#20197,79,#20195,0,"x") +hasLocation(#20197,#20084) +enclosing_stmt(#20197,#20194) expr_containers(#20197,#20001) -literals("y","y",#20197) -bind(#20197,#20156) +literals("x","x",#20197) +bind(#20197,#20155) #20198=* -exprs(#20198,72,#20193,3," = ") -hasLocation(#20198,#20096) -enclosing_stmt(#20198,#20192) +exprs(#20198,72,#20195,1," + ") +hasLocation(#20198,#20088) +enclosing_stmt(#20198,#20194) expr_containers(#20198,#20001) -literals(" = "," = ",#20198) +literals(" + "," + ",#20198) #20199=* -exprs(#20199,34,#20193,4,"x + y") -#20200=@"loc,{#10000},7,18,7,22" -locations_default(#20200,#10000,7,18,7,22) -hasLocation(#20199,#20200) -enclosing_stmt(#20199,#20192) +exprs(#20199,79,#20195,2,"y") +hasLocation(#20199,#20092) +enclosing_stmt(#20199,#20194) expr_containers(#20199,#20001) +literals("y","y",#20199) +bind(#20199,#20156) +#20200=* +exprs(#20200,72,#20195,3," = ") +hasLocation(#20200,#20096) +enclosing_stmt(#20200,#20194) +expr_containers(#20200,#20001) +literals(" = "," = ",#20200) #20201=* -exprs(#20201,79,#20199,0,"x") -hasLocation(#20201,#20100) -enclosing_stmt(#20201,#20192) +exprs(#20201,34,#20195,4,"x + y") +#20202=@"loc,{#10000},7,18,7,22" +locations_default(#20202,#10000,7,18,7,22) +hasLocation(#20201,#20202) +enclosing_stmt(#20201,#20194) expr_containers(#20201,#20001) -literals("x","x",#20201) -bind(#20201,#20155) -#20202=* -exprs(#20202,79,#20199,1,"y") -hasLocation(#20202,#20104) -enclosing_stmt(#20202,#20192) -expr_containers(#20202,#20001) -literals("y","y",#20202) -bind(#20202,#20156) #20203=* -stmts(#20203,2,#20001,4,"tag `${ ... + y}`;") -hasLocation(#20203,#20017) -stmt_containers(#20203,#20001) +exprs(#20203,79,#20201,0,"x") +hasLocation(#20203,#20100) +enclosing_stmt(#20203,#20194) +expr_containers(#20203,#20001) +literals("x","x",#20203) +bind(#20203,#20155) #20204=* -exprs(#20204,70,#20203,0,"tag `${ ... x + y}`") -#20205=@"loc,{#10000},8,1,8,28" -locations_default(#20205,#10000,8,1,8,28) -hasLocation(#20204,#20205) -enclosing_stmt(#20204,#20203) +exprs(#20204,79,#20201,1,"y") +hasLocation(#20204,#20104) +enclosing_stmt(#20204,#20194) expr_containers(#20204,#20001) +literals("y","y",#20204) +bind(#20204,#20156) +#20205=* +stmts(#20205,2,#20001,4,"tag `${ ... + y}`;") +hasLocation(#20205,#20017) +stmt_containers(#20205,#20001) #20206=* -exprs(#20206,79,#20204,0,"tag") -hasLocation(#20206,#20114) -enclosing_stmt(#20206,#20203) +exprs(#20206,70,#20205,0,"tag `${ ... x + y}`") +#20207=@"loc,{#10000},8,1,8,28" +locations_default(#20207,#10000,8,1,8,28) +hasLocation(#20206,#20207) +enclosing_stmt(#20206,#20205) expr_containers(#20206,#20001) -literals("tag","tag",#20206) -bind(#20206,#20154) -#20207=* -exprs(#20207,71,#20204,1,"`${x} + ... x + y}`") -#20208=@"loc,{#10000},8,5,8,28" -locations_default(#20208,#10000,8,5,8,28) -hasLocation(#20207,#20208) -enclosing_stmt(#20207,#20203) -expr_containers(#20207,#20001) +#20208=* +exprs(#20208,79,#20206,0,"tag") +hasLocation(#20208,#20114) +enclosing_stmt(#20208,#20205) +expr_containers(#20208,#20001) +literals("tag","tag",#20208) +bind(#20208,#20154) #20209=* -exprs(#20209,79,#20207,0,"x") -hasLocation(#20209,#20122) -enclosing_stmt(#20209,#20203) +exprs(#20209,71,#20206,1,"`${x} + ... x + y}`") +#20210=@"loc,{#10000},8,5,8,28" +locations_default(#20210,#10000,8,5,8,28) +hasLocation(#20209,#20210) +enclosing_stmt(#20209,#20205) expr_containers(#20209,#20001) -literals("x","x",#20209) -bind(#20209,#20155) -#20210=* -exprs(#20210,72,#20207,1," + ") -hasLocation(#20210,#20126) -enclosing_stmt(#20210,#20203) -expr_containers(#20210,#20001) -literals(" + "," + ",#20210) #20211=* -exprs(#20211,79,#20207,2,"y") -hasLocation(#20211,#20130) -enclosing_stmt(#20211,#20203) +exprs(#20211,79,#20209,0,"x") +hasLocation(#20211,#20122) +enclosing_stmt(#20211,#20205) expr_containers(#20211,#20001) -literals("y","y",#20211) -bind(#20211,#20156) +literals("x","x",#20211) +bind(#20211,#20155) #20212=* -exprs(#20212,72,#20207,3," = ") -hasLocation(#20212,#20134) -enclosing_stmt(#20212,#20203) +exprs(#20212,72,#20209,1," + ") +hasLocation(#20212,#20126) +enclosing_stmt(#20212,#20205) expr_containers(#20212,#20001) -literals(" = "," = ",#20212) +literals(" + "," + ",#20212) #20213=* -exprs(#20213,34,#20207,4,"x + y") -#20214=@"loc,{#10000},8,22,8,26" -locations_default(#20214,#10000,8,22,8,26) -hasLocation(#20213,#20214) -enclosing_stmt(#20213,#20203) +exprs(#20213,79,#20209,2,"y") +hasLocation(#20213,#20130) +enclosing_stmt(#20213,#20205) expr_containers(#20213,#20001) +literals("y","y",#20213) +bind(#20213,#20156) +#20214=* +exprs(#20214,72,#20209,3," = ") +hasLocation(#20214,#20134) +enclosing_stmt(#20214,#20205) +expr_containers(#20214,#20001) +literals(" = "," = ",#20214) #20215=* -exprs(#20215,79,#20213,0,"x") -hasLocation(#20215,#20138) -enclosing_stmt(#20215,#20203) +exprs(#20215,34,#20209,4,"x + y") +#20216=@"loc,{#10000},8,22,8,26" +locations_default(#20216,#10000,8,22,8,26) +hasLocation(#20215,#20216) +enclosing_stmt(#20215,#20205) expr_containers(#20215,#20001) -literals("x","x",#20215) -bind(#20215,#20155) -#20216=* -exprs(#20216,79,#20213,1,"y") -hasLocation(#20216,#20142) -enclosing_stmt(#20216,#20203) -expr_containers(#20216,#20001) -literals("y","y",#20216) -bind(#20216,#20156) #20217=* -entry_cfg_node(#20217,#20001) -#20218=@"loc,{#10000},1,1,1,0" -locations_default(#20218,#10000,1,1,1,0) -hasLocation(#20217,#20218) +exprs(#20217,79,#20215,0,"x") +hasLocation(#20217,#20138) +enclosing_stmt(#20217,#20205) +expr_containers(#20217,#20001) +literals("x","x",#20217) +bind(#20217,#20155) +#20218=* +exprs(#20218,79,#20215,1,"y") +hasLocation(#20218,#20142) +enclosing_stmt(#20218,#20205) +expr_containers(#20218,#20001) +literals("y","y",#20218) +bind(#20218,#20156) #20219=* -exit_cfg_node(#20219,#20001) -hasLocation(#20219,#20152) -successor(#20203,#20204) -successor(#20204,#20206) -successor(#20207,#20209) -successor(#20216,#20213) -successor(#20215,#20216) -successor(#20213,#20219) -successor(#20212,#20215) +entry_cfg_node(#20219,#20001) +#20220=@"loc,{#10000},1,1,1,0" +locations_default(#20220,#10000,1,1,1,0) +hasLocation(#20219,#20220) +#20221=* +exit_cfg_node(#20221,#20001) +hasLocation(#20221,#20152) +successor(#20205,#20206) +successor(#20206,#20208) +successor(#20209,#20211) +successor(#20218,#20215) +successor(#20217,#20218) +successor(#20215,#20221) +successor(#20214,#20217) +successor(#20213,#20214) +successor(#20212,#20213) successor(#20211,#20212) -successor(#20210,#20211) -successor(#20209,#20210) -successor(#20206,#20207) -successor(#20192,#20193) -successor(#20193,#20195) -successor(#20202,#20199) -successor(#20201,#20202) -successor(#20199,#20203) -successor(#20198,#20201) +successor(#20208,#20209) +successor(#20194,#20195) +successor(#20195,#20197) +successor(#20204,#20201) +successor(#20203,#20204) +successor(#20201,#20205) +successor(#20200,#20203) +successor(#20199,#20200) +successor(#20198,#20199) successor(#20197,#20198) -successor(#20196,#20197) -successor(#20195,#20196) -successor(#20187,#20190) -successor(#20191,#20188) -successor(#20190,#20191) -successor(#20188,#20192) -successor(#20182,#20185) -successor(#20186,#20183) -successor(#20185,#20186) -successor(#20183,#20187) -successor(#20157,#20182) -#20220=* -entry_cfg_node(#20220,#20157) -hasLocation(#20220,#20218) -#20221=* -exit_cfg_node(#20221,#20157) -#20222=@"loc,{#10000},3,2,3,1" -locations_default(#20222,#10000,3,2,3,1) -hasLocation(#20221,#20222) -successor(#20179,#20173) -successor(#20178,#20175) -successor(#20177,#20178) -successor(#20175,#20179) -successor(#20173,#20170) -successor(#20172,#20177) -successor(#20170,#20168) -successor(#20168,#20221) -successor(#20166,#20172) +successor(#20189,#20192) +successor(#20193,#20190) +successor(#20192,#20193) +successor(#20190,#20194) +successor(#20184,#20187) +successor(#20188,#20185) +successor(#20187,#20188) +successor(#20185,#20189) +successor(#20158,#20184) +#20222=* +entry_cfg_node(#20222,#20158) +hasLocation(#20222,#20220) +#20223=* +exit_cfg_node(#20223,#20158) +#20224=@"loc,{#10000},3,2,3,1" +locations_default(#20224,#10000,3,2,3,1) +hasLocation(#20223,#20224) +successor(#20181,#20175) +successor(#20180,#20177) +successor(#20179,#20180) +successor(#20177,#20181) +successor(#20175,#20172) +successor(#20174,#20179) +successor(#20172,#20170) +successor(#20170,#20223) +successor(#20168,#20174) +successor(#20166,#20168) successor(#20164,#20166) -successor(#20162,#20164) -successor(#20220,#20162) -successor(#20159,#20157) -successor(#20217,#20159) +successor(#20222,#20164) +successor(#20160,#20158) +successor(#20219,#20160) numlines(#10000,8,7,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/unknown_meta_property.js.trap b/javascript/extractor/tests/es2015/output/trap/unknown_meta_property.js.trap index 13db0f6a6fc1..9198e92e8f67 100644 --- a/javascript/extractor/tests/es2015/output/trap/unknown_meta_property.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/unknown_meta_property.js.trap @@ -87,81 +87,85 @@ locations_default(#20029,#10000,1,1,3,1) hasLocation(#20001,#20029) #20030=@"var;{g};{#20000}" variables(#20030,"g",#20000) -#20031=* -stmts(#20031,17,#20001,0,"functio ... urce;\n}") -hasLocation(#20031,#20029) -stmt_containers(#20031,#20001) +#20031=@"var;{this};{#20000}" +variables(#20031,"this",#20000) #20032=* -exprs(#20032,78,#20031,-1,"g") -hasLocation(#20032,#20011) -expr_containers(#20032,#20031) -literals("g","g",#20032) -decl(#20032,#20030) +stmts(#20032,17,#20001,0,"functio ... urce;\n}") +hasLocation(#20032,#20029) +stmt_containers(#20032,#20001) #20033=* -scopes(#20033,1) -scopenodes(#20031,#20033) -scopenesting(#20033,#20000) -#20034=@"var;{arguments};{#20033}" -variables(#20034,"arguments",#20033) -is_arguments_object(#20034) -#20035=* -stmts(#20035,1,#20031,-2,"{\n new.source;\n}") -#20036=@"loc,{#10000},1,14,3,1" -locations_default(#20036,#10000,1,14,3,1) -hasLocation(#20035,#20036) -stmt_containers(#20035,#20031) +exprs(#20033,78,#20032,-1,"g") +hasLocation(#20033,#20011) +expr_containers(#20033,#20032) +literals("g","g",#20033) +decl(#20033,#20030) +#20034=* +scopes(#20034,1) +scopenodes(#20032,#20034) +scopenesting(#20034,#20000) +#20035=@"var;{this};{#20034}" +variables(#20035,"this",#20034) +#20036=@"var;{arguments};{#20034}" +variables(#20036,"arguments",#20034) +is_arguments_object(#20036) #20037=* -stmts(#20037,2,#20035,0,"new.source;") -#20038=@"loc,{#10000},2,3,2,13" -locations_default(#20038,#10000,2,3,2,13) +stmts(#20037,1,#20032,-2,"{\n new.source;\n}") +#20038=@"loc,{#10000},1,14,3,1" +locations_default(#20038,#10000,1,14,3,1) hasLocation(#20037,#20038) -stmt_containers(#20037,#20031) +stmt_containers(#20037,#20032) #20039=* -exprs(#20039,82,#20037,0,"new.source") -#20040=@"loc,{#10000},2,3,2,12" -locations_default(#20040,#10000,2,3,2,12) +stmts(#20039,2,#20037,0,"new.source;") +#20040=@"loc,{#10000},2,3,2,13" +locations_default(#20040,#10000,2,3,2,13) hasLocation(#20039,#20040) -enclosing_stmt(#20039,#20037) -expr_containers(#20039,#20031) +stmt_containers(#20039,#20032) #20041=* -entry_cfg_node(#20041,#20001) -#20042=@"loc,{#10000},1,1,1,0" -locations_default(#20042,#10000,1,1,1,0) +exprs(#20041,82,#20039,0,"new.source") +#20042=@"loc,{#10000},2,3,2,12" +locations_default(#20042,#10000,2,3,2,12) hasLocation(#20041,#20042) +enclosing_stmt(#20041,#20039) +expr_containers(#20041,#20032) #20043=* -exit_cfg_node(#20043,#20001) -hasLocation(#20043,#20028) -successor(#20031,#20043) -#20044=* -entry_cfg_node(#20044,#20031) -hasLocation(#20044,#20042) +entry_cfg_node(#20043,#20001) +#20044=@"loc,{#10000},1,1,1,0" +locations_default(#20044,#10000,1,1,1,0) +hasLocation(#20043,#20044) #20045=* -exit_cfg_node(#20045,#20031) +exit_cfg_node(#20045,#20001) hasLocation(#20045,#20028) -successor(#20037,#20039) -successor(#20039,#20045) -successor(#20035,#20037) -successor(#20044,#20035) -successor(#20032,#20031) -successor(#20041,#20032) +successor(#20032,#20045) #20046=* -js_parse_errors(#20046,#20001,"Error: The only valid meta property for new is new.target"," new.source; -") -#20047=@"loc,{#10000},2,7,2,7" -locations_default(#20047,#10000,2,7,2,7) -hasLocation(#20046,#20047) +entry_cfg_node(#20046,#20032) +hasLocation(#20046,#20044) +#20047=* +exit_cfg_node(#20047,#20032) +hasLocation(#20047,#20028) +successor(#20039,#20041) +successor(#20041,#20047) +successor(#20037,#20039) +successor(#20046,#20037) +successor(#20033,#20032) +successor(#20043,#20033) #20048=* -lines(#20048,#20001,"function g() {"," +js_parse_errors(#20048,#20001,"Error: The only valid meta property for new is new.target"," new.source; ") -hasLocation(#20048,#20003) -#20049=* -lines(#20049,#20001," new.source;"," +#20049=@"loc,{#10000},2,7,2,7" +locations_default(#20049,#10000,2,7,2,7) +hasLocation(#20048,#20049) +#20050=* +lines(#20050,#20001,"function g() {"," +") +hasLocation(#20050,#20003) +#20051=* +lines(#20051,#20001," new.source;"," ") -hasLocation(#20049,#20005) +hasLocation(#20051,#20005) indentation(#10000,2," ",2) -#20050=* -lines(#20050,#20001,"}","") -hasLocation(#20050,#20007) +#20052=* +lines(#20052,#20001,"}","") +hasLocation(#20052,#20007) numlines(#20001,3,0,0) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/yield.js.trap b/javascript/extractor/tests/es2015/output/trap/yield.js.trap index 73886a34b3f2..ab13e0bf8650 100644 --- a/javascript/extractor/tests/es2015/output/trap/yield.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/yield.js.trap @@ -167,150 +167,154 @@ locations_default(#20059,#10000,1,1,5,1) hasLocation(#20001,#20059) #20060=@"var;{foo};{#20000}" variables(#20060,"foo",#20000) -#20061=* -stmts(#20061,17,#20001,0,"functio ... ex++;\n}") -hasLocation(#20061,#20059) -stmt_containers(#20061,#20001) +#20061=@"var;{this};{#20000}" +variables(#20061,"this",#20000) #20062=* -exprs(#20062,78,#20061,-1,"foo") -hasLocation(#20062,#20019) -expr_containers(#20062,#20061) -literals("foo","foo",#20062) -decl(#20062,#20060) +stmts(#20062,17,#20001,0,"functio ... ex++;\n}") +hasLocation(#20062,#20059) +stmt_containers(#20062,#20001) #20063=* -scopes(#20063,1) -scopenodes(#20061,#20063) -scopenesting(#20063,#20000) -#20064=@"var;{index};{#20063}" -variables(#20064,"index",#20063) -#20065=@"var;{arguments};{#20063}" -variables(#20065,"arguments",#20063) -is_arguments_object(#20065) -is_generator(#20061) -#20066=* -stmts(#20066,1,#20061,-2,"{\n var ... ex++;\n}") -#20067=@"loc,{#10000},1,16,5,1" -locations_default(#20067,#10000,1,16,5,1) -hasLocation(#20066,#20067) -stmt_containers(#20066,#20061) +exprs(#20063,78,#20062,-1,"foo") +hasLocation(#20063,#20019) +expr_containers(#20063,#20062) +literals("foo","foo",#20063) +decl(#20063,#20060) +#20064=* +scopes(#20064,1) +scopenodes(#20062,#20064) +scopenesting(#20064,#20000) +#20065=@"var;{index};{#20064}" +variables(#20065,"index",#20064) +#20066=@"var;{this};{#20064}" +variables(#20066,"this",#20064) +#20067=@"var;{arguments};{#20064}" +variables(#20067,"arguments",#20064) +is_arguments_object(#20067) +is_generator(#20062) #20068=* -stmts(#20068,18,#20066,0,"var index = 0;") -#20069=@"loc,{#10000},2,3,2,16" -locations_default(#20069,#10000,2,3,2,16) +stmts(#20068,1,#20062,-2,"{\n var ... ex++;\n}") +#20069=@"loc,{#10000},1,16,5,1" +locations_default(#20069,#10000,1,16,5,1) hasLocation(#20068,#20069) -stmt_containers(#20068,#20061) +stmt_containers(#20068,#20062) #20070=* -exprs(#20070,64,#20068,0,"index = 0") -#20071=@"loc,{#10000},2,7,2,15" -locations_default(#20071,#10000,2,7,2,15) +stmts(#20070,18,#20068,0,"var index = 0;") +#20071=@"loc,{#10000},2,3,2,16" +locations_default(#20071,#10000,2,3,2,16) hasLocation(#20070,#20071) -enclosing_stmt(#20070,#20068) -expr_containers(#20070,#20061) +stmt_containers(#20070,#20062) #20072=* -exprs(#20072,78,#20070,0,"index") -hasLocation(#20072,#20029) -enclosing_stmt(#20072,#20068) -expr_containers(#20072,#20061) -literals("index","index",#20072) -decl(#20072,#20064) -#20073=* -exprs(#20073,3,#20070,1,"0") -hasLocation(#20073,#20033) -enclosing_stmt(#20073,#20068) -expr_containers(#20073,#20061) -literals("0","0",#20073) +exprs(#20072,64,#20070,0,"index = 0") +#20073=@"loc,{#10000},2,7,2,15" +locations_default(#20073,#10000,2,7,2,15) +hasLocation(#20072,#20073) +enclosing_stmt(#20072,#20070) +expr_containers(#20072,#20062) #20074=* -stmts(#20074,12,#20066,1,"while(i ... ndex++;") -#20075=@"loc,{#10000},3,3,4,18" -locations_default(#20075,#10000,3,3,4,18) -hasLocation(#20074,#20075) -stmt_containers(#20074,#20061) +exprs(#20074,78,#20072,0,"index") +hasLocation(#20074,#20029) +enclosing_stmt(#20074,#20070) +expr_containers(#20074,#20062) +literals("index","index",#20074) +decl(#20074,#20065) +#20075=* +exprs(#20075,3,#20072,1,"0") +hasLocation(#20075,#20033) +enclosing_stmt(#20075,#20070) +expr_containers(#20075,#20062) +literals("0","0",#20075) #20076=* -exprs(#20076,28,#20074,0,"index <= 2") -#20077=@"loc,{#10000},3,9,3,18" -locations_default(#20077,#10000,3,9,3,18) +stmts(#20076,12,#20068,1,"while(i ... ndex++;") +#20077=@"loc,{#10000},3,3,4,18" +locations_default(#20077,#10000,3,3,4,18) hasLocation(#20076,#20077) -enclosing_stmt(#20076,#20074) -expr_containers(#20076,#20061) +stmt_containers(#20076,#20062) #20078=* -exprs(#20078,79,#20076,0,"index") -hasLocation(#20078,#20041) -enclosing_stmt(#20078,#20074) -expr_containers(#20078,#20061) -literals("index","index",#20078) -bind(#20078,#20064) -#20079=* -exprs(#20079,3,#20076,1,"2") -hasLocation(#20079,#20045) -enclosing_stmt(#20079,#20074) -expr_containers(#20079,#20061) -literals("2","2",#20079) +exprs(#20078,28,#20076,0,"index <= 2") +#20079=@"loc,{#10000},3,9,3,18" +locations_default(#20079,#10000,3,9,3,18) +hasLocation(#20078,#20079) +enclosing_stmt(#20078,#20076) +expr_containers(#20078,#20062) #20080=* -stmts(#20080,2,#20074,1,"yield index++;") -#20081=@"loc,{#10000},4,5,4,18" -locations_default(#20081,#10000,4,5,4,18) -hasLocation(#20080,#20081) -stmt_containers(#20080,#20061) +exprs(#20080,79,#20078,0,"index") +hasLocation(#20080,#20041) +enclosing_stmt(#20080,#20076) +expr_containers(#20080,#20062) +literals("index","index",#20080) +bind(#20080,#20065) +#20081=* +exprs(#20081,3,#20078,1,"2") +hasLocation(#20081,#20045) +enclosing_stmt(#20081,#20076) +expr_containers(#20081,#20062) +literals("2","2",#20081) #20082=* -exprs(#20082,69,#20080,0,"yield index++") -#20083=@"loc,{#10000},4,5,4,17" -locations_default(#20083,#10000,4,5,4,17) +stmts(#20082,2,#20076,1,"yield index++;") +#20083=@"loc,{#10000},4,5,4,18" +locations_default(#20083,#10000,4,5,4,18) hasLocation(#20082,#20083) -enclosing_stmt(#20082,#20080) -expr_containers(#20082,#20061) +stmt_containers(#20082,#20062) #20084=* -exprs(#20084,60,#20082,0,"index++") -#20085=@"loc,{#10000},4,11,4,17" -locations_default(#20085,#10000,4,11,4,17) +exprs(#20084,69,#20082,0,"yield index++") +#20085=@"loc,{#10000},4,5,4,17" +locations_default(#20085,#10000,4,5,4,17) hasLocation(#20084,#20085) -enclosing_stmt(#20084,#20080) -expr_containers(#20084,#20061) +enclosing_stmt(#20084,#20082) +expr_containers(#20084,#20062) #20086=* -exprs(#20086,79,#20084,0,"index") -hasLocation(#20086,#20051) -enclosing_stmt(#20086,#20080) -expr_containers(#20086,#20061) -literals("index","index",#20086) -bind(#20086,#20064) -#20087=* -entry_cfg_node(#20087,#20001) -#20088=@"loc,{#10000},1,1,1,0" -locations_default(#20088,#10000,1,1,1,0) -hasLocation(#20087,#20088) +exprs(#20086,60,#20084,0,"index++") +#20087=@"loc,{#10000},4,11,4,17" +locations_default(#20087,#10000,4,11,4,17) +hasLocation(#20086,#20087) +enclosing_stmt(#20086,#20082) +expr_containers(#20086,#20062) +#20088=* +exprs(#20088,79,#20086,0,"index") +hasLocation(#20088,#20051) +enclosing_stmt(#20088,#20082) +expr_containers(#20088,#20062) +literals("index","index",#20088) +bind(#20088,#20065) #20089=* -exit_cfg_node(#20089,#20001) -hasLocation(#20089,#20058) -successor(#20061,#20089) -#20090=* -entry_cfg_node(#20090,#20061) -hasLocation(#20090,#20088) +entry_cfg_node(#20089,#20001) +#20090=@"loc,{#10000},1,1,1,0" +locations_default(#20090,#10000,1,1,1,0) +hasLocation(#20089,#20090) #20091=* -exit_cfg_node(#20091,#20061) +exit_cfg_node(#20091,#20001) hasLocation(#20091,#20058) -successor(#20074,#20078) -successor(#20080,#20086) -successor(#20086,#20084) -successor(#20084,#20082) -successor(#20082,#20078) -successor(#20079,#20076) -successor(#20078,#20079) +successor(#20062,#20091) #20092=* -guard_node(#20092,1,#20076) -hasLocation(#20092,#20077) -successor(#20092,#20080) +entry_cfg_node(#20092,#20062) +hasLocation(#20092,#20090) #20093=* -guard_node(#20093,0,#20076) -hasLocation(#20093,#20077) -successor(#20093,#20091) -successor(#20076,#20092) -successor(#20076,#20093) -successor(#20068,#20072) -successor(#20073,#20070) -successor(#20072,#20073) +exit_cfg_node(#20093,#20062) +hasLocation(#20093,#20058) +successor(#20076,#20080) +successor(#20082,#20088) +successor(#20088,#20086) +successor(#20086,#20084) +successor(#20084,#20080) +successor(#20081,#20078) +successor(#20080,#20081) +#20094=* +guard_node(#20094,1,#20078) +hasLocation(#20094,#20079) +successor(#20094,#20082) +#20095=* +guard_node(#20095,0,#20078) +hasLocation(#20095,#20079) +successor(#20095,#20093) +successor(#20078,#20094) +successor(#20078,#20095) successor(#20070,#20074) -successor(#20066,#20068) -successor(#20090,#20066) -successor(#20062,#20061) -successor(#20087,#20062) +successor(#20075,#20072) +successor(#20074,#20075) +successor(#20072,#20076) +successor(#20068,#20070) +successor(#20092,#20068) +successor(#20063,#20062) +successor(#20089,#20063) numlines(#10000,5,5,1) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2015/output/trap/yield2.js.trap b/javascript/extractor/tests/es2015/output/trap/yield2.js.trap index 2bc654a7ee95..f676cfa08958 100644 --- a/javascript/extractor/tests/es2015/output/trap/yield2.js.trap +++ b/javascript/extractor/tests/es2015/output/trap/yield2.js.trap @@ -83,65 +83,69 @@ locations_default(#20027,#10000,1,1,4,0) hasLocation(#20001,#20027) #20028=@"var;{f};{#20000}" variables(#20028,"f",#20000) -#20029=* -stmts(#20029,17,#20001,0,"functio ... ield;\n}") -#20030=@"loc,{#10000},1,1,3,1" -locations_default(#20030,#10000,1,1,3,1) -hasLocation(#20029,#20030) -stmt_containers(#20029,#20001) -#20031=* -exprs(#20031,78,#20029,-1,"f") -hasLocation(#20031,#20013) -expr_containers(#20031,#20029) -literals("f","f",#20031) -decl(#20031,#20028) +#20029=@"var;{this};{#20000}" +variables(#20029,"this",#20000) +#20030=* +stmts(#20030,17,#20001,0,"functio ... ield;\n}") +#20031=@"loc,{#10000},1,1,3,1" +locations_default(#20031,#10000,1,1,3,1) +hasLocation(#20030,#20031) +stmt_containers(#20030,#20001) #20032=* -scopes(#20032,1) -scopenodes(#20029,#20032) -scopenesting(#20032,#20000) -#20033=@"var;{arguments};{#20032}" -variables(#20033,"arguments",#20032) -is_arguments_object(#20033) -is_generator(#20029) -#20034=* -stmts(#20034,1,#20029,-2,"{\n yield;\n}") -#20035=@"loc,{#10000},1,15,3,1" -locations_default(#20035,#10000,1,15,3,1) -hasLocation(#20034,#20035) -stmt_containers(#20034,#20029) +exprs(#20032,78,#20030,-1,"f") +hasLocation(#20032,#20013) +expr_containers(#20032,#20030) +literals("f","f",#20032) +decl(#20032,#20028) +#20033=* +scopes(#20033,1) +scopenodes(#20030,#20033) +scopenesting(#20033,#20000) +#20034=@"var;{this};{#20033}" +variables(#20034,"this",#20033) +#20035=@"var;{arguments};{#20033}" +variables(#20035,"arguments",#20033) +is_arguments_object(#20035) +is_generator(#20030) #20036=* -stmts(#20036,2,#20034,0,"yield;") -#20037=@"loc,{#10000},2,5,2,10" -locations_default(#20037,#10000,2,5,2,10) +stmts(#20036,1,#20030,-2,"{\n yield;\n}") +#20037=@"loc,{#10000},1,15,3,1" +locations_default(#20037,#10000,1,15,3,1) hasLocation(#20036,#20037) -stmt_containers(#20036,#20029) +stmt_containers(#20036,#20030) #20038=* -exprs(#20038,69,#20036,0,"yield") -hasLocation(#20038,#20021) -enclosing_stmt(#20038,#20036) -expr_containers(#20038,#20029) -#20039=* -entry_cfg_node(#20039,#20001) -#20040=@"loc,{#10000},1,1,1,0" -locations_default(#20040,#10000,1,1,1,0) -hasLocation(#20039,#20040) +stmts(#20038,2,#20036,0,"yield;") +#20039=@"loc,{#10000},2,5,2,10" +locations_default(#20039,#10000,2,5,2,10) +hasLocation(#20038,#20039) +stmt_containers(#20038,#20030) +#20040=* +exprs(#20040,69,#20038,0,"yield") +hasLocation(#20040,#20021) +enclosing_stmt(#20040,#20038) +expr_containers(#20040,#20030) #20041=* -exit_cfg_node(#20041,#20001) -hasLocation(#20041,#20026) -successor(#20029,#20041) -#20042=* -entry_cfg_node(#20042,#20029) -hasLocation(#20042,#20040) +entry_cfg_node(#20041,#20001) +#20042=@"loc,{#10000},1,1,1,0" +locations_default(#20042,#10000,1,1,1,0) +hasLocation(#20041,#20042) #20043=* -exit_cfg_node(#20043,#20029) -#20044=@"loc,{#10000},3,2,3,1" -locations_default(#20044,#10000,3,2,3,1) -hasLocation(#20043,#20044) +exit_cfg_node(#20043,#20001) +hasLocation(#20043,#20026) +successor(#20030,#20043) +#20044=* +entry_cfg_node(#20044,#20030) +hasLocation(#20044,#20042) +#20045=* +exit_cfg_node(#20045,#20030) +#20046=@"loc,{#10000},3,2,3,1" +locations_default(#20046,#10000,3,2,3,1) +hasLocation(#20045,#20046) +successor(#20038,#20040) +successor(#20040,#20045) successor(#20036,#20038) -successor(#20038,#20043) -successor(#20034,#20036) -successor(#20042,#20034) -successor(#20031,#20029) -successor(#20039,#20031) +successor(#20044,#20036) +successor(#20032,#20030) +successor(#20041,#20032) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2016/output/trap/exp.js.trap b/javascript/extractor/tests/es2016/output/trap/exp.js.trap index c5103a7932fe..3cb009465db6 100644 --- a/javascript/extractor/tests/es2016/output/trap/exp.js.trap +++ b/javascript/extractor/tests/es2016/output/trap/exp.js.trap @@ -60,67 +60,69 @@ toplevels(#20001,0) #20020=@"loc,{#10000},1,1,2,5" locations_default(#20020,#10000,1,1,2,5) hasLocation(#20001,#20020) -#20021=* -stmts(#20021,2,#20001,0,"1**0") -hasLocation(#20021,#20003) -stmt_containers(#20021,#20001) +#20021=@"var;{this};{#20000}" +variables(#20021,"this",#20000) #20022=* -exprs(#20022,87,#20021,0,"1**0") +stmts(#20022,2,#20001,0,"1**0") hasLocation(#20022,#20003) -enclosing_stmt(#20022,#20021) -expr_containers(#20022,#20001) +stmt_containers(#20022,#20001) #20023=* -exprs(#20023,3,#20022,0,"1") -hasLocation(#20023,#20007) -enclosing_stmt(#20023,#20021) +exprs(#20023,87,#20022,0,"1**0") +hasLocation(#20023,#20003) +enclosing_stmt(#20023,#20022) expr_containers(#20023,#20001) -literals("1","1",#20023) #20024=* -exprs(#20024,3,#20022,1,"0") -hasLocation(#20024,#20011) -enclosing_stmt(#20024,#20021) +exprs(#20024,3,#20023,0,"1") +hasLocation(#20024,#20007) +enclosing_stmt(#20024,#20022) expr_containers(#20024,#20001) -literals("0","0",#20024) +literals("1","1",#20024) #20025=* -stmts(#20025,2,#20001,1,"x**=2") -hasLocation(#20025,#20005) -stmt_containers(#20025,#20001) +exprs(#20025,3,#20023,1,"0") +hasLocation(#20025,#20011) +enclosing_stmt(#20025,#20022) +expr_containers(#20025,#20001) +literals("0","0",#20025) #20026=* -exprs(#20026,88,#20025,0,"x**=2") +stmts(#20026,2,#20001,1,"x**=2") hasLocation(#20026,#20005) -enclosing_stmt(#20026,#20025) -expr_containers(#20026,#20001) +stmt_containers(#20026,#20001) #20027=* -exprs(#20027,79,#20026,0,"x") -hasLocation(#20027,#20013) -enclosing_stmt(#20027,#20025) +exprs(#20027,88,#20026,0,"x**=2") +hasLocation(#20027,#20005) +enclosing_stmt(#20027,#20026) expr_containers(#20027,#20001) -literals("x","x",#20027) -#20028=@"var;{x};{#20000}" -variables(#20028,"x",#20000) -bind(#20027,#20028) -#20029=* -exprs(#20029,3,#20026,1,"2") -hasLocation(#20029,#20017) -enclosing_stmt(#20029,#20025) -expr_containers(#20029,#20001) -literals("2","2",#20029) +#20028=* +exprs(#20028,79,#20027,0,"x") +hasLocation(#20028,#20013) +enclosing_stmt(#20028,#20026) +expr_containers(#20028,#20001) +literals("x","x",#20028) +#20029=@"var;{x};{#20000}" +variables(#20029,"x",#20000) +bind(#20028,#20029) #20030=* -entry_cfg_node(#20030,#20001) -#20031=@"loc,{#10000},1,1,1,0" -locations_default(#20031,#10000,1,1,1,0) -hasLocation(#20030,#20031) -#20032=* -exit_cfg_node(#20032,#20001) -hasLocation(#20032,#20019) -successor(#20025,#20027) -successor(#20029,#20026) -successor(#20027,#20029) -successor(#20026,#20032) -successor(#20021,#20023) -successor(#20024,#20022) -successor(#20023,#20024) -successor(#20022,#20025) -successor(#20030,#20021) +exprs(#20030,3,#20027,1,"2") +hasLocation(#20030,#20017) +enclosing_stmt(#20030,#20026) +expr_containers(#20030,#20001) +literals("2","2",#20030) +#20031=* +entry_cfg_node(#20031,#20001) +#20032=@"loc,{#10000},1,1,1,0" +locations_default(#20032,#10000,1,1,1,0) +hasLocation(#20031,#20032) +#20033=* +exit_cfg_node(#20033,#20001) +hasLocation(#20033,#20019) +successor(#20026,#20028) +successor(#20030,#20027) +successor(#20028,#20030) +successor(#20027,#20033) +successor(#20022,#20024) +successor(#20025,#20023) +successor(#20024,#20025) +successor(#20023,#20026) +successor(#20031,#20022) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2016/output/trap/usestrict.js.trap b/javascript/extractor/tests/es2016/output/trap/usestrict.js.trap index 0ec333d2cf7c..b9a9688ec829 100644 --- a/javascript/extractor/tests/es2016/output/trap/usestrict.js.trap +++ b/javascript/extractor/tests/es2016/output/trap/usestrict.js.trap @@ -79,91 +79,95 @@ toplevels(#20001,0) hasLocation(#20001,#20003) #20028=@"var;{f};{#20000}" variables(#20028,"f",#20000) -#20029=* -stmts(#20029,17,#20001,0,"functio ... ict'; }") -hasLocation(#20029,#20003) -stmt_containers(#20029,#20001) +#20029=@"var;{this};{#20000}" +variables(#20029,"this",#20000) #20030=* -exprs(#20030,78,#20029,-1,"f") -hasLocation(#20030,#20007) -expr_containers(#20030,#20029) -literals("f","f",#20030) -decl(#20030,#20028) +stmts(#20030,17,#20001,0,"functio ... ict'; }") +hasLocation(#20030,#20003) +stmt_containers(#20030,#20001) #20031=* -scopes(#20031,1) -scopenodes(#20029,#20031) -scopenesting(#20031,#20000) -#20032=@"var;{a};{#20031}" -variables(#20032,"a",#20031) -#20033=* -exprs(#20033,78,#20029,0,"a") -hasLocation(#20033,#20011) -expr_containers(#20033,#20029) -literals("a","a",#20033) -decl(#20033,#20032) -#20034=@"var;{arguments};{#20031}" -variables(#20034,"arguments",#20031) -is_arguments_object(#20034) +exprs(#20031,78,#20030,-1,"f") +hasLocation(#20031,#20007) +expr_containers(#20031,#20030) +literals("f","f",#20031) +decl(#20031,#20028) +#20032=* +scopes(#20032,1) +scopenodes(#20030,#20032) +scopenesting(#20032,#20000) +#20033=@"var;{this};{#20032}" +variables(#20033,"this",#20032) +#20034=@"var;{a};{#20032}" +variables(#20034,"a",#20032) #20035=* -exprs(#20035,3,#20029,-5,"2") -hasLocation(#20035,#20015) -expr_containers(#20035,#20029) -literals("2","2",#20035) -#20036=* -stmts(#20036,1,#20029,-2,"{ 'use strict'; }") -#20037=@"loc,{#10000},1,17,1,33" -locations_default(#20037,#10000,1,17,1,33) -hasLocation(#20036,#20037) -stmt_containers(#20036,#20029) +exprs(#20035,78,#20030,0,"a") +hasLocation(#20035,#20011) +expr_containers(#20035,#20030) +literals("a","a",#20035) +decl(#20035,#20034) +#20036=@"var;{arguments};{#20032}" +variables(#20036,"arguments",#20032) +is_arguments_object(#20036) +#20037=* +exprs(#20037,3,#20030,-5,"2") +hasLocation(#20037,#20015) +expr_containers(#20037,#20030) +literals("2","2",#20037) #20038=* -stmts(#20038,2,#20036,0,"'use strict';") -#20039=@"loc,{#10000},1,19,1,31" -locations_default(#20039,#10000,1,19,1,31) +stmts(#20038,1,#20030,-2,"{ 'use strict'; }") +#20039=@"loc,{#10000},1,17,1,33" +locations_default(#20039,#10000,1,17,1,33) hasLocation(#20038,#20039) -stmt_containers(#20038,#20029) +stmt_containers(#20038,#20030) #20040=* -exprs(#20040,4,#20038,0,"'use strict'") -hasLocation(#20040,#20021) -enclosing_stmt(#20040,#20038) -expr_containers(#20040,#20029) -literals("use strict","'use strict'",#20040) -#20041=* -regexpterm(#20041,14,#20040,0,"use strict") -#20042=@"loc,{#10000},1,20,1,29" -locations_default(#20042,#10000,1,20,1,29) -hasLocation(#20041,#20042) -regexp_const_value(#20041,"use strict") +stmts(#20040,2,#20038,0,"'use strict';") +#20041=@"loc,{#10000},1,19,1,31" +locations_default(#20041,#10000,1,19,1,31) +hasLocation(#20040,#20041) +stmt_containers(#20040,#20030) +#20042=* +exprs(#20042,4,#20040,0,"'use strict'") +hasLocation(#20042,#20021) +enclosing_stmt(#20042,#20040) +expr_containers(#20042,#20030) +literals("use strict","'use strict'",#20042) #20043=* -entry_cfg_node(#20043,#20001) -#20044=@"loc,{#10000},1,1,1,0" -locations_default(#20044,#10000,1,1,1,0) +regexpterm(#20043,14,#20042,0,"use strict") +#20044=@"loc,{#10000},1,20,1,29" +locations_default(#20044,#10000,1,20,1,29) hasLocation(#20043,#20044) +regexp_const_value(#20043,"use strict") #20045=* -exit_cfg_node(#20045,#20001) -hasLocation(#20045,#20027) -successor(#20029,#20045) -#20046=* -entry_cfg_node(#20046,#20029) -hasLocation(#20046,#20044) +entry_cfg_node(#20045,#20001) +#20046=@"loc,{#10000},1,1,1,0" +locations_default(#20046,#10000,1,1,1,0) +hasLocation(#20045,#20046) #20047=* -exit_cfg_node(#20047,#20029) +exit_cfg_node(#20047,#20001) hasLocation(#20047,#20027) -successor(#20038,#20040) -successor(#20040,#20047) -successor(#20036,#20038) -successor(#20033,#20036) -successor(#20035,#20033) -successor(#20046,#20035) -successor(#20030,#20029) -successor(#20043,#20030) +successor(#20030,#20047) #20048=* -js_parse_errors(#20048,#20001,"Error: Illegal 'use strict' directive in function with non-simple parameter list","function f(a=2) { 'use strict'; }") -#20049=@"loc,{#10000},1,19,1,19" -locations_default(#20049,#10000,1,19,1,19) -hasLocation(#20048,#20049) +entry_cfg_node(#20048,#20030) +hasLocation(#20048,#20046) +#20049=* +exit_cfg_node(#20049,#20030) +hasLocation(#20049,#20027) +successor(#20040,#20042) +successor(#20042,#20049) +successor(#20038,#20040) +successor(#20035,#20038) +successor(#20037,#20035) +successor(#20048,#20037) +successor(#20031,#20030) +successor(#20045,#20031) #20050=* -lines(#20050,#20001,"function f(a=2) { 'use strict'; }","") -hasLocation(#20050,#20003) +js_parse_errors(#20050,#20001,"Error: Illegal 'use strict' directive in function with non-simple parameter list","function f(a=2) { 'use strict'; }") +#20051=@"loc,{#10000},1,19,1,19" +locations_default(#20051,#10000,1,19,1,19) +hasLocation(#20050,#20051) +#20052=* +lines(#20052,#20001,"function f(a=2) { 'use strict'; }","") +hasLocation(#20052,#20003) numlines(#20001,1,0,0) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2017/output/trap/async-await.js.trap b/javascript/extractor/tests/es2017/output/trap/async-await.js.trap index 28713055c6e4..20db1f609d75 100644 --- a/javascript/extractor/tests/es2017/output/trap/async-await.js.trap +++ b/javascript/extractor/tests/es2017/output/trap/async-await.js.trap @@ -199,155 +199,159 @@ is_module(#20001) is_es2015_module(#20001) #20070=@"var;{foo};{#20069}" variables(#20070,"foo",#20069) -#20071=* -stmts(#20071,30,#20001,0,"export ... ;\n }\n}") -#20072=@"loc,{#10000},1,1,7,1" -locations_default(#20072,#10000,1,1,7,1) -hasLocation(#20071,#20072) -stmt_containers(#20071,#20001) -#20073=* -stmts(#20073,17,#20071,-1,"async f ... ;\n }\n}") -#20074=@"loc,{#10000},1,8,7,1" -locations_default(#20074,#10000,1,8,7,1) -hasLocation(#20073,#20074) -stmt_containers(#20073,#20001) -#20075=* -exprs(#20075,78,#20073,-1,"foo") -hasLocation(#20075,#20023) -expr_containers(#20075,#20073) -literals("foo","foo",#20075) -decl(#20075,#20070) +#20071=@"var;{this};{#20069}" +variables(#20071,"this",#20069) +#20072=* +stmts(#20072,30,#20001,0,"export ... ;\n }\n}") +#20073=@"loc,{#10000},1,1,7,1" +locations_default(#20073,#10000,1,1,7,1) +hasLocation(#20072,#20073) +stmt_containers(#20072,#20001) +#20074=* +stmts(#20074,17,#20072,-1,"async f ... ;\n }\n}") +#20075=@"loc,{#10000},1,8,7,1" +locations_default(#20075,#10000,1,8,7,1) +hasLocation(#20074,#20075) +stmt_containers(#20074,#20001) #20076=* -scopes(#20076,1) -scopenodes(#20073,#20076) -scopenesting(#20076,#20069) -#20077=@"var;{x};{#20076}" -variables(#20077,"x",#20076) -#20078=* -exprs(#20078,78,#20073,0,"x") -hasLocation(#20078,#20027) -expr_containers(#20078,#20073) -literals("x","x",#20078) -decl(#20078,#20077) -#20079=@"var;{arguments};{#20076}" -variables(#20079,"arguments",#20076) -is_arguments_object(#20079) -is_async(#20073) +exprs(#20076,78,#20074,-1,"foo") +hasLocation(#20076,#20023) +expr_containers(#20076,#20074) +literals("foo","foo",#20076) +decl(#20076,#20070) +#20077=* +scopes(#20077,1) +scopenodes(#20074,#20077) +scopenesting(#20077,#20069) +#20078=@"var;{this};{#20077}" +variables(#20078,"this",#20077) +#20079=@"var;{x};{#20077}" +variables(#20079,"x",#20077) #20080=* -stmts(#20080,1,#20073,-2,"{\n try ... ;\n }\n}") -#20081=@"loc,{#10000},1,30,7,1" -locations_default(#20081,#10000,1,30,7,1) -hasLocation(#20080,#20081) -stmt_containers(#20080,#20073) +exprs(#20080,78,#20074,0,"x") +hasLocation(#20080,#20027) +expr_containers(#20080,#20074) +literals("x","x",#20080) +decl(#20080,#20079) +#20081=@"var;{arguments};{#20077}" +variables(#20081,"arguments",#20077) +is_arguments_object(#20081) +is_async(#20074) #20082=* -stmts(#20082,11,#20080,0,"try {\n ... ll;\n }") -#20083=@"loc,{#10000},2,3,6,3" -locations_default(#20083,#10000,2,3,6,3) +stmts(#20082,1,#20074,-2,"{\n try ... ;\n }\n}") +#20083=@"loc,{#10000},1,30,7,1" +locations_default(#20083,#10000,1,30,7,1) hasLocation(#20082,#20083) -stmt_containers(#20082,#20073) +stmt_containers(#20082,#20074) #20084=* -stmts(#20084,1,#20082,0,"{\n await x;\n }") -#20085=@"loc,{#10000},2,7,4,3" -locations_default(#20085,#10000,2,7,4,3) +stmts(#20084,11,#20082,0,"try {\n ... ll;\n }") +#20085=@"loc,{#10000},2,3,6,3" +locations_default(#20085,#10000,2,3,6,3) hasLocation(#20084,#20085) -stmt_containers(#20084,#20073) +stmt_containers(#20084,#20074) #20086=* -stmts(#20086,2,#20084,0,"await x;") -#20087=@"loc,{#10000},3,5,3,12" -locations_default(#20087,#10000,3,5,3,12) +stmts(#20086,1,#20084,0,"{\n await x;\n }") +#20087=@"loc,{#10000},2,7,4,3" +locations_default(#20087,#10000,2,7,4,3) hasLocation(#20086,#20087) -stmt_containers(#20086,#20073) +stmt_containers(#20086,#20074) #20088=* -exprs(#20088,92,#20086,0,"await x") -#20089=@"loc,{#10000},3,5,3,11" -locations_default(#20089,#10000,3,5,3,11) +stmts(#20088,2,#20086,0,"await x;") +#20089=@"loc,{#10000},3,5,3,12" +locations_default(#20089,#10000,3,5,3,12) hasLocation(#20088,#20089) -enclosing_stmt(#20088,#20086) -expr_containers(#20088,#20073) +stmt_containers(#20088,#20074) #20090=* -exprs(#20090,79,#20088,0,"x") -hasLocation(#20090,#20039) -enclosing_stmt(#20090,#20086) -expr_containers(#20090,#20073) -literals("x","x",#20090) -bind(#20090,#20077) -#20091=* -stmts(#20091,20,#20082,1,"catch ( ... ll;\n }") -#20092=@"loc,{#10000},4,5,6,3" -locations_default(#20092,#10000,4,5,6,3) -hasLocation(#20091,#20092) -stmt_containers(#20091,#20073) +exprs(#20090,92,#20088,0,"await x") +#20091=@"loc,{#10000},3,5,3,11" +locations_default(#20091,#10000,3,5,3,11) +hasLocation(#20090,#20091) +enclosing_stmt(#20090,#20088) +expr_containers(#20090,#20074) +#20092=* +exprs(#20092,79,#20090,0,"x") +hasLocation(#20092,#20039) +enclosing_stmt(#20092,#20088) +expr_containers(#20092,#20074) +literals("x","x",#20092) +bind(#20092,#20079) #20093=* -scopes(#20093,2) -scopenodes(#20091,#20093) -scopenesting(#20093,#20076) -#20094=@"var;{e};{#20093}" -variables(#20094,"e",#20093) +stmts(#20093,20,#20084,1,"catch ( ... ll;\n }") +#20094=@"loc,{#10000},4,5,6,3" +locations_default(#20094,#10000,4,5,6,3) +hasLocation(#20093,#20094) +stmt_containers(#20093,#20074) #20095=* -exprs(#20095,78,#20091,0,"e") -hasLocation(#20095,#20049) -enclosing_stmt(#20095,#20091) -expr_containers(#20095,#20073) -literals("e","e",#20095) -decl(#20095,#20094) -#20096=* -stmts(#20096,1,#20091,1,"{\n r ... ll;\n }") -#20097=@"loc,{#10000},4,15,6,3" -locations_default(#20097,#10000,4,15,6,3) -hasLocation(#20096,#20097) -stmt_containers(#20096,#20073) +scopes(#20095,2) +scopenodes(#20093,#20095) +scopenesting(#20095,#20077) +#20096=@"var;{e};{#20095}" +variables(#20096,"e",#20095) +#20097=* +exprs(#20097,78,#20093,0,"e") +hasLocation(#20097,#20049) +enclosing_stmt(#20097,#20093) +expr_containers(#20097,#20074) +literals("e","e",#20097) +decl(#20097,#20096) #20098=* -stmts(#20098,9,#20096,0,"return null;") -#20099=@"loc,{#10000},5,5,5,16" -locations_default(#20099,#10000,5,5,5,16) +stmts(#20098,1,#20093,1,"{\n r ... ll;\n }") +#20099=@"loc,{#10000},4,15,6,3" +locations_default(#20099,#10000,4,15,6,3) hasLocation(#20098,#20099) -stmt_containers(#20098,#20073) +stmt_containers(#20098,#20074) #20100=* -exprs(#20100,1,#20098,0,"null") -hasLocation(#20100,#20057) -enclosing_stmt(#20100,#20098) -expr_containers(#20100,#20073) -literals("null","null",#20100) -#20101=* -stmts(#20101,0,#20001,1,";") -hasLocation(#20101,#20065) -stmt_containers(#20101,#20001) +stmts(#20100,9,#20098,0,"return null;") +#20101=@"loc,{#10000},5,5,5,16" +locations_default(#20101,#10000,5,5,5,16) +hasLocation(#20100,#20101) +stmt_containers(#20100,#20074) #20102=* -entry_cfg_node(#20102,#20001) -#20103=@"loc,{#10000},1,1,1,0" -locations_default(#20103,#10000,1,1,1,0) -hasLocation(#20102,#20103) +exprs(#20102,1,#20100,0,"null") +hasLocation(#20102,#20057) +enclosing_stmt(#20102,#20100) +expr_containers(#20102,#20074) +literals("null","null",#20102) +#20103=* +stmts(#20103,0,#20001,1,";") +hasLocation(#20103,#20065) +stmt_containers(#20103,#20001) #20104=* -exit_cfg_node(#20104,#20001) -hasLocation(#20104,#20067) -successor(#20101,#20104) -successor(#20071,#20073) -successor(#20073,#20101) -#20105=* -entry_cfg_node(#20105,#20073) -#20106=@"loc,{#10000},1,8,1,7" -locations_default(#20106,#10000,1,8,1,7) -hasLocation(#20105,#20106) +entry_cfg_node(#20104,#20001) +#20105=@"loc,{#10000},1,1,1,0" +locations_default(#20105,#10000,1,1,1,0) +hasLocation(#20104,#20105) +#20106=* +exit_cfg_node(#20106,#20001) +hasLocation(#20106,#20067) +successor(#20103,#20106) +successor(#20072,#20074) +successor(#20074,#20103) #20107=* -exit_cfg_node(#20107,#20073) -#20108=@"loc,{#10000},7,2,7,1" -locations_default(#20108,#10000,7,2,7,1) +entry_cfg_node(#20107,#20074) +#20108=@"loc,{#10000},1,8,1,7" +locations_default(#20108,#10000,1,8,1,7) hasLocation(#20107,#20108) -successor(#20082,#20084) -successor(#20086,#20090) -successor(#20090,#20088) -successor(#20088,#20091) -successor(#20088,#20107) +#20109=* +exit_cfg_node(#20109,#20074) +#20110=@"loc,{#10000},7,2,7,1" +locations_default(#20110,#10000,7,2,7,1) +hasLocation(#20109,#20110) successor(#20084,#20086) -successor(#20091,#20095) -successor(#20100,#20098) -successor(#20098,#20107) -successor(#20096,#20100) -successor(#20095,#20096) +successor(#20088,#20092) +successor(#20092,#20090) +successor(#20090,#20093) +successor(#20090,#20109) +successor(#20086,#20088) +successor(#20093,#20097) +successor(#20102,#20100) +successor(#20100,#20109) +successor(#20098,#20102) +successor(#20097,#20098) +successor(#20082,#20084) successor(#20080,#20082) -successor(#20078,#20080) -successor(#20105,#20078) -successor(#20075,#20071) -successor(#20102,#20075) +successor(#20107,#20080) +successor(#20076,#20072) +successor(#20104,#20076) numlines(#10000,7,7,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2017/output/trap/export-async-1.js.trap b/javascript/extractor/tests/es2017/output/trap/export-async-1.js.trap index 62404dcc6566..9466c9dbd00d 100644 --- a/javascript/extractor/tests/es2017/output/trap/export-async-1.js.trap +++ b/javascript/extractor/tests/es2017/output/trap/export-async-1.js.trap @@ -83,66 +83,70 @@ is_module(#20001) is_es2015_module(#20001) #20028=@"var;{f};{#20027}" variables(#20028,"f",#20027) -#20029=* -stmts(#20029,29,#20001,0,"export ... f() {}") -#20030=@"loc,{#10000},1,1,1,36" -locations_default(#20030,#10000,1,1,1,36) -hasLocation(#20029,#20030) -stmt_containers(#20029,#20001) -#20031=* -stmts(#20031,17,#20029,0,"async f ... f() {}") -#20032=@"loc,{#10000},1,16,1,36" -locations_default(#20032,#10000,1,16,1,36) -hasLocation(#20031,#20032) -stmt_containers(#20031,#20001) -#20033=* -exprs(#20033,78,#20031,-1,"f") -hasLocation(#20033,#20013) -expr_containers(#20033,#20031) -literals("f","f",#20033) -decl(#20033,#20028) +#20029=@"var;{this};{#20027}" +variables(#20029,"this",#20027) +#20030=* +stmts(#20030,29,#20001,0,"export ... f() {}") +#20031=@"loc,{#10000},1,1,1,36" +locations_default(#20031,#10000,1,1,1,36) +hasLocation(#20030,#20031) +stmt_containers(#20030,#20001) +#20032=* +stmts(#20032,17,#20030,0,"async f ... f() {}") +#20033=@"loc,{#10000},1,16,1,36" +locations_default(#20033,#10000,1,16,1,36) +hasLocation(#20032,#20033) +stmt_containers(#20032,#20001) #20034=* -scopes(#20034,1) -scopenodes(#20031,#20034) -scopenesting(#20034,#20027) -#20035=@"var;{arguments};{#20034}" -variables(#20035,"arguments",#20034) -is_arguments_object(#20035) -is_async(#20031) -#20036=* -stmts(#20036,1,#20031,-2,"{}") -#20037=@"loc,{#10000},1,35,1,36" -locations_default(#20037,#10000,1,35,1,36) -hasLocation(#20036,#20037) -stmt_containers(#20036,#20031) +exprs(#20034,78,#20032,-1,"f") +hasLocation(#20034,#20013) +expr_containers(#20034,#20032) +literals("f","f",#20034) +decl(#20034,#20028) +#20035=* +scopes(#20035,1) +scopenodes(#20032,#20035) +scopenesting(#20035,#20027) +#20036=@"var;{this};{#20035}" +variables(#20036,"this",#20035) +#20037=@"var;{arguments};{#20035}" +variables(#20037,"arguments",#20035) +is_arguments_object(#20037) +is_async(#20032) #20038=* -stmts(#20038,0,#20001,1,";") -hasLocation(#20038,#20023) -stmt_containers(#20038,#20001) -#20039=* -entry_cfg_node(#20039,#20001) -#20040=@"loc,{#10000},1,1,1,0" -locations_default(#20040,#10000,1,1,1,0) -hasLocation(#20039,#20040) +stmts(#20038,1,#20032,-2,"{}") +#20039=@"loc,{#10000},1,35,1,36" +locations_default(#20039,#10000,1,35,1,36) +hasLocation(#20038,#20039) +stmt_containers(#20038,#20032) +#20040=* +stmts(#20040,0,#20001,1,";") +hasLocation(#20040,#20023) +stmt_containers(#20040,#20001) #20041=* -exit_cfg_node(#20041,#20001) -hasLocation(#20041,#20025) -successor(#20038,#20041) -successor(#20029,#20031) -successor(#20031,#20038) -#20042=* -entry_cfg_node(#20042,#20031) -#20043=@"loc,{#10000},1,16,1,15" -locations_default(#20043,#10000,1,16,1,15) -hasLocation(#20042,#20043) +entry_cfg_node(#20041,#20001) +#20042=@"loc,{#10000},1,1,1,0" +locations_default(#20042,#10000,1,1,1,0) +hasLocation(#20041,#20042) +#20043=* +exit_cfg_node(#20043,#20001) +hasLocation(#20043,#20025) +successor(#20040,#20043) +successor(#20030,#20032) +successor(#20032,#20040) #20044=* -exit_cfg_node(#20044,#20031) -#20045=@"loc,{#10000},1,37,1,36" -locations_default(#20045,#10000,1,37,1,36) +entry_cfg_node(#20044,#20032) +#20045=@"loc,{#10000},1,16,1,15" +locations_default(#20045,#10000,1,16,1,15) hasLocation(#20044,#20045) -successor(#20036,#20044) -successor(#20042,#20036) -successor(#20033,#20029) -successor(#20039,#20033) +#20046=* +exit_cfg_node(#20046,#20032) +#20047=@"loc,{#10000},1,37,1,36" +locations_default(#20047,#10000,1,37,1,36) +hasLocation(#20046,#20047) +successor(#20038,#20046) +successor(#20044,#20038) +successor(#20034,#20030) +successor(#20041,#20034) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2017/output/trap/export-async-2.js.trap b/javascript/extractor/tests/es2017/output/trap/export-async-2.js.trap index 1fb2e0a14195..894e93fd966f 100644 --- a/javascript/extractor/tests/es2017/output/trap/export-async-2.js.trap +++ b/javascript/extractor/tests/es2017/output/trap/export-async-2.js.trap @@ -76,60 +76,64 @@ scopenodes(#20001,#20025) scopenesting(#20025,#20000) is_module(#20001) is_es2015_module(#20001) -#20026=* -stmts(#20026,29,#20001,0,"export ... n () {}") -#20027=@"loc,{#10000},1,1,1,35" -locations_default(#20027,#10000,1,1,1,35) -hasLocation(#20026,#20027) -stmt_containers(#20026,#20001) -#20028=* -exprs(#20028,9,#20026,0,"async function () {}") -#20029=@"loc,{#10000},1,16,1,35" -locations_default(#20029,#10000,1,16,1,35) -hasLocation(#20028,#20029) -enclosing_stmt(#20028,#20026) -expr_containers(#20028,#20001) -#20030=* -scopes(#20030,1) -scopenodes(#20028,#20030) -scopenesting(#20030,#20025) -#20031=@"var;{arguments};{#20030}" -variables(#20031,"arguments",#20030) -is_arguments_object(#20031) -is_async(#20028) -#20032=* -stmts(#20032,1,#20028,-2,"{}") -#20033=@"loc,{#10000},1,34,1,35" -locations_default(#20033,#10000,1,34,1,35) -hasLocation(#20032,#20033) -stmt_containers(#20032,#20028) +#20026=@"var;{this};{#20025}" +variables(#20026,"this",#20025) +#20027=* +stmts(#20027,29,#20001,0,"export ... n () {}") +#20028=@"loc,{#10000},1,1,1,35" +locations_default(#20028,#10000,1,1,1,35) +hasLocation(#20027,#20028) +stmt_containers(#20027,#20001) +#20029=* +exprs(#20029,9,#20027,0,"async function () {}") +#20030=@"loc,{#10000},1,16,1,35" +locations_default(#20030,#10000,1,16,1,35) +hasLocation(#20029,#20030) +enclosing_stmt(#20029,#20027) +expr_containers(#20029,#20001) +#20031=* +scopes(#20031,1) +scopenodes(#20029,#20031) +scopenesting(#20031,#20025) +#20032=@"var;{this};{#20031}" +variables(#20032,"this",#20031) +#20033=@"var;{arguments};{#20031}" +variables(#20033,"arguments",#20031) +is_arguments_object(#20033) +is_async(#20029) #20034=* -stmts(#20034,0,#20001,1,";") -hasLocation(#20034,#20021) -stmt_containers(#20034,#20001) -#20035=* -entry_cfg_node(#20035,#20001) -#20036=@"loc,{#10000},1,1,1,0" -locations_default(#20036,#10000,1,1,1,0) -hasLocation(#20035,#20036) +stmts(#20034,1,#20029,-2,"{}") +#20035=@"loc,{#10000},1,34,1,35" +locations_default(#20035,#10000,1,34,1,35) +hasLocation(#20034,#20035) +stmt_containers(#20034,#20029) +#20036=* +stmts(#20036,0,#20001,1,";") +hasLocation(#20036,#20021) +stmt_containers(#20036,#20001) #20037=* -exit_cfg_node(#20037,#20001) -hasLocation(#20037,#20023) -successor(#20034,#20037) -successor(#20026,#20028) -successor(#20028,#20034) -#20038=* -entry_cfg_node(#20038,#20028) -#20039=@"loc,{#10000},1,16,1,15" -locations_default(#20039,#10000,1,16,1,15) -hasLocation(#20038,#20039) +entry_cfg_node(#20037,#20001) +#20038=@"loc,{#10000},1,1,1,0" +locations_default(#20038,#10000,1,1,1,0) +hasLocation(#20037,#20038) +#20039=* +exit_cfg_node(#20039,#20001) +hasLocation(#20039,#20023) +successor(#20036,#20039) +successor(#20027,#20029) +successor(#20029,#20036) #20040=* -exit_cfg_node(#20040,#20028) -#20041=@"loc,{#10000},1,36,1,35" -locations_default(#20041,#10000,1,36,1,35) +entry_cfg_node(#20040,#20029) +#20041=@"loc,{#10000},1,16,1,15" +locations_default(#20041,#10000,1,16,1,15) hasLocation(#20040,#20041) -successor(#20032,#20040) -successor(#20038,#20032) -successor(#20035,#20026) +#20042=* +exit_cfg_node(#20042,#20029) +#20043=@"loc,{#10000},1,36,1,35" +locations_default(#20043,#10000,1,36,1,35) +hasLocation(#20042,#20043) +successor(#20034,#20042) +successor(#20040,#20034) +successor(#20037,#20027) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2017/output/trap/invalid-async-fn.js.trap b/javascript/extractor/tests/es2017/output/trap/invalid-async-fn.js.trap index 9572541ae8d2..1b2769d43bed 100644 --- a/javascript/extractor/tests/es2017/output/trap/invalid-async-fn.js.trap +++ b/javascript/extractor/tests/es2017/output/trap/invalid-async-fn.js.trap @@ -72,73 +72,75 @@ locations_default(#20025,#10000,1,21,1,20) hasLocation(#20024,#20025) toplevels(#20001,0) hasLocation(#20001,#20003) -#20026=* -stmts(#20026,2,#20001,0,"f = async ((x)) => x") -hasLocation(#20026,#20003) -stmt_containers(#20026,#20001) +#20026=@"var;{this};{#20000}" +variables(#20026,"this",#20000) #20027=* -exprs(#20027,47,#20026,0,"f = async ((x)) => x") +stmts(#20027,2,#20001,0,"f = async ((x)) => x") hasLocation(#20027,#20003) -enclosing_stmt(#20027,#20026) -expr_containers(#20027,#20001) +stmt_containers(#20027,#20001) #20028=* -exprs(#20028,79,#20027,0,"f") -hasLocation(#20028,#20005) -enclosing_stmt(#20028,#20026) +exprs(#20028,47,#20027,0,"f = async ((x)) => x") +hasLocation(#20028,#20003) +enclosing_stmt(#20028,#20027) expr_containers(#20028,#20001) -literals("f","f",#20028) -#20029=@"var;{f};{#20000}" -variables(#20029,"f",#20000) -bind(#20028,#20029) -#20030=* -exprs(#20030,65,#20027,1,"async ((x)) => x") -#20031=@"loc,{#10000},1,5,1,20" -locations_default(#20031,#10000,1,5,1,20) -hasLocation(#20030,#20031) -enclosing_stmt(#20030,#20026) -expr_containers(#20030,#20001) -#20032=* -scopes(#20032,1) -scopenodes(#20030,#20032) -scopenesting(#20032,#20000) -#20033=@"var;{x};{#20032}" -variables(#20033,"x",#20032) -#20034=* -exprs(#20034,78,#20030,0,"x") -hasLocation(#20034,#20015) -expr_containers(#20034,#20030) -literals("x","x",#20034) -decl(#20034,#20033) -is_async(#20030) +#20029=* +exprs(#20029,79,#20028,0,"f") +hasLocation(#20029,#20005) +enclosing_stmt(#20029,#20027) +expr_containers(#20029,#20001) +literals("f","f",#20029) +#20030=@"var;{f};{#20000}" +variables(#20030,"f",#20000) +bind(#20029,#20030) +#20031=* +exprs(#20031,65,#20028,1,"async ((x)) => x") +#20032=@"loc,{#10000},1,5,1,20" +locations_default(#20032,#10000,1,5,1,20) +hasLocation(#20031,#20032) +enclosing_stmt(#20031,#20027) +expr_containers(#20031,#20001) +#20033=* +scopes(#20033,1) +scopenodes(#20031,#20033) +scopenesting(#20033,#20000) +#20034=@"var;{x};{#20033}" +variables(#20034,"x",#20033) #20035=* -exprs(#20035,79,#20030,-2,"x") -hasLocation(#20035,#20023) -expr_containers(#20035,#20030) +exprs(#20035,78,#20031,0,"x") +hasLocation(#20035,#20015) +expr_containers(#20035,#20031) literals("x","x",#20035) -bind(#20035,#20033) +decl(#20035,#20034) +is_async(#20031) #20036=* -entry_cfg_node(#20036,#20001) -#20037=@"loc,{#10000},1,1,1,0" -locations_default(#20037,#10000,1,1,1,0) -hasLocation(#20036,#20037) -#20038=* -exit_cfg_node(#20038,#20001) -hasLocation(#20038,#20025) -successor(#20026,#20028) -successor(#20030,#20027) +exprs(#20036,79,#20031,-2,"x") +hasLocation(#20036,#20023) +expr_containers(#20036,#20031) +literals("x","x",#20036) +bind(#20036,#20034) +#20037=* +entry_cfg_node(#20037,#20001) +#20038=@"loc,{#10000},1,1,1,0" +locations_default(#20038,#10000,1,1,1,0) +hasLocation(#20037,#20038) #20039=* -entry_cfg_node(#20039,#20030) -#20040=@"loc,{#10000},1,5,1,4" -locations_default(#20040,#10000,1,5,1,4) -hasLocation(#20039,#20040) -#20041=* -exit_cfg_node(#20041,#20030) -hasLocation(#20041,#20025) -successor(#20035,#20041) -successor(#20034,#20035) -successor(#20039,#20034) -successor(#20028,#20030) -successor(#20027,#20038) -successor(#20036,#20026) +exit_cfg_node(#20039,#20001) +hasLocation(#20039,#20025) +successor(#20027,#20029) +successor(#20031,#20028) +#20040=* +entry_cfg_node(#20040,#20031) +#20041=@"loc,{#10000},1,5,1,4" +locations_default(#20041,#10000,1,5,1,4) +hasLocation(#20040,#20041) +#20042=* +exit_cfg_node(#20042,#20031) +hasLocation(#20042,#20025) +successor(#20036,#20042) +successor(#20035,#20036) +successor(#20040,#20035) +successor(#20029,#20031) +successor(#20028,#20039) +successor(#20037,#20027) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2017/output/trap/shorthand-prop-async.js.trap b/javascript/extractor/tests/es2017/output/trap/shorthand-prop-async.js.trap index 1c62daca205c..3ff5c6044290 100644 --- a/javascript/extractor/tests/es2017/output/trap/shorthand-prop-async.js.trap +++ b/javascript/extractor/tests/es2017/output/trap/shorthand-prop-async.js.trap @@ -55,56 +55,58 @@ toplevels(#20001,0) #20018=@"loc,{#10000},1,1,2,0" locations_default(#20018,#10000,1,1,2,0) hasLocation(#20001,#20018) -#20019=* -stmts(#20019,2,#20001,0,"({ async });") -hasLocation(#20019,#20003) -stmt_containers(#20019,#20001) +#20019=@"var;{this};{#20000}" +variables(#20019,"this",#20000) #20020=* -exprs(#20020,63,#20019,0,"({ async })") -#20021=@"loc,{#10000},1,1,1,11" -locations_default(#20021,#10000,1,1,1,11) -hasLocation(#20020,#20021) -enclosing_stmt(#20020,#20019) -expr_containers(#20020,#20001) -#20022=* -exprs(#20022,8,#20020,0,"{ async }") -#20023=@"loc,{#10000},1,2,1,10" -locations_default(#20023,#10000,1,2,1,10) -hasLocation(#20022,#20023) -enclosing_stmt(#20022,#20019) -expr_containers(#20022,#20001) -#20024=* -properties(#20024,#20022,0,0,"async") -hasLocation(#20024,#20009) +stmts(#20020,2,#20001,0,"({ async });") +hasLocation(#20020,#20003) +stmt_containers(#20020,#20001) +#20021=* +exprs(#20021,63,#20020,0,"({ async })") +#20022=@"loc,{#10000},1,1,1,11" +locations_default(#20022,#10000,1,1,1,11) +hasLocation(#20021,#20022) +enclosing_stmt(#20021,#20020) +expr_containers(#20021,#20001) +#20023=* +exprs(#20023,8,#20021,0,"{ async }") +#20024=@"loc,{#10000},1,2,1,10" +locations_default(#20024,#10000,1,2,1,10) +hasLocation(#20023,#20024) +enclosing_stmt(#20023,#20020) +expr_containers(#20023,#20001) #20025=* -exprs(#20025,0,#20024,0,"async") +properties(#20025,#20023,0,0,"async") hasLocation(#20025,#20009) -enclosing_stmt(#20025,#20019) -expr_containers(#20025,#20001) -literals("async","async",#20025) #20026=* -exprs(#20026,79,#20024,1,"async") +exprs(#20026,0,#20025,0,"async") hasLocation(#20026,#20009) -enclosing_stmt(#20026,#20019) +enclosing_stmt(#20026,#20020) expr_containers(#20026,#20001) literals("async","async",#20026) -#20027=@"var;{async};{#20000}" -variables(#20027,"async",#20000) -bind(#20026,#20027) -#20028=* -entry_cfg_node(#20028,#20001) -#20029=@"loc,{#10000},1,1,1,0" -locations_default(#20029,#10000,1,1,1,0) -hasLocation(#20028,#20029) -#20030=* -exit_cfg_node(#20030,#20001) -hasLocation(#20030,#20017) -successor(#20019,#20020) -successor(#20020,#20022) -successor(#20022,#20025) -successor(#20026,#20024) -successor(#20025,#20026) -successor(#20024,#20030) -successor(#20028,#20019) +#20027=* +exprs(#20027,79,#20025,1,"async") +hasLocation(#20027,#20009) +enclosing_stmt(#20027,#20020) +expr_containers(#20027,#20001) +literals("async","async",#20027) +#20028=@"var;{async};{#20000}" +variables(#20028,"async",#20000) +bind(#20027,#20028) +#20029=* +entry_cfg_node(#20029,#20001) +#20030=@"loc,{#10000},1,1,1,0" +locations_default(#20030,#10000,1,1,1,0) +hasLocation(#20029,#20030) +#20031=* +exit_cfg_node(#20031,#20001) +hasLocation(#20031,#20017) +successor(#20020,#20021) +successor(#20021,#20023) +successor(#20023,#20026) +successor(#20027,#20025) +successor(#20026,#20027) +successor(#20025,#20031) +successor(#20029,#20020) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2018/output/trap/asyncIter.js.trap b/javascript/extractor/tests/es2018/output/trap/asyncIter.js.trap index dcb185525878..e0fb3ecdfbb5 100644 --- a/javascript/extractor/tests/es2018/output/trap/asyncIter.js.trap +++ b/javascript/extractor/tests/es2018/output/trap/asyncIter.js.trap @@ -363,373 +363,389 @@ variables(#20134,"o",#20000) variables(#20135,"C",#20000) #20136=@"local_type_name;{C};{#20000}" local_type_names(#20136,"C",#20000) -#20137=* -stmts(#20137,17,#20001,0,"async f ... Fn() {}") -hasLocation(#20137,#20003) -stmt_containers(#20137,#20001) +#20137=@"var;{this};{#20000}" +variables(#20137,"this",#20000) #20138=* -exprs(#20138,78,#20137,-1,"asyncFn") -hasLocation(#20138,#20031) -expr_containers(#20138,#20137) -literals("asyncFn","asyncFn",#20138) -decl(#20138,#20133) +stmts(#20138,17,#20001,0,"async f ... Fn() {}") +hasLocation(#20138,#20003) +stmt_containers(#20138,#20001) #20139=* -scopes(#20139,1) -scopenodes(#20137,#20139) -scopenesting(#20139,#20000) -#20140=@"var;{arguments};{#20139}" -variables(#20140,"arguments",#20139) -is_arguments_object(#20140) -is_generator(#20137) -is_async(#20137) -#20141=* -stmts(#20141,1,#20137,-2,"{}") -#20142=@"loc,{#10000},1,27,1,28" -locations_default(#20142,#10000,1,27,1,28) -hasLocation(#20141,#20142) -stmt_containers(#20141,#20137) +exprs(#20139,78,#20138,-1,"asyncFn") +hasLocation(#20139,#20031) +expr_containers(#20139,#20138) +literals("asyncFn","asyncFn",#20139) +decl(#20139,#20133) +#20140=* +scopes(#20140,1) +scopenodes(#20138,#20140) +scopenesting(#20140,#20000) +#20141=@"var;{this};{#20140}" +variables(#20141,"this",#20140) +#20142=@"var;{arguments};{#20140}" +variables(#20142,"arguments",#20140) +is_arguments_object(#20142) +is_generator(#20138) +is_async(#20138) #20143=* -stmts(#20143,26,#20001,1,"class C ... () {}\n}") -#20144=@"loc,{#10000},3,1,6,1" -locations_default(#20144,#10000,3,1,6,1) +stmts(#20143,1,#20138,-2,"{}") +#20144=@"loc,{#10000},1,27,1,28" +locations_default(#20144,#10000,1,27,1,28) hasLocation(#20143,#20144) -stmt_containers(#20143,#20001) +stmt_containers(#20143,#20138) #20145=* -exprs(#20145,78,#20143,0,"C") -hasLocation(#20145,#20043) -enclosing_stmt(#20145,#20143) -expr_containers(#20145,#20001) -literals("C","C",#20145) -decl(#20145,#20135) -typedecl(#20145,#20136) -#20146=* -scopes(#20146,10) -scopenodes(#20143,#20146) -scopenesting(#20146,#20000) +stmts(#20145,26,#20001,1,"class C ... () {}\n}") +#20146=@"loc,{#10000},3,1,6,1" +locations_default(#20146,#10000,3,1,6,1) +hasLocation(#20145,#20146) +stmt_containers(#20145,#20001) #20147=* -properties(#20147,#20143,2,0,"async * ... th() {}") -#20148=@"loc,{#10000},4,3,4,23" -locations_default(#20148,#10000,4,3,4,23) -hasLocation(#20147,#20148) -#20149=* -exprs(#20149,0,#20147,0,"asyncMeth") -hasLocation(#20149,#20051) -enclosing_stmt(#20149,#20143) -expr_containers(#20149,#20001) -literals("asyncMeth","asyncMeth",#20149) +exprs(#20147,78,#20145,0,"C") +hasLocation(#20147,#20043) +enclosing_stmt(#20147,#20145) +expr_containers(#20147,#20001) +literals("C","C",#20147) +decl(#20147,#20135) +typedecl(#20147,#20136) +#20148=* +scopes(#20148,10) +scopenodes(#20145,#20148) +scopenesting(#20148,#20000) +#20149=@"var;{this};{#20148}" +variables(#20149,"this",#20148) #20150=* -exprs(#20150,9,#20147,1,"() {}") -#20151=@"loc,{#10000},4,19,4,23" -locations_default(#20151,#10000,4,19,4,23) +properties(#20150,#20145,2,0,"async * ... th() {}") +#20151=@"loc,{#10000},4,3,4,23" +locations_default(#20151,#10000,4,3,4,23) hasLocation(#20150,#20151) -enclosing_stmt(#20150,#20143) -expr_containers(#20150,#20001) #20152=* -scopes(#20152,1) -scopenodes(#20150,#20152) -scopenesting(#20152,#20146) -#20153=@"var;{arguments};{#20152}" -variables(#20153,"arguments",#20152) -is_arguments_object(#20153) -is_generator(#20150) -is_async(#20150) -#20154=* -stmts(#20154,1,#20150,-2,"{}") -#20155=@"loc,{#10000},4,22,4,23" -locations_default(#20155,#10000,4,22,4,23) -hasLocation(#20154,#20155) -stmt_containers(#20154,#20150) -is_method(#20147) -#20156=* -properties(#20156,#20143,3,0,"async * ... r]() {}") -#20157=@"loc,{#10000},5,3,5,36" -locations_default(#20157,#10000,5,3,5,36) -hasLocation(#20156,#20157) +exprs(#20152,0,#20150,0,"asyncMeth") +hasLocation(#20152,#20051) +enclosing_stmt(#20152,#20145) +expr_containers(#20152,#20001) +literals("asyncMeth","asyncMeth",#20152) +#20153=* +exprs(#20153,9,#20150,1,"() {}") +#20154=@"loc,{#10000},4,19,4,23" +locations_default(#20154,#10000,4,19,4,23) +hasLocation(#20153,#20154) +enclosing_stmt(#20153,#20145) +expr_containers(#20153,#20001) +#20155=* +scopes(#20155,1) +scopenodes(#20153,#20155) +scopenesting(#20155,#20148) +#20156=@"var;{this};{#20155}" +variables(#20156,"this",#20155) +#20157=@"var;{arguments};{#20155}" +variables(#20157,"arguments",#20155) +is_arguments_object(#20157) +is_generator(#20153) +is_async(#20153) #20158=* -exprs(#20158,14,#20156,0,"Symbol.asyncIterator") -#20159=@"loc,{#10000},5,11,5,30" -locations_default(#20159,#10000,5,11,5,30) +stmts(#20158,1,#20153,-2,"{}") +#20159=@"loc,{#10000},4,22,4,23" +locations_default(#20159,#10000,4,22,4,23) hasLocation(#20158,#20159) -enclosing_stmt(#20158,#20143) -expr_containers(#20158,#20001) +stmt_containers(#20158,#20153) +is_method(#20150) #20160=* -exprs(#20160,79,#20158,0,"Symbol") -hasLocation(#20160,#20067) -enclosing_stmt(#20160,#20143) -expr_containers(#20160,#20001) -literals("Symbol","Symbol",#20160) -#20161=@"var;{Symbol};{#20000}" -variables(#20161,"Symbol",#20000) -bind(#20160,#20161) +properties(#20160,#20145,3,0,"async * ... r]() {}") +#20161=@"loc,{#10000},5,3,5,36" +locations_default(#20161,#10000,5,3,5,36) +hasLocation(#20160,#20161) #20162=* -exprs(#20162,0,#20158,1,"asyncIterator") -hasLocation(#20162,#20071) -enclosing_stmt(#20162,#20143) +exprs(#20162,14,#20160,0,"Symbol.asyncIterator") +#20163=@"loc,{#10000},5,11,5,30" +locations_default(#20163,#10000,5,11,5,30) +hasLocation(#20162,#20163) +enclosing_stmt(#20162,#20145) expr_containers(#20162,#20001) -literals("asyncIterator","asyncIterator",#20162) -#20163=* -exprs(#20163,9,#20156,1,"() {}") -#20164=@"loc,{#10000},5,32,5,36" -locations_default(#20164,#10000,5,32,5,36) -hasLocation(#20163,#20164) -enclosing_stmt(#20163,#20143) -expr_containers(#20163,#20001) -#20165=* -scopes(#20165,1) -scopenodes(#20163,#20165) -scopenesting(#20165,#20146) -#20166=@"var;{arguments};{#20165}" -variables(#20166,"arguments",#20165) -is_arguments_object(#20166) -is_generator(#20163) -is_async(#20163) +#20164=* +exprs(#20164,79,#20162,0,"Symbol") +hasLocation(#20164,#20067) +enclosing_stmt(#20164,#20145) +expr_containers(#20164,#20001) +literals("Symbol","Symbol",#20164) +#20165=@"var;{Symbol};{#20000}" +variables(#20165,"Symbol",#20000) +bind(#20164,#20165) +#20166=* +exprs(#20166,0,#20162,1,"asyncIterator") +hasLocation(#20166,#20071) +enclosing_stmt(#20166,#20145) +expr_containers(#20166,#20001) +literals("asyncIterator","asyncIterator",#20166) #20167=* -stmts(#20167,1,#20163,-2,"{}") -#20168=@"loc,{#10000},5,35,5,36" -locations_default(#20168,#10000,5,35,5,36) +exprs(#20167,9,#20160,1,"() {}") +#20168=@"loc,{#10000},5,32,5,36" +locations_default(#20168,#10000,5,32,5,36) hasLocation(#20167,#20168) -stmt_containers(#20167,#20163) -is_method(#20156) -is_computed(#20156) +enclosing_stmt(#20167,#20145) +expr_containers(#20167,#20001) #20169=* -properties(#20169,#20143,4,0,"constructor() {}") -#20170=@"loc,{#10000},3,9,3,8" -locations_default(#20170,#10000,3,9,3,8) -hasLocation(#20169,#20170) -#20171=* -exprs(#20171,0,#20169,0,"constructor") -hasLocation(#20171,#20170) -enclosing_stmt(#20171,#20143) -expr_containers(#20171,#20001) -literals("constructor","constructor",#20171) +scopes(#20169,1) +scopenodes(#20167,#20169) +scopenesting(#20169,#20148) +#20170=@"var;{this};{#20169}" +variables(#20170,"this",#20169) +#20171=@"var;{arguments};{#20169}" +variables(#20171,"arguments",#20169) +is_arguments_object(#20171) +is_generator(#20167) +is_async(#20167) #20172=* -exprs(#20172,9,#20169,1,"() {}") -hasLocation(#20172,#20170) -enclosing_stmt(#20172,#20143) -expr_containers(#20172,#20001) -#20173=* -scopes(#20173,1) -scopenodes(#20172,#20173) -scopenesting(#20173,#20146) -#20174=@"var;{arguments};{#20173}" -variables(#20174,"arguments",#20173) -is_arguments_object(#20174) -#20175=* -stmts(#20175,1,#20172,-2,"{}") -hasLocation(#20175,#20170) -stmt_containers(#20175,#20172) -is_method(#20169) +stmts(#20172,1,#20167,-2,"{}") +#20173=@"loc,{#10000},5,35,5,36" +locations_default(#20173,#10000,5,35,5,36) +hasLocation(#20172,#20173) +stmt_containers(#20172,#20167) +is_method(#20160) +is_computed(#20160) +#20174=* +properties(#20174,#20145,4,0,"constructor() {}") +#20175=@"loc,{#10000},3,9,3,8" +locations_default(#20175,#10000,3,9,3,8) +hasLocation(#20174,#20175) #20176=* -stmts(#20176,18,#20001,2,"var o = ... () {}\n}") -#20177=@"loc,{#10000},8,1,11,1" -locations_default(#20177,#10000,8,1,11,1) -hasLocation(#20176,#20177) -stmt_containers(#20176,#20001) +exprs(#20176,0,#20174,0,"constructor") +hasLocation(#20176,#20175) +enclosing_stmt(#20176,#20145) +expr_containers(#20176,#20001) +literals("constructor","constructor",#20176) +#20177=* +exprs(#20177,9,#20174,1,"() {}") +hasLocation(#20177,#20175) +enclosing_stmt(#20177,#20145) +expr_containers(#20177,#20001) #20178=* -exprs(#20178,64,#20176,0,"o = {\n ... () {}\n}") -#20179=@"loc,{#10000},8,5,11,1" -locations_default(#20179,#10000,8,5,11,1) -hasLocation(#20178,#20179) -enclosing_stmt(#20178,#20176) -expr_containers(#20178,#20001) -#20180=* -exprs(#20180,78,#20178,0,"o") -hasLocation(#20180,#20086) -enclosing_stmt(#20180,#20176) -expr_containers(#20180,#20001) -literals("o","o",#20180) -decl(#20180,#20134) +scopes(#20178,1) +scopenodes(#20177,#20178) +scopenesting(#20178,#20148) +#20179=@"var;{this};{#20178}" +variables(#20179,"this",#20178) +#20180=@"var;{arguments};{#20178}" +variables(#20180,"arguments",#20178) +is_arguments_object(#20180) #20181=* -exprs(#20181,8,#20178,1,"{\n asy ... () {}\n}") -#20182=@"loc,{#10000},8,9,11,1" -locations_default(#20182,#10000,8,9,11,1) -hasLocation(#20181,#20182) -enclosing_stmt(#20181,#20176) -expr_containers(#20181,#20001) -#20183=* -properties(#20183,#20181,0,0,"async * ... th() {}") -#20184=@"loc,{#10000},9,3,9,23" -locations_default(#20184,#10000,9,3,9,23) -hasLocation(#20183,#20184) -#20185=* -exprs(#20185,0,#20183,0,"asyncMeth") -hasLocation(#20185,#20096) -enclosing_stmt(#20185,#20176) -expr_containers(#20185,#20001) -literals("asyncMeth","asyncMeth",#20185) +stmts(#20181,1,#20177,-2,"{}") +hasLocation(#20181,#20175) +stmt_containers(#20181,#20177) +is_method(#20174) +#20182=* +stmts(#20182,18,#20001,2,"var o = ... () {}\n}") +#20183=@"loc,{#10000},8,1,11,1" +locations_default(#20183,#10000,8,1,11,1) +hasLocation(#20182,#20183) +stmt_containers(#20182,#20001) +#20184=* +exprs(#20184,64,#20182,0,"o = {\n ... () {}\n}") +#20185=@"loc,{#10000},8,5,11,1" +locations_default(#20185,#10000,8,5,11,1) +hasLocation(#20184,#20185) +enclosing_stmt(#20184,#20182) +expr_containers(#20184,#20001) #20186=* -exprs(#20186,9,#20183,1,"() {}") -#20187=@"loc,{#10000},9,19,9,23" -locations_default(#20187,#10000,9,19,9,23) -hasLocation(#20186,#20187) -enclosing_stmt(#20186,#20176) +exprs(#20186,78,#20184,0,"o") +hasLocation(#20186,#20086) +enclosing_stmt(#20186,#20182) expr_containers(#20186,#20001) -#20188=* -scopes(#20188,1) -scopenodes(#20186,#20188) -scopenesting(#20188,#20000) -#20189=@"var;{arguments};{#20188}" -variables(#20189,"arguments",#20188) -is_arguments_object(#20189) -is_generator(#20186) -is_async(#20186) -#20190=* -stmts(#20190,1,#20186,-2,"{}") -#20191=@"loc,{#10000},9,22,9,23" -locations_default(#20191,#10000,9,22,9,23) -hasLocation(#20190,#20191) -stmt_containers(#20190,#20186) -is_method(#20183) +literals("o","o",#20186) +decl(#20186,#20134) +#20187=* +exprs(#20187,8,#20184,1,"{\n asy ... () {}\n}") +#20188=@"loc,{#10000},8,9,11,1" +locations_default(#20188,#10000,8,9,11,1) +hasLocation(#20187,#20188) +enclosing_stmt(#20187,#20182) +expr_containers(#20187,#20001) +#20189=* +properties(#20189,#20187,0,0,"async * ... th() {}") +#20190=@"loc,{#10000},9,3,9,23" +locations_default(#20190,#10000,9,3,9,23) +hasLocation(#20189,#20190) +#20191=* +exprs(#20191,0,#20189,0,"asyncMeth") +hasLocation(#20191,#20096) +enclosing_stmt(#20191,#20182) +expr_containers(#20191,#20001) +literals("asyncMeth","asyncMeth",#20191) #20192=* -properties(#20192,#20181,1,0,"async * ... r]() {}") -#20193=@"loc,{#10000},10,3,10,36" -locations_default(#20193,#10000,10,3,10,36) +exprs(#20192,9,#20189,1,"() {}") +#20193=@"loc,{#10000},9,19,9,23" +locations_default(#20193,#10000,9,19,9,23) hasLocation(#20192,#20193) +enclosing_stmt(#20192,#20182) +expr_containers(#20192,#20001) #20194=* -exprs(#20194,14,#20192,0,"Symbol.asyncIterator") -#20195=@"loc,{#10000},10,11,10,30" -locations_default(#20195,#10000,10,11,10,30) -hasLocation(#20194,#20195) -enclosing_stmt(#20194,#20176) -expr_containers(#20194,#20001) -#20196=* -exprs(#20196,79,#20194,0,"Symbol") -hasLocation(#20196,#20114) -enclosing_stmt(#20196,#20176) -expr_containers(#20196,#20001) -literals("Symbol","Symbol",#20196) -bind(#20196,#20161) +scopes(#20194,1) +scopenodes(#20192,#20194) +scopenesting(#20194,#20000) +#20195=@"var;{this};{#20194}" +variables(#20195,"this",#20194) +#20196=@"var;{arguments};{#20194}" +variables(#20196,"arguments",#20194) +is_arguments_object(#20196) +is_generator(#20192) +is_async(#20192) #20197=* -exprs(#20197,0,#20194,1,"asyncIterator") -hasLocation(#20197,#20118) -enclosing_stmt(#20197,#20176) -expr_containers(#20197,#20001) -literals("asyncIterator","asyncIterator",#20197) -#20198=* -exprs(#20198,9,#20192,1,"() {}") -#20199=@"loc,{#10000},10,32,10,36" -locations_default(#20199,#10000,10,32,10,36) -hasLocation(#20198,#20199) -enclosing_stmt(#20198,#20176) -expr_containers(#20198,#20001) -#20200=* -scopes(#20200,1) -scopenodes(#20198,#20200) -scopenesting(#20200,#20000) -#20201=@"var;{arguments};{#20200}" -variables(#20201,"arguments",#20200) -is_arguments_object(#20201) -is_generator(#20198) -is_async(#20198) -#20202=* -stmts(#20202,1,#20198,-2,"{}") -#20203=@"loc,{#10000},10,35,10,36" -locations_default(#20203,#10000,10,35,10,36) -hasLocation(#20202,#20203) -stmt_containers(#20202,#20198) -is_computed(#20192) -is_method(#20192) +stmts(#20197,1,#20192,-2,"{}") +#20198=@"loc,{#10000},9,22,9,23" +locations_default(#20198,#10000,9,22,9,23) +hasLocation(#20197,#20198) +stmt_containers(#20197,#20192) +is_method(#20189) +#20199=* +properties(#20199,#20187,1,0,"async * ... r]() {}") +#20200=@"loc,{#10000},10,3,10,36" +locations_default(#20200,#10000,10,3,10,36) +hasLocation(#20199,#20200) +#20201=* +exprs(#20201,14,#20199,0,"Symbol.asyncIterator") +#20202=@"loc,{#10000},10,11,10,30" +locations_default(#20202,#10000,10,11,10,30) +hasLocation(#20201,#20202) +enclosing_stmt(#20201,#20182) +expr_containers(#20201,#20001) +#20203=* +exprs(#20203,79,#20201,0,"Symbol") +hasLocation(#20203,#20114) +enclosing_stmt(#20203,#20182) +expr_containers(#20203,#20001) +literals("Symbol","Symbol",#20203) +bind(#20203,#20165) #20204=* -entry_cfg_node(#20204,#20001) -#20205=@"loc,{#10000},1,1,1,0" -locations_default(#20205,#10000,1,1,1,0) -hasLocation(#20204,#20205) -#20206=* -exit_cfg_node(#20206,#20001) -hasLocation(#20206,#20131) -successor(#20176,#20180) -successor(#20181,#20185) -successor(#20198,#20192) +exprs(#20204,0,#20201,1,"asyncIterator") +hasLocation(#20204,#20118) +enclosing_stmt(#20204,#20182) +expr_containers(#20204,#20001) +literals("asyncIterator","asyncIterator",#20204) +#20205=* +exprs(#20205,9,#20199,1,"() {}") +#20206=@"loc,{#10000},10,32,10,36" +locations_default(#20206,#10000,10,32,10,36) +hasLocation(#20205,#20206) +enclosing_stmt(#20205,#20182) +expr_containers(#20205,#20001) #20207=* -entry_cfg_node(#20207,#20198) -#20208=@"loc,{#10000},10,32,10,31" -locations_default(#20208,#10000,10,32,10,31) -hasLocation(#20207,#20208) -#20209=* -exit_cfg_node(#20209,#20198) -#20210=@"loc,{#10000},10,37,10,36" -locations_default(#20210,#10000,10,37,10,36) -hasLocation(#20209,#20210) -successor(#20202,#20209) -successor(#20207,#20202) -successor(#20197,#20194) -successor(#20196,#20197) -successor(#20194,#20198) -successor(#20192,#20178) -successor(#20186,#20183) -#20211=* -entry_cfg_node(#20211,#20186) -#20212=@"loc,{#10000},9,19,9,18" -locations_default(#20212,#10000,9,19,9,18) -hasLocation(#20211,#20212) -#20213=* -exit_cfg_node(#20213,#20186) -#20214=@"loc,{#10000},9,24,9,23" -locations_default(#20214,#10000,9,24,9,23) -hasLocation(#20213,#20214) -successor(#20190,#20213) -successor(#20211,#20190) -successor(#20185,#20186) -successor(#20183,#20196) -successor(#20180,#20181) -successor(#20178,#20206) -successor(#20172,#20169) +scopes(#20207,1) +scopenodes(#20205,#20207) +scopenesting(#20207,#20000) +#20208=@"var;{this};{#20207}" +variables(#20208,"this",#20207) +#20209=@"var;{arguments};{#20207}" +variables(#20209,"arguments",#20207) +is_arguments_object(#20209) +is_generator(#20205) +is_async(#20205) +#20210=* +stmts(#20210,1,#20205,-2,"{}") +#20211=@"loc,{#10000},10,35,10,36" +locations_default(#20211,#10000,10,35,10,36) +hasLocation(#20210,#20211) +stmt_containers(#20210,#20205) +is_computed(#20199) +is_method(#20199) +#20212=* +entry_cfg_node(#20212,#20001) +#20213=@"loc,{#10000},1,1,1,0" +locations_default(#20213,#10000,1,1,1,0) +hasLocation(#20212,#20213) +#20214=* +exit_cfg_node(#20214,#20001) +hasLocation(#20214,#20131) +successor(#20182,#20186) +successor(#20187,#20191) +successor(#20205,#20199) #20215=* -entry_cfg_node(#20215,#20172) -hasLocation(#20215,#20170) -#20216=* -exit_cfg_node(#20216,#20172) -hasLocation(#20216,#20170) -successor(#20175,#20216) -successor(#20215,#20175) -successor(#20171,#20172) -successor(#20169,#20143) -successor(#20163,#20156) +entry_cfg_node(#20215,#20205) +#20216=@"loc,{#10000},10,32,10,31" +locations_default(#20216,#10000,10,32,10,31) +hasLocation(#20215,#20216) #20217=* -entry_cfg_node(#20217,#20163) -#20218=@"loc,{#10000},5,32,5,31" -locations_default(#20218,#10000,5,32,5,31) +exit_cfg_node(#20217,#20205) +#20218=@"loc,{#10000},10,37,10,36" +locations_default(#20218,#10000,10,37,10,36) hasLocation(#20217,#20218) +successor(#20210,#20217) +successor(#20215,#20210) +successor(#20204,#20201) +successor(#20203,#20204) +successor(#20201,#20205) +successor(#20199,#20184) +successor(#20192,#20189) #20219=* -exit_cfg_node(#20219,#20163) -#20220=@"loc,{#10000},5,37,5,36" -locations_default(#20220,#10000,5,37,5,36) +entry_cfg_node(#20219,#20192) +#20220=@"loc,{#10000},9,19,9,18" +locations_default(#20220,#10000,9,19,9,18) hasLocation(#20219,#20220) -successor(#20167,#20219) -successor(#20217,#20167) -successor(#20162,#20158) -successor(#20160,#20162) -successor(#20158,#20163) -successor(#20156,#20171) -successor(#20150,#20147) #20221=* -entry_cfg_node(#20221,#20150) -#20222=@"loc,{#10000},4,19,4,18" -locations_default(#20222,#10000,4,19,4,18) +exit_cfg_node(#20221,#20192) +#20222=@"loc,{#10000},9,24,9,23" +locations_default(#20222,#10000,9,24,9,23) hasLocation(#20221,#20222) +successor(#20197,#20221) +successor(#20219,#20197) +successor(#20191,#20192) +successor(#20189,#20203) +successor(#20186,#20187) +successor(#20184,#20214) +successor(#20177,#20174) #20223=* -exit_cfg_node(#20223,#20150) -#20224=@"loc,{#10000},4,24,4,23" -locations_default(#20224,#10000,4,24,4,23) -hasLocation(#20223,#20224) -successor(#20154,#20223) -successor(#20221,#20154) -successor(#20149,#20150) -successor(#20147,#20160) -successor(#20145,#20149) -successor(#20143,#20176) -successor(#20137,#20145) +entry_cfg_node(#20223,#20177) +hasLocation(#20223,#20175) +#20224=* +exit_cfg_node(#20224,#20177) +hasLocation(#20224,#20175) +successor(#20181,#20224) +successor(#20223,#20181) +successor(#20176,#20177) +successor(#20174,#20145) +successor(#20167,#20160) #20225=* -entry_cfg_node(#20225,#20137) -hasLocation(#20225,#20205) -#20226=* -exit_cfg_node(#20226,#20137) -#20227=@"loc,{#10000},1,29,1,28" -locations_default(#20227,#10000,1,29,1,28) -hasLocation(#20226,#20227) -successor(#20141,#20226) -successor(#20225,#20141) -successor(#20138,#20137) -successor(#20204,#20138) +entry_cfg_node(#20225,#20167) +#20226=@"loc,{#10000},5,32,5,31" +locations_default(#20226,#10000,5,32,5,31) +hasLocation(#20225,#20226) +#20227=* +exit_cfg_node(#20227,#20167) +#20228=@"loc,{#10000},5,37,5,36" +locations_default(#20228,#10000,5,37,5,36) +hasLocation(#20227,#20228) +successor(#20172,#20227) +successor(#20225,#20172) +successor(#20166,#20162) +successor(#20164,#20166) +successor(#20162,#20167) +successor(#20160,#20176) +successor(#20153,#20150) +#20229=* +entry_cfg_node(#20229,#20153) +#20230=@"loc,{#10000},4,19,4,18" +locations_default(#20230,#10000,4,19,4,18) +hasLocation(#20229,#20230) +#20231=* +exit_cfg_node(#20231,#20153) +#20232=@"loc,{#10000},4,24,4,23" +locations_default(#20232,#10000,4,24,4,23) +hasLocation(#20231,#20232) +successor(#20158,#20231) +successor(#20229,#20158) +successor(#20152,#20153) +successor(#20150,#20164) +successor(#20147,#20152) +successor(#20145,#20182) +successor(#20138,#20147) +#20233=* +entry_cfg_node(#20233,#20138) +hasLocation(#20233,#20213) +#20234=* +exit_cfg_node(#20234,#20138) +#20235=@"loc,{#10000},1,29,1,28" +locations_default(#20235,#10000,1,29,1,28) +hasLocation(#20234,#20235) +successor(#20143,#20234) +successor(#20233,#20143) +successor(#20139,#20138) +successor(#20212,#20139) numlines(#10000,11,9,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2018/output/trap/templates.js.trap b/javascript/extractor/tests/es2018/output/trap/templates.js.trap index 5f5ef870acdd..bdb5e8d676a6 100644 --- a/javascript/extractor/tests/es2018/output/trap/templates.js.trap +++ b/javascript/extractor/tests/es2018/output/trap/templates.js.trap @@ -376,429 +376,431 @@ toplevels(#20001,0) #20142=@"loc,{#10000},1,1,13,0" locations_default(#20142,#10000,1,1,13,0) hasLocation(#20001,#20142) -#20143=* -stmts(#20143,2,#20001,0,"`foo`\n` ... \u25a0`") -#20144=@"loc,{#10000},1,1,3,17" -locations_default(#20144,#10000,1,1,3,17) -hasLocation(#20143,#20144) -stmt_containers(#20143,#20001) -#20145=* -exprs(#20145,70,#20143,0,"`foo`\n` ... \u25a0`") -hasLocation(#20145,#20144) -enclosing_stmt(#20145,#20143) -expr_containers(#20145,#20001) +#20143=@"var;{this};{#20000}" +variables(#20143,"this",#20000) +#20144=* +stmts(#20144,2,#20001,0,"`foo`\n` ... \u25a0`") +#20145=@"loc,{#10000},1,1,3,17" +locations_default(#20145,#10000,1,1,3,17) +hasLocation(#20144,#20145) +stmt_containers(#20144,#20001) #20146=* -exprs(#20146,70,#20145,0,"`foo`\n`foo\u25a0`") -#20147=@"loc,{#10000},1,1,2,11" -locations_default(#20147,#10000,1,1,2,11) -hasLocation(#20146,#20147) -enclosing_stmt(#20146,#20143) +exprs(#20146,70,#20144,0,"`foo`\n` ... \u25a0`") +hasLocation(#20146,#20145) +enclosing_stmt(#20146,#20144) expr_containers(#20146,#20001) -#20148=* -exprs(#20148,71,#20146,0,"`foo`") -hasLocation(#20148,#20003) -enclosing_stmt(#20148,#20143) -expr_containers(#20148,#20001) +#20147=* +exprs(#20147,70,#20146,0,"`foo`\n`foo\u25a0`") +#20148=@"loc,{#10000},1,1,2,11" +locations_default(#20148,#10000,1,1,2,11) +hasLocation(#20147,#20148) +enclosing_stmt(#20147,#20144) +expr_containers(#20147,#20001) #20149=* -exprs(#20149,72,#20148,0,"foo") -hasLocation(#20149,#20029) -enclosing_stmt(#20149,#20143) +exprs(#20149,71,#20147,0,"`foo`") +hasLocation(#20149,#20003) +enclosing_stmt(#20149,#20144) expr_containers(#20149,#20001) -literals("foo","foo",#20149) #20150=* -exprs(#20150,71,#20146,1,"`foo\u25a0`") -hasLocation(#20150,#20005) -enclosing_stmt(#20150,#20143) +exprs(#20150,72,#20149,0,"foo") +hasLocation(#20150,#20029) +enclosing_stmt(#20150,#20144) expr_containers(#20150,#20001) +literals("foo","foo",#20150) #20151=* -exprs(#20151,72,#20150,0,"foo\u25a0") -hasLocation(#20151,#20035) -enclosing_stmt(#20151,#20143) +exprs(#20151,71,#20147,1,"`foo\u25a0`") +hasLocation(#20151,#20005) +enclosing_stmt(#20151,#20144) expr_containers(#20151,#20001) -literals("foo■","foo\u25a0",#20151) #20152=* -exprs(#20152,71,#20145,1,"`foo${bar}\u25a0`") -hasLocation(#20152,#20007) -enclosing_stmt(#20152,#20143) +exprs(#20152,72,#20151,0,"foo\u25a0") +hasLocation(#20152,#20035) +enclosing_stmt(#20152,#20144) expr_containers(#20152,#20001) +literals("foo■","foo\u25a0",#20152) #20153=* -exprs(#20153,72,#20152,0,"foo") -hasLocation(#20153,#20041) -enclosing_stmt(#20153,#20143) +exprs(#20153,71,#20146,1,"`foo${bar}\u25a0`") +hasLocation(#20153,#20007) +enclosing_stmt(#20153,#20144) expr_containers(#20153,#20001) -literals("foo","foo",#20153) #20154=* -exprs(#20154,79,#20152,1,"bar") -hasLocation(#20154,#20045) -enclosing_stmt(#20154,#20143) +exprs(#20154,72,#20153,0,"foo") +hasLocation(#20154,#20041) +enclosing_stmt(#20154,#20144) expr_containers(#20154,#20001) -literals("bar","bar",#20154) -#20155=@"var;{bar};{#20000}" -variables(#20155,"bar",#20000) -bind(#20154,#20155) -#20156=* -exprs(#20156,72,#20152,2,"\u25a0") -hasLocation(#20156,#20049) -enclosing_stmt(#20156,#20143) -expr_containers(#20156,#20001) -literals("■","\u25a0",#20156) +literals("foo","foo",#20154) +#20155=* +exprs(#20155,79,#20153,1,"bar") +hasLocation(#20155,#20045) +enclosing_stmt(#20155,#20144) +expr_containers(#20155,#20001) +literals("bar","bar",#20155) +#20156=@"var;{bar};{#20000}" +variables(#20156,"bar",#20000) +bind(#20155,#20156) #20157=* -stmts(#20157,2,#20001,1,"foo `\u25a0`") -hasLocation(#20157,#20009) -stmt_containers(#20157,#20001) +exprs(#20157,72,#20153,2,"\u25a0") +hasLocation(#20157,#20049) +enclosing_stmt(#20157,#20144) +expr_containers(#20157,#20001) +literals("■","\u25a0",#20157) #20158=* -exprs(#20158,70,#20157,0,"foo `\u25a0`") +stmts(#20158,2,#20001,1,"foo `\u25a0`") hasLocation(#20158,#20009) -enclosing_stmt(#20158,#20157) -expr_containers(#20158,#20001) +stmt_containers(#20158,#20001) #20159=* -exprs(#20159,79,#20158,0,"foo") -hasLocation(#20159,#20053) -enclosing_stmt(#20159,#20157) +exprs(#20159,70,#20158,0,"foo `\u25a0`") +hasLocation(#20159,#20009) +enclosing_stmt(#20159,#20158) expr_containers(#20159,#20001) -literals("foo","foo",#20159) -#20160=@"var;{foo};{#20000}" -variables(#20160,"foo",#20000) -bind(#20159,#20160) -#20161=* -exprs(#20161,71,#20158,1,"`\u25a0`") -#20162=@"loc,{#10000},4,5,4,12" -locations_default(#20162,#10000,4,5,4,12) -hasLocation(#20161,#20162) -enclosing_stmt(#20161,#20157) -expr_containers(#20161,#20001) -#20163=* -exprs(#20163,72,#20161,0,"\u25a0") -hasLocation(#20163,#20057) -enclosing_stmt(#20163,#20157) -expr_containers(#20163,#20001) -literals("■","\u25a0",#20163) +#20160=* +exprs(#20160,79,#20159,0,"foo") +hasLocation(#20160,#20053) +enclosing_stmt(#20160,#20158) +expr_containers(#20160,#20001) +literals("foo","foo",#20160) +#20161=@"var;{foo};{#20000}" +variables(#20161,"foo",#20000) +bind(#20160,#20161) +#20162=* +exprs(#20162,71,#20159,1,"`\u25a0`") +#20163=@"loc,{#10000},4,5,4,12" +locations_default(#20163,#10000,4,5,4,12) +hasLocation(#20162,#20163) +enclosing_stmt(#20162,#20158) +expr_containers(#20162,#20001) #20164=* -stmts(#20164,2,#20001,2,"foo `fo ... \u25a0`") -hasLocation(#20164,#20011) -stmt_containers(#20164,#20001) +exprs(#20164,72,#20162,0,"\u25a0") +hasLocation(#20164,#20057) +enclosing_stmt(#20164,#20158) +expr_containers(#20164,#20001) +literals("■","\u25a0",#20164) #20165=* -exprs(#20165,70,#20164,0,"foo `fo ... \u25a0`") +stmts(#20165,2,#20001,2,"foo `fo ... \u25a0`") hasLocation(#20165,#20011) -enclosing_stmt(#20165,#20164) -expr_containers(#20165,#20001) +stmt_containers(#20165,#20001) #20166=* -exprs(#20166,79,#20165,0,"foo") -hasLocation(#20166,#20061) -enclosing_stmt(#20166,#20164) +exprs(#20166,70,#20165,0,"foo `fo ... \u25a0`") +hasLocation(#20166,#20011) +enclosing_stmt(#20166,#20165) expr_containers(#20166,#20001) -literals("foo","foo",#20166) -bind(#20166,#20160) #20167=* -exprs(#20167,71,#20165,1,"`foo${bar}\u25a0`") -#20168=@"loc,{#10000},5,5,5,21" -locations_default(#20168,#10000,5,5,5,21) -hasLocation(#20167,#20168) -enclosing_stmt(#20167,#20164) +exprs(#20167,79,#20166,0,"foo") +hasLocation(#20167,#20061) +enclosing_stmt(#20167,#20165) expr_containers(#20167,#20001) -#20169=* -exprs(#20169,72,#20167,0,"foo") -hasLocation(#20169,#20065) -enclosing_stmt(#20169,#20164) -expr_containers(#20169,#20001) -literals("foo","foo",#20169) +literals("foo","foo",#20167) +bind(#20167,#20161) +#20168=* +exprs(#20168,71,#20166,1,"`foo${bar}\u25a0`") +#20169=@"loc,{#10000},5,5,5,21" +locations_default(#20169,#10000,5,5,5,21) +hasLocation(#20168,#20169) +enclosing_stmt(#20168,#20165) +expr_containers(#20168,#20001) #20170=* -exprs(#20170,79,#20167,1,"bar") -hasLocation(#20170,#20069) -enclosing_stmt(#20170,#20164) +exprs(#20170,72,#20168,0,"foo") +hasLocation(#20170,#20065) +enclosing_stmt(#20170,#20165) expr_containers(#20170,#20001) -literals("bar","bar",#20170) -bind(#20170,#20155) +literals("foo","foo",#20170) #20171=* -exprs(#20171,72,#20167,2,"\u25a0") -hasLocation(#20171,#20073) -enclosing_stmt(#20171,#20164) +exprs(#20171,79,#20168,1,"bar") +hasLocation(#20171,#20069) +enclosing_stmt(#20171,#20165) expr_containers(#20171,#20001) -literals("■","\u25a0",#20171) +literals("bar","bar",#20171) +bind(#20171,#20156) #20172=* -stmts(#20172,2,#20001,3,"foo `\unicode`") -hasLocation(#20172,#20013) -stmt_containers(#20172,#20001) +exprs(#20172,72,#20168,2,"\u25a0") +hasLocation(#20172,#20073) +enclosing_stmt(#20172,#20165) +expr_containers(#20172,#20001) +literals("■","\u25a0",#20172) #20173=* -exprs(#20173,70,#20172,0,"foo `\unicode`") +stmts(#20173,2,#20001,3,"foo `\unicode`") hasLocation(#20173,#20013) -enclosing_stmt(#20173,#20172) -expr_containers(#20173,#20001) +stmt_containers(#20173,#20001) #20174=* -exprs(#20174,79,#20173,0,"foo") -hasLocation(#20174,#20077) -enclosing_stmt(#20174,#20172) +exprs(#20174,70,#20173,0,"foo `\unicode`") +hasLocation(#20174,#20013) +enclosing_stmt(#20174,#20173) expr_containers(#20174,#20001) -literals("foo","foo",#20174) -bind(#20174,#20160) #20175=* -exprs(#20175,71,#20173,1,"`\unicode`") -#20176=@"loc,{#10000},6,5,6,14" -locations_default(#20176,#10000,6,5,6,14) -hasLocation(#20175,#20176) -enclosing_stmt(#20175,#20172) +exprs(#20175,79,#20174,0,"foo") +hasLocation(#20175,#20077) +enclosing_stmt(#20175,#20173) expr_containers(#20175,#20001) -#20177=* -exprs(#20177,72,#20175,0,"\unicode") -hasLocation(#20177,#20081) -enclosing_stmt(#20177,#20172) -expr_containers(#20177,#20001) -literals("","\unicode",#20177) +literals("foo","foo",#20175) +bind(#20175,#20161) +#20176=* +exprs(#20176,71,#20174,1,"`\unicode`") +#20177=@"loc,{#10000},6,5,6,14" +locations_default(#20177,#10000,6,5,6,14) +hasLocation(#20176,#20177) +enclosing_stmt(#20176,#20173) +expr_containers(#20176,#20001) #20178=* -stmts(#20178,2,#20001,4,"foo `fo ... nicode`") -hasLocation(#20178,#20015) -stmt_containers(#20178,#20001) +exprs(#20178,72,#20176,0,"\unicode") +hasLocation(#20178,#20081) +enclosing_stmt(#20178,#20173) +expr_containers(#20178,#20001) +literals("","\unicode",#20178) #20179=* -exprs(#20179,70,#20178,0,"foo `fo ... nicode`") +stmts(#20179,2,#20001,4,"foo `fo ... nicode`") hasLocation(#20179,#20015) -enclosing_stmt(#20179,#20178) -expr_containers(#20179,#20001) +stmt_containers(#20179,#20001) #20180=* -exprs(#20180,79,#20179,0,"foo") -hasLocation(#20180,#20085) -enclosing_stmt(#20180,#20178) +exprs(#20180,70,#20179,0,"foo `fo ... nicode`") +hasLocation(#20180,#20015) +enclosing_stmt(#20180,#20179) expr_containers(#20180,#20001) -literals("foo","foo",#20180) -bind(#20180,#20160) #20181=* -exprs(#20181,71,#20179,1,"`foo${bar}\unicode`") -#20182=@"loc,{#10000},7,5,7,23" -locations_default(#20182,#10000,7,5,7,23) -hasLocation(#20181,#20182) -enclosing_stmt(#20181,#20178) +exprs(#20181,79,#20180,0,"foo") +hasLocation(#20181,#20085) +enclosing_stmt(#20181,#20179) expr_containers(#20181,#20001) -#20183=* -exprs(#20183,72,#20181,0,"foo") -hasLocation(#20183,#20089) -enclosing_stmt(#20183,#20178) -expr_containers(#20183,#20001) -literals("foo","foo",#20183) +literals("foo","foo",#20181) +bind(#20181,#20161) +#20182=* +exprs(#20182,71,#20180,1,"`foo${bar}\unicode`") +#20183=@"loc,{#10000},7,5,7,23" +locations_default(#20183,#10000,7,5,7,23) +hasLocation(#20182,#20183) +enclosing_stmt(#20182,#20179) +expr_containers(#20182,#20001) #20184=* -exprs(#20184,79,#20181,1,"bar") -hasLocation(#20184,#20093) -enclosing_stmt(#20184,#20178) +exprs(#20184,72,#20182,0,"foo") +hasLocation(#20184,#20089) +enclosing_stmt(#20184,#20179) expr_containers(#20184,#20001) -literals("bar","bar",#20184) -bind(#20184,#20155) +literals("foo","foo",#20184) #20185=* -exprs(#20185,72,#20181,2,"\unicode") -hasLocation(#20185,#20097) -enclosing_stmt(#20185,#20178) +exprs(#20185,79,#20182,1,"bar") +hasLocation(#20185,#20093) +enclosing_stmt(#20185,#20179) expr_containers(#20185,#20001) -literals("","\unicode",#20185) +literals("bar","bar",#20185) +bind(#20185,#20156) #20186=* -stmts(#20186,2,#20001,5,"foo `\u`") -hasLocation(#20186,#20017) -stmt_containers(#20186,#20001) +exprs(#20186,72,#20182,2,"\unicode") +hasLocation(#20186,#20097) +enclosing_stmt(#20186,#20179) +expr_containers(#20186,#20001) +literals("","\unicode",#20186) #20187=* -exprs(#20187,70,#20186,0,"foo `\u`") +stmts(#20187,2,#20001,5,"foo `\u`") hasLocation(#20187,#20017) -enclosing_stmt(#20187,#20186) -expr_containers(#20187,#20001) +stmt_containers(#20187,#20001) #20188=* -exprs(#20188,79,#20187,0,"foo") -hasLocation(#20188,#20101) -enclosing_stmt(#20188,#20186) +exprs(#20188,70,#20187,0,"foo `\u`") +hasLocation(#20188,#20017) +enclosing_stmt(#20188,#20187) expr_containers(#20188,#20001) -literals("foo","foo",#20188) -bind(#20188,#20160) #20189=* -exprs(#20189,71,#20187,1,"`\u`") -#20190=@"loc,{#10000},8,5,8,8" -locations_default(#20190,#10000,8,5,8,8) -hasLocation(#20189,#20190) -enclosing_stmt(#20189,#20186) +exprs(#20189,79,#20188,0,"foo") +hasLocation(#20189,#20101) +enclosing_stmt(#20189,#20187) expr_containers(#20189,#20001) -#20191=* -exprs(#20191,72,#20189,0,"\u") -hasLocation(#20191,#20105) -enclosing_stmt(#20191,#20186) -expr_containers(#20191,#20001) -literals("","\u",#20191) +literals("foo","foo",#20189) +bind(#20189,#20161) +#20190=* +exprs(#20190,71,#20188,1,"`\u`") +#20191=@"loc,{#10000},8,5,8,8" +locations_default(#20191,#10000,8,5,8,8) +hasLocation(#20190,#20191) +enclosing_stmt(#20190,#20187) +expr_containers(#20190,#20001) #20192=* -stmts(#20192,2,#20001,6,"foo `\u{`") -hasLocation(#20192,#20019) -stmt_containers(#20192,#20001) +exprs(#20192,72,#20190,0,"\u") +hasLocation(#20192,#20105) +enclosing_stmt(#20192,#20187) +expr_containers(#20192,#20001) +literals("","\u",#20192) #20193=* -exprs(#20193,70,#20192,0,"foo `\u{`") +stmts(#20193,2,#20001,6,"foo `\u{`") hasLocation(#20193,#20019) -enclosing_stmt(#20193,#20192) -expr_containers(#20193,#20001) +stmt_containers(#20193,#20001) #20194=* -exprs(#20194,79,#20193,0,"foo") -hasLocation(#20194,#20109) -enclosing_stmt(#20194,#20192) +exprs(#20194,70,#20193,0,"foo `\u{`") +hasLocation(#20194,#20019) +enclosing_stmt(#20194,#20193) expr_containers(#20194,#20001) -literals("foo","foo",#20194) -bind(#20194,#20160) #20195=* -exprs(#20195,71,#20193,1,"`\u{`") -#20196=@"loc,{#10000},9,5,9,9" -locations_default(#20196,#10000,9,5,9,9) -hasLocation(#20195,#20196) -enclosing_stmt(#20195,#20192) +exprs(#20195,79,#20194,0,"foo") +hasLocation(#20195,#20109) +enclosing_stmt(#20195,#20193) expr_containers(#20195,#20001) -#20197=* -exprs(#20197,72,#20195,0,"\u{") -hasLocation(#20197,#20113) -enclosing_stmt(#20197,#20192) -expr_containers(#20197,#20001) -literals("","\u{",#20197) +literals("foo","foo",#20195) +bind(#20195,#20161) +#20196=* +exprs(#20196,71,#20194,1,"`\u{`") +#20197=@"loc,{#10000},9,5,9,9" +locations_default(#20197,#10000,9,5,9,9) +hasLocation(#20196,#20197) +enclosing_stmt(#20196,#20193) +expr_containers(#20196,#20001) #20198=* -stmts(#20198,2,#20001,7,"foo `\u{abcdx`") -hasLocation(#20198,#20021) -stmt_containers(#20198,#20001) +exprs(#20198,72,#20196,0,"\u{") +hasLocation(#20198,#20113) +enclosing_stmt(#20198,#20193) +expr_containers(#20198,#20001) +literals("","\u{",#20198) #20199=* -exprs(#20199,70,#20198,0,"foo `\u{abcdx`") +stmts(#20199,2,#20001,7,"foo `\u{abcdx`") hasLocation(#20199,#20021) -enclosing_stmt(#20199,#20198) -expr_containers(#20199,#20001) +stmt_containers(#20199,#20001) #20200=* -exprs(#20200,79,#20199,0,"foo") -hasLocation(#20200,#20117) -enclosing_stmt(#20200,#20198) +exprs(#20200,70,#20199,0,"foo `\u{abcdx`") +hasLocation(#20200,#20021) +enclosing_stmt(#20200,#20199) expr_containers(#20200,#20001) -literals("foo","foo",#20200) -bind(#20200,#20160) #20201=* -exprs(#20201,71,#20199,1,"`\u{abcdx`") -#20202=@"loc,{#10000},10,5,10,14" -locations_default(#20202,#10000,10,5,10,14) -hasLocation(#20201,#20202) -enclosing_stmt(#20201,#20198) +exprs(#20201,79,#20200,0,"foo") +hasLocation(#20201,#20117) +enclosing_stmt(#20201,#20199) expr_containers(#20201,#20001) -#20203=* -exprs(#20203,72,#20201,0,"\u{abcdx") -hasLocation(#20203,#20121) -enclosing_stmt(#20203,#20198) -expr_containers(#20203,#20001) -literals("","\u{abcdx",#20203) +literals("foo","foo",#20201) +bind(#20201,#20161) +#20202=* +exprs(#20202,71,#20200,1,"`\u{abcdx`") +#20203=@"loc,{#10000},10,5,10,14" +locations_default(#20203,#10000,10,5,10,14) +hasLocation(#20202,#20203) +enclosing_stmt(#20202,#20199) +expr_containers(#20202,#20001) #20204=* -stmts(#20204,2,#20001,8,"foo `\u{abcdx}`") -hasLocation(#20204,#20023) -stmt_containers(#20204,#20001) +exprs(#20204,72,#20202,0,"\u{abcdx") +hasLocation(#20204,#20121) +enclosing_stmt(#20204,#20199) +expr_containers(#20204,#20001) +literals("","\u{abcdx",#20204) #20205=* -exprs(#20205,70,#20204,0,"foo `\u{abcdx}`") +stmts(#20205,2,#20001,8,"foo `\u{abcdx}`") hasLocation(#20205,#20023) -enclosing_stmt(#20205,#20204) -expr_containers(#20205,#20001) +stmt_containers(#20205,#20001) #20206=* -exprs(#20206,79,#20205,0,"foo") -hasLocation(#20206,#20125) -enclosing_stmt(#20206,#20204) +exprs(#20206,70,#20205,0,"foo `\u{abcdx}`") +hasLocation(#20206,#20023) +enclosing_stmt(#20206,#20205) expr_containers(#20206,#20001) -literals("foo","foo",#20206) -bind(#20206,#20160) #20207=* -exprs(#20207,71,#20205,1,"`\u{abcdx}`") -#20208=@"loc,{#10000},11,5,11,15" -locations_default(#20208,#10000,11,5,11,15) -hasLocation(#20207,#20208) -enclosing_stmt(#20207,#20204) +exprs(#20207,79,#20206,0,"foo") +hasLocation(#20207,#20125) +enclosing_stmt(#20207,#20205) expr_containers(#20207,#20001) -#20209=* -exprs(#20209,72,#20207,0,"\u{abcdx}") -hasLocation(#20209,#20129) -enclosing_stmt(#20209,#20204) -expr_containers(#20209,#20001) -literals("","\u{abcdx}",#20209) +literals("foo","foo",#20207) +bind(#20207,#20161) +#20208=* +exprs(#20208,71,#20206,1,"`\u{abcdx}`") +#20209=@"loc,{#10000},11,5,11,15" +locations_default(#20209,#10000,11,5,11,15) +hasLocation(#20208,#20209) +enclosing_stmt(#20208,#20205) +expr_containers(#20208,#20001) #20210=* -stmts(#20210,2,#20001,9,"foo `\unicode\\`") -hasLocation(#20210,#20025) -stmt_containers(#20210,#20001) +exprs(#20210,72,#20208,0,"\u{abcdx}") +hasLocation(#20210,#20129) +enclosing_stmt(#20210,#20205) +expr_containers(#20210,#20001) +literals("","\u{abcdx}",#20210) #20211=* -exprs(#20211,70,#20210,0,"foo `\unicode\\`") +stmts(#20211,2,#20001,9,"foo `\unicode\\`") hasLocation(#20211,#20025) -enclosing_stmt(#20211,#20210) -expr_containers(#20211,#20001) +stmt_containers(#20211,#20001) #20212=* -exprs(#20212,79,#20211,0,"foo") -hasLocation(#20212,#20133) -enclosing_stmt(#20212,#20210) +exprs(#20212,70,#20211,0,"foo `\unicode\\`") +hasLocation(#20212,#20025) +enclosing_stmt(#20212,#20211) expr_containers(#20212,#20001) -literals("foo","foo",#20212) -bind(#20212,#20160) #20213=* -exprs(#20213,71,#20211,1,"`\unicode\\`") -#20214=@"loc,{#10000},12,5,12,16" -locations_default(#20214,#10000,12,5,12,16) -hasLocation(#20213,#20214) -enclosing_stmt(#20213,#20210) +exprs(#20213,79,#20212,0,"foo") +hasLocation(#20213,#20133) +enclosing_stmt(#20213,#20211) expr_containers(#20213,#20001) -#20215=* -exprs(#20215,72,#20213,0,"\unicode\\") -hasLocation(#20215,#20137) -enclosing_stmt(#20215,#20210) -expr_containers(#20215,#20001) -literals("","\unicode\\",#20215) +literals("foo","foo",#20213) +bind(#20213,#20161) +#20214=* +exprs(#20214,71,#20212,1,"`\unicode\\`") +#20215=@"loc,{#10000},12,5,12,16" +locations_default(#20215,#10000,12,5,12,16) +hasLocation(#20214,#20215) +enclosing_stmt(#20214,#20211) +expr_containers(#20214,#20001) #20216=* -entry_cfg_node(#20216,#20001) -#20217=@"loc,{#10000},1,1,1,0" -locations_default(#20217,#10000,1,1,1,0) -hasLocation(#20216,#20217) -#20218=* -exit_cfg_node(#20218,#20001) -hasLocation(#20218,#20141) -successor(#20210,#20211) +exprs(#20216,72,#20214,0,"\unicode\\") +hasLocation(#20216,#20137) +enclosing_stmt(#20216,#20211) +expr_containers(#20216,#20001) +literals("","\unicode\\",#20216) +#20217=* +entry_cfg_node(#20217,#20001) +#20218=@"loc,{#10000},1,1,1,0" +locations_default(#20218,#10000,1,1,1,0) +hasLocation(#20217,#20218) +#20219=* +exit_cfg_node(#20219,#20001) +hasLocation(#20219,#20141) successor(#20211,#20212) -successor(#20213,#20215) -successor(#20215,#20218) successor(#20212,#20213) -successor(#20204,#20205) +successor(#20214,#20216) +successor(#20216,#20219) +successor(#20213,#20214) successor(#20205,#20206) -successor(#20207,#20209) -successor(#20209,#20210) successor(#20206,#20207) -successor(#20198,#20199) +successor(#20208,#20210) +successor(#20210,#20211) +successor(#20207,#20208) successor(#20199,#20200) -successor(#20201,#20203) -successor(#20203,#20204) successor(#20200,#20201) -successor(#20192,#20193) +successor(#20202,#20204) +successor(#20204,#20205) +successor(#20201,#20202) successor(#20193,#20194) -successor(#20195,#20197) -successor(#20197,#20198) successor(#20194,#20195) -successor(#20186,#20187) +successor(#20196,#20198) +successor(#20198,#20199) +successor(#20195,#20196) successor(#20187,#20188) -successor(#20189,#20191) -successor(#20191,#20192) successor(#20188,#20189) -successor(#20178,#20179) +successor(#20190,#20192) +successor(#20192,#20193) +successor(#20189,#20190) successor(#20179,#20180) -successor(#20181,#20183) +successor(#20180,#20181) +successor(#20182,#20184) +successor(#20186,#20187) successor(#20185,#20186) successor(#20184,#20185) -successor(#20183,#20184) -successor(#20180,#20181) -successor(#20172,#20173) +successor(#20181,#20182) successor(#20173,#20174) -successor(#20175,#20177) -successor(#20177,#20178) successor(#20174,#20175) -successor(#20164,#20165) +successor(#20176,#20178) +successor(#20178,#20179) +successor(#20175,#20176) successor(#20165,#20166) -successor(#20167,#20169) +successor(#20166,#20167) +successor(#20168,#20170) +successor(#20172,#20173) successor(#20171,#20172) successor(#20170,#20171) -successor(#20169,#20170) -successor(#20166,#20167) -successor(#20157,#20158) +successor(#20167,#20168) successor(#20158,#20159) -successor(#20161,#20163) -successor(#20163,#20164) -successor(#20159,#20161) -successor(#20143,#20145) -successor(#20145,#20146) -successor(#20152,#20153) -successor(#20156,#20157) -successor(#20154,#20156) +successor(#20159,#20160) +successor(#20162,#20164) +successor(#20164,#20165) +successor(#20160,#20162) +successor(#20144,#20146) +successor(#20146,#20147) successor(#20153,#20154) -successor(#20146,#20148) -successor(#20150,#20151) +successor(#20157,#20158) +successor(#20155,#20157) +successor(#20154,#20155) +successor(#20147,#20149) successor(#20151,#20152) -successor(#20148,#20149) +successor(#20152,#20153) successor(#20149,#20150) -successor(#20216,#20143) +successor(#20150,#20151) +successor(#20217,#20144) numlines(#10000,12,12,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2019/output/trap/json-superset.js.trap b/javascript/extractor/tests/es2019/output/trap/json-superset.js.trap index afc0749206ae..0b19e7affe2c 100644 --- a/javascript/extractor/tests/es2019/output/trap/json-superset.js.trap +++ b/javascript/extractor/tests/es2019/output/trap/json-superset.js.trap @@ -93,86 +93,88 @@ hasLocation(#20001,#20031) variables(#20032,"s1",#20000) #20033=@"var;{s2};{#20000}" variables(#20033,"s2",#20000) -#20034=* -stmts(#20034,18,#20001,0,"var s1 = ""ab\u2028c"";") -#20035=@"loc,{#10000},1,1,1,16" -locations_default(#20035,#10000,1,1,1,16) -hasLocation(#20034,#20035) -stmt_containers(#20034,#20001) -#20036=* -exprs(#20036,64,#20034,0,"s1 = ""ab\u2028c""") -#20037=@"loc,{#10000},1,5,1,15" -locations_default(#20037,#10000,1,5,1,15) -hasLocation(#20036,#20037) -enclosing_stmt(#20036,#20034) -expr_containers(#20036,#20001) -#20038=* -exprs(#20038,78,#20036,0,"s1") -hasLocation(#20038,#20013) -enclosing_stmt(#20038,#20034) -expr_containers(#20038,#20001) -literals("s1","s1",#20038) -decl(#20038,#20032) +#20034=@"var;{this};{#20000}" +variables(#20034,"this",#20000) +#20035=* +stmts(#20035,18,#20001,0,"var s1 = ""ab\u2028c"";") +#20036=@"loc,{#10000},1,1,1,16" +locations_default(#20036,#10000,1,1,1,16) +hasLocation(#20035,#20036) +stmt_containers(#20035,#20001) +#20037=* +exprs(#20037,64,#20035,0,"s1 = ""ab\u2028c""") +#20038=@"loc,{#10000},1,5,1,15" +locations_default(#20038,#10000,1,5,1,15) +hasLocation(#20037,#20038) +enclosing_stmt(#20037,#20035) +expr_containers(#20037,#20001) #20039=* -exprs(#20039,4,#20036,1,"""ab\u2028c""") -hasLocation(#20039,#20017) -enclosing_stmt(#20039,#20034) +exprs(#20039,78,#20037,0,"s1") +hasLocation(#20039,#20013) +enclosing_stmt(#20039,#20035) expr_containers(#20039,#20001) -literals("ab
c","""ab
c""",#20039) +literals("s1","s1",#20039) +decl(#20039,#20032) #20040=* -regexpterm(#20040,14,#20039,0,"ab
c") -#20041=@"loc,{#10000},1,11,1,14" -locations_default(#20041,#10000,1,11,1,14) -hasLocation(#20040,#20041) -regexp_const_value(#20040,"ab
c") -#20042=* -stmts(#20042,18,#20001,1,"var s2 = ""ab\u2029c"";") -#20043=@"loc,{#10000},2,1,2,16" -locations_default(#20043,#10000,2,1,2,16) -hasLocation(#20042,#20043) -stmt_containers(#20042,#20001) -#20044=* -exprs(#20044,64,#20042,0,"s2 = ""ab\u2029c""") -#20045=@"loc,{#10000},2,5,2,15" -locations_default(#20045,#10000,2,5,2,15) -hasLocation(#20044,#20045) -enclosing_stmt(#20044,#20042) -expr_containers(#20044,#20001) -#20046=* -exprs(#20046,78,#20044,0,"s2") -hasLocation(#20046,#20022) -enclosing_stmt(#20046,#20042) -expr_containers(#20046,#20001) -literals("s2","s2",#20046) -decl(#20046,#20033) +exprs(#20040,4,#20037,1,"""ab\u2028c""") +hasLocation(#20040,#20017) +enclosing_stmt(#20040,#20035) +expr_containers(#20040,#20001) +literals("ab
c","""ab
c""",#20040) +#20041=* +regexpterm(#20041,14,#20040,0,"ab
c") +#20042=@"loc,{#10000},1,11,1,14" +locations_default(#20042,#10000,1,11,1,14) +hasLocation(#20041,#20042) +regexp_const_value(#20041,"ab
c") +#20043=* +stmts(#20043,18,#20001,1,"var s2 = ""ab\u2029c"";") +#20044=@"loc,{#10000},2,1,2,16" +locations_default(#20044,#10000,2,1,2,16) +hasLocation(#20043,#20044) +stmt_containers(#20043,#20001) +#20045=* +exprs(#20045,64,#20043,0,"s2 = ""ab\u2029c""") +#20046=@"loc,{#10000},2,5,2,15" +locations_default(#20046,#10000,2,5,2,15) +hasLocation(#20045,#20046) +enclosing_stmt(#20045,#20043) +expr_containers(#20045,#20001) #20047=* -exprs(#20047,4,#20044,1,"""ab\u2029c""") -hasLocation(#20047,#20026) -enclosing_stmt(#20047,#20042) +exprs(#20047,78,#20045,0,"s2") +hasLocation(#20047,#20022) +enclosing_stmt(#20047,#20043) expr_containers(#20047,#20001) -literals("ab
c","""ab
c""",#20047) +literals("s2","s2",#20047) +decl(#20047,#20033) #20048=* -regexpterm(#20048,14,#20047,0,"ab
c") -#20049=@"loc,{#10000},2,11,2,14" -locations_default(#20049,#10000,2,11,2,14) -hasLocation(#20048,#20049) -regexp_const_value(#20048,"ab
c") -#20050=* -entry_cfg_node(#20050,#20001) -#20051=@"loc,{#10000},1,1,1,0" -locations_default(#20051,#10000,1,1,1,0) -hasLocation(#20050,#20051) -#20052=* -exit_cfg_node(#20052,#20001) -hasLocation(#20052,#20030) -successor(#20042,#20046) -successor(#20047,#20044) -successor(#20046,#20047) -successor(#20044,#20052) -successor(#20034,#20038) -successor(#20039,#20036) -successor(#20038,#20039) -successor(#20036,#20042) -successor(#20050,#20034) +exprs(#20048,4,#20045,1,"""ab\u2029c""") +hasLocation(#20048,#20026) +enclosing_stmt(#20048,#20043) +expr_containers(#20048,#20001) +literals("ab
c","""ab
c""",#20048) +#20049=* +regexpterm(#20049,14,#20048,0,"ab
c") +#20050=@"loc,{#10000},2,11,2,14" +locations_default(#20050,#10000,2,11,2,14) +hasLocation(#20049,#20050) +regexp_const_value(#20049,"ab
c") +#20051=* +entry_cfg_node(#20051,#20001) +#20052=@"loc,{#10000},1,1,1,0" +locations_default(#20052,#10000,1,1,1,0) +hasLocation(#20051,#20052) +#20053=* +exit_cfg_node(#20053,#20001) +hasLocation(#20053,#20030) +successor(#20043,#20047) +successor(#20048,#20045) +successor(#20047,#20048) +successor(#20045,#20053) +successor(#20035,#20039) +successor(#20040,#20037) +successor(#20039,#20040) +successor(#20037,#20043) +successor(#20051,#20035) numlines(#10000,4,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2021/output/trap/assign.js.trap b/javascript/extractor/tests/es2021/output/trap/assign.js.trap index d0aaa18558bf..d2f804fd01fa 100644 --- a/javascript/extractor/tests/es2021/output/trap/assign.js.trap +++ b/javascript/extractor/tests/es2021/output/trap/assign.js.trap @@ -302,332 +302,334 @@ variables(#20112,"y",#20000) variables(#20113,"foo",#20000) #20114=@"var;{bar};{#20000}" variables(#20114,"bar",#20000) -#20115=* -stmts(#20115,18,#20001,0,"var x = 1;") -hasLocation(#20115,#20005) -stmt_containers(#20115,#20001) +#20115=@"var;{this};{#20000}" +variables(#20115,"this",#20000) #20116=* -exprs(#20116,64,#20115,0,"x = 1") -#20117=@"loc,{#10000},1,5,1,9" -locations_default(#20117,#10000,1,5,1,9) -hasLocation(#20116,#20117) -enclosing_stmt(#20116,#20115) -expr_containers(#20116,#20001) -#20118=* -exprs(#20118,78,#20116,0,"x") -hasLocation(#20118,#20025) -enclosing_stmt(#20118,#20115) -expr_containers(#20118,#20001) -literals("x","x",#20118) -decl(#20118,#20111) +stmts(#20116,18,#20001,0,"var x = 1;") +hasLocation(#20116,#20005) +stmt_containers(#20116,#20001) +#20117=* +exprs(#20117,64,#20116,0,"x = 1") +#20118=@"loc,{#10000},1,5,1,9" +locations_default(#20118,#10000,1,5,1,9) +hasLocation(#20117,#20118) +enclosing_stmt(#20117,#20116) +expr_containers(#20117,#20001) #20119=* -exprs(#20119,3,#20116,1,"1") -hasLocation(#20119,#20029) -enclosing_stmt(#20119,#20115) +exprs(#20119,78,#20117,0,"x") +hasLocation(#20119,#20025) +enclosing_stmt(#20119,#20116) expr_containers(#20119,#20001) -literals("1","1",#20119) +literals("x","x",#20119) +decl(#20119,#20111) #20120=* -stmts(#20120,18,#20001,1,"var y = 2;") -hasLocation(#20120,#20007) -stmt_containers(#20120,#20001) +exprs(#20120,3,#20117,1,"1") +hasLocation(#20120,#20029) +enclosing_stmt(#20120,#20116) +expr_containers(#20120,#20001) +literals("1","1",#20120) #20121=* -exprs(#20121,64,#20120,0,"y = 2") -#20122=@"loc,{#10000},2,5,2,9" -locations_default(#20122,#10000,2,5,2,9) -hasLocation(#20121,#20122) -enclosing_stmt(#20121,#20120) -expr_containers(#20121,#20001) -#20123=* -exprs(#20123,78,#20121,0,"y") -hasLocation(#20123,#20035) -enclosing_stmt(#20123,#20120) -expr_containers(#20123,#20001) -literals("y","y",#20123) -decl(#20123,#20112) +stmts(#20121,18,#20001,1,"var y = 2;") +hasLocation(#20121,#20007) +stmt_containers(#20121,#20001) +#20122=* +exprs(#20122,64,#20121,0,"y = 2") +#20123=@"loc,{#10000},2,5,2,9" +locations_default(#20123,#10000,2,5,2,9) +hasLocation(#20122,#20123) +enclosing_stmt(#20122,#20121) +expr_containers(#20122,#20001) #20124=* -exprs(#20124,3,#20121,1,"2") -hasLocation(#20124,#20039) -enclosing_stmt(#20124,#20120) +exprs(#20124,78,#20122,0,"y") +hasLocation(#20124,#20035) +enclosing_stmt(#20124,#20121) expr_containers(#20124,#20001) -literals("2","2",#20124) +literals("y","y",#20124) +decl(#20124,#20112) #20125=* -stmts(#20125,18,#20001,2,"var foo = x && y;") -hasLocation(#20125,#20009) -stmt_containers(#20125,#20001) +exprs(#20125,3,#20122,1,"2") +hasLocation(#20125,#20039) +enclosing_stmt(#20125,#20121) +expr_containers(#20125,#20001) +literals("2","2",#20125) #20126=* -exprs(#20126,64,#20125,0,"foo = x && y") -#20127=@"loc,{#10000},3,5,3,16" -locations_default(#20127,#10000,3,5,3,16) -hasLocation(#20126,#20127) -enclosing_stmt(#20126,#20125) -expr_containers(#20126,#20001) -#20128=* -exprs(#20128,78,#20126,0,"foo") -hasLocation(#20128,#20045) -enclosing_stmt(#20128,#20125) -expr_containers(#20128,#20001) -literals("foo","foo",#20128) -decl(#20128,#20113) +stmts(#20126,18,#20001,2,"var foo = x && y;") +hasLocation(#20126,#20009) +stmt_containers(#20126,#20001) +#20127=* +exprs(#20127,64,#20126,0,"foo = x && y") +#20128=@"loc,{#10000},3,5,3,16" +locations_default(#20128,#10000,3,5,3,16) +hasLocation(#20127,#20128) +enclosing_stmt(#20127,#20126) +expr_containers(#20127,#20001) #20129=* -exprs(#20129,44,#20126,1,"x && y") -#20130=@"loc,{#10000},3,11,3,16" -locations_default(#20130,#10000,3,11,3,16) -hasLocation(#20129,#20130) -enclosing_stmt(#20129,#20125) +exprs(#20129,78,#20127,0,"foo") +hasLocation(#20129,#20045) +enclosing_stmt(#20129,#20126) expr_containers(#20129,#20001) -#20131=* -exprs(#20131,79,#20129,0,"x") -hasLocation(#20131,#20049) -enclosing_stmt(#20131,#20125) -expr_containers(#20131,#20001) -literals("x","x",#20131) -bind(#20131,#20111) +literals("foo","foo",#20129) +decl(#20129,#20113) +#20130=* +exprs(#20130,44,#20127,1,"x && y") +#20131=@"loc,{#10000},3,11,3,16" +locations_default(#20131,#10000,3,11,3,16) +hasLocation(#20130,#20131) +enclosing_stmt(#20130,#20126) +expr_containers(#20130,#20001) #20132=* -exprs(#20132,79,#20129,1,"y") -hasLocation(#20132,#20053) -enclosing_stmt(#20132,#20125) +exprs(#20132,79,#20130,0,"x") +hasLocation(#20132,#20049) +enclosing_stmt(#20132,#20126) expr_containers(#20132,#20001) -literals("y","y",#20132) -bind(#20132,#20112) +literals("x","x",#20132) +bind(#20132,#20111) #20133=* -stmts(#20133,18,#20001,3,"var bar = x &&= y;") -hasLocation(#20133,#20011) -stmt_containers(#20133,#20001) +exprs(#20133,79,#20130,1,"y") +hasLocation(#20133,#20053) +enclosing_stmt(#20133,#20126) +expr_containers(#20133,#20001) +literals("y","y",#20133) +bind(#20133,#20112) #20134=* -exprs(#20134,64,#20133,0,"bar = x &&= y") -#20135=@"loc,{#10000},4,5,4,17" -locations_default(#20135,#10000,4,5,4,17) -hasLocation(#20134,#20135) -enclosing_stmt(#20134,#20133) -expr_containers(#20134,#20001) -#20136=* -exprs(#20136,78,#20134,0,"bar") -hasLocation(#20136,#20059) -enclosing_stmt(#20136,#20133) -expr_containers(#20136,#20001) -literals("bar","bar",#20136) -decl(#20136,#20114) +stmts(#20134,18,#20001,3,"var bar = x &&= y;") +hasLocation(#20134,#20011) +stmt_containers(#20134,#20001) +#20135=* +exprs(#20135,64,#20134,0,"bar = x &&= y") +#20136=@"loc,{#10000},4,5,4,17" +locations_default(#20136,#10000,4,5,4,17) +hasLocation(#20135,#20136) +enclosing_stmt(#20135,#20134) +expr_containers(#20135,#20001) #20137=* -exprs(#20137,116,#20134,1,"x &&= y") -#20138=@"loc,{#10000},4,11,4,17" -locations_default(#20138,#10000,4,11,4,17) -hasLocation(#20137,#20138) -enclosing_stmt(#20137,#20133) +exprs(#20137,78,#20135,0,"bar") +hasLocation(#20137,#20059) +enclosing_stmt(#20137,#20134) expr_containers(#20137,#20001) -#20139=* -exprs(#20139,79,#20137,0,"x") -hasLocation(#20139,#20063) -enclosing_stmt(#20139,#20133) -expr_containers(#20139,#20001) -literals("x","x",#20139) -bind(#20139,#20111) +literals("bar","bar",#20137) +decl(#20137,#20114) +#20138=* +exprs(#20138,116,#20135,1,"x &&= y") +#20139=@"loc,{#10000},4,11,4,17" +locations_default(#20139,#10000,4,11,4,17) +hasLocation(#20138,#20139) +enclosing_stmt(#20138,#20134) +expr_containers(#20138,#20001) #20140=* -exprs(#20140,79,#20137,1,"y") -hasLocation(#20140,#20067) -enclosing_stmt(#20140,#20133) +exprs(#20140,79,#20138,0,"x") +hasLocation(#20140,#20063) +enclosing_stmt(#20140,#20134) expr_containers(#20140,#20001) -literals("y","y",#20140) -bind(#20140,#20112) +literals("x","x",#20140) +bind(#20140,#20111) #20141=* -stmts(#20141,2,#20001,4,"console.log(x);") -#20142=@"loc,{#10000},5,1,5,15" -locations_default(#20142,#10000,5,1,5,15) -hasLocation(#20141,#20142) -stmt_containers(#20141,#20001) -#20143=* -exprs(#20143,13,#20141,0,"console.log(x)") -#20144=@"loc,{#10000},5,1,5,14" -locations_default(#20144,#10000,5,1,5,14) -hasLocation(#20143,#20144) -enclosing_stmt(#20143,#20141) -expr_containers(#20143,#20001) -#20145=* -exprs(#20145,14,#20143,-1,"console.log") -#20146=@"loc,{#10000},5,1,5,11" -locations_default(#20146,#10000,5,1,5,11) -hasLocation(#20145,#20146) -enclosing_stmt(#20145,#20141) -expr_containers(#20145,#20001) -#20147=* -exprs(#20147,79,#20145,0,"console") -hasLocation(#20147,#20071) -enclosing_stmt(#20147,#20141) -expr_containers(#20147,#20001) -literals("console","console",#20147) -#20148=@"var;{console};{#20000}" -variables(#20148,"console",#20000) -bind(#20147,#20148) -#20149=* -exprs(#20149,0,#20145,1,"log") -hasLocation(#20149,#20075) -enclosing_stmt(#20149,#20141) -expr_containers(#20149,#20001) -literals("log","log",#20149) +exprs(#20141,79,#20138,1,"y") +hasLocation(#20141,#20067) +enclosing_stmt(#20141,#20134) +expr_containers(#20141,#20001) +literals("y","y",#20141) +bind(#20141,#20112) +#20142=* +stmts(#20142,2,#20001,4,"console.log(x);") +#20143=@"loc,{#10000},5,1,5,15" +locations_default(#20143,#10000,5,1,5,15) +hasLocation(#20142,#20143) +stmt_containers(#20142,#20001) +#20144=* +exprs(#20144,13,#20142,0,"console.log(x)") +#20145=@"loc,{#10000},5,1,5,14" +locations_default(#20145,#10000,5,1,5,14) +hasLocation(#20144,#20145) +enclosing_stmt(#20144,#20142) +expr_containers(#20144,#20001) +#20146=* +exprs(#20146,14,#20144,-1,"console.log") +#20147=@"loc,{#10000},5,1,5,11" +locations_default(#20147,#10000,5,1,5,11) +hasLocation(#20146,#20147) +enclosing_stmt(#20146,#20142) +expr_containers(#20146,#20001) +#20148=* +exprs(#20148,79,#20146,0,"console") +hasLocation(#20148,#20071) +enclosing_stmt(#20148,#20142) +expr_containers(#20148,#20001) +literals("console","console",#20148) +#20149=@"var;{console};{#20000}" +variables(#20149,"console",#20000) +bind(#20148,#20149) #20150=* -exprs(#20150,79,#20143,0,"x") -hasLocation(#20150,#20079) -enclosing_stmt(#20150,#20141) +exprs(#20150,0,#20146,1,"log") +hasLocation(#20150,#20075) +enclosing_stmt(#20150,#20142) expr_containers(#20150,#20001) -literals("x","x",#20150) -bind(#20150,#20111) +literals("log","log",#20150) #20151=* -stmts(#20151,2,#20001,5,"x &&= y;") -hasLocation(#20151,#20017) -stmt_containers(#20151,#20001) +exprs(#20151,79,#20144,0,"x") +hasLocation(#20151,#20079) +enclosing_stmt(#20151,#20142) +expr_containers(#20151,#20001) +literals("x","x",#20151) +bind(#20151,#20111) #20152=* -exprs(#20152,116,#20151,0,"x &&= y") -#20153=@"loc,{#10000},7,1,7,7" -locations_default(#20153,#10000,7,1,7,7) -hasLocation(#20152,#20153) -enclosing_stmt(#20152,#20151) -expr_containers(#20152,#20001) -#20154=* -exprs(#20154,79,#20152,0,"x") -hasLocation(#20154,#20085) -enclosing_stmt(#20154,#20151) -expr_containers(#20154,#20001) -literals("x","x",#20154) -bind(#20154,#20111) +stmts(#20152,2,#20001,5,"x &&= y;") +hasLocation(#20152,#20017) +stmt_containers(#20152,#20001) +#20153=* +exprs(#20153,116,#20152,0,"x &&= y") +#20154=@"loc,{#10000},7,1,7,7" +locations_default(#20154,#10000,7,1,7,7) +hasLocation(#20153,#20154) +enclosing_stmt(#20153,#20152) +expr_containers(#20153,#20001) #20155=* -exprs(#20155,79,#20152,1,"y") -hasLocation(#20155,#20089) -enclosing_stmt(#20155,#20151) +exprs(#20155,79,#20153,0,"x") +hasLocation(#20155,#20085) +enclosing_stmt(#20155,#20152) expr_containers(#20155,#20001) -literals("y","y",#20155) -bind(#20155,#20112) +literals("x","x",#20155) +bind(#20155,#20111) #20156=* -stmts(#20156,2,#20001,6,"x ||= y;") -hasLocation(#20156,#20019) -stmt_containers(#20156,#20001) +exprs(#20156,79,#20153,1,"y") +hasLocation(#20156,#20089) +enclosing_stmt(#20156,#20152) +expr_containers(#20156,#20001) +literals("y","y",#20156) +bind(#20156,#20112) #20157=* -exprs(#20157,117,#20156,0,"x ||= y") -#20158=@"loc,{#10000},8,1,8,7" -locations_default(#20158,#10000,8,1,8,7) -hasLocation(#20157,#20158) -enclosing_stmt(#20157,#20156) -expr_containers(#20157,#20001) -#20159=* -exprs(#20159,79,#20157,0,"x") -hasLocation(#20159,#20093) -enclosing_stmt(#20159,#20156) -expr_containers(#20159,#20001) -literals("x","x",#20159) -bind(#20159,#20111) +stmts(#20157,2,#20001,6,"x ||= y;") +hasLocation(#20157,#20019) +stmt_containers(#20157,#20001) +#20158=* +exprs(#20158,117,#20157,0,"x ||= y") +#20159=@"loc,{#10000},8,1,8,7" +locations_default(#20159,#10000,8,1,8,7) +hasLocation(#20158,#20159) +enclosing_stmt(#20158,#20157) +expr_containers(#20158,#20001) #20160=* -exprs(#20160,79,#20157,1,"y") -hasLocation(#20160,#20097) -enclosing_stmt(#20160,#20156) +exprs(#20160,79,#20158,0,"x") +hasLocation(#20160,#20093) +enclosing_stmt(#20160,#20157) expr_containers(#20160,#20001) -literals("y","y",#20160) -bind(#20160,#20112) +literals("x","x",#20160) +bind(#20160,#20111) #20161=* -stmts(#20161,2,#20001,7,"x ??= y;") -hasLocation(#20161,#20021) -stmt_containers(#20161,#20001) +exprs(#20161,79,#20158,1,"y") +hasLocation(#20161,#20097) +enclosing_stmt(#20161,#20157) +expr_containers(#20161,#20001) +literals("y","y",#20161) +bind(#20161,#20112) #20162=* -exprs(#20162,118,#20161,0,"x ??= y") -#20163=@"loc,{#10000},9,1,9,7" -locations_default(#20163,#10000,9,1,9,7) -hasLocation(#20162,#20163) -enclosing_stmt(#20162,#20161) -expr_containers(#20162,#20001) -#20164=* -exprs(#20164,79,#20162,0,"x") -hasLocation(#20164,#20101) -enclosing_stmt(#20164,#20161) -expr_containers(#20164,#20001) -literals("x","x",#20164) -bind(#20164,#20111) +stmts(#20162,2,#20001,7,"x ??= y;") +hasLocation(#20162,#20021) +stmt_containers(#20162,#20001) +#20163=* +exprs(#20163,118,#20162,0,"x ??= y") +#20164=@"loc,{#10000},9,1,9,7" +locations_default(#20164,#10000,9,1,9,7) +hasLocation(#20163,#20164) +enclosing_stmt(#20163,#20162) +expr_containers(#20163,#20001) #20165=* -exprs(#20165,79,#20162,1,"y") -hasLocation(#20165,#20105) -enclosing_stmt(#20165,#20161) +exprs(#20165,79,#20163,0,"x") +hasLocation(#20165,#20101) +enclosing_stmt(#20165,#20162) expr_containers(#20165,#20001) -literals("y","y",#20165) -bind(#20165,#20112) +literals("x","x",#20165) +bind(#20165,#20111) #20166=* -entry_cfg_node(#20166,#20001) -#20167=@"loc,{#10000},1,1,1,0" -locations_default(#20167,#10000,1,1,1,0) -hasLocation(#20166,#20167) -#20168=* -exit_cfg_node(#20168,#20001) -hasLocation(#20168,#20109) -successor(#20161,#20164) -successor(#20164,#20165) -successor(#20164,#20168) -successor(#20165,#20162) -successor(#20162,#20168) -successor(#20156,#20159) +exprs(#20166,79,#20163,1,"y") +hasLocation(#20166,#20105) +enclosing_stmt(#20166,#20162) +expr_containers(#20166,#20001) +literals("y","y",#20166) +bind(#20166,#20112) +#20167=* +entry_cfg_node(#20167,#20001) +#20168=@"loc,{#10000},1,1,1,0" +locations_default(#20168,#10000,1,1,1,0) +hasLocation(#20167,#20168) #20169=* -guard_node(#20169,1,#20159) -hasLocation(#20169,#20093) -successor(#20169,#20161) +exit_cfg_node(#20169,#20001) +hasLocation(#20169,#20109) +successor(#20162,#20165) +successor(#20165,#20166) +successor(#20165,#20169) +successor(#20166,#20163) +successor(#20163,#20169) +successor(#20157,#20160) #20170=* -guard_node(#20170,0,#20159) +guard_node(#20170,1,#20160) hasLocation(#20170,#20093) -successor(#20170,#20160) -successor(#20159,#20169) -successor(#20159,#20170) -successor(#20160,#20157) -successor(#20157,#20161) -successor(#20151,#20154) +successor(#20170,#20162) #20171=* -guard_node(#20171,1,#20154) -hasLocation(#20171,#20085) -successor(#20171,#20155) +guard_node(#20171,0,#20160) +hasLocation(#20171,#20093) +successor(#20171,#20161) +successor(#20160,#20170) +successor(#20160,#20171) +successor(#20161,#20158) +successor(#20158,#20162) +successor(#20152,#20155) #20172=* -guard_node(#20172,0,#20154) +guard_node(#20172,1,#20155) hasLocation(#20172,#20085) successor(#20172,#20156) -successor(#20154,#20171) -successor(#20154,#20172) -successor(#20155,#20152) -successor(#20152,#20156) -successor(#20141,#20147) -successor(#20150,#20143) -successor(#20149,#20145) -successor(#20147,#20149) -successor(#20145,#20150) -successor(#20143,#20151) -successor(#20133,#20136) #20173=* -guard_node(#20173,1,#20139) -hasLocation(#20173,#20063) -successor(#20173,#20140) +guard_node(#20173,0,#20155) +hasLocation(#20173,#20085) +successor(#20173,#20157) +successor(#20155,#20172) +successor(#20155,#20173) +successor(#20156,#20153) +successor(#20153,#20157) +successor(#20142,#20148) +successor(#20151,#20144) +successor(#20150,#20146) +successor(#20148,#20150) +successor(#20146,#20151) +successor(#20144,#20152) +successor(#20134,#20137) #20174=* -guard_node(#20174,0,#20139) +guard_node(#20174,1,#20140) hasLocation(#20174,#20063) -successor(#20174,#20134) -successor(#20139,#20173) -successor(#20139,#20174) -successor(#20140,#20137) -successor(#20137,#20134) -successor(#20136,#20139) -successor(#20134,#20141) -successor(#20125,#20128) -successor(#20129,#20131) +successor(#20174,#20141) #20175=* -guard_node(#20175,1,#20131) -hasLocation(#20175,#20049) -successor(#20175,#20132) +guard_node(#20175,0,#20140) +hasLocation(#20175,#20063) +successor(#20175,#20135) +successor(#20140,#20174) +successor(#20140,#20175) +successor(#20141,#20138) +successor(#20138,#20135) +successor(#20137,#20140) +successor(#20135,#20142) +successor(#20126,#20129) +successor(#20130,#20132) #20176=* -guard_node(#20176,0,#20131) +guard_node(#20176,1,#20132) hasLocation(#20176,#20049) -successor(#20176,#20126) -successor(#20131,#20175) -successor(#20131,#20176) -successor(#20132,#20126) -successor(#20128,#20129) -successor(#20126,#20133) -successor(#20120,#20123) -successor(#20124,#20121) -successor(#20123,#20124) -successor(#20121,#20125) -successor(#20115,#20118) -successor(#20119,#20116) -successor(#20118,#20119) -successor(#20116,#20120) -successor(#20166,#20115) +successor(#20176,#20133) +#20177=* +guard_node(#20177,0,#20132) +hasLocation(#20177,#20049) +successor(#20177,#20127) +successor(#20132,#20176) +successor(#20132,#20177) +successor(#20133,#20127) +successor(#20129,#20130) +successor(#20127,#20134) +successor(#20121,#20124) +successor(#20125,#20122) +successor(#20124,#20125) +successor(#20122,#20126) +successor(#20116,#20119) +successor(#20120,#20117) +successor(#20119,#20120) +successor(#20117,#20121) +successor(#20167,#20116) numlines(#10000,9,8,1) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2021/output/trap/numeric.js.trap b/javascript/extractor/tests/es2021/output/trap/numeric.js.trap index f6f86e948535..aad3815db453 100644 --- a/javascript/extractor/tests/es2021/output/trap/numeric.js.trap +++ b/javascript/extractor/tests/es2021/output/trap/numeric.js.trap @@ -248,188 +248,190 @@ hasLocation(#20001,#20088) variables(#20089,"fee",#20000) #20090=@"var;{amount};{#20000}" variables(#20090,"amount",#20000) -#20091=* -stmts(#20091,2,#20001,0,"1_000_000_000") -hasLocation(#20091,#20033) -stmt_containers(#20091,#20001) +#20091=@"var;{this};{#20000}" +variables(#20091,"this",#20000) #20092=* -exprs(#20092,3,#20091,0,"1_000_000_000") +stmts(#20092,2,#20001,0,"1_000_000_000") hasLocation(#20092,#20033) -enclosing_stmt(#20092,#20091) -expr_containers(#20092,#20001) -literals("1000000000","1_000_000_000",#20092) +stmt_containers(#20092,#20001) #20093=* -stmts(#20093,2,#20001,1,"101_475_938.38") -hasLocation(#20093,#20035) -stmt_containers(#20093,#20001) +exprs(#20093,3,#20092,0,"1_000_000_000") +hasLocation(#20093,#20033) +enclosing_stmt(#20093,#20092) +expr_containers(#20093,#20001) +literals("1000000000","1_000_000_000",#20093) #20094=* -exprs(#20094,3,#20093,0,"101_475_938.38") +stmts(#20094,2,#20001,1,"101_475_938.38") hasLocation(#20094,#20035) -enclosing_stmt(#20094,#20093) -expr_containers(#20094,#20001) -literals("1.0147593838E8","101_475_938.38",#20094) +stmt_containers(#20094,#20001) #20095=* -stmts(#20095,23,#20001,2,"let fee = 123_00;") -#20096=@"loc,{#10000},4,1,4,17" -locations_default(#20096,#10000,4,1,4,17) -hasLocation(#20095,#20096) -stmt_containers(#20095,#20001) -#20097=* -exprs(#20097,64,#20095,0,"fee = 123_00") -#20098=@"loc,{#10000},4,5,4,16" -locations_default(#20098,#10000,4,5,4,16) -hasLocation(#20097,#20098) -enclosing_stmt(#20097,#20095) -expr_containers(#20097,#20001) -#20099=* -exprs(#20099,78,#20097,0,"fee") -hasLocation(#20099,#20039) -enclosing_stmt(#20099,#20095) -expr_containers(#20099,#20001) -literals("fee","fee",#20099) -decl(#20099,#20089) +exprs(#20095,3,#20094,0,"101_475_938.38") +hasLocation(#20095,#20035) +enclosing_stmt(#20095,#20094) +expr_containers(#20095,#20001) +literals("1.0147593838E8","101_475_938.38",#20095) +#20096=* +stmts(#20096,23,#20001,2,"let fee = 123_00;") +#20097=@"loc,{#10000},4,1,4,17" +locations_default(#20097,#10000,4,1,4,17) +hasLocation(#20096,#20097) +stmt_containers(#20096,#20001) +#20098=* +exprs(#20098,64,#20096,0,"fee = 123_00") +#20099=@"loc,{#10000},4,5,4,16" +locations_default(#20099,#10000,4,5,4,16) +hasLocation(#20098,#20099) +enclosing_stmt(#20098,#20096) +expr_containers(#20098,#20001) #20100=* -exprs(#20100,3,#20097,1,"123_00") -hasLocation(#20100,#20043) -enclosing_stmt(#20100,#20095) +exprs(#20100,78,#20098,0,"fee") +hasLocation(#20100,#20039) +enclosing_stmt(#20100,#20096) expr_containers(#20100,#20001) -literals("12300","123_00",#20100) +literals("fee","fee",#20100) +decl(#20100,#20089) #20101=* -stmts(#20101,23,#20001,3,"let fee = 12_300;") -#20102=@"loc,{#10000},5,1,5,17" -locations_default(#20102,#10000,5,1,5,17) -hasLocation(#20101,#20102) -stmt_containers(#20101,#20001) -#20103=* -exprs(#20103,64,#20101,0,"fee = 12_300") -#20104=@"loc,{#10000},5,5,5,16" -locations_default(#20104,#10000,5,5,5,16) -hasLocation(#20103,#20104) -enclosing_stmt(#20103,#20101) -expr_containers(#20103,#20001) -#20105=* -exprs(#20105,78,#20103,0,"fee") -hasLocation(#20105,#20049) -enclosing_stmt(#20105,#20101) -expr_containers(#20105,#20001) -literals("fee","fee",#20105) -decl(#20105,#20089) +exprs(#20101,3,#20098,1,"123_00") +hasLocation(#20101,#20043) +enclosing_stmt(#20101,#20096) +expr_containers(#20101,#20001) +literals("12300","123_00",#20101) +#20102=* +stmts(#20102,23,#20001,3,"let fee = 12_300;") +#20103=@"loc,{#10000},5,1,5,17" +locations_default(#20103,#10000,5,1,5,17) +hasLocation(#20102,#20103) +stmt_containers(#20102,#20001) +#20104=* +exprs(#20104,64,#20102,0,"fee = 12_300") +#20105=@"loc,{#10000},5,5,5,16" +locations_default(#20105,#10000,5,5,5,16) +hasLocation(#20104,#20105) +enclosing_stmt(#20104,#20102) +expr_containers(#20104,#20001) #20106=* -exprs(#20106,3,#20103,1,"12_300") -hasLocation(#20106,#20053) -enclosing_stmt(#20106,#20101) +exprs(#20106,78,#20104,0,"fee") +hasLocation(#20106,#20049) +enclosing_stmt(#20106,#20102) expr_containers(#20106,#20001) -literals("12300","12_300",#20106) +literals("fee","fee",#20106) +decl(#20106,#20089) #20107=* -stmts(#20107,23,#20001,4,"let amo ... 345_00;") -#20108=@"loc,{#10000},6,1,6,22" -locations_default(#20108,#10000,6,1,6,22) -hasLocation(#20107,#20108) -stmt_containers(#20107,#20001) -#20109=* -exprs(#20109,64,#20107,0,"amount = 12345_00") -#20110=@"loc,{#10000},6,5,6,21" -locations_default(#20110,#10000,6,5,6,21) -hasLocation(#20109,#20110) -enclosing_stmt(#20109,#20107) -expr_containers(#20109,#20001) -#20111=* -exprs(#20111,78,#20109,0,"amount") -hasLocation(#20111,#20059) -enclosing_stmt(#20111,#20107) -expr_containers(#20111,#20001) -literals("amount","amount",#20111) -decl(#20111,#20090) +exprs(#20107,3,#20104,1,"12_300") +hasLocation(#20107,#20053) +enclosing_stmt(#20107,#20102) +expr_containers(#20107,#20001) +literals("12300","12_300",#20107) +#20108=* +stmts(#20108,23,#20001,4,"let amo ... 345_00;") +#20109=@"loc,{#10000},6,1,6,22" +locations_default(#20109,#10000,6,1,6,22) +hasLocation(#20108,#20109) +stmt_containers(#20108,#20001) +#20110=* +exprs(#20110,64,#20108,0,"amount = 12345_00") +#20111=@"loc,{#10000},6,5,6,21" +locations_default(#20111,#10000,6,5,6,21) +hasLocation(#20110,#20111) +enclosing_stmt(#20110,#20108) +expr_containers(#20110,#20001) #20112=* -exprs(#20112,3,#20109,1,"12345_00") -hasLocation(#20112,#20063) -enclosing_stmt(#20112,#20107) +exprs(#20112,78,#20110,0,"amount") +hasLocation(#20112,#20059) +enclosing_stmt(#20112,#20108) expr_containers(#20112,#20001) -literals("1234500","12345_00",#20112) +literals("amount","amount",#20112) +decl(#20112,#20090) #20113=* -stmts(#20113,23,#20001,5,"let amo ... 3_4500;") -#20114=@"loc,{#10000},7,1,7,22" -locations_default(#20114,#10000,7,1,7,22) -hasLocation(#20113,#20114) -stmt_containers(#20113,#20001) -#20115=* -exprs(#20115,64,#20113,0,"amount = 123_4500") -#20116=@"loc,{#10000},7,5,7,21" -locations_default(#20116,#10000,7,5,7,21) -hasLocation(#20115,#20116) -enclosing_stmt(#20115,#20113) -expr_containers(#20115,#20001) -#20117=* -exprs(#20117,78,#20115,0,"amount") -hasLocation(#20117,#20069) -enclosing_stmt(#20117,#20113) -expr_containers(#20117,#20001) -literals("amount","amount",#20117) -decl(#20117,#20090) +exprs(#20113,3,#20110,1,"12345_00") +hasLocation(#20113,#20063) +enclosing_stmt(#20113,#20108) +expr_containers(#20113,#20001) +literals("1234500","12345_00",#20113) +#20114=* +stmts(#20114,23,#20001,5,"let amo ... 3_4500;") +#20115=@"loc,{#10000},7,1,7,22" +locations_default(#20115,#10000,7,1,7,22) +hasLocation(#20114,#20115) +stmt_containers(#20114,#20001) +#20116=* +exprs(#20116,64,#20114,0,"amount = 123_4500") +#20117=@"loc,{#10000},7,5,7,21" +locations_default(#20117,#10000,7,5,7,21) +hasLocation(#20116,#20117) +enclosing_stmt(#20116,#20114) +expr_containers(#20116,#20001) #20118=* -exprs(#20118,3,#20115,1,"123_4500") -hasLocation(#20118,#20073) -enclosing_stmt(#20118,#20113) +exprs(#20118,78,#20116,0,"amount") +hasLocation(#20118,#20069) +enclosing_stmt(#20118,#20114) expr_containers(#20118,#20001) -literals("1234500","123_4500",#20118) +literals("amount","amount",#20118) +decl(#20118,#20090) #20119=* -stmts(#20119,23,#20001,6,"let amo ... 34_500;") -#20120=@"loc,{#10000},8,1,8,23" -locations_default(#20120,#10000,8,1,8,23) -hasLocation(#20119,#20120) -stmt_containers(#20119,#20001) -#20121=* -exprs(#20121,64,#20119,0,"amount = 1_234_500") -#20122=@"loc,{#10000},8,5,8,22" -locations_default(#20122,#10000,8,5,8,22) -hasLocation(#20121,#20122) -enclosing_stmt(#20121,#20119) -expr_containers(#20121,#20001) -#20123=* -exprs(#20123,78,#20121,0,"amount") -hasLocation(#20123,#20079) -enclosing_stmt(#20123,#20119) -expr_containers(#20123,#20001) -literals("amount","amount",#20123) -decl(#20123,#20090) +exprs(#20119,3,#20116,1,"123_4500") +hasLocation(#20119,#20073) +enclosing_stmt(#20119,#20114) +expr_containers(#20119,#20001) +literals("1234500","123_4500",#20119) +#20120=* +stmts(#20120,23,#20001,6,"let amo ... 34_500;") +#20121=@"loc,{#10000},8,1,8,23" +locations_default(#20121,#10000,8,1,8,23) +hasLocation(#20120,#20121) +stmt_containers(#20120,#20001) +#20122=* +exprs(#20122,64,#20120,0,"amount = 1_234_500") +#20123=@"loc,{#10000},8,5,8,22" +locations_default(#20123,#10000,8,5,8,22) +hasLocation(#20122,#20123) +enclosing_stmt(#20122,#20120) +expr_containers(#20122,#20001) #20124=* -exprs(#20124,3,#20121,1,"1_234_500") -hasLocation(#20124,#20083) -enclosing_stmt(#20124,#20119) +exprs(#20124,78,#20122,0,"amount") +hasLocation(#20124,#20079) +enclosing_stmt(#20124,#20120) expr_containers(#20124,#20001) -literals("1234500","1_234_500",#20124) +literals("amount","amount",#20124) +decl(#20124,#20090) #20125=* -entry_cfg_node(#20125,#20001) -#20126=@"loc,{#10000},1,1,1,0" -locations_default(#20126,#10000,1,1,1,0) -hasLocation(#20125,#20126) -#20127=* -exit_cfg_node(#20127,#20001) -hasLocation(#20127,#20087) -successor(#20119,#20123) -successor(#20124,#20121) -successor(#20123,#20124) -successor(#20121,#20127) -successor(#20113,#20117) -successor(#20118,#20115) -successor(#20117,#20118) -successor(#20115,#20119) -successor(#20107,#20111) -successor(#20112,#20109) -successor(#20111,#20112) -successor(#20109,#20113) -successor(#20101,#20105) -successor(#20106,#20103) -successor(#20105,#20106) -successor(#20103,#20107) -successor(#20095,#20099) -successor(#20100,#20097) -successor(#20099,#20100) -successor(#20097,#20101) -successor(#20093,#20094) +exprs(#20125,3,#20122,1,"1_234_500") +hasLocation(#20125,#20083) +enclosing_stmt(#20125,#20120) +expr_containers(#20125,#20001) +literals("1234500","1_234_500",#20125) +#20126=* +entry_cfg_node(#20126,#20001) +#20127=@"loc,{#10000},1,1,1,0" +locations_default(#20127,#10000,1,1,1,0) +hasLocation(#20126,#20127) +#20128=* +exit_cfg_node(#20128,#20001) +hasLocation(#20128,#20087) +successor(#20120,#20124) +successor(#20125,#20122) +successor(#20124,#20125) +successor(#20122,#20128) +successor(#20114,#20118) +successor(#20119,#20116) +successor(#20118,#20119) +successor(#20116,#20120) +successor(#20108,#20112) +successor(#20113,#20110) +successor(#20112,#20113) +successor(#20110,#20114) +successor(#20102,#20106) +successor(#20107,#20104) +successor(#20106,#20107) +successor(#20104,#20108) +successor(#20096,#20100) +successor(#20101,#20098) +successor(#20100,#20101) +successor(#20098,#20102) successor(#20094,#20095) -successor(#20091,#20092) +successor(#20095,#20096) successor(#20092,#20093) -successor(#20125,#20091) +successor(#20093,#20094) +successor(#20126,#20092) numlines(#10000,8,7,7) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2024/output/trap/additional_test_cases.js.trap b/javascript/extractor/tests/es2024/output/trap/additional_test_cases.js.trap index bd2318dbc5c4..2c6e264e9b3d 100644 --- a/javascript/extractor/tests/es2024/output/trap/additional_test_cases.js.trap +++ b/javascript/extractor/tests/es2024/output/trap/additional_test_cases.js.trap @@ -51,496 +51,498 @@ toplevels(#20001,0) #20016=@"loc,{#10000},1,1,3,0" locations_default(#20016,#10000,1,1,3,0) hasLocation(#20001,#20016) -#20017=* -stmts(#20017,2,#20001,0,"/^p(ost ... ]]*/g;") -hasLocation(#20017,#20003) -stmt_containers(#20017,#20001) +#20017=@"var;{this};{#20000}" +variables(#20017,"this",#20000) #20018=* -exprs(#20018,5,#20017,0,"/^p(ost ... z ]]*/g") -hasLocation(#20018,#20007) -enclosing_stmt(#20018,#20017) -expr_containers(#20018,#20001) -literals("/^p(ost)?[ |\.]*o(ffice)?[ |\.]*(box)?[ 0-9]*[^[a-z ]]*/g","/^p(ost)?[ |\.]*o(ffice)?[ |\.]*(box)?[ 0-9]*[^[a-z ]]*/g",#20018) +stmts(#20018,2,#20001,0,"/^p(ost ... ]]*/g;") +hasLocation(#20018,#20003) +stmt_containers(#20018,#20001) #20019=* -regexpterm(#20019,1,#20018,0,"^p(ost)?[ |\.]*o(ffice)?[ |\.]*(box)?[ 0-9]*[^[a-z ]]*") -#20020=@"loc,{#10000},1,2,1,55" -locations_default(#20020,#10000,1,2,1,55) -hasLocation(#20019,#20020) -#20021=* -regexpterm(#20021,2,#20019,0,"^") -#20022=@"loc,{#10000},1,2,1,2" -locations_default(#20022,#10000,1,2,1,2) -hasLocation(#20021,#20022) -#20023=* -regexpterm(#20023,14,#20019,1,"p") -#20024=@"loc,{#10000},1,3,1,3" -locations_default(#20024,#10000,1,3,1,3) -hasLocation(#20023,#20024) -regexp_const_value(#20023,"p") -#20025=* -regexpterm(#20025,10,#20019,2,"(ost)?") -#20026=@"loc,{#10000},1,4,1,9" -locations_default(#20026,#10000,1,4,1,9) -hasLocation(#20025,#20026) -is_greedy(#20025) -#20027=* -regexpterm(#20027,13,#20025,0,"(ost)") -#20028=@"loc,{#10000},1,4,1,8" -locations_default(#20028,#10000,1,4,1,8) -hasLocation(#20027,#20028) -is_capture(#20027,1) -#20029=* -regexpterm(#20029,14,#20027,0,"ost") -#20030=@"loc,{#10000},1,5,1,7" -locations_default(#20030,#10000,1,5,1,7) -hasLocation(#20029,#20030) -regexp_const_value(#20029,"ost") -#20031=* -regexpterm(#20031,8,#20019,3,"[ |\.]*") -#20032=@"loc,{#10000},1,10,1,16" -locations_default(#20032,#10000,1,10,1,16) -hasLocation(#20031,#20032) -is_greedy(#20031) -#20033=* -regexpterm(#20033,23,#20031,0,"[ |\.]") -#20034=@"loc,{#10000},1,10,1,15" -locations_default(#20034,#10000,1,10,1,15) -hasLocation(#20033,#20034) -#20035=* -regexpterm(#20035,14,#20033,0," ") -#20036=@"loc,{#10000},1,11,1,11" -locations_default(#20036,#10000,1,11,1,11) -hasLocation(#20035,#20036) -regexp_const_value(#20035," ") -#20037=* -regexpterm(#20037,14,#20033,1,"|") -#20038=@"loc,{#10000},1,12,1,12" -locations_default(#20038,#10000,1,12,1,12) -hasLocation(#20037,#20038) -regexp_const_value(#20037,"|") -#20039=* -regexpterm(#20039,21,#20033,2,"\.") -#20040=@"loc,{#10000},1,13,1,14" -locations_default(#20040,#10000,1,13,1,14) -hasLocation(#20039,#20040) -regexp_const_value(#20039,".") -#20041=* -regexpterm(#20041,14,#20019,4,"o") -#20042=@"loc,{#10000},1,17,1,17" -locations_default(#20042,#10000,1,17,1,17) -hasLocation(#20041,#20042) -regexp_const_value(#20041,"o") -#20043=* -regexpterm(#20043,10,#20019,5,"(ffice)?") -#20044=@"loc,{#10000},1,18,1,25" -locations_default(#20044,#10000,1,18,1,25) -hasLocation(#20043,#20044) -is_greedy(#20043) -#20045=* -regexpterm(#20045,13,#20043,0,"(ffice)") -#20046=@"loc,{#10000},1,18,1,24" -locations_default(#20046,#10000,1,18,1,24) -hasLocation(#20045,#20046) -is_capture(#20045,2) -#20047=* -regexpterm(#20047,14,#20045,0,"ffice") -#20048=@"loc,{#10000},1,19,1,23" -locations_default(#20048,#10000,1,19,1,23) -hasLocation(#20047,#20048) -regexp_const_value(#20047,"ffice") -#20049=* -regexpterm(#20049,8,#20019,6,"[ |\.]*") -#20050=@"loc,{#10000},1,26,1,32" -locations_default(#20050,#10000,1,26,1,32) -hasLocation(#20049,#20050) -is_greedy(#20049) -#20051=* -regexpterm(#20051,23,#20049,0,"[ |\.]") -#20052=@"loc,{#10000},1,26,1,31" -locations_default(#20052,#10000,1,26,1,31) -hasLocation(#20051,#20052) -#20053=* -regexpterm(#20053,14,#20051,0," ") -#20054=@"loc,{#10000},1,27,1,27" -locations_default(#20054,#10000,1,27,1,27) -hasLocation(#20053,#20054) -regexp_const_value(#20053," ") -#20055=* -regexpterm(#20055,14,#20051,1,"|") -#20056=@"loc,{#10000},1,28,1,28" -locations_default(#20056,#10000,1,28,1,28) -hasLocation(#20055,#20056) -regexp_const_value(#20055,"|") -#20057=* -regexpterm(#20057,21,#20051,2,"\.") -#20058=@"loc,{#10000},1,29,1,30" -locations_default(#20058,#10000,1,29,1,30) -hasLocation(#20057,#20058) -regexp_const_value(#20057,".") -#20059=* -regexpterm(#20059,10,#20019,7,"(box)?") -#20060=@"loc,{#10000},1,33,1,38" -locations_default(#20060,#10000,1,33,1,38) -hasLocation(#20059,#20060) -is_greedy(#20059) -#20061=* -regexpterm(#20061,13,#20059,0,"(box)") -#20062=@"loc,{#10000},1,33,1,37" -locations_default(#20062,#10000,1,33,1,37) -hasLocation(#20061,#20062) -is_capture(#20061,3) -#20063=* -regexpterm(#20063,14,#20061,0,"box") -#20064=@"loc,{#10000},1,34,1,36" -locations_default(#20064,#10000,1,34,1,36) -hasLocation(#20063,#20064) -regexp_const_value(#20063,"box") -#20065=* -regexpterm(#20065,8,#20019,8,"[ 0-9]*") -#20066=@"loc,{#10000},1,39,1,45" -locations_default(#20066,#10000,1,39,1,45) -hasLocation(#20065,#20066) -is_greedy(#20065) -#20067=* -regexpterm(#20067,23,#20065,0,"[ 0-9]") -#20068=@"loc,{#10000},1,39,1,44" -locations_default(#20068,#10000,1,39,1,44) -hasLocation(#20067,#20068) -#20069=* -regexpterm(#20069,14,#20067,0," ") -#20070=@"loc,{#10000},1,40,1,40" -locations_default(#20070,#10000,1,40,1,40) -hasLocation(#20069,#20070) -regexp_const_value(#20069," ") -#20071=* -regexpterm(#20071,24,#20067,1,"0-9") -#20072=@"loc,{#10000},1,41,1,43" -locations_default(#20072,#10000,1,41,1,43) -hasLocation(#20071,#20072) -#20073=* -regexpterm(#20073,14,#20071,0,"0") -#20074=@"loc,{#10000},1,41,1,41" -locations_default(#20074,#10000,1,41,1,41) -hasLocation(#20073,#20074) -regexp_const_value(#20073,"0") -#20075=* -regexpterm(#20075,14,#20071,1,"9") -#20076=@"loc,{#10000},1,43,1,43" -locations_default(#20076,#10000,1,43,1,43) -hasLocation(#20075,#20076) -regexp_const_value(#20075,"9") -#20077=* -regexpterm(#20077,23,#20019,9,"[^[a-z ]") -#20078=@"loc,{#10000},1,46,1,53" -locations_default(#20078,#10000,1,46,1,53) -hasLocation(#20077,#20078) -is_inverted(#20077) -#20079=* -regexpterm(#20079,14,#20077,0,"[") -#20080=@"loc,{#10000},1,48,1,48" -locations_default(#20080,#10000,1,48,1,48) -hasLocation(#20079,#20080) -regexp_const_value(#20079,"[") -#20081=* -regexpterm(#20081,24,#20077,1,"a-z") -#20082=@"loc,{#10000},1,49,1,51" -locations_default(#20082,#10000,1,49,1,51) -hasLocation(#20081,#20082) -#20083=* -regexpterm(#20083,14,#20081,0,"a") -#20084=@"loc,{#10000},1,49,1,49" -locations_default(#20084,#10000,1,49,1,49) -hasLocation(#20083,#20084) -regexp_const_value(#20083,"a") -#20085=* -regexpterm(#20085,14,#20081,1,"z") -#20086=@"loc,{#10000},1,51,1,51" -locations_default(#20086,#10000,1,51,1,51) -hasLocation(#20085,#20086) -regexp_const_value(#20085,"z") -#20087=* -regexpterm(#20087,14,#20077,2," ") -#20088=@"loc,{#10000},1,52,1,52" -locations_default(#20088,#10000,1,52,1,52) -hasLocation(#20087,#20088) -regexp_const_value(#20087," ") -#20089=* -regexpterm(#20089,8,#20019,10,"]*") -#20090=@"loc,{#10000},1,54,1,55" -locations_default(#20090,#10000,1,54,1,55) -hasLocation(#20089,#20090) -is_greedy(#20089) -#20091=* -regexpterm(#20091,14,#20089,0,"]") -#20092=@"loc,{#10000},1,54,1,54" -locations_default(#20092,#10000,1,54,1,54) -hasLocation(#20091,#20092) -regexp_const_value(#20091,"]") -#20093=* -regexp_parse_errors(#20093,#20019,"unexpected character") -hasLocation(#20093,#20092) +exprs(#20019,5,#20018,0,"/^p(ost ... z ]]*/g") +hasLocation(#20019,#20007) +enclosing_stmt(#20019,#20018) +expr_containers(#20019,#20001) +literals("/^p(ost)?[ |\.]*o(ffice)?[ |\.]*(box)?[ 0-9]*[^[a-z ]]*/g","/^p(ost)?[ |\.]*o(ffice)?[ |\.]*(box)?[ 0-9]*[^[a-z ]]*/g",#20019) +#20020=* +regexpterm(#20020,1,#20019,0,"^p(ost)?[ |\.]*o(ffice)?[ |\.]*(box)?[ 0-9]*[^[a-z ]]*") +#20021=@"loc,{#10000},1,2,1,55" +locations_default(#20021,#10000,1,2,1,55) +hasLocation(#20020,#20021) +#20022=* +regexpterm(#20022,2,#20020,0,"^") +#20023=@"loc,{#10000},1,2,1,2" +locations_default(#20023,#10000,1,2,1,2) +hasLocation(#20022,#20023) +#20024=* +regexpterm(#20024,14,#20020,1,"p") +#20025=@"loc,{#10000},1,3,1,3" +locations_default(#20025,#10000,1,3,1,3) +hasLocation(#20024,#20025) +regexp_const_value(#20024,"p") +#20026=* +regexpterm(#20026,10,#20020,2,"(ost)?") +#20027=@"loc,{#10000},1,4,1,9" +locations_default(#20027,#10000,1,4,1,9) +hasLocation(#20026,#20027) +is_greedy(#20026) +#20028=* +regexpterm(#20028,13,#20026,0,"(ost)") +#20029=@"loc,{#10000},1,4,1,8" +locations_default(#20029,#10000,1,4,1,8) +hasLocation(#20028,#20029) +is_capture(#20028,1) +#20030=* +regexpterm(#20030,14,#20028,0,"ost") +#20031=@"loc,{#10000},1,5,1,7" +locations_default(#20031,#10000,1,5,1,7) +hasLocation(#20030,#20031) +regexp_const_value(#20030,"ost") +#20032=* +regexpterm(#20032,8,#20020,3,"[ |\.]*") +#20033=@"loc,{#10000},1,10,1,16" +locations_default(#20033,#10000,1,10,1,16) +hasLocation(#20032,#20033) +is_greedy(#20032) +#20034=* +regexpterm(#20034,23,#20032,0,"[ |\.]") +#20035=@"loc,{#10000},1,10,1,15" +locations_default(#20035,#10000,1,10,1,15) +hasLocation(#20034,#20035) +#20036=* +regexpterm(#20036,14,#20034,0," ") +#20037=@"loc,{#10000},1,11,1,11" +locations_default(#20037,#10000,1,11,1,11) +hasLocation(#20036,#20037) +regexp_const_value(#20036," ") +#20038=* +regexpterm(#20038,14,#20034,1,"|") +#20039=@"loc,{#10000},1,12,1,12" +locations_default(#20039,#10000,1,12,1,12) +hasLocation(#20038,#20039) +regexp_const_value(#20038,"|") +#20040=* +regexpterm(#20040,21,#20034,2,"\.") +#20041=@"loc,{#10000},1,13,1,14" +locations_default(#20041,#10000,1,13,1,14) +hasLocation(#20040,#20041) +regexp_const_value(#20040,".") +#20042=* +regexpterm(#20042,14,#20020,4,"o") +#20043=@"loc,{#10000},1,17,1,17" +locations_default(#20043,#10000,1,17,1,17) +hasLocation(#20042,#20043) +regexp_const_value(#20042,"o") +#20044=* +regexpterm(#20044,10,#20020,5,"(ffice)?") +#20045=@"loc,{#10000},1,18,1,25" +locations_default(#20045,#10000,1,18,1,25) +hasLocation(#20044,#20045) +is_greedy(#20044) +#20046=* +regexpterm(#20046,13,#20044,0,"(ffice)") +#20047=@"loc,{#10000},1,18,1,24" +locations_default(#20047,#10000,1,18,1,24) +hasLocation(#20046,#20047) +is_capture(#20046,2) +#20048=* +regexpterm(#20048,14,#20046,0,"ffice") +#20049=@"loc,{#10000},1,19,1,23" +locations_default(#20049,#10000,1,19,1,23) +hasLocation(#20048,#20049) +regexp_const_value(#20048,"ffice") +#20050=* +regexpterm(#20050,8,#20020,6,"[ |\.]*") +#20051=@"loc,{#10000},1,26,1,32" +locations_default(#20051,#10000,1,26,1,32) +hasLocation(#20050,#20051) +is_greedy(#20050) +#20052=* +regexpterm(#20052,23,#20050,0,"[ |\.]") +#20053=@"loc,{#10000},1,26,1,31" +locations_default(#20053,#10000,1,26,1,31) +hasLocation(#20052,#20053) +#20054=* +regexpterm(#20054,14,#20052,0," ") +#20055=@"loc,{#10000},1,27,1,27" +locations_default(#20055,#10000,1,27,1,27) +hasLocation(#20054,#20055) +regexp_const_value(#20054," ") +#20056=* +regexpterm(#20056,14,#20052,1,"|") +#20057=@"loc,{#10000},1,28,1,28" +locations_default(#20057,#10000,1,28,1,28) +hasLocation(#20056,#20057) +regexp_const_value(#20056,"|") +#20058=* +regexpterm(#20058,21,#20052,2,"\.") +#20059=@"loc,{#10000},1,29,1,30" +locations_default(#20059,#10000,1,29,1,30) +hasLocation(#20058,#20059) +regexp_const_value(#20058,".") +#20060=* +regexpterm(#20060,10,#20020,7,"(box)?") +#20061=@"loc,{#10000},1,33,1,38" +locations_default(#20061,#10000,1,33,1,38) +hasLocation(#20060,#20061) +is_greedy(#20060) +#20062=* +regexpterm(#20062,13,#20060,0,"(box)") +#20063=@"loc,{#10000},1,33,1,37" +locations_default(#20063,#10000,1,33,1,37) +hasLocation(#20062,#20063) +is_capture(#20062,3) +#20064=* +regexpterm(#20064,14,#20062,0,"box") +#20065=@"loc,{#10000},1,34,1,36" +locations_default(#20065,#10000,1,34,1,36) +hasLocation(#20064,#20065) +regexp_const_value(#20064,"box") +#20066=* +regexpterm(#20066,8,#20020,8,"[ 0-9]*") +#20067=@"loc,{#10000},1,39,1,45" +locations_default(#20067,#10000,1,39,1,45) +hasLocation(#20066,#20067) +is_greedy(#20066) +#20068=* +regexpterm(#20068,23,#20066,0,"[ 0-9]") +#20069=@"loc,{#10000},1,39,1,44" +locations_default(#20069,#10000,1,39,1,44) +hasLocation(#20068,#20069) +#20070=* +regexpterm(#20070,14,#20068,0," ") +#20071=@"loc,{#10000},1,40,1,40" +locations_default(#20071,#10000,1,40,1,40) +hasLocation(#20070,#20071) +regexp_const_value(#20070," ") +#20072=* +regexpterm(#20072,24,#20068,1,"0-9") +#20073=@"loc,{#10000},1,41,1,43" +locations_default(#20073,#10000,1,41,1,43) +hasLocation(#20072,#20073) +#20074=* +regexpterm(#20074,14,#20072,0,"0") +#20075=@"loc,{#10000},1,41,1,41" +locations_default(#20075,#10000,1,41,1,41) +hasLocation(#20074,#20075) +regexp_const_value(#20074,"0") +#20076=* +regexpterm(#20076,14,#20072,1,"9") +#20077=@"loc,{#10000},1,43,1,43" +locations_default(#20077,#10000,1,43,1,43) +hasLocation(#20076,#20077) +regexp_const_value(#20076,"9") +#20078=* +regexpterm(#20078,23,#20020,9,"[^[a-z ]") +#20079=@"loc,{#10000},1,46,1,53" +locations_default(#20079,#10000,1,46,1,53) +hasLocation(#20078,#20079) +is_inverted(#20078) +#20080=* +regexpterm(#20080,14,#20078,0,"[") +#20081=@"loc,{#10000},1,48,1,48" +locations_default(#20081,#10000,1,48,1,48) +hasLocation(#20080,#20081) +regexp_const_value(#20080,"[") +#20082=* +regexpterm(#20082,24,#20078,1,"a-z") +#20083=@"loc,{#10000},1,49,1,51" +locations_default(#20083,#10000,1,49,1,51) +hasLocation(#20082,#20083) +#20084=* +regexpterm(#20084,14,#20082,0,"a") +#20085=@"loc,{#10000},1,49,1,49" +locations_default(#20085,#10000,1,49,1,49) +hasLocation(#20084,#20085) +regexp_const_value(#20084,"a") +#20086=* +regexpterm(#20086,14,#20082,1,"z") +#20087=@"loc,{#10000},1,51,1,51" +locations_default(#20087,#10000,1,51,1,51) +hasLocation(#20086,#20087) +regexp_const_value(#20086,"z") +#20088=* +regexpterm(#20088,14,#20078,2," ") +#20089=@"loc,{#10000},1,52,1,52" +locations_default(#20089,#10000,1,52,1,52) +hasLocation(#20088,#20089) +regexp_const_value(#20088," ") +#20090=* +regexpterm(#20090,8,#20020,10,"]*") +#20091=@"loc,{#10000},1,54,1,55" +locations_default(#20091,#10000,1,54,1,55) +hasLocation(#20090,#20091) +is_greedy(#20090) +#20092=* +regexpterm(#20092,14,#20090,0,"]") +#20093=@"loc,{#10000},1,54,1,54" +locations_default(#20093,#10000,1,54,1,54) +hasLocation(#20092,#20093) +regexp_const_value(#20092,"]") #20094=* -stmts(#20094,2,#20001,1,"/([ ]*[ ... ]+)+X/;") -hasLocation(#20094,#20005) -stmt_containers(#20094,#20001) +regexp_parse_errors(#20094,#20020,"unexpected character") +hasLocation(#20094,#20093) #20095=* -exprs(#20095,5,#20094,0,"/([ ]*[ ... -]+)+X/") -hasLocation(#20095,#20011) -enclosing_stmt(#20095,#20094) -expr_containers(#20095,#20001) -literals("/([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)+X/","/([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)+X/",#20095) +stmts(#20095,2,#20001,1,"/([ ]*[ ... ]+)+X/;") +hasLocation(#20095,#20005) +stmt_containers(#20095,#20001) #20096=* -regexpterm(#20096,1,#20095,0,"([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)+X") -#20097=@"loc,{#10000},2,2,2,45" -locations_default(#20097,#10000,2,2,2,45) -hasLocation(#20096,#20097) -#20098=* -regexpterm(#20098,9,#20096,0,"([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)+") -#20099=@"loc,{#10000},2,2,2,44" -locations_default(#20099,#10000,2,2,2,44) -hasLocation(#20098,#20099) -is_greedy(#20098) -#20100=* -regexpterm(#20100,13,#20098,0,"([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)") -#20101=@"loc,{#10000},2,2,2,43" -locations_default(#20101,#10000,2,2,2,43) -hasLocation(#20100,#20101) -is_capture(#20100,1) -#20102=* -regexpterm(#20102,1,#20100,0,"[ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+") -#20103=@"loc,{#10000},2,3,2,42" -locations_default(#20103,#10000,2,3,2,42) -hasLocation(#20102,#20103) -#20104=* -regexpterm(#20104,8,#20102,0,"[ ]*") -#20105=@"loc,{#10000},2,3,2,6" -locations_default(#20105,#10000,2,3,2,6) -hasLocation(#20104,#20105) -is_greedy(#20104) -#20106=* -regexpterm(#20106,23,#20104,0,"[ ]") -#20107=@"loc,{#10000},2,3,2,5" -locations_default(#20107,#10000,2,3,2,5) -hasLocation(#20106,#20107) -#20108=* -regexpterm(#20108,14,#20106,0," ") -#20109=@"loc,{#10000},2,4,2,4" -locations_default(#20109,#10000,2,4,2,4) -hasLocation(#20108,#20109) -regexp_const_value(#20108," ") -#20110=* -regexpterm(#20110,9,#20102,1,"[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+") -#20111=@"loc,{#10000},2,7,2,42" -locations_default(#20111,#10000,2,7,2,42) -hasLocation(#20110,#20111) -is_greedy(#20110) -#20112=* -regexpterm(#20112,23,#20110,0,"[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]") -#20113=@"loc,{#10000},2,7,2,41" -locations_default(#20113,#10000,2,7,2,41) -hasLocation(#20112,#20113) -#20114=* -regexpterm(#20114,24,#20112,0,"a-z") -#20115=@"loc,{#10000},2,8,2,10" -locations_default(#20115,#10000,2,8,2,10) -hasLocation(#20114,#20115) -#20116=* -regexpterm(#20116,14,#20114,0,"a") -#20117=@"loc,{#10000},2,8,2,8" -locations_default(#20117,#10000,2,8,2,8) -hasLocation(#20116,#20117) -regexp_const_value(#20116,"a") -#20118=* -regexpterm(#20118,14,#20114,1,"z") -#20119=@"loc,{#10000},2,10,2,10" -locations_default(#20119,#10000,2,10,2,10) -hasLocation(#20118,#20119) -regexp_const_value(#20118,"z") -#20120=* -regexpterm(#20120,24,#20112,1,"0-9") -#20121=@"loc,{#10000},2,11,2,13" -locations_default(#20121,#10000,2,11,2,13) -hasLocation(#20120,#20121) -#20122=* -regexpterm(#20122,14,#20120,0,"0") -#20123=@"loc,{#10000},2,11,2,11" -locations_default(#20123,#10000,2,11,2,11) -hasLocation(#20122,#20123) -regexp_const_value(#20122,"0") -#20124=* -regexpterm(#20124,14,#20120,1,"9") -#20125=@"loc,{#10000},2,13,2,13" -locations_default(#20125,#10000,2,13,2,13) -hasLocation(#20124,#20125) -regexp_const_value(#20124,"9") -#20126=* -regexpterm(#20126,14,#20112,2,"&") -#20127=@"loc,{#10000},2,14,2,14" -locations_default(#20127,#10000,2,14,2,14) -hasLocation(#20126,#20127) -regexp_const_value(#20126,"&") -#20128=* -regexpterm(#20128,14,#20112,3,"#") -#20129=@"loc,{#10000},2,15,2,15" -locations_default(#20129,#10000,2,15,2,15) -hasLocation(#20128,#20129) -regexp_const_value(#20128,"#") -#20130=* -regexpterm(#20130,14,#20112,4,"*") -#20131=@"loc,{#10000},2,16,2,16" -locations_default(#20131,#10000,2,16,2,16) -hasLocation(#20130,#20131) -regexp_const_value(#20130,"*") -#20132=* -regexpterm(#20132,14,#20112,5,"=") -#20133=@"loc,{#10000},2,17,2,17" -locations_default(#20133,#10000,2,17,2,17) -hasLocation(#20132,#20133) -regexp_const_value(#20132,"=") -#20134=* -regexpterm(#20134,14,#20112,6,"?") -#20135=@"loc,{#10000},2,18,2,18" -locations_default(#20135,#10000,2,18,2,18) -hasLocation(#20134,#20135) -regexp_const_value(#20134,"?") -#20136=* -regexpterm(#20136,14,#20112,7,"@") -#20137=@"loc,{#10000},2,19,2,19" -locations_default(#20137,#10000,2,19,2,19) -hasLocation(#20136,#20137) -regexp_const_value(#20136,"@") -#20138=* -regexpterm(#20138,21,#20112,8,"\\") -#20139=@"loc,{#10000},2,20,2,21" -locations_default(#20139,#10000,2,20,2,21) -hasLocation(#20138,#20139) -regexp_const_value(#20138,"\") -#20140=* -regexpterm(#20140,14,#20112,9,">") -#20141=@"loc,{#10000},2,22,2,22" -locations_default(#20141,#10000,2,22,2,22) -hasLocation(#20140,#20141) -regexp_const_value(#20140,">") -#20142=* -regexpterm(#20142,14,#20112,10,"<") -#20143=@"loc,{#10000},2,23,2,23" -locations_default(#20143,#10000,2,23,2,23) -hasLocation(#20142,#20143) -regexp_const_value(#20142,"<") -#20144=* -regexpterm(#20144,14,#20112,11,":") -#20145=@"loc,{#10000},2,24,2,24" -locations_default(#20145,#10000,2,24,2,24) -hasLocation(#20144,#20145) -regexp_const_value(#20144,":") -#20146=* -regexpterm(#20146,14,#20112,12,",") -#20147=@"loc,{#10000},2,25,2,25" -locations_default(#20147,#10000,2,25,2,25) -hasLocation(#20146,#20147) -regexp_const_value(#20146,",") -#20148=* -regexpterm(#20148,14,#20112,13,"(") -#20149=@"loc,{#10000},2,26,2,26" -locations_default(#20149,#10000,2,26,2,26) -hasLocation(#20148,#20149) -regexp_const_value(#20148,"(") -#20150=* -regexpterm(#20150,14,#20112,14,")") -#20151=@"loc,{#10000},2,27,2,27" -locations_default(#20151,#10000,2,27,2,27) -hasLocation(#20150,#20151) -regexp_const_value(#20150,")") -#20152=* -regexpterm(#20152,14,#20112,15,"$") -#20153=@"loc,{#10000},2,28,2,28" -locations_default(#20153,#10000,2,28,2,28) -hasLocation(#20152,#20153) -regexp_const_value(#20152,"$") -#20154=* -regexpterm(#20154,14,#20112,16,"[") -#20155=@"loc,{#10000},2,29,2,29" -locations_default(#20155,#10000,2,29,2,29) -hasLocation(#20154,#20155) -regexp_const_value(#20154,"[") -#20156=* -regexpterm(#20156,21,#20112,17,"\]") -#20157=@"loc,{#10000},2,30,2,31" -locations_default(#20157,#10000,2,30,2,31) -hasLocation(#20156,#20157) -regexp_const_value(#20156,"]") -#20158=* -regexpterm(#20158,14,#20112,18,"_") -#20159=@"loc,{#10000},2,32,2,32" -locations_default(#20159,#10000,2,32,2,32) -hasLocation(#20158,#20159) -regexp_const_value(#20158,"_") -#20160=* -regexpterm(#20160,14,#20112,19,".") -#20161=@"loc,{#10000},2,33,2,33" -locations_default(#20161,#10000,2,33,2,33) -hasLocation(#20160,#20161) -regexp_const_value(#20160,".") -#20162=* -regexpterm(#20162,14,#20112,20,"{") -#20163=@"loc,{#10000},2,34,2,34" -locations_default(#20163,#10000,2,34,2,34) -hasLocation(#20162,#20163) -regexp_const_value(#20162,"{") -#20164=* -regexpterm(#20164,14,#20112,21,"}") -#20165=@"loc,{#10000},2,35,2,35" -locations_default(#20165,#10000,2,35,2,35) -hasLocation(#20164,#20165) -regexp_const_value(#20164,"}") -#20166=* -regexpterm(#20166,14,#20112,22,"!") -#20167=@"loc,{#10000},2,36,2,36" -locations_default(#20167,#10000,2,36,2,36) -hasLocation(#20166,#20167) -regexp_const_value(#20166,"!") -#20168=* -regexpterm(#20168,14,#20112,23,"+") -#20169=@"loc,{#10000},2,37,2,37" -locations_default(#20169,#10000,2,37,2,37) -hasLocation(#20168,#20169) -regexp_const_value(#20168,"+") -#20170=* -regexpterm(#20170,14,#20112,24,"%") -#20171=@"loc,{#10000},2,38,2,38" -locations_default(#20171,#10000,2,38,2,38) -hasLocation(#20170,#20171) -regexp_const_value(#20170,"%") -#20172=* -regexpterm(#20172,14,#20112,25,"^") -#20173=@"loc,{#10000},2,39,2,39" -locations_default(#20173,#10000,2,39,2,39) -hasLocation(#20172,#20173) -regexp_const_value(#20172,"^") -#20174=* -regexpterm(#20174,14,#20112,26,"-") -#20175=@"loc,{#10000},2,40,2,40" -locations_default(#20175,#10000,2,40,2,40) -hasLocation(#20174,#20175) -regexp_const_value(#20174,"-") -#20176=* -regexpterm(#20176,14,#20096,1,"X") -#20177=@"loc,{#10000},2,45,2,45" -locations_default(#20177,#10000,2,45,2,45) -hasLocation(#20176,#20177) -regexp_const_value(#20176,"X") -#20178=* -entry_cfg_node(#20178,#20001) -#20179=@"loc,{#10000},1,1,1,0" -locations_default(#20179,#10000,1,1,1,0) -hasLocation(#20178,#20179) -#20180=* -exit_cfg_node(#20180,#20001) -hasLocation(#20180,#20015) -successor(#20094,#20095) -successor(#20095,#20180) -successor(#20017,#20018) -successor(#20018,#20094) -successor(#20178,#20017) +exprs(#20096,5,#20095,0,"/([ ]*[ ... -]+)+X/") +hasLocation(#20096,#20011) +enclosing_stmt(#20096,#20095) +expr_containers(#20096,#20001) +literals("/([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)+X/","/([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)+X/",#20096) +#20097=* +regexpterm(#20097,1,#20096,0,"([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)+X") +#20098=@"loc,{#10000},2,2,2,45" +locations_default(#20098,#10000,2,2,2,45) +hasLocation(#20097,#20098) +#20099=* +regexpterm(#20099,9,#20097,0,"([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)+") +#20100=@"loc,{#10000},2,2,2,44" +locations_default(#20100,#10000,2,2,2,44) +hasLocation(#20099,#20100) +is_greedy(#20099) +#20101=* +regexpterm(#20101,13,#20099,0,"([ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+)") +#20102=@"loc,{#10000},2,2,2,43" +locations_default(#20102,#10000,2,2,2,43) +hasLocation(#20101,#20102) +is_capture(#20101,1) +#20103=* +regexpterm(#20103,1,#20101,0,"[ ]*[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+") +#20104=@"loc,{#10000},2,3,2,42" +locations_default(#20104,#10000,2,3,2,42) +hasLocation(#20103,#20104) +#20105=* +regexpterm(#20105,8,#20103,0,"[ ]*") +#20106=@"loc,{#10000},2,3,2,6" +locations_default(#20106,#10000,2,3,2,6) +hasLocation(#20105,#20106) +is_greedy(#20105) +#20107=* +regexpterm(#20107,23,#20105,0,"[ ]") +#20108=@"loc,{#10000},2,3,2,5" +locations_default(#20108,#10000,2,3,2,5) +hasLocation(#20107,#20108) +#20109=* +regexpterm(#20109,14,#20107,0," ") +#20110=@"loc,{#10000},2,4,2,4" +locations_default(#20110,#10000,2,4,2,4) +hasLocation(#20109,#20110) +regexp_const_value(#20109," ") +#20111=* +regexpterm(#20111,9,#20103,1,"[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+") +#20112=@"loc,{#10000},2,7,2,42" +locations_default(#20112,#10000,2,7,2,42) +hasLocation(#20111,#20112) +is_greedy(#20111) +#20113=* +regexpterm(#20113,23,#20111,0,"[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]") +#20114=@"loc,{#10000},2,7,2,41" +locations_default(#20114,#10000,2,7,2,41) +hasLocation(#20113,#20114) +#20115=* +regexpterm(#20115,24,#20113,0,"a-z") +#20116=@"loc,{#10000},2,8,2,10" +locations_default(#20116,#10000,2,8,2,10) +hasLocation(#20115,#20116) +#20117=* +regexpterm(#20117,14,#20115,0,"a") +#20118=@"loc,{#10000},2,8,2,8" +locations_default(#20118,#10000,2,8,2,8) +hasLocation(#20117,#20118) +regexp_const_value(#20117,"a") +#20119=* +regexpterm(#20119,14,#20115,1,"z") +#20120=@"loc,{#10000},2,10,2,10" +locations_default(#20120,#10000,2,10,2,10) +hasLocation(#20119,#20120) +regexp_const_value(#20119,"z") +#20121=* +regexpterm(#20121,24,#20113,1,"0-9") +#20122=@"loc,{#10000},2,11,2,13" +locations_default(#20122,#10000,2,11,2,13) +hasLocation(#20121,#20122) +#20123=* +regexpterm(#20123,14,#20121,0,"0") +#20124=@"loc,{#10000},2,11,2,11" +locations_default(#20124,#10000,2,11,2,11) +hasLocation(#20123,#20124) +regexp_const_value(#20123,"0") +#20125=* +regexpterm(#20125,14,#20121,1,"9") +#20126=@"loc,{#10000},2,13,2,13" +locations_default(#20126,#10000,2,13,2,13) +hasLocation(#20125,#20126) +regexp_const_value(#20125,"9") +#20127=* +regexpterm(#20127,14,#20113,2,"&") +#20128=@"loc,{#10000},2,14,2,14" +locations_default(#20128,#10000,2,14,2,14) +hasLocation(#20127,#20128) +regexp_const_value(#20127,"&") +#20129=* +regexpterm(#20129,14,#20113,3,"#") +#20130=@"loc,{#10000},2,15,2,15" +locations_default(#20130,#10000,2,15,2,15) +hasLocation(#20129,#20130) +regexp_const_value(#20129,"#") +#20131=* +regexpterm(#20131,14,#20113,4,"*") +#20132=@"loc,{#10000},2,16,2,16" +locations_default(#20132,#10000,2,16,2,16) +hasLocation(#20131,#20132) +regexp_const_value(#20131,"*") +#20133=* +regexpterm(#20133,14,#20113,5,"=") +#20134=@"loc,{#10000},2,17,2,17" +locations_default(#20134,#10000,2,17,2,17) +hasLocation(#20133,#20134) +regexp_const_value(#20133,"=") +#20135=* +regexpterm(#20135,14,#20113,6,"?") +#20136=@"loc,{#10000},2,18,2,18" +locations_default(#20136,#10000,2,18,2,18) +hasLocation(#20135,#20136) +regexp_const_value(#20135,"?") +#20137=* +regexpterm(#20137,14,#20113,7,"@") +#20138=@"loc,{#10000},2,19,2,19" +locations_default(#20138,#10000,2,19,2,19) +hasLocation(#20137,#20138) +regexp_const_value(#20137,"@") +#20139=* +regexpterm(#20139,21,#20113,8,"\\") +#20140=@"loc,{#10000},2,20,2,21" +locations_default(#20140,#10000,2,20,2,21) +hasLocation(#20139,#20140) +regexp_const_value(#20139,"\") +#20141=* +regexpterm(#20141,14,#20113,9,">") +#20142=@"loc,{#10000},2,22,2,22" +locations_default(#20142,#10000,2,22,2,22) +hasLocation(#20141,#20142) +regexp_const_value(#20141,">") +#20143=* +regexpterm(#20143,14,#20113,10,"<") +#20144=@"loc,{#10000},2,23,2,23" +locations_default(#20144,#10000,2,23,2,23) +hasLocation(#20143,#20144) +regexp_const_value(#20143,"<") +#20145=* +regexpterm(#20145,14,#20113,11,":") +#20146=@"loc,{#10000},2,24,2,24" +locations_default(#20146,#10000,2,24,2,24) +hasLocation(#20145,#20146) +regexp_const_value(#20145,":") +#20147=* +regexpterm(#20147,14,#20113,12,",") +#20148=@"loc,{#10000},2,25,2,25" +locations_default(#20148,#10000,2,25,2,25) +hasLocation(#20147,#20148) +regexp_const_value(#20147,",") +#20149=* +regexpterm(#20149,14,#20113,13,"(") +#20150=@"loc,{#10000},2,26,2,26" +locations_default(#20150,#10000,2,26,2,26) +hasLocation(#20149,#20150) +regexp_const_value(#20149,"(") +#20151=* +regexpterm(#20151,14,#20113,14,")") +#20152=@"loc,{#10000},2,27,2,27" +locations_default(#20152,#10000,2,27,2,27) +hasLocation(#20151,#20152) +regexp_const_value(#20151,")") +#20153=* +regexpterm(#20153,14,#20113,15,"$") +#20154=@"loc,{#10000},2,28,2,28" +locations_default(#20154,#10000,2,28,2,28) +hasLocation(#20153,#20154) +regexp_const_value(#20153,"$") +#20155=* +regexpterm(#20155,14,#20113,16,"[") +#20156=@"loc,{#10000},2,29,2,29" +locations_default(#20156,#10000,2,29,2,29) +hasLocation(#20155,#20156) +regexp_const_value(#20155,"[") +#20157=* +regexpterm(#20157,21,#20113,17,"\]") +#20158=@"loc,{#10000},2,30,2,31" +locations_default(#20158,#10000,2,30,2,31) +hasLocation(#20157,#20158) +regexp_const_value(#20157,"]") +#20159=* +regexpterm(#20159,14,#20113,18,"_") +#20160=@"loc,{#10000},2,32,2,32" +locations_default(#20160,#10000,2,32,2,32) +hasLocation(#20159,#20160) +regexp_const_value(#20159,"_") +#20161=* +regexpterm(#20161,14,#20113,19,".") +#20162=@"loc,{#10000},2,33,2,33" +locations_default(#20162,#10000,2,33,2,33) +hasLocation(#20161,#20162) +regexp_const_value(#20161,".") +#20163=* +regexpterm(#20163,14,#20113,20,"{") +#20164=@"loc,{#10000},2,34,2,34" +locations_default(#20164,#10000,2,34,2,34) +hasLocation(#20163,#20164) +regexp_const_value(#20163,"{") +#20165=* +regexpterm(#20165,14,#20113,21,"}") +#20166=@"loc,{#10000},2,35,2,35" +locations_default(#20166,#10000,2,35,2,35) +hasLocation(#20165,#20166) +regexp_const_value(#20165,"}") +#20167=* +regexpterm(#20167,14,#20113,22,"!") +#20168=@"loc,{#10000},2,36,2,36" +locations_default(#20168,#10000,2,36,2,36) +hasLocation(#20167,#20168) +regexp_const_value(#20167,"!") +#20169=* +regexpterm(#20169,14,#20113,23,"+") +#20170=@"loc,{#10000},2,37,2,37" +locations_default(#20170,#10000,2,37,2,37) +hasLocation(#20169,#20170) +regexp_const_value(#20169,"+") +#20171=* +regexpterm(#20171,14,#20113,24,"%") +#20172=@"loc,{#10000},2,38,2,38" +locations_default(#20172,#10000,2,38,2,38) +hasLocation(#20171,#20172) +regexp_const_value(#20171,"%") +#20173=* +regexpterm(#20173,14,#20113,25,"^") +#20174=@"loc,{#10000},2,39,2,39" +locations_default(#20174,#10000,2,39,2,39) +hasLocation(#20173,#20174) +regexp_const_value(#20173,"^") +#20175=* +regexpterm(#20175,14,#20113,26,"-") +#20176=@"loc,{#10000},2,40,2,40" +locations_default(#20176,#10000,2,40,2,40) +hasLocation(#20175,#20176) +regexp_const_value(#20175,"-") +#20177=* +regexpterm(#20177,14,#20097,1,"X") +#20178=@"loc,{#10000},2,45,2,45" +locations_default(#20178,#10000,2,45,2,45) +hasLocation(#20177,#20178) +regexp_const_value(#20177,"X") +#20179=* +entry_cfg_node(#20179,#20001) +#20180=@"loc,{#10000},1,1,1,0" +locations_default(#20180,#10000,1,1,1,0) +hasLocation(#20179,#20180) +#20181=* +exit_cfg_node(#20181,#20001) +hasLocation(#20181,#20015) +successor(#20095,#20096) +successor(#20096,#20181) +successor(#20018,#20019) +successor(#20019,#20095) +successor(#20179,#20018) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2024/output/trap/intersection.js.trap b/javascript/extractor/tests/es2024/output/trap/intersection.js.trap index a48eccb5a741..f1aec3ba2b59 100644 --- a/javascript/extractor/tests/es2024/output/trap/intersection.js.trap +++ b/javascript/extractor/tests/es2024/output/trap/intersection.js.trap @@ -146,252 +146,254 @@ toplevels(#20001,0) #20048=@"loc,{#10000},1,1,8,0" locations_default(#20048,#10000,1,1,8,0) hasLocation(#20001,#20048) -#20049=* -stmts(#20049,2,#20001,0,"/[[abc]&&[bcd]]/v;") -#20050=@"loc,{#10000},1,1,1,18" -locations_default(#20050,#10000,1,1,1,18) -hasLocation(#20049,#20050) -stmt_containers(#20049,#20001) -#20051=* -exprs(#20051,5,#20049,0,"/[[abc]&&[bcd]]/v") -hasLocation(#20051,#20031) -enclosing_stmt(#20051,#20049) -expr_containers(#20051,#20001) -literals("/[[abc]&&[bcd]]/v","/[[abc]&&[bcd]]/v",#20051) +#20049=@"var;{this};{#20000}" +variables(#20049,"this",#20000) +#20050=* +stmts(#20050,2,#20001,0,"/[[abc]&&[bcd]]/v;") +#20051=@"loc,{#10000},1,1,1,18" +locations_default(#20051,#10000,1,1,1,18) +hasLocation(#20050,#20051) +stmt_containers(#20050,#20001) #20052=* -regexpterm(#20052,23,#20051,0,"[[abc]&&[bcd]]") -#20053=@"loc,{#10000},1,2,1,15" -locations_default(#20053,#10000,1,2,1,15) -hasLocation(#20052,#20053) -#20054=* -regexpterm(#20054,29,#20052,0,"[[abc]&&[bcd]]") -hasLocation(#20054,#20053) +exprs(#20052,5,#20050,0,"/[[abc]&&[bcd]]/v") +hasLocation(#20052,#20031) +enclosing_stmt(#20052,#20050) +expr_containers(#20052,#20001) +literals("/[[abc]&&[bcd]]/v","/[[abc]&&[bcd]]/v",#20052) +#20053=* +regexpterm(#20053,23,#20052,0,"[[abc]&&[bcd]]") +#20054=@"loc,{#10000},1,2,1,15" +locations_default(#20054,#10000,1,2,1,15) +hasLocation(#20053,#20054) #20055=* -regexpterm(#20055,23,#20054,0,"[abc]") -#20056=@"loc,{#10000},1,3,1,7" -locations_default(#20056,#10000,1,3,1,7) -hasLocation(#20055,#20056) -#20057=* -regexpterm(#20057,14,#20055,0,"a") -#20058=@"loc,{#10000},1,4,1,4" -locations_default(#20058,#10000,1,4,1,4) -hasLocation(#20057,#20058) -regexp_const_value(#20057,"a") -#20059=* -regexpterm(#20059,14,#20055,1,"b") -#20060=@"loc,{#10000},1,5,1,5" -locations_default(#20060,#10000,1,5,1,5) -hasLocation(#20059,#20060) -regexp_const_value(#20059,"b") -#20061=* -regexpterm(#20061,14,#20055,2,"c") -#20062=@"loc,{#10000},1,6,1,6" -locations_default(#20062,#10000,1,6,1,6) -hasLocation(#20061,#20062) -regexp_const_value(#20061,"c") -#20063=* -regexpterm(#20063,23,#20054,1,"[bcd]") -#20064=@"loc,{#10000},1,10,1,14" -locations_default(#20064,#10000,1,10,1,14) -hasLocation(#20063,#20064) -#20065=* -regexpterm(#20065,14,#20063,0,"b") -#20066=@"loc,{#10000},1,11,1,11" -locations_default(#20066,#10000,1,11,1,11) -hasLocation(#20065,#20066) -regexp_const_value(#20065,"b") -#20067=* -regexpterm(#20067,14,#20063,1,"c") -#20068=@"loc,{#10000},1,12,1,12" -locations_default(#20068,#10000,1,12,1,12) -hasLocation(#20067,#20068) -regexp_const_value(#20067,"c") -#20069=* -regexpterm(#20069,14,#20063,2,"d") -#20070=@"loc,{#10000},1,13,1,13" -locations_default(#20070,#10000,1,13,1,13) -hasLocation(#20069,#20070) -regexp_const_value(#20069,"d") -#20071=* -stmts(#20071,2,#20001,1,"/abc&&bcd/v;") -#20072=@"loc,{#10000},2,1,2,12" -locations_default(#20072,#10000,2,1,2,12) -hasLocation(#20071,#20072) -stmt_containers(#20071,#20001) -#20073=* -exprs(#20073,5,#20071,0,"/abc&&bcd/v") -hasLocation(#20073,#20035) -enclosing_stmt(#20073,#20071) -expr_containers(#20073,#20001) -literals("/abc&&bcd/v","/abc&&bcd/v",#20073) +regexpterm(#20055,29,#20053,0,"[[abc]&&[bcd]]") +hasLocation(#20055,#20054) +#20056=* +regexpterm(#20056,23,#20055,0,"[abc]") +#20057=@"loc,{#10000},1,3,1,7" +locations_default(#20057,#10000,1,3,1,7) +hasLocation(#20056,#20057) +#20058=* +regexpterm(#20058,14,#20056,0,"a") +#20059=@"loc,{#10000},1,4,1,4" +locations_default(#20059,#10000,1,4,1,4) +hasLocation(#20058,#20059) +regexp_const_value(#20058,"a") +#20060=* +regexpterm(#20060,14,#20056,1,"b") +#20061=@"loc,{#10000},1,5,1,5" +locations_default(#20061,#10000,1,5,1,5) +hasLocation(#20060,#20061) +regexp_const_value(#20060,"b") +#20062=* +regexpterm(#20062,14,#20056,2,"c") +#20063=@"loc,{#10000},1,6,1,6" +locations_default(#20063,#10000,1,6,1,6) +hasLocation(#20062,#20063) +regexp_const_value(#20062,"c") +#20064=* +regexpterm(#20064,23,#20055,1,"[bcd]") +#20065=@"loc,{#10000},1,10,1,14" +locations_default(#20065,#10000,1,10,1,14) +hasLocation(#20064,#20065) +#20066=* +regexpterm(#20066,14,#20064,0,"b") +#20067=@"loc,{#10000},1,11,1,11" +locations_default(#20067,#10000,1,11,1,11) +hasLocation(#20066,#20067) +regexp_const_value(#20066,"b") +#20068=* +regexpterm(#20068,14,#20064,1,"c") +#20069=@"loc,{#10000},1,12,1,12" +locations_default(#20069,#10000,1,12,1,12) +hasLocation(#20068,#20069) +regexp_const_value(#20068,"c") +#20070=* +regexpterm(#20070,14,#20064,2,"d") +#20071=@"loc,{#10000},1,13,1,13" +locations_default(#20071,#10000,1,13,1,13) +hasLocation(#20070,#20071) +regexp_const_value(#20070,"d") +#20072=* +stmts(#20072,2,#20001,1,"/abc&&bcd/v;") +#20073=@"loc,{#10000},2,1,2,12" +locations_default(#20073,#10000,2,1,2,12) +hasLocation(#20072,#20073) +stmt_containers(#20072,#20001) #20074=* -regexpterm(#20074,14,#20073,0,"abc&&bcd") -#20075=@"loc,{#10000},2,2,2,9" -locations_default(#20075,#10000,2,2,2,9) -hasLocation(#20074,#20075) -regexp_const_value(#20074,"abc&&bcd") -#20076=* -stmts(#20076,2,#20001,2,"/[abc]&&[bcd]/v;") -#20077=@"loc,{#10000},3,1,3,16" -locations_default(#20077,#10000,3,1,3,16) -hasLocation(#20076,#20077) -stmt_containers(#20076,#20001) -#20078=* -exprs(#20078,5,#20076,0,"/[abc]&&[bcd]/v") -hasLocation(#20078,#20039) -enclosing_stmt(#20078,#20076) -expr_containers(#20078,#20001) -literals("/[abc]&&[bcd]/v","/[abc]&&[bcd]/v",#20078) +exprs(#20074,5,#20072,0,"/abc&&bcd/v") +hasLocation(#20074,#20035) +enclosing_stmt(#20074,#20072) +expr_containers(#20074,#20001) +literals("/abc&&bcd/v","/abc&&bcd/v",#20074) +#20075=* +regexpterm(#20075,14,#20074,0,"abc&&bcd") +#20076=@"loc,{#10000},2,2,2,9" +locations_default(#20076,#10000,2,2,2,9) +hasLocation(#20075,#20076) +regexp_const_value(#20075,"abc&&bcd") +#20077=* +stmts(#20077,2,#20001,2,"/[abc]&&[bcd]/v;") +#20078=@"loc,{#10000},3,1,3,16" +locations_default(#20078,#10000,3,1,3,16) +hasLocation(#20077,#20078) +stmt_containers(#20077,#20001) #20079=* -regexpterm(#20079,1,#20078,0,"[abc]&&[bcd]") -#20080=@"loc,{#10000},3,2,3,13" -locations_default(#20080,#10000,3,2,3,13) -hasLocation(#20079,#20080) -#20081=* -regexpterm(#20081,23,#20079,0,"[abc]") -#20082=@"loc,{#10000},3,2,3,6" -locations_default(#20082,#10000,3,2,3,6) -hasLocation(#20081,#20082) -#20083=* -regexpterm(#20083,14,#20081,0,"a") -#20084=@"loc,{#10000},3,3,3,3" -locations_default(#20084,#10000,3,3,3,3) -hasLocation(#20083,#20084) -regexp_const_value(#20083,"a") -#20085=* -regexpterm(#20085,14,#20081,1,"b") -#20086=@"loc,{#10000},3,4,3,4" -locations_default(#20086,#10000,3,4,3,4) -hasLocation(#20085,#20086) -regexp_const_value(#20085,"b") -#20087=* -regexpterm(#20087,14,#20081,2,"c") -#20088=@"loc,{#10000},3,5,3,5" -locations_default(#20088,#10000,3,5,3,5) -hasLocation(#20087,#20088) -regexp_const_value(#20087,"c") -#20089=* -regexpterm(#20089,14,#20079,1,"&&") -#20090=@"loc,{#10000},3,7,3,8" -locations_default(#20090,#10000,3,7,3,8) -hasLocation(#20089,#20090) -regexp_const_value(#20089,"&&") -#20091=* -regexpterm(#20091,23,#20079,2,"[bcd]") -#20092=@"loc,{#10000},3,9,3,13" -locations_default(#20092,#10000,3,9,3,13) -hasLocation(#20091,#20092) -#20093=* -regexpterm(#20093,14,#20091,0,"b") -#20094=@"loc,{#10000},3,10,3,10" -locations_default(#20094,#10000,3,10,3,10) -hasLocation(#20093,#20094) -regexp_const_value(#20093,"b") -#20095=* -regexpterm(#20095,14,#20091,1,"c") -#20096=@"loc,{#10000},3,11,3,11" -locations_default(#20096,#10000,3,11,3,11) -hasLocation(#20095,#20096) -regexp_const_value(#20095,"c") -#20097=* -regexpterm(#20097,14,#20091,2,"d") -#20098=@"loc,{#10000},3,12,3,12" -locations_default(#20098,#10000,3,12,3,12) -hasLocation(#20097,#20098) -regexp_const_value(#20097,"d") -#20099=* -stmts(#20099,2,#20001,3,"/[[abc] ... [c]]/v;") -#20100=@"loc,{#10000},7,1,7,23" -locations_default(#20100,#10000,7,1,7,23) -hasLocation(#20099,#20100) -stmt_containers(#20099,#20001) -#20101=* -exprs(#20101,5,#20099,0,"/[[abc] ... &[c]]/v") -hasLocation(#20101,#20043) -enclosing_stmt(#20101,#20099) -expr_containers(#20101,#20001) -literals("/[[abc]&&[bcd]&&[c]]/v","/[[abc]&&[bcd]&&[c]]/v",#20101) +exprs(#20079,5,#20077,0,"/[abc]&&[bcd]/v") +hasLocation(#20079,#20039) +enclosing_stmt(#20079,#20077) +expr_containers(#20079,#20001) +literals("/[abc]&&[bcd]/v","/[abc]&&[bcd]/v",#20079) +#20080=* +regexpterm(#20080,1,#20079,0,"[abc]&&[bcd]") +#20081=@"loc,{#10000},3,2,3,13" +locations_default(#20081,#10000,3,2,3,13) +hasLocation(#20080,#20081) +#20082=* +regexpterm(#20082,23,#20080,0,"[abc]") +#20083=@"loc,{#10000},3,2,3,6" +locations_default(#20083,#10000,3,2,3,6) +hasLocation(#20082,#20083) +#20084=* +regexpterm(#20084,14,#20082,0,"a") +#20085=@"loc,{#10000},3,3,3,3" +locations_default(#20085,#10000,3,3,3,3) +hasLocation(#20084,#20085) +regexp_const_value(#20084,"a") +#20086=* +regexpterm(#20086,14,#20082,1,"b") +#20087=@"loc,{#10000},3,4,3,4" +locations_default(#20087,#10000,3,4,3,4) +hasLocation(#20086,#20087) +regexp_const_value(#20086,"b") +#20088=* +regexpterm(#20088,14,#20082,2,"c") +#20089=@"loc,{#10000},3,5,3,5" +locations_default(#20089,#10000,3,5,3,5) +hasLocation(#20088,#20089) +regexp_const_value(#20088,"c") +#20090=* +regexpterm(#20090,14,#20080,1,"&&") +#20091=@"loc,{#10000},3,7,3,8" +locations_default(#20091,#10000,3,7,3,8) +hasLocation(#20090,#20091) +regexp_const_value(#20090,"&&") +#20092=* +regexpterm(#20092,23,#20080,2,"[bcd]") +#20093=@"loc,{#10000},3,9,3,13" +locations_default(#20093,#10000,3,9,3,13) +hasLocation(#20092,#20093) +#20094=* +regexpterm(#20094,14,#20092,0,"b") +#20095=@"loc,{#10000},3,10,3,10" +locations_default(#20095,#10000,3,10,3,10) +hasLocation(#20094,#20095) +regexp_const_value(#20094,"b") +#20096=* +regexpterm(#20096,14,#20092,1,"c") +#20097=@"loc,{#10000},3,11,3,11" +locations_default(#20097,#10000,3,11,3,11) +hasLocation(#20096,#20097) +regexp_const_value(#20096,"c") +#20098=* +regexpterm(#20098,14,#20092,2,"d") +#20099=@"loc,{#10000},3,12,3,12" +locations_default(#20099,#10000,3,12,3,12) +hasLocation(#20098,#20099) +regexp_const_value(#20098,"d") +#20100=* +stmts(#20100,2,#20001,3,"/[[abc] ... [c]]/v;") +#20101=@"loc,{#10000},7,1,7,23" +locations_default(#20101,#10000,7,1,7,23) +hasLocation(#20100,#20101) +stmt_containers(#20100,#20001) #20102=* -regexpterm(#20102,23,#20101,0,"[[abc]&&[bcd]&&[c]]") -#20103=@"loc,{#10000},7,2,7,20" -locations_default(#20103,#10000,7,2,7,20) -hasLocation(#20102,#20103) -#20104=* -regexpterm(#20104,29,#20102,0,"[[abc]&&[bcd]&&[c]]") -hasLocation(#20104,#20103) +exprs(#20102,5,#20100,0,"/[[abc] ... &[c]]/v") +hasLocation(#20102,#20043) +enclosing_stmt(#20102,#20100) +expr_containers(#20102,#20001) +literals("/[[abc]&&[bcd]&&[c]]/v","/[[abc]&&[bcd]&&[c]]/v",#20102) +#20103=* +regexpterm(#20103,23,#20102,0,"[[abc]&&[bcd]&&[c]]") +#20104=@"loc,{#10000},7,2,7,20" +locations_default(#20104,#10000,7,2,7,20) +hasLocation(#20103,#20104) #20105=* -regexpterm(#20105,23,#20104,0,"[abc]") -#20106=@"loc,{#10000},7,3,7,7" -locations_default(#20106,#10000,7,3,7,7) -hasLocation(#20105,#20106) -#20107=* -regexpterm(#20107,14,#20105,0,"a") -#20108=@"loc,{#10000},7,4,7,4" -locations_default(#20108,#10000,7,4,7,4) -hasLocation(#20107,#20108) -regexp_const_value(#20107,"a") -#20109=* -regexpterm(#20109,14,#20105,1,"b") -#20110=@"loc,{#10000},7,5,7,5" -locations_default(#20110,#10000,7,5,7,5) -hasLocation(#20109,#20110) -regexp_const_value(#20109,"b") -#20111=* -regexpterm(#20111,14,#20105,2,"c") -#20112=@"loc,{#10000},7,6,7,6" -locations_default(#20112,#10000,7,6,7,6) -hasLocation(#20111,#20112) -regexp_const_value(#20111,"c") -#20113=* -regexpterm(#20113,23,#20104,1,"[bcd]") -#20114=@"loc,{#10000},7,10,7,14" -locations_default(#20114,#10000,7,10,7,14) -hasLocation(#20113,#20114) -#20115=* -regexpterm(#20115,14,#20113,0,"b") -#20116=@"loc,{#10000},7,11,7,11" -locations_default(#20116,#10000,7,11,7,11) -hasLocation(#20115,#20116) -regexp_const_value(#20115,"b") -#20117=* -regexpterm(#20117,14,#20113,1,"c") -#20118=@"loc,{#10000},7,12,7,12" -locations_default(#20118,#10000,7,12,7,12) -hasLocation(#20117,#20118) -regexp_const_value(#20117,"c") -#20119=* -regexpterm(#20119,14,#20113,2,"d") -#20120=@"loc,{#10000},7,13,7,13" -locations_default(#20120,#10000,7,13,7,13) -hasLocation(#20119,#20120) -regexp_const_value(#20119,"d") -#20121=* -regexpterm(#20121,23,#20104,2,"[c]") -#20122=@"loc,{#10000},7,17,7,19" -locations_default(#20122,#10000,7,17,7,19) -hasLocation(#20121,#20122) -#20123=* -regexpterm(#20123,14,#20121,0,"c") -#20124=@"loc,{#10000},7,18,7,18" -locations_default(#20124,#10000,7,18,7,18) -hasLocation(#20123,#20124) -regexp_const_value(#20123,"c") -#20125=* -entry_cfg_node(#20125,#20001) -#20126=@"loc,{#10000},1,1,1,0" -locations_default(#20126,#10000,1,1,1,0) -hasLocation(#20125,#20126) -#20127=* -exit_cfg_node(#20127,#20001) -hasLocation(#20127,#20047) -successor(#20099,#20101) -successor(#20101,#20127) -successor(#20076,#20078) -successor(#20078,#20099) -successor(#20071,#20073) -successor(#20073,#20076) -successor(#20049,#20051) -successor(#20051,#20071) -successor(#20125,#20049) +regexpterm(#20105,29,#20103,0,"[[abc]&&[bcd]&&[c]]") +hasLocation(#20105,#20104) +#20106=* +regexpterm(#20106,23,#20105,0,"[abc]") +#20107=@"loc,{#10000},7,3,7,7" +locations_default(#20107,#10000,7,3,7,7) +hasLocation(#20106,#20107) +#20108=* +regexpterm(#20108,14,#20106,0,"a") +#20109=@"loc,{#10000},7,4,7,4" +locations_default(#20109,#10000,7,4,7,4) +hasLocation(#20108,#20109) +regexp_const_value(#20108,"a") +#20110=* +regexpterm(#20110,14,#20106,1,"b") +#20111=@"loc,{#10000},7,5,7,5" +locations_default(#20111,#10000,7,5,7,5) +hasLocation(#20110,#20111) +regexp_const_value(#20110,"b") +#20112=* +regexpterm(#20112,14,#20106,2,"c") +#20113=@"loc,{#10000},7,6,7,6" +locations_default(#20113,#10000,7,6,7,6) +hasLocation(#20112,#20113) +regexp_const_value(#20112,"c") +#20114=* +regexpterm(#20114,23,#20105,1,"[bcd]") +#20115=@"loc,{#10000},7,10,7,14" +locations_default(#20115,#10000,7,10,7,14) +hasLocation(#20114,#20115) +#20116=* +regexpterm(#20116,14,#20114,0,"b") +#20117=@"loc,{#10000},7,11,7,11" +locations_default(#20117,#10000,7,11,7,11) +hasLocation(#20116,#20117) +regexp_const_value(#20116,"b") +#20118=* +regexpterm(#20118,14,#20114,1,"c") +#20119=@"loc,{#10000},7,12,7,12" +locations_default(#20119,#10000,7,12,7,12) +hasLocation(#20118,#20119) +regexp_const_value(#20118,"c") +#20120=* +regexpterm(#20120,14,#20114,2,"d") +#20121=@"loc,{#10000},7,13,7,13" +locations_default(#20121,#10000,7,13,7,13) +hasLocation(#20120,#20121) +regexp_const_value(#20120,"d") +#20122=* +regexpterm(#20122,23,#20105,2,"[c]") +#20123=@"loc,{#10000},7,17,7,19" +locations_default(#20123,#10000,7,17,7,19) +hasLocation(#20122,#20123) +#20124=* +regexpterm(#20124,14,#20122,0,"c") +#20125=@"loc,{#10000},7,18,7,18" +locations_default(#20125,#10000,7,18,7,18) +hasLocation(#20124,#20125) +regexp_const_value(#20124,"c") +#20126=* +entry_cfg_node(#20126,#20001) +#20127=@"loc,{#10000},1,1,1,0" +locations_default(#20127,#10000,1,1,1,0) +hasLocation(#20126,#20127) +#20128=* +exit_cfg_node(#20128,#20001) +hasLocation(#20128,#20047) +successor(#20100,#20102) +successor(#20102,#20128) +successor(#20077,#20079) +successor(#20079,#20100) +successor(#20072,#20074) +successor(#20074,#20077) +successor(#20050,#20052) +successor(#20052,#20072) +successor(#20126,#20050) numlines(#10000,7,4,7) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2024/output/trap/regex_nested_character_class.js.trap b/javascript/extractor/tests/es2024/output/trap/regex_nested_character_class.js.trap index c3bc9112cc56..5bea0115e12a 100644 --- a/javascript/extractor/tests/es2024/output/trap/regex_nested_character_class.js.trap +++ b/javascript/extractor/tests/es2024/output/trap/regex_nested_character_class.js.trap @@ -73,139 +73,141 @@ toplevels(#20001,0) #20024=@"loc,{#10000},1,1,4,0" locations_default(#20024,#10000,1,1,4,0) hasLocation(#20001,#20024) -#20025=* -stmts(#20025,2,#20001,0,"/[[]]/v;") -#20026=@"loc,{#10000},1,1,1,8" -locations_default(#20026,#10000,1,1,1,8) -hasLocation(#20025,#20026) -stmt_containers(#20025,#20001) -#20027=* -exprs(#20027,5,#20025,0,"/[[]]/v") -hasLocation(#20027,#20011) -enclosing_stmt(#20027,#20025) -expr_containers(#20027,#20001) -literals("/[[]]/v","/[[]]/v",#20027) +#20025=@"var;{this};{#20000}" +variables(#20025,"this",#20000) +#20026=* +stmts(#20026,2,#20001,0,"/[[]]/v;") +#20027=@"loc,{#10000},1,1,1,8" +locations_default(#20027,#10000,1,1,1,8) +hasLocation(#20026,#20027) +stmt_containers(#20026,#20001) #20028=* -regexpterm(#20028,23,#20027,0,"[[]]") -#20029=@"loc,{#10000},1,2,1,5" -locations_default(#20029,#10000,1,2,1,5) -hasLocation(#20028,#20029) -#20030=* -regexpterm(#20030,23,#20028,0,"[]") -#20031=@"loc,{#10000},1,3,1,4" -locations_default(#20031,#10000,1,3,1,4) -hasLocation(#20030,#20031) -#20032=* -stmts(#20032,2,#20001,1,"/[[a]]/v;") -hasLocation(#20032,#20007) -stmt_containers(#20032,#20001) +exprs(#20028,5,#20026,0,"/[[]]/v") +hasLocation(#20028,#20011) +enclosing_stmt(#20028,#20026) +expr_containers(#20028,#20001) +literals("/[[]]/v","/[[]]/v",#20028) +#20029=* +regexpterm(#20029,23,#20028,0,"[[]]") +#20030=@"loc,{#10000},1,2,1,5" +locations_default(#20030,#10000,1,2,1,5) +hasLocation(#20029,#20030) +#20031=* +regexpterm(#20031,23,#20029,0,"[]") +#20032=@"loc,{#10000},1,3,1,4" +locations_default(#20032,#10000,1,3,1,4) +hasLocation(#20031,#20032) #20033=* -exprs(#20033,5,#20032,0,"/[[a]]/v") -hasLocation(#20033,#20015) -enclosing_stmt(#20033,#20032) -expr_containers(#20033,#20001) -literals("/[[a]]/v","/[[a]]/v",#20033) +stmts(#20033,2,#20001,1,"/[[a]]/v;") +hasLocation(#20033,#20007) +stmt_containers(#20033,#20001) #20034=* -regexpterm(#20034,23,#20033,0,"[[a]]") -#20035=@"loc,{#10000},2,2,2,6" -locations_default(#20035,#10000,2,2,2,6) -hasLocation(#20034,#20035) -#20036=* -regexpterm(#20036,23,#20034,0,"[a]") -#20037=@"loc,{#10000},2,3,2,5" -locations_default(#20037,#10000,2,3,2,5) -hasLocation(#20036,#20037) -#20038=* -regexpterm(#20038,14,#20036,0,"a") -#20039=@"loc,{#10000},2,4,2,4" -locations_default(#20039,#10000,2,4,2,4) -hasLocation(#20038,#20039) -regexp_const_value(#20038,"a") -#20040=* -stmts(#20040,2,#20001,2,"/[ [] [ [] [] ] ]/v;") -hasLocation(#20040,#20009) -stmt_containers(#20040,#20001) +exprs(#20034,5,#20033,0,"/[[a]]/v") +hasLocation(#20034,#20015) +enclosing_stmt(#20034,#20033) +expr_containers(#20034,#20001) +literals("/[[a]]/v","/[[a]]/v",#20034) +#20035=* +regexpterm(#20035,23,#20034,0,"[[a]]") +#20036=@"loc,{#10000},2,2,2,6" +locations_default(#20036,#10000,2,2,2,6) +hasLocation(#20035,#20036) +#20037=* +regexpterm(#20037,23,#20035,0,"[a]") +#20038=@"loc,{#10000},2,3,2,5" +locations_default(#20038,#10000,2,3,2,5) +hasLocation(#20037,#20038) +#20039=* +regexpterm(#20039,14,#20037,0,"a") +#20040=@"loc,{#10000},2,4,2,4" +locations_default(#20040,#10000,2,4,2,4) +hasLocation(#20039,#20040) +regexp_const_value(#20039,"a") #20041=* -exprs(#20041,5,#20040,0,"/[ [] [ [] [] ] ]/v") -hasLocation(#20041,#20019) -enclosing_stmt(#20041,#20040) -expr_containers(#20041,#20001) -literals("/[ [] [ [] [] ] ]/v","/[ [] [ [] [] ] ]/v",#20041) +stmts(#20041,2,#20001,2,"/[ [] [ [] [] ] ]/v;") +hasLocation(#20041,#20009) +stmt_containers(#20041,#20001) #20042=* -regexpterm(#20042,23,#20041,0,"[ [] [ [] [] ] ]") -#20043=@"loc,{#10000},3,2,3,17" -locations_default(#20043,#10000,3,2,3,17) -hasLocation(#20042,#20043) -#20044=* -regexpterm(#20044,14,#20042,0," ") -#20045=@"loc,{#10000},3,3,3,3" -locations_default(#20045,#10000,3,3,3,3) -hasLocation(#20044,#20045) -regexp_const_value(#20044," ") -#20046=* -regexpterm(#20046,23,#20042,1,"[]") -#20047=@"loc,{#10000},3,4,3,5" -locations_default(#20047,#10000,3,4,3,5) -hasLocation(#20046,#20047) -#20048=* -regexpterm(#20048,14,#20042,2," ") -#20049=@"loc,{#10000},3,6,3,6" -locations_default(#20049,#10000,3,6,3,6) -hasLocation(#20048,#20049) -regexp_const_value(#20048," ") -#20050=* -regexpterm(#20050,23,#20042,3,"[ [] [] ]") -#20051=@"loc,{#10000},3,7,3,15" -locations_default(#20051,#10000,3,7,3,15) -hasLocation(#20050,#20051) -#20052=* -regexpterm(#20052,14,#20050,0," ") -#20053=@"loc,{#10000},3,8,3,8" -locations_default(#20053,#10000,3,8,3,8) -hasLocation(#20052,#20053) -regexp_const_value(#20052," ") -#20054=* -regexpterm(#20054,23,#20050,1,"[]") -#20055=@"loc,{#10000},3,9,3,10" -locations_default(#20055,#10000,3,9,3,10) -hasLocation(#20054,#20055) -#20056=* -regexpterm(#20056,14,#20050,2," ") -#20057=@"loc,{#10000},3,11,3,11" -locations_default(#20057,#10000,3,11,3,11) -hasLocation(#20056,#20057) -regexp_const_value(#20056," ") -#20058=* -regexpterm(#20058,23,#20050,3,"[]") -#20059=@"loc,{#10000},3,12,3,13" -locations_default(#20059,#10000,3,12,3,13) -hasLocation(#20058,#20059) -#20060=* -regexpterm(#20060,14,#20050,4," ") -#20061=@"loc,{#10000},3,14,3,14" -locations_default(#20061,#10000,3,14,3,14) -hasLocation(#20060,#20061) -regexp_const_value(#20060," ") -#20062=* -regexpterm(#20062,14,#20042,4," ") -#20063=@"loc,{#10000},3,16,3,16" -locations_default(#20063,#10000,3,16,3,16) -hasLocation(#20062,#20063) -regexp_const_value(#20062," ") -#20064=* -entry_cfg_node(#20064,#20001) -#20065=@"loc,{#10000},1,1,1,0" -locations_default(#20065,#10000,1,1,1,0) -hasLocation(#20064,#20065) -#20066=* -exit_cfg_node(#20066,#20001) -hasLocation(#20066,#20023) -successor(#20040,#20041) -successor(#20041,#20066) -successor(#20032,#20033) -successor(#20033,#20040) -successor(#20025,#20027) -successor(#20027,#20032) -successor(#20064,#20025) +exprs(#20042,5,#20041,0,"/[ [] [ [] [] ] ]/v") +hasLocation(#20042,#20019) +enclosing_stmt(#20042,#20041) +expr_containers(#20042,#20001) +literals("/[ [] [ [] [] ] ]/v","/[ [] [ [] [] ] ]/v",#20042) +#20043=* +regexpterm(#20043,23,#20042,0,"[ [] [ [] [] ] ]") +#20044=@"loc,{#10000},3,2,3,17" +locations_default(#20044,#10000,3,2,3,17) +hasLocation(#20043,#20044) +#20045=* +regexpterm(#20045,14,#20043,0," ") +#20046=@"loc,{#10000},3,3,3,3" +locations_default(#20046,#10000,3,3,3,3) +hasLocation(#20045,#20046) +regexp_const_value(#20045," ") +#20047=* +regexpterm(#20047,23,#20043,1,"[]") +#20048=@"loc,{#10000},3,4,3,5" +locations_default(#20048,#10000,3,4,3,5) +hasLocation(#20047,#20048) +#20049=* +regexpterm(#20049,14,#20043,2," ") +#20050=@"loc,{#10000},3,6,3,6" +locations_default(#20050,#10000,3,6,3,6) +hasLocation(#20049,#20050) +regexp_const_value(#20049," ") +#20051=* +regexpterm(#20051,23,#20043,3,"[ [] [] ]") +#20052=@"loc,{#10000},3,7,3,15" +locations_default(#20052,#10000,3,7,3,15) +hasLocation(#20051,#20052) +#20053=* +regexpterm(#20053,14,#20051,0," ") +#20054=@"loc,{#10000},3,8,3,8" +locations_default(#20054,#10000,3,8,3,8) +hasLocation(#20053,#20054) +regexp_const_value(#20053," ") +#20055=* +regexpterm(#20055,23,#20051,1,"[]") +#20056=@"loc,{#10000},3,9,3,10" +locations_default(#20056,#10000,3,9,3,10) +hasLocation(#20055,#20056) +#20057=* +regexpterm(#20057,14,#20051,2," ") +#20058=@"loc,{#10000},3,11,3,11" +locations_default(#20058,#10000,3,11,3,11) +hasLocation(#20057,#20058) +regexp_const_value(#20057," ") +#20059=* +regexpterm(#20059,23,#20051,3,"[]") +#20060=@"loc,{#10000},3,12,3,13" +locations_default(#20060,#10000,3,12,3,13) +hasLocation(#20059,#20060) +#20061=* +regexpterm(#20061,14,#20051,4," ") +#20062=@"loc,{#10000},3,14,3,14" +locations_default(#20062,#10000,3,14,3,14) +hasLocation(#20061,#20062) +regexp_const_value(#20061," ") +#20063=* +regexpterm(#20063,14,#20043,4," ") +#20064=@"loc,{#10000},3,16,3,16" +locations_default(#20064,#10000,3,16,3,16) +hasLocation(#20063,#20064) +regexp_const_value(#20063," ") +#20065=* +entry_cfg_node(#20065,#20001) +#20066=@"loc,{#10000},1,1,1,0" +locations_default(#20066,#10000,1,1,1,0) +hasLocation(#20065,#20066) +#20067=* +exit_cfg_node(#20067,#20001) +hasLocation(#20067,#20023) +successor(#20041,#20042) +successor(#20042,#20067) +successor(#20033,#20034) +successor(#20034,#20041) +successor(#20026,#20028) +successor(#20028,#20033) +successor(#20065,#20026) numlines(#10000,3,3,1) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2024/output/trap/regex_quoted_string.js.trap b/javascript/extractor/tests/es2024/output/trap/regex_quoted_string.js.trap index 822a1302bcf5..967bd2610851 100644 --- a/javascript/extractor/tests/es2024/output/trap/regex_quoted_string.js.trap +++ b/javascript/extractor/tests/es2024/output/trap/regex_quoted_string.js.trap @@ -99,188 +99,190 @@ toplevels(#20001,0) #20034=@"loc,{#10000},1,1,6,0" locations_default(#20034,#10000,1,1,6,0) hasLocation(#20001,#20034) -#20035=* -stmts(#20035,2,#20001,0,"/[\q{abc}]/v;") -hasLocation(#20035,#20003) -stmt_containers(#20035,#20001) +#20035=@"var;{this};{#20000}" +variables(#20035,"this",#20000) #20036=* -exprs(#20036,5,#20035,0,"/[\q{abc}]/v") -hasLocation(#20036,#20013) -enclosing_stmt(#20036,#20035) -expr_containers(#20036,#20001) -literals("/[\q{abc}]/v","/[\q{abc}]/v",#20036) +stmts(#20036,2,#20001,0,"/[\q{abc}]/v;") +hasLocation(#20036,#20003) +stmt_containers(#20036,#20001) #20037=* -regexpterm(#20037,23,#20036,0,"[\q{abc}]") -#20038=@"loc,{#10000},1,2,1,10" -locations_default(#20038,#10000,1,2,1,10) -hasLocation(#20037,#20038) -#20039=* -regexpterm(#20039,28,#20037,0,"\q{abc}") -#20040=@"loc,{#10000},1,3,1,9" -locations_default(#20040,#10000,1,3,1,9) -hasLocation(#20039,#20040) -#20041=* -regexpterm(#20041,14,#20039,0,"abc") -#20042=@"loc,{#10000},1,6,1,8" -locations_default(#20042,#10000,1,6,1,8) -hasLocation(#20041,#20042) -regexp_const_value(#20041,"abc") -#20043=* -stmts(#20043,2,#20001,1,"/[\q{ab ... cb}]/v;") -hasLocation(#20043,#20005) -stmt_containers(#20043,#20001) +exprs(#20037,5,#20036,0,"/[\q{abc}]/v") +hasLocation(#20037,#20013) +enclosing_stmt(#20037,#20036) +expr_containers(#20037,#20001) +literals("/[\q{abc}]/v","/[\q{abc}]/v",#20037) +#20038=* +regexpterm(#20038,23,#20037,0,"[\q{abc}]") +#20039=@"loc,{#10000},1,2,1,10" +locations_default(#20039,#10000,1,2,1,10) +hasLocation(#20038,#20039) +#20040=* +regexpterm(#20040,28,#20038,0,"\q{abc}") +#20041=@"loc,{#10000},1,3,1,9" +locations_default(#20041,#10000,1,3,1,9) +hasLocation(#20040,#20041) +#20042=* +regexpterm(#20042,14,#20040,0,"abc") +#20043=@"loc,{#10000},1,6,1,8" +locations_default(#20043,#10000,1,6,1,8) +hasLocation(#20042,#20043) +regexp_const_value(#20042,"abc") #20044=* -exprs(#20044,5,#20043,0,"/[\q{abc|cbd|dcb}]/v") -hasLocation(#20044,#20017) -enclosing_stmt(#20044,#20043) -expr_containers(#20044,#20001) -literals("/[\q{abc|cbd|dcb}]/v","/[\q{abc|cbd|dcb}]/v",#20044) +stmts(#20044,2,#20001,1,"/[\q{ab ... cb}]/v;") +hasLocation(#20044,#20005) +stmt_containers(#20044,#20001) #20045=* -regexpterm(#20045,23,#20044,0,"[\q{abc|cbd|dcb}]") -#20046=@"loc,{#10000},2,2,2,18" -locations_default(#20046,#10000,2,2,2,18) -hasLocation(#20045,#20046) -#20047=* -regexpterm(#20047,28,#20045,0,"\q{abc|cbd|dcb}") -#20048=@"loc,{#10000},2,3,2,17" -locations_default(#20048,#10000,2,3,2,17) -hasLocation(#20047,#20048) -#20049=* -regexpterm(#20049,0,#20047,0,"abc|cbd|dcb") -#20050=@"loc,{#10000},2,6,2,16" -locations_default(#20050,#10000,2,6,2,16) -hasLocation(#20049,#20050) -#20051=* -regexpterm(#20051,14,#20049,0,"abc") -#20052=@"loc,{#10000},2,6,2,8" -locations_default(#20052,#10000,2,6,2,8) -hasLocation(#20051,#20052) -regexp_const_value(#20051,"abc") -#20053=* -regexpterm(#20053,14,#20049,1,"cbd") -#20054=@"loc,{#10000},2,10,2,12" -locations_default(#20054,#10000,2,10,2,12) -hasLocation(#20053,#20054) -regexp_const_value(#20053,"cbd") -#20055=* -regexpterm(#20055,14,#20049,2,"dcb") -#20056=@"loc,{#10000},2,14,2,16" -locations_default(#20056,#10000,2,14,2,16) -hasLocation(#20055,#20056) -regexp_const_value(#20055,"dcb") -#20057=* -stmts(#20057,2,#20001,2,"/[\q{\}}]/v;") -hasLocation(#20057,#20007) -stmt_containers(#20057,#20001) +exprs(#20045,5,#20044,0,"/[\q{abc|cbd|dcb}]/v") +hasLocation(#20045,#20017) +enclosing_stmt(#20045,#20044) +expr_containers(#20045,#20001) +literals("/[\q{abc|cbd|dcb}]/v","/[\q{abc|cbd|dcb}]/v",#20045) +#20046=* +regexpterm(#20046,23,#20045,0,"[\q{abc|cbd|dcb}]") +#20047=@"loc,{#10000},2,2,2,18" +locations_default(#20047,#10000,2,2,2,18) +hasLocation(#20046,#20047) +#20048=* +regexpterm(#20048,28,#20046,0,"\q{abc|cbd|dcb}") +#20049=@"loc,{#10000},2,3,2,17" +locations_default(#20049,#10000,2,3,2,17) +hasLocation(#20048,#20049) +#20050=* +regexpterm(#20050,0,#20048,0,"abc|cbd|dcb") +#20051=@"loc,{#10000},2,6,2,16" +locations_default(#20051,#10000,2,6,2,16) +hasLocation(#20050,#20051) +#20052=* +regexpterm(#20052,14,#20050,0,"abc") +#20053=@"loc,{#10000},2,6,2,8" +locations_default(#20053,#10000,2,6,2,8) +hasLocation(#20052,#20053) +regexp_const_value(#20052,"abc") +#20054=* +regexpterm(#20054,14,#20050,1,"cbd") +#20055=@"loc,{#10000},2,10,2,12" +locations_default(#20055,#10000,2,10,2,12) +hasLocation(#20054,#20055) +regexp_const_value(#20054,"cbd") +#20056=* +regexpterm(#20056,14,#20050,2,"dcb") +#20057=@"loc,{#10000},2,14,2,16" +locations_default(#20057,#10000,2,14,2,16) +hasLocation(#20056,#20057) +regexp_const_value(#20056,"dcb") #20058=* -exprs(#20058,5,#20057,0,"/[\q{\}}]/v") -hasLocation(#20058,#20021) -enclosing_stmt(#20058,#20057) -expr_containers(#20058,#20001) -literals("/[\q{\}}]/v","/[\q{\}}]/v",#20058) +stmts(#20058,2,#20001,2,"/[\q{\}}]/v;") +hasLocation(#20058,#20007) +stmt_containers(#20058,#20001) #20059=* -regexpterm(#20059,23,#20058,0,"[\q{\}}]") -#20060=@"loc,{#10000},3,2,3,9" -locations_default(#20060,#10000,3,2,3,9) -hasLocation(#20059,#20060) -#20061=* -regexpterm(#20061,28,#20059,0,"\q{\}}") -#20062=@"loc,{#10000},3,3,3,8" -locations_default(#20062,#10000,3,3,3,8) -hasLocation(#20061,#20062) -#20063=* -regexpterm(#20063,14,#20061,0,"\}") -#20064=@"loc,{#10000},3,6,3,7" -locations_default(#20064,#10000,3,6,3,7) -hasLocation(#20063,#20064) -regexp_const_value(#20063,"\}") -#20065=* -stmts(#20065,2,#20001,3,"/[\q{\{}]/v;") -hasLocation(#20065,#20009) -stmt_containers(#20065,#20001) +exprs(#20059,5,#20058,0,"/[\q{\}}]/v") +hasLocation(#20059,#20021) +enclosing_stmt(#20059,#20058) +expr_containers(#20059,#20001) +literals("/[\q{\}}]/v","/[\q{\}}]/v",#20059) +#20060=* +regexpterm(#20060,23,#20059,0,"[\q{\}}]") +#20061=@"loc,{#10000},3,2,3,9" +locations_default(#20061,#10000,3,2,3,9) +hasLocation(#20060,#20061) +#20062=* +regexpterm(#20062,28,#20060,0,"\q{\}}") +#20063=@"loc,{#10000},3,3,3,8" +locations_default(#20063,#10000,3,3,3,8) +hasLocation(#20062,#20063) +#20064=* +regexpterm(#20064,14,#20062,0,"\}") +#20065=@"loc,{#10000},3,6,3,7" +locations_default(#20065,#10000,3,6,3,7) +hasLocation(#20064,#20065) +regexp_const_value(#20064,"\}") #20066=* -exprs(#20066,5,#20065,0,"/[\q{\{}]/v") -hasLocation(#20066,#20025) -enclosing_stmt(#20066,#20065) -expr_containers(#20066,#20001) -literals("/[\q{\{}]/v","/[\q{\{}]/v",#20066) +stmts(#20066,2,#20001,3,"/[\q{\{}]/v;") +hasLocation(#20066,#20009) +stmt_containers(#20066,#20001) #20067=* -regexpterm(#20067,23,#20066,0,"[\q{\{}]") -#20068=@"loc,{#10000},4,2,4,9" -locations_default(#20068,#10000,4,2,4,9) -hasLocation(#20067,#20068) -#20069=* -regexpterm(#20069,28,#20067,0,"\q{\{}") -#20070=@"loc,{#10000},4,3,4,8" -locations_default(#20070,#10000,4,3,4,8) -hasLocation(#20069,#20070) -#20071=* -regexpterm(#20071,14,#20069,0,"\{") -#20072=@"loc,{#10000},4,6,4,7" -locations_default(#20072,#10000,4,6,4,7) -hasLocation(#20071,#20072) -regexp_const_value(#20071,"\{") -#20073=* -stmts(#20073,2,#20001,4,"/[\q{cc|\}a|cc}]/v;") -hasLocation(#20073,#20011) -stmt_containers(#20073,#20001) +exprs(#20067,5,#20066,0,"/[\q{\{}]/v") +hasLocation(#20067,#20025) +enclosing_stmt(#20067,#20066) +expr_containers(#20067,#20001) +literals("/[\q{\{}]/v","/[\q{\{}]/v",#20067) +#20068=* +regexpterm(#20068,23,#20067,0,"[\q{\{}]") +#20069=@"loc,{#10000},4,2,4,9" +locations_default(#20069,#10000,4,2,4,9) +hasLocation(#20068,#20069) +#20070=* +regexpterm(#20070,28,#20068,0,"\q{\{}") +#20071=@"loc,{#10000},4,3,4,8" +locations_default(#20071,#10000,4,3,4,8) +hasLocation(#20070,#20071) +#20072=* +regexpterm(#20072,14,#20070,0,"\{") +#20073=@"loc,{#10000},4,6,4,7" +locations_default(#20073,#10000,4,6,4,7) +hasLocation(#20072,#20073) +regexp_const_value(#20072,"\{") #20074=* -exprs(#20074,5,#20073,0,"/[\q{cc|\}a|cc}]/v") -hasLocation(#20074,#20029) -enclosing_stmt(#20074,#20073) -expr_containers(#20074,#20001) -literals("/[\q{cc|\}a|cc}]/v","/[\q{cc|\}a|cc}]/v",#20074) +stmts(#20074,2,#20001,4,"/[\q{cc|\}a|cc}]/v;") +hasLocation(#20074,#20011) +stmt_containers(#20074,#20001) #20075=* -regexpterm(#20075,23,#20074,0,"[\q{cc|\}a|cc}]") -#20076=@"loc,{#10000},5,2,5,16" -locations_default(#20076,#10000,5,2,5,16) -hasLocation(#20075,#20076) -#20077=* -regexpterm(#20077,28,#20075,0,"\q{cc|\}a|cc}") -#20078=@"loc,{#10000},5,3,5,15" -locations_default(#20078,#10000,5,3,5,15) -hasLocation(#20077,#20078) -#20079=* -regexpterm(#20079,0,#20077,0,"cc|\}a|cc") -#20080=@"loc,{#10000},5,6,5,14" -locations_default(#20080,#10000,5,6,5,14) -hasLocation(#20079,#20080) -#20081=* -regexpterm(#20081,14,#20079,0,"cc") -#20082=@"loc,{#10000},5,6,5,7" -locations_default(#20082,#10000,5,6,5,7) -hasLocation(#20081,#20082) -regexp_const_value(#20081,"cc") -#20083=* -regexpterm(#20083,14,#20079,1,"\}a") -#20084=@"loc,{#10000},5,9,5,11" -locations_default(#20084,#10000,5,9,5,11) -hasLocation(#20083,#20084) -regexp_const_value(#20083,"\}a") -#20085=* -regexpterm(#20085,14,#20079,2,"cc") -#20086=@"loc,{#10000},5,13,5,14" -locations_default(#20086,#10000,5,13,5,14) -hasLocation(#20085,#20086) -regexp_const_value(#20085,"cc") -#20087=* -entry_cfg_node(#20087,#20001) -#20088=@"loc,{#10000},1,1,1,0" -locations_default(#20088,#10000,1,1,1,0) -hasLocation(#20087,#20088) -#20089=* -exit_cfg_node(#20089,#20001) -hasLocation(#20089,#20033) -successor(#20073,#20074) -successor(#20074,#20089) -successor(#20065,#20066) -successor(#20066,#20073) -successor(#20057,#20058) -successor(#20058,#20065) -successor(#20043,#20044) -successor(#20044,#20057) -successor(#20035,#20036) -successor(#20036,#20043) -successor(#20087,#20035) +exprs(#20075,5,#20074,0,"/[\q{cc|\}a|cc}]/v") +hasLocation(#20075,#20029) +enclosing_stmt(#20075,#20074) +expr_containers(#20075,#20001) +literals("/[\q{cc|\}a|cc}]/v","/[\q{cc|\}a|cc}]/v",#20075) +#20076=* +regexpterm(#20076,23,#20075,0,"[\q{cc|\}a|cc}]") +#20077=@"loc,{#10000},5,2,5,16" +locations_default(#20077,#10000,5,2,5,16) +hasLocation(#20076,#20077) +#20078=* +regexpterm(#20078,28,#20076,0,"\q{cc|\}a|cc}") +#20079=@"loc,{#10000},5,3,5,15" +locations_default(#20079,#10000,5,3,5,15) +hasLocation(#20078,#20079) +#20080=* +regexpterm(#20080,0,#20078,0,"cc|\}a|cc") +#20081=@"loc,{#10000},5,6,5,14" +locations_default(#20081,#10000,5,6,5,14) +hasLocation(#20080,#20081) +#20082=* +regexpterm(#20082,14,#20080,0,"cc") +#20083=@"loc,{#10000},5,6,5,7" +locations_default(#20083,#10000,5,6,5,7) +hasLocation(#20082,#20083) +regexp_const_value(#20082,"cc") +#20084=* +regexpterm(#20084,14,#20080,1,"\}a") +#20085=@"loc,{#10000},5,9,5,11" +locations_default(#20085,#10000,5,9,5,11) +hasLocation(#20084,#20085) +regexp_const_value(#20084,"\}a") +#20086=* +regexpterm(#20086,14,#20080,2,"cc") +#20087=@"loc,{#10000},5,13,5,14" +locations_default(#20087,#10000,5,13,5,14) +hasLocation(#20086,#20087) +regexp_const_value(#20086,"cc") +#20088=* +entry_cfg_node(#20088,#20001) +#20089=@"loc,{#10000},1,1,1,0" +locations_default(#20089,#10000,1,1,1,0) +hasLocation(#20088,#20089) +#20090=* +exit_cfg_node(#20090,#20001) +hasLocation(#20090,#20033) +successor(#20074,#20075) +successor(#20075,#20090) +successor(#20066,#20067) +successor(#20067,#20074) +successor(#20058,#20059) +successor(#20059,#20066) +successor(#20044,#20045) +successor(#20045,#20058) +successor(#20036,#20037) +successor(#20037,#20044) +successor(#20088,#20036) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2024/output/trap/subtraction.js.trap b/javascript/extractor/tests/es2024/output/trap/subtraction.js.trap index ee3dc27da9d5..5ceb221aef90 100644 --- a/javascript/extractor/tests/es2024/output/trap/subtraction.js.trap +++ b/javascript/extractor/tests/es2024/output/trap/subtraction.js.trap @@ -67,202 +67,204 @@ toplevels(#20001,0) #20022=@"loc,{#10000},1,1,4,0" locations_default(#20022,#10000,1,1,4,0) hasLocation(#20001,#20022) -#20023=* -stmts(#20023,2,#20001,0,"/[\p{Sc ... er}]/v;") -hasLocation(#20023,#20003) -stmt_containers(#20023,#20001) +#20023=@"var;{this};{#20000}" +variables(#20023,"this",#20000) #20024=* -exprs(#20024,5,#20023,0,"/[\p{Sc ... ter}]/v") -hasLocation(#20024,#20009) -enclosing_stmt(#20024,#20023) -expr_containers(#20024,#20001) -literals("/[\p{Script_Extensions=Greek}--\p{Letter}]/v","/[\p{Script_Extensions=Greek}--\p{Letter}]/v",#20024) +stmts(#20024,2,#20001,0,"/[\p{Sc ... er}]/v;") +hasLocation(#20024,#20003) +stmt_containers(#20024,#20001) #20025=* -regexpterm(#20025,23,#20024,0,"[\p{Script_Extensions=Greek}--\p{Letter}]") -#20026=@"loc,{#10000},1,2,1,42" -locations_default(#20026,#10000,1,2,1,42) -hasLocation(#20025,#20026) -#20027=* -regexpterm(#20027,30,#20025,0,"[\p{Script_Extensions=Greek}--\p{Letter}]") -hasLocation(#20027,#20026) +exprs(#20025,5,#20024,0,"/[\p{Sc ... ter}]/v") +hasLocation(#20025,#20009) +enclosing_stmt(#20025,#20024) +expr_containers(#20025,#20001) +literals("/[\p{Script_Extensions=Greek}--\p{Letter}]/v","/[\p{Script_Extensions=Greek}--\p{Letter}]/v",#20025) +#20026=* +regexpterm(#20026,23,#20025,0,"[\p{Script_Extensions=Greek}--\p{Letter}]") +#20027=@"loc,{#10000},1,2,1,42" +locations_default(#20027,#10000,1,2,1,42) +hasLocation(#20026,#20027) #20028=* -regexpterm(#20028,27,#20027,0,"\p{Script_Extensions=Greek}") -#20029=@"loc,{#10000},1,3,1,29" -locations_default(#20029,#10000,1,3,1,29) -hasLocation(#20028,#20029) -unicode_property_escapename(#20028,"Script_Extensions") -unicode_property_escapevalue(#20028,"Greek") -#20030=* -regexpterm(#20030,27,#20027,1,"\p{Letter}") -#20031=@"loc,{#10000},1,32,1,41" -locations_default(#20031,#10000,1,32,1,41) -hasLocation(#20030,#20031) -unicode_property_escapename(#20030,"Letter") -#20032=* -stmts(#20032,2,#20001,1,"/[[abc]--[cbd]]/v;") -hasLocation(#20032,#20005) -stmt_containers(#20032,#20001) +regexpterm(#20028,30,#20026,0,"[\p{Script_Extensions=Greek}--\p{Letter}]") +hasLocation(#20028,#20027) +#20029=* +regexpterm(#20029,27,#20028,0,"\p{Script_Extensions=Greek}") +#20030=@"loc,{#10000},1,3,1,29" +locations_default(#20030,#10000,1,3,1,29) +hasLocation(#20029,#20030) +unicode_property_escapename(#20029,"Script_Extensions") +unicode_property_escapevalue(#20029,"Greek") +#20031=* +regexpterm(#20031,27,#20028,1,"\p{Letter}") +#20032=@"loc,{#10000},1,32,1,41" +locations_default(#20032,#10000,1,32,1,41) +hasLocation(#20031,#20032) +unicode_property_escapename(#20031,"Letter") #20033=* -exprs(#20033,5,#20032,0,"/[[abc]--[cbd]]/v") -hasLocation(#20033,#20013) -enclosing_stmt(#20033,#20032) -expr_containers(#20033,#20001) -literals("/[[abc]--[cbd]]/v","/[[abc]--[cbd]]/v",#20033) +stmts(#20033,2,#20001,1,"/[[abc]--[cbd]]/v;") +hasLocation(#20033,#20005) +stmt_containers(#20033,#20001) #20034=* -regexpterm(#20034,23,#20033,0,"[[abc]--[cbd]]") -#20035=@"loc,{#10000},2,2,2,15" -locations_default(#20035,#10000,2,2,2,15) -hasLocation(#20034,#20035) -#20036=* -regexpterm(#20036,30,#20034,0,"[[abc]--[cbd]]") -hasLocation(#20036,#20035) +exprs(#20034,5,#20033,0,"/[[abc]--[cbd]]/v") +hasLocation(#20034,#20013) +enclosing_stmt(#20034,#20033) +expr_containers(#20034,#20001) +literals("/[[abc]--[cbd]]/v","/[[abc]--[cbd]]/v",#20034) +#20035=* +regexpterm(#20035,23,#20034,0,"[[abc]--[cbd]]") +#20036=@"loc,{#10000},2,2,2,15" +locations_default(#20036,#10000,2,2,2,15) +hasLocation(#20035,#20036) #20037=* -regexpterm(#20037,23,#20036,0,"[abc]") -#20038=@"loc,{#10000},2,3,2,7" -locations_default(#20038,#10000,2,3,2,7) -hasLocation(#20037,#20038) -#20039=* -regexpterm(#20039,14,#20037,0,"a") -#20040=@"loc,{#10000},2,4,2,4" -locations_default(#20040,#10000,2,4,2,4) -hasLocation(#20039,#20040) -regexp_const_value(#20039,"a") -#20041=* -regexpterm(#20041,14,#20037,1,"b") -#20042=@"loc,{#10000},2,5,2,5" -locations_default(#20042,#10000,2,5,2,5) -hasLocation(#20041,#20042) -regexp_const_value(#20041,"b") -#20043=* -regexpterm(#20043,14,#20037,2,"c") -#20044=@"loc,{#10000},2,6,2,6" -locations_default(#20044,#10000,2,6,2,6) -hasLocation(#20043,#20044) -regexp_const_value(#20043,"c") -#20045=* -regexpterm(#20045,23,#20036,1,"[cbd]") -#20046=@"loc,{#10000},2,10,2,14" -locations_default(#20046,#10000,2,10,2,14) -hasLocation(#20045,#20046) -#20047=* -regexpterm(#20047,14,#20045,0,"c") -#20048=@"loc,{#10000},2,11,2,11" -locations_default(#20048,#10000,2,11,2,11) -hasLocation(#20047,#20048) -regexp_const_value(#20047,"c") -#20049=* -regexpterm(#20049,14,#20045,1,"b") -#20050=@"loc,{#10000},2,12,2,12" -locations_default(#20050,#10000,2,12,2,12) -hasLocation(#20049,#20050) -regexp_const_value(#20049,"b") -#20051=* -regexpterm(#20051,14,#20045,2,"d") -#20052=@"loc,{#10000},2,13,2,13" -locations_default(#20052,#10000,2,13,2,13) -hasLocation(#20051,#20052) -regexp_const_value(#20051,"d") -#20053=* -stmts(#20053,2,#20001,2,"/[[abc] ... de]]/v;") -hasLocation(#20053,#20007) -stmt_containers(#20053,#20001) +regexpterm(#20037,30,#20035,0,"[[abc]--[cbd]]") +hasLocation(#20037,#20036) +#20038=* +regexpterm(#20038,23,#20037,0,"[abc]") +#20039=@"loc,{#10000},2,3,2,7" +locations_default(#20039,#10000,2,3,2,7) +hasLocation(#20038,#20039) +#20040=* +regexpterm(#20040,14,#20038,0,"a") +#20041=@"loc,{#10000},2,4,2,4" +locations_default(#20041,#10000,2,4,2,4) +hasLocation(#20040,#20041) +regexp_const_value(#20040,"a") +#20042=* +regexpterm(#20042,14,#20038,1,"b") +#20043=@"loc,{#10000},2,5,2,5" +locations_default(#20043,#10000,2,5,2,5) +hasLocation(#20042,#20043) +regexp_const_value(#20042,"b") +#20044=* +regexpterm(#20044,14,#20038,2,"c") +#20045=@"loc,{#10000},2,6,2,6" +locations_default(#20045,#10000,2,6,2,6) +hasLocation(#20044,#20045) +regexp_const_value(#20044,"c") +#20046=* +regexpterm(#20046,23,#20037,1,"[cbd]") +#20047=@"loc,{#10000},2,10,2,14" +locations_default(#20047,#10000,2,10,2,14) +hasLocation(#20046,#20047) +#20048=* +regexpterm(#20048,14,#20046,0,"c") +#20049=@"loc,{#10000},2,11,2,11" +locations_default(#20049,#10000,2,11,2,11) +hasLocation(#20048,#20049) +regexp_const_value(#20048,"c") +#20050=* +regexpterm(#20050,14,#20046,1,"b") +#20051=@"loc,{#10000},2,12,2,12" +locations_default(#20051,#10000,2,12,2,12) +hasLocation(#20050,#20051) +regexp_const_value(#20050,"b") +#20052=* +regexpterm(#20052,14,#20046,2,"d") +#20053=@"loc,{#10000},2,13,2,13" +locations_default(#20053,#10000,2,13,2,13) +hasLocation(#20052,#20053) +regexp_const_value(#20052,"d") #20054=* -exprs(#20054,5,#20053,0,"/[[abc] ... bde]]/v") -hasLocation(#20054,#20017) -enclosing_stmt(#20054,#20053) -expr_containers(#20054,#20001) -literals("/[[abc]--[cbd]--[bde]]/v","/[[abc]--[cbd]--[bde]]/v",#20054) +stmts(#20054,2,#20001,2,"/[[abc] ... de]]/v;") +hasLocation(#20054,#20007) +stmt_containers(#20054,#20001) #20055=* -regexpterm(#20055,23,#20054,0,"[[abc]--[cbd]--[bde]]") -#20056=@"loc,{#10000},3,2,3,22" -locations_default(#20056,#10000,3,2,3,22) -hasLocation(#20055,#20056) -#20057=* -regexpterm(#20057,30,#20055,0,"[[abc]--[cbd]--[bde]]") -hasLocation(#20057,#20056) +exprs(#20055,5,#20054,0,"/[[abc] ... bde]]/v") +hasLocation(#20055,#20017) +enclosing_stmt(#20055,#20054) +expr_containers(#20055,#20001) +literals("/[[abc]--[cbd]--[bde]]/v","/[[abc]--[cbd]--[bde]]/v",#20055) +#20056=* +regexpterm(#20056,23,#20055,0,"[[abc]--[cbd]--[bde]]") +#20057=@"loc,{#10000},3,2,3,22" +locations_default(#20057,#10000,3,2,3,22) +hasLocation(#20056,#20057) #20058=* -regexpterm(#20058,23,#20057,0,"[abc]") -#20059=@"loc,{#10000},3,3,3,7" -locations_default(#20059,#10000,3,3,3,7) -hasLocation(#20058,#20059) -#20060=* -regexpterm(#20060,14,#20058,0,"a") -#20061=@"loc,{#10000},3,4,3,4" -locations_default(#20061,#10000,3,4,3,4) -hasLocation(#20060,#20061) -regexp_const_value(#20060,"a") -#20062=* -regexpterm(#20062,14,#20058,1,"b") -#20063=@"loc,{#10000},3,5,3,5" -locations_default(#20063,#10000,3,5,3,5) -hasLocation(#20062,#20063) -regexp_const_value(#20062,"b") -#20064=* -regexpterm(#20064,14,#20058,2,"c") -#20065=@"loc,{#10000},3,6,3,6" -locations_default(#20065,#10000,3,6,3,6) -hasLocation(#20064,#20065) -regexp_const_value(#20064,"c") -#20066=* -regexpterm(#20066,23,#20057,1,"[cbd]") -#20067=@"loc,{#10000},3,10,3,14" -locations_default(#20067,#10000,3,10,3,14) -hasLocation(#20066,#20067) -#20068=* -regexpterm(#20068,14,#20066,0,"c") -#20069=@"loc,{#10000},3,11,3,11" -locations_default(#20069,#10000,3,11,3,11) -hasLocation(#20068,#20069) -regexp_const_value(#20068,"c") -#20070=* -regexpterm(#20070,14,#20066,1,"b") -#20071=@"loc,{#10000},3,12,3,12" -locations_default(#20071,#10000,3,12,3,12) -hasLocation(#20070,#20071) -regexp_const_value(#20070,"b") -#20072=* -regexpterm(#20072,14,#20066,2,"d") -#20073=@"loc,{#10000},3,13,3,13" -locations_default(#20073,#10000,3,13,3,13) -hasLocation(#20072,#20073) -regexp_const_value(#20072,"d") -#20074=* -regexpterm(#20074,23,#20057,2,"[bde]") -#20075=@"loc,{#10000},3,17,3,21" -locations_default(#20075,#10000,3,17,3,21) -hasLocation(#20074,#20075) -#20076=* -regexpterm(#20076,14,#20074,0,"b") -#20077=@"loc,{#10000},3,18,3,18" -locations_default(#20077,#10000,3,18,3,18) -hasLocation(#20076,#20077) -regexp_const_value(#20076,"b") -#20078=* -regexpterm(#20078,14,#20074,1,"d") -#20079=@"loc,{#10000},3,19,3,19" -locations_default(#20079,#10000,3,19,3,19) -hasLocation(#20078,#20079) -regexp_const_value(#20078,"d") -#20080=* -regexpterm(#20080,14,#20074,2,"e") -#20081=@"loc,{#10000},3,20,3,20" -locations_default(#20081,#10000,3,20,3,20) -hasLocation(#20080,#20081) -regexp_const_value(#20080,"e") -#20082=* -entry_cfg_node(#20082,#20001) -#20083=@"loc,{#10000},1,1,1,0" -locations_default(#20083,#10000,1,1,1,0) -hasLocation(#20082,#20083) -#20084=* -exit_cfg_node(#20084,#20001) -hasLocation(#20084,#20021) -successor(#20053,#20054) -successor(#20054,#20084) -successor(#20032,#20033) -successor(#20033,#20053) -successor(#20023,#20024) -successor(#20024,#20032) -successor(#20082,#20023) +regexpterm(#20058,30,#20056,0,"[[abc]--[cbd]--[bde]]") +hasLocation(#20058,#20057) +#20059=* +regexpterm(#20059,23,#20058,0,"[abc]") +#20060=@"loc,{#10000},3,3,3,7" +locations_default(#20060,#10000,3,3,3,7) +hasLocation(#20059,#20060) +#20061=* +regexpterm(#20061,14,#20059,0,"a") +#20062=@"loc,{#10000},3,4,3,4" +locations_default(#20062,#10000,3,4,3,4) +hasLocation(#20061,#20062) +regexp_const_value(#20061,"a") +#20063=* +regexpterm(#20063,14,#20059,1,"b") +#20064=@"loc,{#10000},3,5,3,5" +locations_default(#20064,#10000,3,5,3,5) +hasLocation(#20063,#20064) +regexp_const_value(#20063,"b") +#20065=* +regexpterm(#20065,14,#20059,2,"c") +#20066=@"loc,{#10000},3,6,3,6" +locations_default(#20066,#10000,3,6,3,6) +hasLocation(#20065,#20066) +regexp_const_value(#20065,"c") +#20067=* +regexpterm(#20067,23,#20058,1,"[cbd]") +#20068=@"loc,{#10000},3,10,3,14" +locations_default(#20068,#10000,3,10,3,14) +hasLocation(#20067,#20068) +#20069=* +regexpterm(#20069,14,#20067,0,"c") +#20070=@"loc,{#10000},3,11,3,11" +locations_default(#20070,#10000,3,11,3,11) +hasLocation(#20069,#20070) +regexp_const_value(#20069,"c") +#20071=* +regexpterm(#20071,14,#20067,1,"b") +#20072=@"loc,{#10000},3,12,3,12" +locations_default(#20072,#10000,3,12,3,12) +hasLocation(#20071,#20072) +regexp_const_value(#20071,"b") +#20073=* +regexpterm(#20073,14,#20067,2,"d") +#20074=@"loc,{#10000},3,13,3,13" +locations_default(#20074,#10000,3,13,3,13) +hasLocation(#20073,#20074) +regexp_const_value(#20073,"d") +#20075=* +regexpterm(#20075,23,#20058,2,"[bde]") +#20076=@"loc,{#10000},3,17,3,21" +locations_default(#20076,#10000,3,17,3,21) +hasLocation(#20075,#20076) +#20077=* +regexpterm(#20077,14,#20075,0,"b") +#20078=@"loc,{#10000},3,18,3,18" +locations_default(#20078,#10000,3,18,3,18) +hasLocation(#20077,#20078) +regexp_const_value(#20077,"b") +#20079=* +regexpterm(#20079,14,#20075,1,"d") +#20080=@"loc,{#10000},3,19,3,19" +locations_default(#20080,#10000,3,19,3,19) +hasLocation(#20079,#20080) +regexp_const_value(#20079,"d") +#20081=* +regexpterm(#20081,14,#20075,2,"e") +#20082=@"loc,{#10000},3,20,3,20" +locations_default(#20082,#10000,3,20,3,20) +hasLocation(#20081,#20082) +regexp_const_value(#20081,"e") +#20083=* +entry_cfg_node(#20083,#20001) +#20084=@"loc,{#10000},1,1,1,0" +locations_default(#20084,#10000,1,1,1,0) +hasLocation(#20083,#20084) +#20085=* +exit_cfg_node(#20085,#20001) +hasLocation(#20085,#20021) +successor(#20054,#20055) +successor(#20055,#20085) +successor(#20033,#20034) +successor(#20034,#20054) +successor(#20024,#20025) +successor(#20025,#20033) +successor(#20083,#20024) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2024/output/trap/test.js.trap b/javascript/extractor/tests/es2024/output/trap/test.js.trap index 2cacd2029baa..6033409a2e4b 100644 --- a/javascript/extractor/tests/es2024/output/trap/test.js.trap +++ b/javascript/extractor/tests/es2024/output/trap/test.js.trap @@ -52,459 +52,461 @@ locations_default(#20016,#10000,1,1,2,0) hasLocation(#20001,#20016) #20017=@"var;{regex};{#20000}" variables(#20017,"regex",#20000) -#20018=* -stmts(#20018,22,#20001,0,"const r ... +)/gmv;") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,64,#20018,0,"regex = ... )+)/gmv") -#20020=@"loc,{#10000},1,7,1,171" -locations_default(#20020,#10000,1,7,1,171) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) -#20021=* -exprs(#20021,78,#20019,0,"regex") -hasLocation(#20021,#20007) -enclosing_stmt(#20021,#20018) -expr_containers(#20021,#20001) -literals("regex","regex",#20021) -decl(#20021,#20017) +stmts(#20019,22,#20001,0,"const r ... +)/gmv;") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) +#20020=* +exprs(#20020,64,#20019,0,"regex = ... )+)/gmv") +#20021=@"loc,{#10000},1,7,1,171" +locations_default(#20021,#10000,1,7,1,171) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20001) #20022=* -exprs(#20022,5,#20019,1,"/\b(?:h ... )+)/gmv") -hasLocation(#20022,#20011) -enclosing_stmt(#20022,#20018) +exprs(#20022,78,#20020,0,"regex") +hasLocation(#20022,#20007) +enclosing_stmt(#20022,#20019) expr_containers(#20022,#20001) -literals("/\b(?:https?:\/\/|mailto:|www\.)(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+|\b[\S--[@\p{Ps}\p{Pe}<>]]+@([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)/gmv","/\b(?:https?:\/\/|mailto:|www\.)(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+|\b[\S--[@\p{Ps}\p{Pe}<>]]+@([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)/gmv",#20022) +literals("regex","regex",#20022) +decl(#20022,#20017) #20023=* -regexpterm(#20023,0,#20022,0,"\b(?:https?:\/\/|mailto:|www\.)(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+|\b[\S--[@\p{Ps}\p{Pe}<>]]+@([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)") -#20024=@"loc,{#10000},1,16,1,167" -locations_default(#20024,#10000,1,16,1,167) -hasLocation(#20023,#20024) -#20025=* -regexpterm(#20025,1,#20023,0,"\b(?:https?:\/\/|mailto:|www\.)(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+") -#20026=@"loc,{#10000},1,16,1,98" -locations_default(#20026,#10000,1,16,1,98) -hasLocation(#20025,#20026) -#20027=* -regexpterm(#20027,4,#20025,0,"\b") -#20028=@"loc,{#10000},1,16,1,17" -locations_default(#20028,#10000,1,16,1,17) -hasLocation(#20027,#20028) -#20029=* -regexpterm(#20029,13,#20025,1,"(?:https?:\/\/|mailto:|www\.)") -#20030=@"loc,{#10000},1,18,1,46" -locations_default(#20030,#10000,1,18,1,46) -hasLocation(#20029,#20030) -#20031=* -regexpterm(#20031,0,#20029,0,"https?:\/\/|mailto:|www\.") -#20032=@"loc,{#10000},1,21,1,45" -locations_default(#20032,#10000,1,21,1,45) -hasLocation(#20031,#20032) -#20033=* -regexpterm(#20033,1,#20031,0,"https?:\/\/") -#20034=@"loc,{#10000},1,21,1,31" -locations_default(#20034,#10000,1,21,1,31) -hasLocation(#20033,#20034) -#20035=* -regexpterm(#20035,14,#20033,0,"http") -#20036=@"loc,{#10000},1,21,1,24" -locations_default(#20036,#10000,1,21,1,24) -hasLocation(#20035,#20036) -regexp_const_value(#20035,"http") -#20037=* -regexpterm(#20037,10,#20033,1,"s?") -#20038=@"loc,{#10000},1,25,1,26" -locations_default(#20038,#10000,1,25,1,26) -hasLocation(#20037,#20038) -is_greedy(#20037) -#20039=* -regexpterm(#20039,14,#20037,0,"s") -#20040=@"loc,{#10000},1,25,1,25" -locations_default(#20040,#10000,1,25,1,25) -hasLocation(#20039,#20040) -regexp_const_value(#20039,"s") -#20041=* -regexpterm(#20041,14,#20033,2,":") -#20042=@"loc,{#10000},1,27,1,27" -locations_default(#20042,#10000,1,27,1,27) -hasLocation(#20041,#20042) -regexp_const_value(#20041,":") -#20043=* -regexpterm(#20043,21,#20033,3,"\/") -#20044=@"loc,{#10000},1,28,1,29" -locations_default(#20044,#10000,1,28,1,29) -hasLocation(#20043,#20044) -regexp_const_value(#20043,"/") -#20045=* -regexpterm(#20045,21,#20033,4,"\/") -#20046=@"loc,{#10000},1,30,1,31" -locations_default(#20046,#10000,1,30,1,31) -hasLocation(#20045,#20046) -regexp_const_value(#20045,"/") -#20047=* -regexpterm(#20047,14,#20031,1,"mailto:") -#20048=@"loc,{#10000},1,33,1,39" -locations_default(#20048,#10000,1,33,1,39) -hasLocation(#20047,#20048) -regexp_const_value(#20047,"mailto:") -#20049=* -regexpterm(#20049,1,#20031,2,"www\.") -#20050=@"loc,{#10000},1,41,1,45" -locations_default(#20050,#10000,1,41,1,45) -hasLocation(#20049,#20050) -#20051=* -regexpterm(#20051,14,#20049,0,"www") -#20052=@"loc,{#10000},1,41,1,43" -locations_default(#20052,#10000,1,41,1,43) -hasLocation(#20051,#20052) -regexp_const_value(#20051,"www") -#20053=* -regexpterm(#20053,21,#20049,1,"\.") -#20054=@"loc,{#10000},1,44,1,45" -locations_default(#20054,#10000,1,44,1,45) -hasLocation(#20053,#20054) -regexp_const_value(#20053,".") -#20055=* -regexpterm(#20055,9,#20025,2,"(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+") -#20056=@"loc,{#10000},1,47,1,98" -locations_default(#20056,#10000,1,47,1,98) -hasLocation(#20055,#20056) -is_greedy(#20055) -#20057=* -regexpterm(#20057,13,#20055,0,"(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])") -#20058=@"loc,{#10000},1,47,1,97" -locations_default(#20058,#10000,1,47,1,97) -hasLocation(#20057,#20058) -#20059=* -regexpterm(#20059,0,#20057,0,"[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]]") -#20060=@"loc,{#10000},1,50,1,96" -locations_default(#20060,#10000,1,50,1,96) -hasLocation(#20059,#20060) -#20061=* -regexpterm(#20061,23,#20059,0,"[\S--[\p{P}<>]]") -#20062=@"loc,{#10000},1,50,1,64" -locations_default(#20062,#10000,1,50,1,64) -hasLocation(#20061,#20062) -#20063=* -regexpterm(#20063,30,#20061,0,"[\S--[\p{P}<>]]") -hasLocation(#20063,#20062) +exprs(#20023,5,#20020,1,"/\b(?:h ... )+)/gmv") +hasLocation(#20023,#20011) +enclosing_stmt(#20023,#20019) +expr_containers(#20023,#20001) +literals("/\b(?:https?:\/\/|mailto:|www\.)(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+|\b[\S--[@\p{Ps}\p{Pe}<>]]+@([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)/gmv","/\b(?:https?:\/\/|mailto:|www\.)(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+|\b[\S--[@\p{Ps}\p{Pe}<>]]+@([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)/gmv",#20023) +#20024=* +regexpterm(#20024,0,#20023,0,"\b(?:https?:\/\/|mailto:|www\.)(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+|\b[\S--[@\p{Ps}\p{Pe}<>]]+@([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)") +#20025=@"loc,{#10000},1,16,1,167" +locations_default(#20025,#10000,1,16,1,167) +hasLocation(#20024,#20025) +#20026=* +regexpterm(#20026,1,#20024,0,"\b(?:https?:\/\/|mailto:|www\.)(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+") +#20027=@"loc,{#10000},1,16,1,98" +locations_default(#20027,#10000,1,16,1,98) +hasLocation(#20026,#20027) +#20028=* +regexpterm(#20028,4,#20026,0,"\b") +#20029=@"loc,{#10000},1,16,1,17" +locations_default(#20029,#10000,1,16,1,17) +hasLocation(#20028,#20029) +#20030=* +regexpterm(#20030,13,#20026,1,"(?:https?:\/\/|mailto:|www\.)") +#20031=@"loc,{#10000},1,18,1,46" +locations_default(#20031,#10000,1,18,1,46) +hasLocation(#20030,#20031) +#20032=* +regexpterm(#20032,0,#20030,0,"https?:\/\/|mailto:|www\.") +#20033=@"loc,{#10000},1,21,1,45" +locations_default(#20033,#10000,1,21,1,45) +hasLocation(#20032,#20033) +#20034=* +regexpterm(#20034,1,#20032,0,"https?:\/\/") +#20035=@"loc,{#10000},1,21,1,31" +locations_default(#20035,#10000,1,21,1,31) +hasLocation(#20034,#20035) +#20036=* +regexpterm(#20036,14,#20034,0,"http") +#20037=@"loc,{#10000},1,21,1,24" +locations_default(#20037,#10000,1,21,1,24) +hasLocation(#20036,#20037) +regexp_const_value(#20036,"http") +#20038=* +regexpterm(#20038,10,#20034,1,"s?") +#20039=@"loc,{#10000},1,25,1,26" +locations_default(#20039,#10000,1,25,1,26) +hasLocation(#20038,#20039) +is_greedy(#20038) +#20040=* +regexpterm(#20040,14,#20038,0,"s") +#20041=@"loc,{#10000},1,25,1,25" +locations_default(#20041,#10000,1,25,1,25) +hasLocation(#20040,#20041) +regexp_const_value(#20040,"s") +#20042=* +regexpterm(#20042,14,#20034,2,":") +#20043=@"loc,{#10000},1,27,1,27" +locations_default(#20043,#10000,1,27,1,27) +hasLocation(#20042,#20043) +regexp_const_value(#20042,":") +#20044=* +regexpterm(#20044,21,#20034,3,"\/") +#20045=@"loc,{#10000},1,28,1,29" +locations_default(#20045,#10000,1,28,1,29) +hasLocation(#20044,#20045) +regexp_const_value(#20044,"/") +#20046=* +regexpterm(#20046,21,#20034,4,"\/") +#20047=@"loc,{#10000},1,30,1,31" +locations_default(#20047,#10000,1,30,1,31) +hasLocation(#20046,#20047) +regexp_const_value(#20046,"/") +#20048=* +regexpterm(#20048,14,#20032,1,"mailto:") +#20049=@"loc,{#10000},1,33,1,39" +locations_default(#20049,#10000,1,33,1,39) +hasLocation(#20048,#20049) +regexp_const_value(#20048,"mailto:") +#20050=* +regexpterm(#20050,1,#20032,2,"www\.") +#20051=@"loc,{#10000},1,41,1,45" +locations_default(#20051,#10000,1,41,1,45) +hasLocation(#20050,#20051) +#20052=* +regexpterm(#20052,14,#20050,0,"www") +#20053=@"loc,{#10000},1,41,1,43" +locations_default(#20053,#10000,1,41,1,43) +hasLocation(#20052,#20053) +regexp_const_value(#20052,"www") +#20054=* +regexpterm(#20054,21,#20050,1,"\.") +#20055=@"loc,{#10000},1,44,1,45" +locations_default(#20055,#10000,1,44,1,45) +hasLocation(#20054,#20055) +regexp_const_value(#20054,".") +#20056=* +regexpterm(#20056,9,#20026,2,"(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])+") +#20057=@"loc,{#10000},1,47,1,98" +locations_default(#20057,#10000,1,47,1,98) +hasLocation(#20056,#20057) +is_greedy(#20056) +#20058=* +regexpterm(#20058,13,#20056,0,"(?:[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]])") +#20059=@"loc,{#10000},1,47,1,97" +locations_default(#20059,#10000,1,47,1,97) +hasLocation(#20058,#20059) +#20060=* +regexpterm(#20060,0,#20058,0,"[\S--[\p{P}<>]]|\/|[\S--[\[\]]]+[\S--[\p{P}<>]]") +#20061=@"loc,{#10000},1,50,1,96" +locations_default(#20061,#10000,1,50,1,96) +hasLocation(#20060,#20061) +#20062=* +regexpterm(#20062,23,#20060,0,"[\S--[\p{P}<>]]") +#20063=@"loc,{#10000},1,50,1,64" +locations_default(#20063,#10000,1,50,1,64) +hasLocation(#20062,#20063) #20064=* -regexpterm(#20064,20,#20063,0,"\S") -#20065=@"loc,{#10000},1,51,1,52" -locations_default(#20065,#10000,1,51,1,52) -hasLocation(#20064,#20065) -char_class_escape(#20064,"S") -#20066=* -regexpterm(#20066,23,#20063,1,"[\p{P}<>]") -#20067=@"loc,{#10000},1,55,1,63" -locations_default(#20067,#10000,1,55,1,63) -hasLocation(#20066,#20067) -#20068=* -regexpterm(#20068,27,#20066,0,"\p{P}") -#20069=@"loc,{#10000},1,56,1,60" -locations_default(#20069,#10000,1,56,1,60) -hasLocation(#20068,#20069) -unicode_property_escapename(#20068,"P") -#20070=* -regexpterm(#20070,14,#20066,1,"<") -#20071=@"loc,{#10000},1,61,1,61" -locations_default(#20071,#10000,1,61,1,61) -hasLocation(#20070,#20071) -regexp_const_value(#20070,"<") -#20072=* -regexpterm(#20072,14,#20066,2,">") -#20073=@"loc,{#10000},1,62,1,62" -locations_default(#20073,#10000,1,62,1,62) -hasLocation(#20072,#20073) -regexp_const_value(#20072,">") -#20074=* -regexpterm(#20074,21,#20059,1,"\/") -#20075=@"loc,{#10000},1,66,1,67" -locations_default(#20075,#10000,1,66,1,67) -hasLocation(#20074,#20075) -regexp_const_value(#20074,"/") -#20076=* -regexpterm(#20076,1,#20059,2,"[\S--[\[\]]]+[\S--[\p{P}<>]]") -#20077=@"loc,{#10000},1,69,1,96" -locations_default(#20077,#10000,1,69,1,96) -hasLocation(#20076,#20077) -#20078=* -regexpterm(#20078,9,#20076,0,"[\S--[\[\]]]+") -#20079=@"loc,{#10000},1,69,1,81" -locations_default(#20079,#10000,1,69,1,81) -hasLocation(#20078,#20079) -is_greedy(#20078) -#20080=* -regexpterm(#20080,23,#20078,0,"[\S--[\[\]]]") -#20081=@"loc,{#10000},1,69,1,80" -locations_default(#20081,#10000,1,69,1,80) -hasLocation(#20080,#20081) -#20082=* -regexpterm(#20082,30,#20080,0,"[\S--[\[\]]]") -hasLocation(#20082,#20081) +regexpterm(#20064,30,#20062,0,"[\S--[\p{P}<>]]") +hasLocation(#20064,#20063) +#20065=* +regexpterm(#20065,20,#20064,0,"\S") +#20066=@"loc,{#10000},1,51,1,52" +locations_default(#20066,#10000,1,51,1,52) +hasLocation(#20065,#20066) +char_class_escape(#20065,"S") +#20067=* +regexpterm(#20067,23,#20064,1,"[\p{P}<>]") +#20068=@"loc,{#10000},1,55,1,63" +locations_default(#20068,#10000,1,55,1,63) +hasLocation(#20067,#20068) +#20069=* +regexpterm(#20069,27,#20067,0,"\p{P}") +#20070=@"loc,{#10000},1,56,1,60" +locations_default(#20070,#10000,1,56,1,60) +hasLocation(#20069,#20070) +unicode_property_escapename(#20069,"P") +#20071=* +regexpterm(#20071,14,#20067,1,"<") +#20072=@"loc,{#10000},1,61,1,61" +locations_default(#20072,#10000,1,61,1,61) +hasLocation(#20071,#20072) +regexp_const_value(#20071,"<") +#20073=* +regexpterm(#20073,14,#20067,2,">") +#20074=@"loc,{#10000},1,62,1,62" +locations_default(#20074,#10000,1,62,1,62) +hasLocation(#20073,#20074) +regexp_const_value(#20073,">") +#20075=* +regexpterm(#20075,21,#20060,1,"\/") +#20076=@"loc,{#10000},1,66,1,67" +locations_default(#20076,#10000,1,66,1,67) +hasLocation(#20075,#20076) +regexp_const_value(#20075,"/") +#20077=* +regexpterm(#20077,1,#20060,2,"[\S--[\[\]]]+[\S--[\p{P}<>]]") +#20078=@"loc,{#10000},1,69,1,96" +locations_default(#20078,#10000,1,69,1,96) +hasLocation(#20077,#20078) +#20079=* +regexpterm(#20079,9,#20077,0,"[\S--[\[\]]]+") +#20080=@"loc,{#10000},1,69,1,81" +locations_default(#20080,#10000,1,69,1,81) +hasLocation(#20079,#20080) +is_greedy(#20079) +#20081=* +regexpterm(#20081,23,#20079,0,"[\S--[\[\]]]") +#20082=@"loc,{#10000},1,69,1,80" +locations_default(#20082,#10000,1,69,1,80) +hasLocation(#20081,#20082) #20083=* -regexpterm(#20083,20,#20082,0,"\S") -#20084=@"loc,{#10000},1,70,1,71" -locations_default(#20084,#10000,1,70,1,71) -hasLocation(#20083,#20084) -char_class_escape(#20083,"S") -#20085=* -regexpterm(#20085,23,#20082,1,"[\[\]]") -#20086=@"loc,{#10000},1,74,1,79" -locations_default(#20086,#10000,1,74,1,79) -hasLocation(#20085,#20086) -#20087=* -regexpterm(#20087,21,#20085,0,"\[") -#20088=@"loc,{#10000},1,75,1,76" -locations_default(#20088,#10000,1,75,1,76) -hasLocation(#20087,#20088) -regexp_const_value(#20087,"[") -#20089=* -regexpterm(#20089,21,#20085,1,"\]") -#20090=@"loc,{#10000},1,77,1,78" -locations_default(#20090,#10000,1,77,1,78) -hasLocation(#20089,#20090) -regexp_const_value(#20089,"]") -#20091=* -regexpterm(#20091,23,#20076,1,"[\S--[\p{P}<>]]") -#20092=@"loc,{#10000},1,82,1,96" -locations_default(#20092,#10000,1,82,1,96) -hasLocation(#20091,#20092) -#20093=* -regexpterm(#20093,30,#20091,0,"[\S--[\p{P}<>]]") -hasLocation(#20093,#20092) +regexpterm(#20083,30,#20081,0,"[\S--[\[\]]]") +hasLocation(#20083,#20082) +#20084=* +regexpterm(#20084,20,#20083,0,"\S") +#20085=@"loc,{#10000},1,70,1,71" +locations_default(#20085,#10000,1,70,1,71) +hasLocation(#20084,#20085) +char_class_escape(#20084,"S") +#20086=* +regexpterm(#20086,23,#20083,1,"[\[\]]") +#20087=@"loc,{#10000},1,74,1,79" +locations_default(#20087,#10000,1,74,1,79) +hasLocation(#20086,#20087) +#20088=* +regexpterm(#20088,21,#20086,0,"\[") +#20089=@"loc,{#10000},1,75,1,76" +locations_default(#20089,#10000,1,75,1,76) +hasLocation(#20088,#20089) +regexp_const_value(#20088,"[") +#20090=* +regexpterm(#20090,21,#20086,1,"\]") +#20091=@"loc,{#10000},1,77,1,78" +locations_default(#20091,#10000,1,77,1,78) +hasLocation(#20090,#20091) +regexp_const_value(#20090,"]") +#20092=* +regexpterm(#20092,23,#20077,1,"[\S--[\p{P}<>]]") +#20093=@"loc,{#10000},1,82,1,96" +locations_default(#20093,#10000,1,82,1,96) +hasLocation(#20092,#20093) #20094=* -regexpterm(#20094,20,#20093,0,"\S") -#20095=@"loc,{#10000},1,83,1,84" -locations_default(#20095,#10000,1,83,1,84) -hasLocation(#20094,#20095) -char_class_escape(#20094,"S") -#20096=* -regexpterm(#20096,23,#20093,1,"[\p{P}<>]") -#20097=@"loc,{#10000},1,87,1,95" -locations_default(#20097,#10000,1,87,1,95) -hasLocation(#20096,#20097) -#20098=* -regexpterm(#20098,27,#20096,0,"\p{P}") -#20099=@"loc,{#10000},1,88,1,92" -locations_default(#20099,#10000,1,88,1,92) -hasLocation(#20098,#20099) -unicode_property_escapename(#20098,"P") -#20100=* -regexpterm(#20100,14,#20096,1,"<") -#20101=@"loc,{#10000},1,93,1,93" -locations_default(#20101,#10000,1,93,1,93) -hasLocation(#20100,#20101) -regexp_const_value(#20100,"<") -#20102=* -regexpterm(#20102,14,#20096,2,">") -#20103=@"loc,{#10000},1,94,1,94" -locations_default(#20103,#10000,1,94,1,94) -hasLocation(#20102,#20103) -regexp_const_value(#20102,">") -#20104=* -regexpterm(#20104,1,#20023,1,"\b[\S--[@\p{Ps}\p{Pe}<>]]+@([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)") -#20105=@"loc,{#10000},1,100,1,167" -locations_default(#20105,#10000,1,100,1,167) -hasLocation(#20104,#20105) -#20106=* -regexpterm(#20106,4,#20104,0,"\b") -#20107=@"loc,{#10000},1,100,1,101" -locations_default(#20107,#10000,1,100,1,101) -hasLocation(#20106,#20107) -#20108=* -regexpterm(#20108,9,#20104,1,"[\S--[@\p{Ps}\p{Pe}<>]]+") -#20109=@"loc,{#10000},1,102,1,125" -locations_default(#20109,#10000,1,102,1,125) -hasLocation(#20108,#20109) -is_greedy(#20108) -#20110=* -regexpterm(#20110,23,#20108,0,"[\S--[@\p{Ps}\p{Pe}<>]]") -#20111=@"loc,{#10000},1,102,1,124" -locations_default(#20111,#10000,1,102,1,124) -hasLocation(#20110,#20111) -#20112=* -regexpterm(#20112,30,#20110,0,"[\S--[@\p{Ps}\p{Pe}<>]]") -hasLocation(#20112,#20111) +regexpterm(#20094,30,#20092,0,"[\S--[\p{P}<>]]") +hasLocation(#20094,#20093) +#20095=* +regexpterm(#20095,20,#20094,0,"\S") +#20096=@"loc,{#10000},1,83,1,84" +locations_default(#20096,#10000,1,83,1,84) +hasLocation(#20095,#20096) +char_class_escape(#20095,"S") +#20097=* +regexpterm(#20097,23,#20094,1,"[\p{P}<>]") +#20098=@"loc,{#10000},1,87,1,95" +locations_default(#20098,#10000,1,87,1,95) +hasLocation(#20097,#20098) +#20099=* +regexpterm(#20099,27,#20097,0,"\p{P}") +#20100=@"loc,{#10000},1,88,1,92" +locations_default(#20100,#10000,1,88,1,92) +hasLocation(#20099,#20100) +unicode_property_escapename(#20099,"P") +#20101=* +regexpterm(#20101,14,#20097,1,"<") +#20102=@"loc,{#10000},1,93,1,93" +locations_default(#20102,#10000,1,93,1,93) +hasLocation(#20101,#20102) +regexp_const_value(#20101,"<") +#20103=* +regexpterm(#20103,14,#20097,2,">") +#20104=@"loc,{#10000},1,94,1,94" +locations_default(#20104,#10000,1,94,1,94) +hasLocation(#20103,#20104) +regexp_const_value(#20103,">") +#20105=* +regexpterm(#20105,1,#20024,1,"\b[\S--[@\p{Ps}\p{Pe}<>]]+@([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)") +#20106=@"loc,{#10000},1,100,1,167" +locations_default(#20106,#10000,1,100,1,167) +hasLocation(#20105,#20106) +#20107=* +regexpterm(#20107,4,#20105,0,"\b") +#20108=@"loc,{#10000},1,100,1,101" +locations_default(#20108,#10000,1,100,1,101) +hasLocation(#20107,#20108) +#20109=* +regexpterm(#20109,9,#20105,1,"[\S--[@\p{Ps}\p{Pe}<>]]+") +#20110=@"loc,{#10000},1,102,1,125" +locations_default(#20110,#10000,1,102,1,125) +hasLocation(#20109,#20110) +is_greedy(#20109) +#20111=* +regexpterm(#20111,23,#20109,0,"[\S--[@\p{Ps}\p{Pe}<>]]") +#20112=@"loc,{#10000},1,102,1,124" +locations_default(#20112,#10000,1,102,1,124) +hasLocation(#20111,#20112) #20113=* -regexpterm(#20113,20,#20112,0,"\S") -#20114=@"loc,{#10000},1,103,1,104" -locations_default(#20114,#10000,1,103,1,104) -hasLocation(#20113,#20114) -char_class_escape(#20113,"S") -#20115=* -regexpterm(#20115,23,#20112,1,"[@\p{Ps}\p{Pe}<>]") -#20116=@"loc,{#10000},1,107,1,123" -locations_default(#20116,#10000,1,107,1,123) -hasLocation(#20115,#20116) -#20117=* -regexpterm(#20117,14,#20115,0,"@") -#20118=@"loc,{#10000},1,108,1,108" -locations_default(#20118,#10000,1,108,1,108) -hasLocation(#20117,#20118) -regexp_const_value(#20117,"@") -#20119=* -regexpterm(#20119,27,#20115,1,"\p{Ps}") -#20120=@"loc,{#10000},1,109,1,114" -locations_default(#20120,#10000,1,109,1,114) -hasLocation(#20119,#20120) -unicode_property_escapename(#20119,"Ps") -#20121=* -regexpterm(#20121,27,#20115,2,"\p{Pe}") -#20122=@"loc,{#10000},1,115,1,120" -locations_default(#20122,#10000,1,115,1,120) -hasLocation(#20121,#20122) -unicode_property_escapename(#20121,"Pe") -#20123=* -regexpterm(#20123,14,#20115,3,"<") -#20124=@"loc,{#10000},1,121,1,121" -locations_default(#20124,#10000,1,121,1,121) -hasLocation(#20123,#20124) -regexp_const_value(#20123,"<") -#20125=* -regexpterm(#20125,14,#20115,4,">") -#20126=@"loc,{#10000},1,122,1,122" -locations_default(#20126,#10000,1,122,1,122) -hasLocation(#20125,#20126) -regexp_const_value(#20125,">") -#20127=* -regexpterm(#20127,14,#20104,2,"@") -#20128=@"loc,{#10000},1,126,1,126" -locations_default(#20128,#10000,1,126,1,126) -hasLocation(#20127,#20128) -regexp_const_value(#20127,"@") -#20129=* -regexpterm(#20129,13,#20104,3,"([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)") -#20130=@"loc,{#10000},1,127,1,167" -locations_default(#20130,#10000,1,127,1,167) -hasLocation(#20129,#20130) -is_capture(#20129,1) -#20131=* -regexpterm(#20131,1,#20129,0,"[\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+") -#20132=@"loc,{#10000},1,128,1,166" -locations_default(#20132,#10000,1,128,1,166) -hasLocation(#20131,#20132) -#20133=* -regexpterm(#20133,9,#20131,0,"[\S--[\p{P}<>]]+") -#20134=@"loc,{#10000},1,128,1,143" -locations_default(#20134,#10000,1,128,1,143) -hasLocation(#20133,#20134) -is_greedy(#20133) -#20135=* -regexpterm(#20135,23,#20133,0,"[\S--[\p{P}<>]]") -#20136=@"loc,{#10000},1,128,1,142" -locations_default(#20136,#10000,1,128,1,142) -hasLocation(#20135,#20136) -#20137=* -regexpterm(#20137,30,#20135,0,"[\S--[\p{P}<>]]") -hasLocation(#20137,#20136) +regexpterm(#20113,30,#20111,0,"[\S--[@\p{Ps}\p{Pe}<>]]") +hasLocation(#20113,#20112) +#20114=* +regexpterm(#20114,20,#20113,0,"\S") +#20115=@"loc,{#10000},1,103,1,104" +locations_default(#20115,#10000,1,103,1,104) +hasLocation(#20114,#20115) +char_class_escape(#20114,"S") +#20116=* +regexpterm(#20116,23,#20113,1,"[@\p{Ps}\p{Pe}<>]") +#20117=@"loc,{#10000},1,107,1,123" +locations_default(#20117,#10000,1,107,1,123) +hasLocation(#20116,#20117) +#20118=* +regexpterm(#20118,14,#20116,0,"@") +#20119=@"loc,{#10000},1,108,1,108" +locations_default(#20119,#10000,1,108,1,108) +hasLocation(#20118,#20119) +regexp_const_value(#20118,"@") +#20120=* +regexpterm(#20120,27,#20116,1,"\p{Ps}") +#20121=@"loc,{#10000},1,109,1,114" +locations_default(#20121,#10000,1,109,1,114) +hasLocation(#20120,#20121) +unicode_property_escapename(#20120,"Ps") +#20122=* +regexpterm(#20122,27,#20116,2,"\p{Pe}") +#20123=@"loc,{#10000},1,115,1,120" +locations_default(#20123,#10000,1,115,1,120) +hasLocation(#20122,#20123) +unicode_property_escapename(#20122,"Pe") +#20124=* +regexpterm(#20124,14,#20116,3,"<") +#20125=@"loc,{#10000},1,121,1,121" +locations_default(#20125,#10000,1,121,1,121) +hasLocation(#20124,#20125) +regexp_const_value(#20124,"<") +#20126=* +regexpterm(#20126,14,#20116,4,">") +#20127=@"loc,{#10000},1,122,1,122" +locations_default(#20127,#10000,1,122,1,122) +hasLocation(#20126,#20127) +regexp_const_value(#20126,">") +#20128=* +regexpterm(#20128,14,#20105,2,"@") +#20129=@"loc,{#10000},1,126,1,126" +locations_default(#20129,#10000,1,126,1,126) +hasLocation(#20128,#20129) +regexp_const_value(#20128,"@") +#20130=* +regexpterm(#20130,13,#20105,3,"([\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+)") +#20131=@"loc,{#10000},1,127,1,167" +locations_default(#20131,#10000,1,127,1,167) +hasLocation(#20130,#20131) +is_capture(#20130,1) +#20132=* +regexpterm(#20132,1,#20130,0,"[\S--[\p{P}<>]]+(?:\.[\S--[\p{P}<>]]+)+") +#20133=@"loc,{#10000},1,128,1,166" +locations_default(#20133,#10000,1,128,1,166) +hasLocation(#20132,#20133) +#20134=* +regexpterm(#20134,9,#20132,0,"[\S--[\p{P}<>]]+") +#20135=@"loc,{#10000},1,128,1,143" +locations_default(#20135,#10000,1,128,1,143) +hasLocation(#20134,#20135) +is_greedy(#20134) +#20136=* +regexpterm(#20136,23,#20134,0,"[\S--[\p{P}<>]]") +#20137=@"loc,{#10000},1,128,1,142" +locations_default(#20137,#10000,1,128,1,142) +hasLocation(#20136,#20137) #20138=* -regexpterm(#20138,20,#20137,0,"\S") -#20139=@"loc,{#10000},1,129,1,130" -locations_default(#20139,#10000,1,129,1,130) -hasLocation(#20138,#20139) -char_class_escape(#20138,"S") -#20140=* -regexpterm(#20140,23,#20137,1,"[\p{P}<>]") -#20141=@"loc,{#10000},1,133,1,141" -locations_default(#20141,#10000,1,133,1,141) -hasLocation(#20140,#20141) -#20142=* -regexpterm(#20142,27,#20140,0,"\p{P}") -#20143=@"loc,{#10000},1,134,1,138" -locations_default(#20143,#10000,1,134,1,138) -hasLocation(#20142,#20143) -unicode_property_escapename(#20142,"P") -#20144=* -regexpterm(#20144,14,#20140,1,"<") -#20145=@"loc,{#10000},1,139,1,139" -locations_default(#20145,#10000,1,139,1,139) -hasLocation(#20144,#20145) -regexp_const_value(#20144,"<") -#20146=* -regexpterm(#20146,14,#20140,2,">") -#20147=@"loc,{#10000},1,140,1,140" -locations_default(#20147,#10000,1,140,1,140) -hasLocation(#20146,#20147) -regexp_const_value(#20146,">") -#20148=* -regexpterm(#20148,9,#20131,1,"(?:\.[\S--[\p{P}<>]]+)+") -#20149=@"loc,{#10000},1,144,1,166" -locations_default(#20149,#10000,1,144,1,166) -hasLocation(#20148,#20149) -is_greedy(#20148) -#20150=* -regexpterm(#20150,13,#20148,0,"(?:\.[\S--[\p{P}<>]]+)") -#20151=@"loc,{#10000},1,144,1,165" -locations_default(#20151,#10000,1,144,1,165) -hasLocation(#20150,#20151) -#20152=* -regexpterm(#20152,1,#20150,0,"\.[\S--[\p{P}<>]]+") -#20153=@"loc,{#10000},1,147,1,164" -locations_default(#20153,#10000,1,147,1,164) -hasLocation(#20152,#20153) -#20154=* -regexpterm(#20154,21,#20152,0,"\.") -#20155=@"loc,{#10000},1,147,1,148" -locations_default(#20155,#10000,1,147,1,148) -hasLocation(#20154,#20155) -regexp_const_value(#20154,".") -#20156=* -regexpterm(#20156,9,#20152,1,"[\S--[\p{P}<>]]+") -#20157=@"loc,{#10000},1,149,1,164" -locations_default(#20157,#10000,1,149,1,164) -hasLocation(#20156,#20157) -is_greedy(#20156) -#20158=* -regexpterm(#20158,23,#20156,0,"[\S--[\p{P}<>]]") -#20159=@"loc,{#10000},1,149,1,163" -locations_default(#20159,#10000,1,149,1,163) -hasLocation(#20158,#20159) -#20160=* -regexpterm(#20160,30,#20158,0,"[\S--[\p{P}<>]]") -hasLocation(#20160,#20159) +regexpterm(#20138,30,#20136,0,"[\S--[\p{P}<>]]") +hasLocation(#20138,#20137) +#20139=* +regexpterm(#20139,20,#20138,0,"\S") +#20140=@"loc,{#10000},1,129,1,130" +locations_default(#20140,#10000,1,129,1,130) +hasLocation(#20139,#20140) +char_class_escape(#20139,"S") +#20141=* +regexpterm(#20141,23,#20138,1,"[\p{P}<>]") +#20142=@"loc,{#10000},1,133,1,141" +locations_default(#20142,#10000,1,133,1,141) +hasLocation(#20141,#20142) +#20143=* +regexpterm(#20143,27,#20141,0,"\p{P}") +#20144=@"loc,{#10000},1,134,1,138" +locations_default(#20144,#10000,1,134,1,138) +hasLocation(#20143,#20144) +unicode_property_escapename(#20143,"P") +#20145=* +regexpterm(#20145,14,#20141,1,"<") +#20146=@"loc,{#10000},1,139,1,139" +locations_default(#20146,#10000,1,139,1,139) +hasLocation(#20145,#20146) +regexp_const_value(#20145,"<") +#20147=* +regexpterm(#20147,14,#20141,2,">") +#20148=@"loc,{#10000},1,140,1,140" +locations_default(#20148,#10000,1,140,1,140) +hasLocation(#20147,#20148) +regexp_const_value(#20147,">") +#20149=* +regexpterm(#20149,9,#20132,1,"(?:\.[\S--[\p{P}<>]]+)+") +#20150=@"loc,{#10000},1,144,1,166" +locations_default(#20150,#10000,1,144,1,166) +hasLocation(#20149,#20150) +is_greedy(#20149) +#20151=* +regexpterm(#20151,13,#20149,0,"(?:\.[\S--[\p{P}<>]]+)") +#20152=@"loc,{#10000},1,144,1,165" +locations_default(#20152,#10000,1,144,1,165) +hasLocation(#20151,#20152) +#20153=* +regexpterm(#20153,1,#20151,0,"\.[\S--[\p{P}<>]]+") +#20154=@"loc,{#10000},1,147,1,164" +locations_default(#20154,#10000,1,147,1,164) +hasLocation(#20153,#20154) +#20155=* +regexpterm(#20155,21,#20153,0,"\.") +#20156=@"loc,{#10000},1,147,1,148" +locations_default(#20156,#10000,1,147,1,148) +hasLocation(#20155,#20156) +regexp_const_value(#20155,".") +#20157=* +regexpterm(#20157,9,#20153,1,"[\S--[\p{P}<>]]+") +#20158=@"loc,{#10000},1,149,1,164" +locations_default(#20158,#10000,1,149,1,164) +hasLocation(#20157,#20158) +is_greedy(#20157) +#20159=* +regexpterm(#20159,23,#20157,0,"[\S--[\p{P}<>]]") +#20160=@"loc,{#10000},1,149,1,163" +locations_default(#20160,#10000,1,149,1,163) +hasLocation(#20159,#20160) #20161=* -regexpterm(#20161,20,#20160,0,"\S") -#20162=@"loc,{#10000},1,150,1,151" -locations_default(#20162,#10000,1,150,1,151) -hasLocation(#20161,#20162) -char_class_escape(#20161,"S") -#20163=* -regexpterm(#20163,23,#20160,1,"[\p{P}<>]") -#20164=@"loc,{#10000},1,154,1,162" -locations_default(#20164,#10000,1,154,1,162) -hasLocation(#20163,#20164) -#20165=* -regexpterm(#20165,27,#20163,0,"\p{P}") -#20166=@"loc,{#10000},1,155,1,159" -locations_default(#20166,#10000,1,155,1,159) -hasLocation(#20165,#20166) -unicode_property_escapename(#20165,"P") -#20167=* -regexpterm(#20167,14,#20163,1,"<") -#20168=@"loc,{#10000},1,160,1,160" -locations_default(#20168,#10000,1,160,1,160) -hasLocation(#20167,#20168) -regexp_const_value(#20167,"<") -#20169=* -regexpterm(#20169,14,#20163,2,">") -#20170=@"loc,{#10000},1,161,1,161" -locations_default(#20170,#10000,1,161,1,161) -hasLocation(#20169,#20170) -regexp_const_value(#20169,">") -#20171=* -entry_cfg_node(#20171,#20001) -#20172=@"loc,{#10000},1,1,1,0" -locations_default(#20172,#10000,1,1,1,0) -hasLocation(#20171,#20172) -#20173=* -exit_cfg_node(#20173,#20001) -hasLocation(#20173,#20015) -successor(#20018,#20021) -successor(#20022,#20019) -successor(#20021,#20022) -successor(#20019,#20173) -successor(#20171,#20018) +regexpterm(#20161,30,#20159,0,"[\S--[\p{P}<>]]") +hasLocation(#20161,#20160) +#20162=* +regexpterm(#20162,20,#20161,0,"\S") +#20163=@"loc,{#10000},1,150,1,151" +locations_default(#20163,#10000,1,150,1,151) +hasLocation(#20162,#20163) +char_class_escape(#20162,"S") +#20164=* +regexpterm(#20164,23,#20161,1,"[\p{P}<>]") +#20165=@"loc,{#10000},1,154,1,162" +locations_default(#20165,#10000,1,154,1,162) +hasLocation(#20164,#20165) +#20166=* +regexpterm(#20166,27,#20164,0,"\p{P}") +#20167=@"loc,{#10000},1,155,1,159" +locations_default(#20167,#10000,1,155,1,159) +hasLocation(#20166,#20167) +unicode_property_escapename(#20166,"P") +#20168=* +regexpterm(#20168,14,#20164,1,"<") +#20169=@"loc,{#10000},1,160,1,160" +locations_default(#20169,#10000,1,160,1,160) +hasLocation(#20168,#20169) +regexp_const_value(#20168,"<") +#20170=* +regexpterm(#20170,14,#20164,2,">") +#20171=@"loc,{#10000},1,161,1,161" +locations_default(#20171,#10000,1,161,1,161) +hasLocation(#20170,#20171) +regexp_const_value(#20170,">") +#20172=* +entry_cfg_node(#20172,#20001) +#20173=@"loc,{#10000},1,1,1,0" +locations_default(#20173,#10000,1,1,1,0) +hasLocation(#20172,#20173) +#20174=* +exit_cfg_node(#20174,#20001) +hasLocation(#20174,#20015) +successor(#20019,#20022) +successor(#20023,#20020) +successor(#20022,#20023) +successor(#20020,#20174) +successor(#20172,#20019) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/es2024/output/trap/union.js.trap b/javascript/extractor/tests/es2024/output/trap/union.js.trap index 31d98f755e85..563e012f3560 100644 --- a/javascript/extractor/tests/es2024/output/trap/union.js.trap +++ b/javascript/extractor/tests/es2024/output/trap/union.js.trap @@ -115,278 +115,280 @@ toplevels(#20001,0) #20040=@"loc,{#10000},1,1,7,0" locations_default(#20040,#10000,1,1,7,0) hasLocation(#20001,#20040) -#20041=* -stmts(#20041,2,#20001,0,"/[\p{Sc ... ji}]/v;") -hasLocation(#20041,#20003) -stmt_containers(#20041,#20001) +#20041=@"var;{this};{#20000}" +variables(#20041,"this",#20000) #20042=* -exprs(#20042,5,#20041,0,"/[\p{Sc ... oji}]/v") -hasLocation(#20042,#20015) -enclosing_stmt(#20042,#20041) -expr_containers(#20042,#20001) -literals("/[\p{Script_Extensions=Greek}\p{RGI_Emoji}]/v","/[\p{Script_Extensions=Greek}\p{RGI_Emoji}]/v",#20042) +stmts(#20042,2,#20001,0,"/[\p{Sc ... ji}]/v;") +hasLocation(#20042,#20003) +stmt_containers(#20042,#20001) #20043=* -regexpterm(#20043,23,#20042,0,"[\p{Script_Extensions=Greek}\p{RGI_Emoji}]") -#20044=@"loc,{#10000},1,2,1,43" -locations_default(#20044,#10000,1,2,1,43) -hasLocation(#20043,#20044) -#20045=* -regexpterm(#20045,27,#20043,0,"\p{Script_Extensions=Greek}") -#20046=@"loc,{#10000},1,3,1,29" -locations_default(#20046,#10000,1,3,1,29) -hasLocation(#20045,#20046) -unicode_property_escapename(#20045,"Script_Extensions") -unicode_property_escapevalue(#20045,"Greek") -#20047=* -regexpterm(#20047,27,#20043,1,"\p{RGI_Emoji}") -#20048=@"loc,{#10000},1,30,1,42" -locations_default(#20048,#10000,1,30,1,42) -hasLocation(#20047,#20048) -unicode_property_escapename(#20047,"RGI_Emoji") -#20049=* -stmts(#20049,2,#20001,1,"/[[abc][cbd]]/v;") -hasLocation(#20049,#20005) -stmt_containers(#20049,#20001) +exprs(#20043,5,#20042,0,"/[\p{Sc ... oji}]/v") +hasLocation(#20043,#20015) +enclosing_stmt(#20043,#20042) +expr_containers(#20043,#20001) +literals("/[\p{Script_Extensions=Greek}\p{RGI_Emoji}]/v","/[\p{Script_Extensions=Greek}\p{RGI_Emoji}]/v",#20043) +#20044=* +regexpterm(#20044,23,#20043,0,"[\p{Script_Extensions=Greek}\p{RGI_Emoji}]") +#20045=@"loc,{#10000},1,2,1,43" +locations_default(#20045,#10000,1,2,1,43) +hasLocation(#20044,#20045) +#20046=* +regexpterm(#20046,27,#20044,0,"\p{Script_Extensions=Greek}") +#20047=@"loc,{#10000},1,3,1,29" +locations_default(#20047,#10000,1,3,1,29) +hasLocation(#20046,#20047) +unicode_property_escapename(#20046,"Script_Extensions") +unicode_property_escapevalue(#20046,"Greek") +#20048=* +regexpterm(#20048,27,#20044,1,"\p{RGI_Emoji}") +#20049=@"loc,{#10000},1,30,1,42" +locations_default(#20049,#10000,1,30,1,42) +hasLocation(#20048,#20049) +unicode_property_escapename(#20048,"RGI_Emoji") #20050=* -exprs(#20050,5,#20049,0,"/[[abc][cbd]]/v") -hasLocation(#20050,#20019) -enclosing_stmt(#20050,#20049) -expr_containers(#20050,#20001) -literals("/[[abc][cbd]]/v","/[[abc][cbd]]/v",#20050) +stmts(#20050,2,#20001,1,"/[[abc][cbd]]/v;") +hasLocation(#20050,#20005) +stmt_containers(#20050,#20001) #20051=* -regexpterm(#20051,23,#20050,0,"[[abc][cbd]]") -#20052=@"loc,{#10000},2,2,2,13" -locations_default(#20052,#10000,2,2,2,13) -hasLocation(#20051,#20052) -#20053=* -regexpterm(#20053,23,#20051,0,"[abc]") -#20054=@"loc,{#10000},2,3,2,7" -locations_default(#20054,#10000,2,3,2,7) -hasLocation(#20053,#20054) -#20055=* -regexpterm(#20055,14,#20053,0,"a") -#20056=@"loc,{#10000},2,4,2,4" -locations_default(#20056,#10000,2,4,2,4) -hasLocation(#20055,#20056) -regexp_const_value(#20055,"a") -#20057=* -regexpterm(#20057,14,#20053,1,"b") -#20058=@"loc,{#10000},2,5,2,5" -locations_default(#20058,#10000,2,5,2,5) -hasLocation(#20057,#20058) -regexp_const_value(#20057,"b") -#20059=* -regexpterm(#20059,14,#20053,2,"c") -#20060=@"loc,{#10000},2,6,2,6" -locations_default(#20060,#10000,2,6,2,6) -hasLocation(#20059,#20060) -regexp_const_value(#20059,"c") -#20061=* -regexpterm(#20061,23,#20051,1,"[cbd]") -#20062=@"loc,{#10000},2,8,2,12" -locations_default(#20062,#10000,2,8,2,12) -hasLocation(#20061,#20062) -#20063=* -regexpterm(#20063,14,#20061,0,"c") -#20064=@"loc,{#10000},2,9,2,9" -locations_default(#20064,#10000,2,9,2,9) -hasLocation(#20063,#20064) -regexp_const_value(#20063,"c") -#20065=* -regexpterm(#20065,14,#20061,1,"b") -#20066=@"loc,{#10000},2,10,2,10" -locations_default(#20066,#10000,2,10,2,10) -hasLocation(#20065,#20066) -regexp_const_value(#20065,"b") -#20067=* -regexpterm(#20067,14,#20061,2,"d") -#20068=@"loc,{#10000},2,11,2,11" -locations_default(#20068,#10000,2,11,2,11) -hasLocation(#20067,#20068) -regexp_const_value(#20067,"d") -#20069=* -stmts(#20069,2,#20001,2,"/[\p{Em ... byz]/v;") -hasLocation(#20069,#20007) -stmt_containers(#20069,#20001) +exprs(#20051,5,#20050,0,"/[[abc][cbd]]/v") +hasLocation(#20051,#20019) +enclosing_stmt(#20051,#20050) +expr_containers(#20051,#20001) +literals("/[[abc][cbd]]/v","/[[abc][cbd]]/v",#20051) +#20052=* +regexpterm(#20052,23,#20051,0,"[[abc][cbd]]") +#20053=@"loc,{#10000},2,2,2,13" +locations_default(#20053,#10000,2,2,2,13) +hasLocation(#20052,#20053) +#20054=* +regexpterm(#20054,23,#20052,0,"[abc]") +#20055=@"loc,{#10000},2,3,2,7" +locations_default(#20055,#10000,2,3,2,7) +hasLocation(#20054,#20055) +#20056=* +regexpterm(#20056,14,#20054,0,"a") +#20057=@"loc,{#10000},2,4,2,4" +locations_default(#20057,#10000,2,4,2,4) +hasLocation(#20056,#20057) +regexp_const_value(#20056,"a") +#20058=* +regexpterm(#20058,14,#20054,1,"b") +#20059=@"loc,{#10000},2,5,2,5" +locations_default(#20059,#10000,2,5,2,5) +hasLocation(#20058,#20059) +regexp_const_value(#20058,"b") +#20060=* +regexpterm(#20060,14,#20054,2,"c") +#20061=@"loc,{#10000},2,6,2,6" +locations_default(#20061,#10000,2,6,2,6) +hasLocation(#20060,#20061) +regexp_const_value(#20060,"c") +#20062=* +regexpterm(#20062,23,#20052,1,"[cbd]") +#20063=@"loc,{#10000},2,8,2,12" +locations_default(#20063,#10000,2,8,2,12) +hasLocation(#20062,#20063) +#20064=* +regexpterm(#20064,14,#20062,0,"c") +#20065=@"loc,{#10000},2,9,2,9" +locations_default(#20065,#10000,2,9,2,9) +hasLocation(#20064,#20065) +regexp_const_value(#20064,"c") +#20066=* +regexpterm(#20066,14,#20062,1,"b") +#20067=@"loc,{#10000},2,10,2,10" +locations_default(#20067,#10000,2,10,2,10) +hasLocation(#20066,#20067) +regexp_const_value(#20066,"b") +#20068=* +regexpterm(#20068,14,#20062,2,"d") +#20069=@"loc,{#10000},2,11,2,11" +locations_default(#20069,#10000,2,11,2,11) +hasLocation(#20068,#20069) +regexp_const_value(#20068,"d") #20070=* -exprs(#20070,5,#20069,0,"/[\p{Em ... }byz]/v") -hasLocation(#20070,#20023) -enclosing_stmt(#20070,#20069) -expr_containers(#20070,#20001) -literals("/[\p{Emoji}\q{a&}byz]/v","/[\p{Emoji}\q{a&}byz]/v",#20070) +stmts(#20070,2,#20001,2,"/[\p{Em ... byz]/v;") +hasLocation(#20070,#20007) +stmt_containers(#20070,#20001) #20071=* -regexpterm(#20071,23,#20070,0,"[\p{Emoji}\q{a&}byz]") -#20072=@"loc,{#10000},3,2,3,21" -locations_default(#20072,#10000,3,2,3,21) -hasLocation(#20071,#20072) -#20073=* -regexpterm(#20073,27,#20071,0,"\p{Emoji}") -#20074=@"loc,{#10000},3,3,3,11" -locations_default(#20074,#10000,3,3,3,11) -hasLocation(#20073,#20074) -unicode_property_escapename(#20073,"Emoji") -#20075=* -regexpterm(#20075,28,#20071,1,"\q{a&}") -#20076=@"loc,{#10000},3,12,3,17" -locations_default(#20076,#10000,3,12,3,17) -hasLocation(#20075,#20076) -#20077=* -regexpterm(#20077,14,#20075,0,"a&") -#20078=@"loc,{#10000},3,15,3,16" -locations_default(#20078,#10000,3,15,3,16) -hasLocation(#20077,#20078) -regexp_const_value(#20077,"a&") -#20079=* -regexpterm(#20079,14,#20071,2,"b") -#20080=@"loc,{#10000},3,18,3,18" -locations_default(#20080,#10000,3,18,3,18) -hasLocation(#20079,#20080) -regexp_const_value(#20079,"b") -#20081=* -regexpterm(#20081,14,#20071,3,"y") -#20082=@"loc,{#10000},3,19,3,19" -locations_default(#20082,#10000,3,19,3,19) -hasLocation(#20081,#20082) -regexp_const_value(#20081,"y") -#20083=* -regexpterm(#20083,14,#20071,4,"z") -#20084=@"loc,{#10000},3,20,3,20" -locations_default(#20084,#10000,3,20,3,20) -hasLocation(#20083,#20084) -regexp_const_value(#20083,"z") -#20085=* -stmts(#20085,2,#20001,3,"/[\q{\\\}a&}byz]/v;") -hasLocation(#20085,#20009) -stmt_containers(#20085,#20001) +exprs(#20071,5,#20070,0,"/[\p{Em ... }byz]/v") +hasLocation(#20071,#20023) +enclosing_stmt(#20071,#20070) +expr_containers(#20071,#20001) +literals("/[\p{Emoji}\q{a&}byz]/v","/[\p{Emoji}\q{a&}byz]/v",#20071) +#20072=* +regexpterm(#20072,23,#20071,0,"[\p{Emoji}\q{a&}byz]") +#20073=@"loc,{#10000},3,2,3,21" +locations_default(#20073,#10000,3,2,3,21) +hasLocation(#20072,#20073) +#20074=* +regexpterm(#20074,27,#20072,0,"\p{Emoji}") +#20075=@"loc,{#10000},3,3,3,11" +locations_default(#20075,#10000,3,3,3,11) +hasLocation(#20074,#20075) +unicode_property_escapename(#20074,"Emoji") +#20076=* +regexpterm(#20076,28,#20072,1,"\q{a&}") +#20077=@"loc,{#10000},3,12,3,17" +locations_default(#20077,#10000,3,12,3,17) +hasLocation(#20076,#20077) +#20078=* +regexpterm(#20078,14,#20076,0,"a&") +#20079=@"loc,{#10000},3,15,3,16" +locations_default(#20079,#10000,3,15,3,16) +hasLocation(#20078,#20079) +regexp_const_value(#20078,"a&") +#20080=* +regexpterm(#20080,14,#20072,2,"b") +#20081=@"loc,{#10000},3,18,3,18" +locations_default(#20081,#10000,3,18,3,18) +hasLocation(#20080,#20081) +regexp_const_value(#20080,"b") +#20082=* +regexpterm(#20082,14,#20072,3,"y") +#20083=@"loc,{#10000},3,19,3,19" +locations_default(#20083,#10000,3,19,3,19) +hasLocation(#20082,#20083) +regexp_const_value(#20082,"y") +#20084=* +regexpterm(#20084,14,#20072,4,"z") +#20085=@"loc,{#10000},3,20,3,20" +locations_default(#20085,#10000,3,20,3,20) +hasLocation(#20084,#20085) +regexp_const_value(#20084,"z") #20086=* -exprs(#20086,5,#20085,0,"/[\q{\\\}a&}byz]/v") -hasLocation(#20086,#20027) -enclosing_stmt(#20086,#20085) -expr_containers(#20086,#20001) -literals("/[\q{\\\}a&}byz]/v","/[\q{\\\}a&}byz]/v",#20086) +stmts(#20086,2,#20001,3,"/[\q{\\\}a&}byz]/v;") +hasLocation(#20086,#20009) +stmt_containers(#20086,#20001) #20087=* -regexpterm(#20087,23,#20086,0,"[\q{\\\}a&}byz]") -#20088=@"loc,{#10000},4,2,4,16" -locations_default(#20088,#10000,4,2,4,16) -hasLocation(#20087,#20088) -#20089=* -regexpterm(#20089,28,#20087,0,"\q{\\\}a&}") -#20090=@"loc,{#10000},4,3,4,12" -locations_default(#20090,#10000,4,3,4,12) -hasLocation(#20089,#20090) -#20091=* -regexpterm(#20091,14,#20089,0,"\\\}a&") -#20092=@"loc,{#10000},4,6,4,11" -locations_default(#20092,#10000,4,6,4,11) -hasLocation(#20091,#20092) -regexp_const_value(#20091,"\\\}a&") -#20093=* -regexpterm(#20093,14,#20087,1,"b") -#20094=@"loc,{#10000},4,13,4,13" -locations_default(#20094,#10000,4,13,4,13) -hasLocation(#20093,#20094) -regexp_const_value(#20093,"b") -#20095=* -regexpterm(#20095,14,#20087,2,"y") -#20096=@"loc,{#10000},4,14,4,14" -locations_default(#20096,#10000,4,14,4,14) -hasLocation(#20095,#20096) -regexp_const_value(#20095,"y") -#20097=* -regexpterm(#20097,14,#20087,3,"z") -#20098=@"loc,{#10000},4,15,4,15" -locations_default(#20098,#10000,4,15,4,15) -hasLocation(#20097,#20098) -regexp_const_value(#20097,"z") -#20099=* -stmts(#20099,2,#20001,4,"/[\q{\\}]/v;") -hasLocation(#20099,#20011) -stmt_containers(#20099,#20001) +exprs(#20087,5,#20086,0,"/[\q{\\\}a&}byz]/v") +hasLocation(#20087,#20027) +enclosing_stmt(#20087,#20086) +expr_containers(#20087,#20001) +literals("/[\q{\\\}a&}byz]/v","/[\q{\\\}a&}byz]/v",#20087) +#20088=* +regexpterm(#20088,23,#20087,0,"[\q{\\\}a&}byz]") +#20089=@"loc,{#10000},4,2,4,16" +locations_default(#20089,#10000,4,2,4,16) +hasLocation(#20088,#20089) +#20090=* +regexpterm(#20090,28,#20088,0,"\q{\\\}a&}") +#20091=@"loc,{#10000},4,3,4,12" +locations_default(#20091,#10000,4,3,4,12) +hasLocation(#20090,#20091) +#20092=* +regexpterm(#20092,14,#20090,0,"\\\}a&") +#20093=@"loc,{#10000},4,6,4,11" +locations_default(#20093,#10000,4,6,4,11) +hasLocation(#20092,#20093) +regexp_const_value(#20092,"\\\}a&") +#20094=* +regexpterm(#20094,14,#20088,1,"b") +#20095=@"loc,{#10000},4,13,4,13" +locations_default(#20095,#10000,4,13,4,13) +hasLocation(#20094,#20095) +regexp_const_value(#20094,"b") +#20096=* +regexpterm(#20096,14,#20088,2,"y") +#20097=@"loc,{#10000},4,14,4,14" +locations_default(#20097,#10000,4,14,4,14) +hasLocation(#20096,#20097) +regexp_const_value(#20096,"y") +#20098=* +regexpterm(#20098,14,#20088,3,"z") +#20099=@"loc,{#10000},4,15,4,15" +locations_default(#20099,#10000,4,15,4,15) +hasLocation(#20098,#20099) +regexp_const_value(#20098,"z") #20100=* -exprs(#20100,5,#20099,0,"/[\q{\\}]/v") -hasLocation(#20100,#20031) -enclosing_stmt(#20100,#20099) -expr_containers(#20100,#20001) -literals("/[\q{\\}]/v","/[\q{\\}]/v",#20100) +stmts(#20100,2,#20001,4,"/[\q{\\}]/v;") +hasLocation(#20100,#20011) +stmt_containers(#20100,#20001) #20101=* -regexpterm(#20101,23,#20100,0,"[\q{\\}]") -#20102=@"loc,{#10000},5,2,5,9" -locations_default(#20102,#10000,5,2,5,9) -hasLocation(#20101,#20102) -#20103=* -regexpterm(#20103,28,#20101,0,"\q{\\}") -#20104=@"loc,{#10000},5,3,5,8" -locations_default(#20104,#10000,5,3,5,8) -hasLocation(#20103,#20104) -#20105=* -regexpterm(#20105,14,#20103,0,"\\") -#20106=@"loc,{#10000},5,6,5,7" -locations_default(#20106,#10000,5,6,5,7) -hasLocation(#20105,#20106) -regexp_const_value(#20105,"\\") -#20107=* -stmts(#20107,2,#20001,5,"/[\q{abc|cbd|\}}]/v;") -hasLocation(#20107,#20013) -stmt_containers(#20107,#20001) +exprs(#20101,5,#20100,0,"/[\q{\\}]/v") +hasLocation(#20101,#20031) +enclosing_stmt(#20101,#20100) +expr_containers(#20101,#20001) +literals("/[\q{\\}]/v","/[\q{\\}]/v",#20101) +#20102=* +regexpterm(#20102,23,#20101,0,"[\q{\\}]") +#20103=@"loc,{#10000},5,2,5,9" +locations_default(#20103,#10000,5,2,5,9) +hasLocation(#20102,#20103) +#20104=* +regexpterm(#20104,28,#20102,0,"\q{\\}") +#20105=@"loc,{#10000},5,3,5,8" +locations_default(#20105,#10000,5,3,5,8) +hasLocation(#20104,#20105) +#20106=* +regexpterm(#20106,14,#20104,0,"\\") +#20107=@"loc,{#10000},5,6,5,7" +locations_default(#20107,#10000,5,6,5,7) +hasLocation(#20106,#20107) +regexp_const_value(#20106,"\\") #20108=* -exprs(#20108,5,#20107,0,"/[\q{abc|cbd|\}}]/v") -hasLocation(#20108,#20035) -enclosing_stmt(#20108,#20107) -expr_containers(#20108,#20001) -literals("/[\q{abc|cbd|\}}]/v","/[\q{abc|cbd|\}}]/v",#20108) +stmts(#20108,2,#20001,5,"/[\q{abc|cbd|\}}]/v;") +hasLocation(#20108,#20013) +stmt_containers(#20108,#20001) #20109=* -regexpterm(#20109,23,#20108,0,"[\q{abc|cbd|\}}]") -#20110=@"loc,{#10000},6,2,6,17" -locations_default(#20110,#10000,6,2,6,17) -hasLocation(#20109,#20110) -#20111=* -regexpterm(#20111,28,#20109,0,"\q{abc|cbd|\}}") -#20112=@"loc,{#10000},6,3,6,16" -locations_default(#20112,#10000,6,3,6,16) -hasLocation(#20111,#20112) -#20113=* -regexpterm(#20113,0,#20111,0,"abc|cbd|\}") -#20114=@"loc,{#10000},6,6,6,15" -locations_default(#20114,#10000,6,6,6,15) -hasLocation(#20113,#20114) -#20115=* -regexpterm(#20115,14,#20113,0,"abc") -#20116=@"loc,{#10000},6,6,6,8" -locations_default(#20116,#10000,6,6,6,8) -hasLocation(#20115,#20116) -regexp_const_value(#20115,"abc") -#20117=* -regexpterm(#20117,14,#20113,1,"cbd") -#20118=@"loc,{#10000},6,10,6,12" -locations_default(#20118,#10000,6,10,6,12) -hasLocation(#20117,#20118) -regexp_const_value(#20117,"cbd") -#20119=* -regexpterm(#20119,14,#20113,2,"\}") -#20120=@"loc,{#10000},6,14,6,15" -locations_default(#20120,#10000,6,14,6,15) -hasLocation(#20119,#20120) -regexp_const_value(#20119,"\}") -#20121=* -entry_cfg_node(#20121,#20001) -#20122=@"loc,{#10000},1,1,1,0" -locations_default(#20122,#10000,1,1,1,0) -hasLocation(#20121,#20122) -#20123=* -exit_cfg_node(#20123,#20001) -hasLocation(#20123,#20039) -successor(#20107,#20108) -successor(#20108,#20123) -successor(#20099,#20100) -successor(#20100,#20107) -successor(#20085,#20086) -successor(#20086,#20099) -successor(#20069,#20070) -successor(#20070,#20085) -successor(#20049,#20050) -successor(#20050,#20069) -successor(#20041,#20042) -successor(#20042,#20049) -successor(#20121,#20041) +exprs(#20109,5,#20108,0,"/[\q{abc|cbd|\}}]/v") +hasLocation(#20109,#20035) +enclosing_stmt(#20109,#20108) +expr_containers(#20109,#20001) +literals("/[\q{abc|cbd|\}}]/v","/[\q{abc|cbd|\}}]/v",#20109) +#20110=* +regexpterm(#20110,23,#20109,0,"[\q{abc|cbd|\}}]") +#20111=@"loc,{#10000},6,2,6,17" +locations_default(#20111,#10000,6,2,6,17) +hasLocation(#20110,#20111) +#20112=* +regexpterm(#20112,28,#20110,0,"\q{abc|cbd|\}}") +#20113=@"loc,{#10000},6,3,6,16" +locations_default(#20113,#10000,6,3,6,16) +hasLocation(#20112,#20113) +#20114=* +regexpterm(#20114,0,#20112,0,"abc|cbd|\}") +#20115=@"loc,{#10000},6,6,6,15" +locations_default(#20115,#10000,6,6,6,15) +hasLocation(#20114,#20115) +#20116=* +regexpterm(#20116,14,#20114,0,"abc") +#20117=@"loc,{#10000},6,6,6,8" +locations_default(#20117,#10000,6,6,6,8) +hasLocation(#20116,#20117) +regexp_const_value(#20116,"abc") +#20118=* +regexpterm(#20118,14,#20114,1,"cbd") +#20119=@"loc,{#10000},6,10,6,12" +locations_default(#20119,#10000,6,10,6,12) +hasLocation(#20118,#20119) +regexp_const_value(#20118,"cbd") +#20120=* +regexpterm(#20120,14,#20114,2,"\}") +#20121=@"loc,{#10000},6,14,6,15" +locations_default(#20121,#10000,6,14,6,15) +hasLocation(#20120,#20121) +regexp_const_value(#20120,"\}") +#20122=* +entry_cfg_node(#20122,#20001) +#20123=@"loc,{#10000},1,1,1,0" +locations_default(#20123,#10000,1,1,1,0) +hasLocation(#20122,#20123) +#20124=* +exit_cfg_node(#20124,#20001) +hasLocation(#20124,#20039) +successor(#20108,#20109) +successor(#20109,#20124) +successor(#20100,#20101) +successor(#20101,#20108) +successor(#20086,#20087) +successor(#20087,#20100) +successor(#20070,#20071) +successor(#20071,#20086) +successor(#20050,#20051) +successor(#20051,#20070) +successor(#20042,#20043) +successor(#20043,#20050) +successor(#20122,#20042) numlines(#10000,6,6,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/async-generators.js.trap b/javascript/extractor/tests/esnext/output/trap/async-generators.js.trap index 172c44374459..b2d2130137d6 100644 --- a/javascript/extractor/tests/esnext/output/trap/async-generators.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/async-generators.js.trap @@ -186,146 +186,152 @@ hasLocation(#20001,#20066) variables(#20067,"foo",#20000) #20068=@"var;{bar};{#20000}" variables(#20068,"bar",#20000) -#20069=* -stmts(#20069,17,#20001,0,"async f ... o() {\n}") -#20070=@"loc,{#10000},1,1,2,1" -locations_default(#20070,#10000,1,1,2,1) -hasLocation(#20069,#20070) -stmt_containers(#20069,#20001) -#20071=* -exprs(#20071,78,#20069,-1,"foo") -hasLocation(#20071,#20021) -expr_containers(#20071,#20069) -literals("foo","foo",#20071) -decl(#20071,#20067) +#20069=@"var;{this};{#20000}" +variables(#20069,"this",#20000) +#20070=* +stmts(#20070,17,#20001,0,"async f ... o() {\n}") +#20071=@"loc,{#10000},1,1,2,1" +locations_default(#20071,#10000,1,1,2,1) +hasLocation(#20070,#20071) +stmt_containers(#20070,#20001) #20072=* -scopes(#20072,1) -scopenodes(#20069,#20072) -scopenesting(#20072,#20000) -#20073=@"var;{arguments};{#20072}" -variables(#20073,"arguments",#20072) -is_arguments_object(#20073) -is_generator(#20069) -is_async(#20069) -#20074=* -stmts(#20074,1,#20069,-2,"{\n}") -#20075=@"loc,{#10000},1,23,2,1" -locations_default(#20075,#10000,1,23,2,1) -hasLocation(#20074,#20075) -stmt_containers(#20074,#20069) +exprs(#20072,78,#20070,-1,"foo") +hasLocation(#20072,#20021) +expr_containers(#20072,#20070) +literals("foo","foo",#20072) +decl(#20072,#20067) +#20073=* +scopes(#20073,1) +scopenodes(#20070,#20073) +scopenesting(#20073,#20000) +#20074=@"var;{this};{#20073}" +variables(#20074,"this",#20073) +#20075=@"var;{arguments};{#20073}" +variables(#20075,"arguments",#20073) +is_arguments_object(#20075) +is_generator(#20070) +is_async(#20070) #20076=* -stmts(#20076,17,#20001,1,"async f ... o());\n}") -#20077=@"loc,{#10000},4,1,6,1" -locations_default(#20077,#10000,4,1,6,1) +stmts(#20076,1,#20070,-2,"{\n}") +#20077=@"loc,{#10000},1,23,2,1" +locations_default(#20077,#10000,1,23,2,1) hasLocation(#20076,#20077) -stmt_containers(#20076,#20001) +stmt_containers(#20076,#20070) #20078=* -exprs(#20078,78,#20076,-1,"bar") -hasLocation(#20078,#20034) -expr_containers(#20078,#20076) -literals("bar","bar",#20078) -decl(#20078,#20068) -#20079=* -scopes(#20079,1) -scopenodes(#20076,#20079) -scopenesting(#20079,#20000) -#20080=@"var;{x};{#20079}" -variables(#20080,"x",#20079) -#20081=@"var;{arguments};{#20079}" -variables(#20081,"arguments",#20079) -is_arguments_object(#20081) -is_async(#20076) -#20082=* -stmts(#20082,1,#20076,-2,"{\n for ... o());\n}") -#20083=@"loc,{#10000},4,22,6,1" -locations_default(#20083,#10000,4,22,6,1) -hasLocation(#20082,#20083) -stmt_containers(#20082,#20076) -#20084=* -stmts(#20084,21,#20082,0,"for awa ... foo());") -#20085=@"loc,{#10000},5,3,5,28" -locations_default(#20085,#10000,5,3,5,28) -hasLocation(#20084,#20085) -stmt_containers(#20084,#20076) -#20086=* -exprs(#20086,13,#20084,1,"foo()") -#20087=@"loc,{#10000},5,22,5,26" -locations_default(#20087,#10000,5,22,5,26) -hasLocation(#20086,#20087) -enclosing_stmt(#20086,#20084) -expr_containers(#20086,#20076) -#20088=* -exprs(#20088,79,#20086,-1,"foo") -hasLocation(#20088,#20054) -enclosing_stmt(#20088,#20084) -expr_containers(#20088,#20076) -literals("foo","foo",#20088) -bind(#20088,#20067) +stmts(#20078,17,#20001,1,"async f ... o());\n}") +#20079=@"loc,{#10000},4,1,6,1" +locations_default(#20079,#10000,4,1,6,1) +hasLocation(#20078,#20079) +stmt_containers(#20078,#20001) +#20080=* +exprs(#20080,78,#20078,-1,"bar") +hasLocation(#20080,#20034) +expr_containers(#20080,#20078) +literals("bar","bar",#20080) +decl(#20080,#20068) +#20081=* +scopes(#20081,1) +scopenodes(#20078,#20081) +scopenesting(#20081,#20000) +#20082=@"var;{x};{#20081}" +variables(#20082,"x",#20081) +#20083=@"var;{this};{#20081}" +variables(#20083,"this",#20081) +#20084=@"var;{arguments};{#20081}" +variables(#20084,"arguments",#20081) +is_arguments_object(#20084) +is_async(#20078) +#20085=* +stmts(#20085,1,#20078,-2,"{\n for ... o());\n}") +#20086=@"loc,{#10000},4,22,6,1" +locations_default(#20086,#10000,4,22,6,1) +hasLocation(#20085,#20086) +stmt_containers(#20085,#20078) +#20087=* +stmts(#20087,21,#20085,0,"for awa ... foo());") +#20088=@"loc,{#10000},5,3,5,28" +locations_default(#20088,#10000,5,3,5,28) +hasLocation(#20087,#20088) +stmt_containers(#20087,#20078) #20089=* -stmts(#20089,18,#20084,0,"var x") -#20090=@"loc,{#10000},5,13,5,17" -locations_default(#20090,#10000,5,13,5,17) +exprs(#20089,13,#20087,1,"foo()") +#20090=@"loc,{#10000},5,22,5,26" +locations_default(#20090,#10000,5,22,5,26) hasLocation(#20089,#20090) -stmt_containers(#20089,#20076) +enclosing_stmt(#20089,#20087) +expr_containers(#20089,#20078) #20091=* -exprs(#20091,64,#20089,0,"x") -hasLocation(#20091,#20050) -enclosing_stmt(#20091,#20089) -expr_containers(#20091,#20076) +exprs(#20091,79,#20089,-1,"foo") +hasLocation(#20091,#20054) +enclosing_stmt(#20091,#20087) +expr_containers(#20091,#20078) +literals("foo","foo",#20091) +bind(#20091,#20067) #20092=* -exprs(#20092,78,#20091,0,"x") -hasLocation(#20092,#20050) -enclosing_stmt(#20092,#20089) -expr_containers(#20092,#20076) -literals("x","x",#20092) -decl(#20092,#20080) -#20093=* -stmts(#20093,0,#20084,2,";") -hasLocation(#20093,#20062) -stmt_containers(#20093,#20076) -is_for_await_of(#20084) +stmts(#20092,18,#20087,0,"var x") +#20093=@"loc,{#10000},5,13,5,17" +locations_default(#20093,#10000,5,13,5,17) +hasLocation(#20092,#20093) +stmt_containers(#20092,#20078) #20094=* -entry_cfg_node(#20094,#20001) -#20095=@"loc,{#10000},1,1,1,0" -locations_default(#20095,#10000,1,1,1,0) -hasLocation(#20094,#20095) +exprs(#20094,64,#20092,0,"x") +hasLocation(#20094,#20050) +enclosing_stmt(#20094,#20092) +expr_containers(#20094,#20078) +#20095=* +exprs(#20095,78,#20094,0,"x") +hasLocation(#20095,#20050) +enclosing_stmt(#20095,#20092) +expr_containers(#20095,#20078) +literals("x","x",#20095) +decl(#20095,#20082) #20096=* -exit_cfg_node(#20096,#20001) -hasLocation(#20096,#20065) -successor(#20076,#20096) +stmts(#20096,0,#20087,2,";") +hasLocation(#20096,#20062) +stmt_containers(#20096,#20078) +is_for_await_of(#20087) #20097=* -entry_cfg_node(#20097,#20076) -#20098=@"loc,{#10000},4,1,4,0" -locations_default(#20098,#10000,4,1,4,0) +entry_cfg_node(#20097,#20001) +#20098=@"loc,{#10000},1,1,1,0" +locations_default(#20098,#10000,1,1,1,0) hasLocation(#20097,#20098) #20099=* -exit_cfg_node(#20099,#20076) -#20100=@"loc,{#10000},6,2,6,1" -locations_default(#20100,#10000,6,2,6,1) -hasLocation(#20099,#20100) -successor(#20088,#20086) -successor(#20086,#20084) -successor(#20084,#20089) -successor(#20084,#20099) -successor(#20093,#20084) -successor(#20089,#20092) -successor(#20092,#20091) -successor(#20091,#20093) -successor(#20082,#20088) -successor(#20097,#20082) -successor(#20069,#20076) -#20101=* -entry_cfg_node(#20101,#20069) -hasLocation(#20101,#20095) +exit_cfg_node(#20099,#20001) +hasLocation(#20099,#20065) +successor(#20078,#20099) +#20100=* +entry_cfg_node(#20100,#20078) +#20101=@"loc,{#10000},4,1,4,0" +locations_default(#20101,#10000,4,1,4,0) +hasLocation(#20100,#20101) #20102=* -exit_cfg_node(#20102,#20069) -#20103=@"loc,{#10000},2,2,2,1" -locations_default(#20103,#10000,2,2,2,1) +exit_cfg_node(#20102,#20078) +#20103=@"loc,{#10000},6,2,6,1" +locations_default(#20103,#10000,6,2,6,1) hasLocation(#20102,#20103) -successor(#20074,#20102) -successor(#20101,#20074) -successor(#20078,#20069) -successor(#20071,#20078) -successor(#20094,#20071) +successor(#20091,#20089) +successor(#20089,#20087) +successor(#20087,#20092) +successor(#20087,#20102) +successor(#20096,#20087) +successor(#20092,#20095) +successor(#20095,#20094) +successor(#20094,#20096) +successor(#20085,#20091) +successor(#20100,#20085) +successor(#20070,#20078) +#20104=* +entry_cfg_node(#20104,#20070) +hasLocation(#20104,#20098) +#20105=* +exit_cfg_node(#20105,#20070) +#20106=@"loc,{#10000},2,2,2,1" +locations_default(#20106,#10000,2,2,2,1) +hasLocation(#20105,#20106) +successor(#20076,#20105) +successor(#20104,#20076) +successor(#20080,#20070) +successor(#20072,#20080) +successor(#20097,#20072) numlines(#10000,6,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/catchGuardAndNoBinding.js.trap b/javascript/extractor/tests/esnext/output/trap/catchGuardAndNoBinding.js.trap index 49ae2b30eb0d..5ab625456509 100644 --- a/javascript/extractor/tests/esnext/output/trap/catchGuardAndNoBinding.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/catchGuardAndNoBinding.js.trap @@ -354,289 +354,291 @@ toplevels(#20001,0) #20134=@"loc,{#10000},1,1,11,0" locations_default(#20134,#10000,1,1,11,0) hasLocation(#20001,#20134) -#20135=* -stmts(#20135,11,#20001,0,"try {}\n ... atch {}") -#20136=@"loc,{#10000},1,1,4,8" -locations_default(#20136,#10000,1,1,4,8) -hasLocation(#20135,#20136) -stmt_containers(#20135,#20001) -#20137=* -stmts(#20137,1,#20135,0,"{}") -#20138=@"loc,{#10000},1,5,1,6" -locations_default(#20138,#10000,1,5,1,6) -hasLocation(#20137,#20138) -stmt_containers(#20137,#20001) -#20139=* -stmts(#20139,20,#20135,1,"catch ( ... ror) {}") -hasLocation(#20139,#20005) -stmt_containers(#20139,#20001) +#20135=@"var;{this};{#20000}" +variables(#20135,"this",#20000) +#20136=* +stmts(#20136,11,#20001,0,"try {}\n ... atch {}") +#20137=@"loc,{#10000},1,1,4,8" +locations_default(#20137,#10000,1,1,4,8) +hasLocation(#20136,#20137) +stmt_containers(#20136,#20001) +#20138=* +stmts(#20138,1,#20136,0,"{}") +#20139=@"loc,{#10000},1,5,1,6" +locations_default(#20139,#10000,1,5,1,6) +hasLocation(#20138,#20139) +stmt_containers(#20138,#20001) #20140=* -scopes(#20140,2) -scopenodes(#20139,#20140) -scopenesting(#20140,#20000) -#20141=@"var;{e};{#20140}" -variables(#20141,"e",#20140) -#20142=* -exprs(#20142,78,#20139,0,"e") -hasLocation(#20142,#20033) -enclosing_stmt(#20142,#20139) -expr_containers(#20142,#20001) -literals("e","e",#20142) -decl(#20142,#20141) +stmts(#20140,20,#20136,1,"catch ( ... ror) {}") +hasLocation(#20140,#20005) +stmt_containers(#20140,#20001) +#20141=* +scopes(#20141,2) +scopenodes(#20140,#20141) +scopenesting(#20141,#20000) +#20142=@"var;{e};{#20141}" +variables(#20142,"e",#20141) #20143=* -exprs(#20143,43,#20139,2,"e insta ... peError") -#20144=@"loc,{#10000},2,13,2,34" -locations_default(#20144,#10000,2,13,2,34) -hasLocation(#20143,#20144) -enclosing_stmt(#20143,#20139) +exprs(#20143,78,#20140,0,"e") +hasLocation(#20143,#20033) +enclosing_stmt(#20143,#20140) expr_containers(#20143,#20001) -#20145=* -exprs(#20145,79,#20143,0,"e") -hasLocation(#20145,#20037) -enclosing_stmt(#20145,#20139) -expr_containers(#20145,#20001) -literals("e","e",#20145) -bind(#20145,#20141) +literals("e","e",#20143) +decl(#20143,#20142) +#20144=* +exprs(#20144,43,#20140,2,"e insta ... peError") +#20145=@"loc,{#10000},2,13,2,34" +locations_default(#20145,#10000,2,13,2,34) +hasLocation(#20144,#20145) +enclosing_stmt(#20144,#20140) +expr_containers(#20144,#20001) #20146=* -exprs(#20146,79,#20143,1,"TypeError") -hasLocation(#20146,#20041) -enclosing_stmt(#20146,#20139) +exprs(#20146,79,#20144,0,"e") +hasLocation(#20146,#20037) +enclosing_stmt(#20146,#20140) expr_containers(#20146,#20001) -literals("TypeError","TypeError",#20146) -#20147=@"var;{TypeError};{#20000}" -variables(#20147,"TypeError",#20000) -bind(#20146,#20147) -#20148=* -stmts(#20148,1,#20139,1,"{}") -#20149=@"loc,{#10000},2,37,2,38" -locations_default(#20149,#10000,2,37,2,38) -hasLocation(#20148,#20149) -stmt_containers(#20148,#20001) -#20150=* -stmts(#20150,20,#20135,2,"catch ( ... ror) {}") -hasLocation(#20150,#20007) -stmt_containers(#20150,#20001) +literals("e","e",#20146) +bind(#20146,#20142) +#20147=* +exprs(#20147,79,#20144,1,"TypeError") +hasLocation(#20147,#20041) +enclosing_stmt(#20147,#20140) +expr_containers(#20147,#20001) +literals("TypeError","TypeError",#20147) +#20148=@"var;{TypeError};{#20000}" +variables(#20148,"TypeError",#20000) +bind(#20147,#20148) +#20149=* +stmts(#20149,1,#20140,1,"{}") +#20150=@"loc,{#10000},2,37,2,38" +locations_default(#20150,#10000,2,37,2,38) +hasLocation(#20149,#20150) +stmt_containers(#20149,#20001) #20151=* -scopes(#20151,2) -scopenodes(#20150,#20151) -scopenesting(#20151,#20000) -#20152=@"var;{e};{#20151}" -variables(#20152,"e",#20151) -#20153=* -exprs(#20153,78,#20150,0,"e") -hasLocation(#20153,#20053) -enclosing_stmt(#20153,#20150) -expr_containers(#20153,#20001) -literals("e","e",#20153) -decl(#20153,#20152) +stmts(#20151,20,#20136,2,"catch ( ... ror) {}") +hasLocation(#20151,#20007) +stmt_containers(#20151,#20001) +#20152=* +scopes(#20152,2) +scopenodes(#20151,#20152) +scopenesting(#20152,#20000) +#20153=@"var;{e};{#20152}" +variables(#20153,"e",#20152) #20154=* -exprs(#20154,43,#20150,2,"e instanceof Error") -#20155=@"loc,{#10000},3,13,3,30" -locations_default(#20155,#10000,3,13,3,30) -hasLocation(#20154,#20155) -enclosing_stmt(#20154,#20150) +exprs(#20154,78,#20151,0,"e") +hasLocation(#20154,#20053) +enclosing_stmt(#20154,#20151) expr_containers(#20154,#20001) -#20156=* -exprs(#20156,79,#20154,0,"e") -hasLocation(#20156,#20057) -enclosing_stmt(#20156,#20150) -expr_containers(#20156,#20001) -literals("e","e",#20156) -bind(#20156,#20152) +literals("e","e",#20154) +decl(#20154,#20153) +#20155=* +exprs(#20155,43,#20151,2,"e instanceof Error") +#20156=@"loc,{#10000},3,13,3,30" +locations_default(#20156,#10000,3,13,3,30) +hasLocation(#20155,#20156) +enclosing_stmt(#20155,#20151) +expr_containers(#20155,#20001) #20157=* -exprs(#20157,79,#20154,1,"Error") -hasLocation(#20157,#20061) -enclosing_stmt(#20157,#20150) +exprs(#20157,79,#20155,0,"e") +hasLocation(#20157,#20057) +enclosing_stmt(#20157,#20151) expr_containers(#20157,#20001) -literals("Error","Error",#20157) -#20158=@"var;{Error};{#20000}" -variables(#20158,"Error",#20000) -bind(#20157,#20158) -#20159=* -stmts(#20159,1,#20150,1,"{}") -#20160=@"loc,{#10000},3,33,3,34" -locations_default(#20160,#10000,3,33,3,34) -hasLocation(#20159,#20160) -stmt_containers(#20159,#20001) -#20161=* -stmts(#20161,20,#20135,3,"catch {}") -hasLocation(#20161,#20009) -stmt_containers(#20161,#20001) +literals("e","e",#20157) +bind(#20157,#20153) +#20158=* +exprs(#20158,79,#20155,1,"Error") +hasLocation(#20158,#20061) +enclosing_stmt(#20158,#20151) +expr_containers(#20158,#20001) +literals("Error","Error",#20158) +#20159=@"var;{Error};{#20000}" +variables(#20159,"Error",#20000) +bind(#20158,#20159) +#20160=* +stmts(#20160,1,#20151,1,"{}") +#20161=@"loc,{#10000},3,33,3,34" +locations_default(#20161,#10000,3,33,3,34) +hasLocation(#20160,#20161) +stmt_containers(#20160,#20001) #20162=* -scopes(#20162,2) -scopenodes(#20161,#20162) -scopenesting(#20162,#20000) +stmts(#20162,20,#20136,3,"catch {}") +hasLocation(#20162,#20009) +stmt_containers(#20162,#20001) #20163=* -stmts(#20163,1,#20161,1,"{}") -#20164=@"loc,{#10000},4,7,4,8" -locations_default(#20164,#10000,4,7,4,8) -hasLocation(#20163,#20164) -stmt_containers(#20163,#20001) -#20165=* -stmts(#20165,11,#20001,1,"try {}\n ... ally {}") -#20166=@"loc,{#10000},6,1,10,10" -locations_default(#20166,#10000,6,1,10,10) -hasLocation(#20165,#20166) -stmt_containers(#20165,#20001) -#20167=* -stmts(#20167,1,#20165,0,"{}") -#20168=@"loc,{#10000},6,5,6,6" -locations_default(#20168,#10000,6,5,6,6) -hasLocation(#20167,#20168) -stmt_containers(#20167,#20001) -#20169=* -stmts(#20169,20,#20165,1,"catch ( ... ror) {}") -hasLocation(#20169,#20015) -stmt_containers(#20169,#20001) +scopes(#20163,2) +scopenodes(#20162,#20163) +scopenesting(#20163,#20000) +#20164=* +stmts(#20164,1,#20162,1,"{}") +#20165=@"loc,{#10000},4,7,4,8" +locations_default(#20165,#10000,4,7,4,8) +hasLocation(#20164,#20165) +stmt_containers(#20164,#20001) +#20166=* +stmts(#20166,11,#20001,1,"try {}\n ... ally {}") +#20167=@"loc,{#10000},6,1,10,10" +locations_default(#20167,#10000,6,1,10,10) +hasLocation(#20166,#20167) +stmt_containers(#20166,#20001) +#20168=* +stmts(#20168,1,#20166,0,"{}") +#20169=@"loc,{#10000},6,5,6,6" +locations_default(#20169,#10000,6,5,6,6) +hasLocation(#20168,#20169) +stmt_containers(#20168,#20001) #20170=* -scopes(#20170,2) -scopenodes(#20169,#20170) -scopenesting(#20170,#20000) -#20171=@"var;{e};{#20170}" -variables(#20171,"e",#20170) -#20172=* -exprs(#20172,78,#20169,0,"e") -hasLocation(#20172,#20085) -enclosing_stmt(#20172,#20169) -expr_containers(#20172,#20001) -literals("e","e",#20172) -decl(#20172,#20171) +stmts(#20170,20,#20166,1,"catch ( ... ror) {}") +hasLocation(#20170,#20015) +stmt_containers(#20170,#20001) +#20171=* +scopes(#20171,2) +scopenodes(#20170,#20171) +scopenesting(#20171,#20000) +#20172=@"var;{e};{#20171}" +variables(#20172,"e",#20171) #20173=* -exprs(#20173,43,#20169,2,"e insta ... peError") -#20174=@"loc,{#10000},7,13,7,34" -locations_default(#20174,#10000,7,13,7,34) -hasLocation(#20173,#20174) -enclosing_stmt(#20173,#20169) +exprs(#20173,78,#20170,0,"e") +hasLocation(#20173,#20085) +enclosing_stmt(#20173,#20170) expr_containers(#20173,#20001) -#20175=* -exprs(#20175,79,#20173,0,"e") -hasLocation(#20175,#20089) -enclosing_stmt(#20175,#20169) -expr_containers(#20175,#20001) -literals("e","e",#20175) -bind(#20175,#20171) +literals("e","e",#20173) +decl(#20173,#20172) +#20174=* +exprs(#20174,43,#20170,2,"e insta ... peError") +#20175=@"loc,{#10000},7,13,7,34" +locations_default(#20175,#10000,7,13,7,34) +hasLocation(#20174,#20175) +enclosing_stmt(#20174,#20170) +expr_containers(#20174,#20001) #20176=* -exprs(#20176,79,#20173,1,"TypeError") -hasLocation(#20176,#20093) -enclosing_stmt(#20176,#20169) +exprs(#20176,79,#20174,0,"e") +hasLocation(#20176,#20089) +enclosing_stmt(#20176,#20170) expr_containers(#20176,#20001) -literals("TypeError","TypeError",#20176) -bind(#20176,#20147) +literals("e","e",#20176) +bind(#20176,#20172) #20177=* -stmts(#20177,1,#20169,1,"{}") -#20178=@"loc,{#10000},7,37,7,38" -locations_default(#20178,#10000,7,37,7,38) -hasLocation(#20177,#20178) -stmt_containers(#20177,#20001) -#20179=* -stmts(#20179,20,#20165,2,"catch ( ... ror) {}") -hasLocation(#20179,#20017) -stmt_containers(#20179,#20001) +exprs(#20177,79,#20174,1,"TypeError") +hasLocation(#20177,#20093) +enclosing_stmt(#20177,#20170) +expr_containers(#20177,#20001) +literals("TypeError","TypeError",#20177) +bind(#20177,#20148) +#20178=* +stmts(#20178,1,#20170,1,"{}") +#20179=@"loc,{#10000},7,37,7,38" +locations_default(#20179,#10000,7,37,7,38) +hasLocation(#20178,#20179) +stmt_containers(#20178,#20001) #20180=* -scopes(#20180,2) -scopenodes(#20179,#20180) -scopenesting(#20180,#20000) -#20181=@"var;{e};{#20180}" -variables(#20181,"e",#20180) -#20182=* -exprs(#20182,78,#20179,0,"e") -hasLocation(#20182,#20105) -enclosing_stmt(#20182,#20179) -expr_containers(#20182,#20001) -literals("e","e",#20182) -decl(#20182,#20181) +stmts(#20180,20,#20166,2,"catch ( ... ror) {}") +hasLocation(#20180,#20017) +stmt_containers(#20180,#20001) +#20181=* +scopes(#20181,2) +scopenodes(#20180,#20181) +scopenesting(#20181,#20000) +#20182=@"var;{e};{#20181}" +variables(#20182,"e",#20181) #20183=* -exprs(#20183,43,#20179,2,"e instanceof Error") -#20184=@"loc,{#10000},8,13,8,30" -locations_default(#20184,#10000,8,13,8,30) -hasLocation(#20183,#20184) -enclosing_stmt(#20183,#20179) +exprs(#20183,78,#20180,0,"e") +hasLocation(#20183,#20105) +enclosing_stmt(#20183,#20180) expr_containers(#20183,#20001) -#20185=* -exprs(#20185,79,#20183,0,"e") -hasLocation(#20185,#20109) -enclosing_stmt(#20185,#20179) -expr_containers(#20185,#20001) -literals("e","e",#20185) -bind(#20185,#20181) +literals("e","e",#20183) +decl(#20183,#20182) +#20184=* +exprs(#20184,43,#20180,2,"e instanceof Error") +#20185=@"loc,{#10000},8,13,8,30" +locations_default(#20185,#10000,8,13,8,30) +hasLocation(#20184,#20185) +enclosing_stmt(#20184,#20180) +expr_containers(#20184,#20001) #20186=* -exprs(#20186,79,#20183,1,"Error") -hasLocation(#20186,#20113) -enclosing_stmt(#20186,#20179) +exprs(#20186,79,#20184,0,"e") +hasLocation(#20186,#20109) +enclosing_stmt(#20186,#20180) expr_containers(#20186,#20001) -literals("Error","Error",#20186) -bind(#20186,#20158) +literals("e","e",#20186) +bind(#20186,#20182) #20187=* -stmts(#20187,1,#20179,1,"{}") -#20188=@"loc,{#10000},8,33,8,34" -locations_default(#20188,#10000,8,33,8,34) -hasLocation(#20187,#20188) -stmt_containers(#20187,#20001) -#20189=* -stmts(#20189,20,#20165,3,"catch {}") -hasLocation(#20189,#20019) -stmt_containers(#20189,#20001) +exprs(#20187,79,#20184,1,"Error") +hasLocation(#20187,#20113) +enclosing_stmt(#20187,#20180) +expr_containers(#20187,#20001) +literals("Error","Error",#20187) +bind(#20187,#20159) +#20188=* +stmts(#20188,1,#20180,1,"{}") +#20189=@"loc,{#10000},8,33,8,34" +locations_default(#20189,#10000,8,33,8,34) +hasLocation(#20188,#20189) +stmt_containers(#20188,#20001) #20190=* -scopes(#20190,2) -scopenodes(#20189,#20190) -scopenesting(#20190,#20000) +stmts(#20190,20,#20166,3,"catch {}") +hasLocation(#20190,#20019) +stmt_containers(#20190,#20001) #20191=* -stmts(#20191,1,#20189,1,"{}") -#20192=@"loc,{#10000},9,7,9,8" -locations_default(#20192,#10000,9,7,9,8) -hasLocation(#20191,#20192) -stmt_containers(#20191,#20001) -#20193=* -stmts(#20193,1,#20165,-1,"{}") -#20194=@"loc,{#10000},10,9,10,10" -locations_default(#20194,#10000,10,9,10,10) -hasLocation(#20193,#20194) -stmt_containers(#20193,#20001) -#20195=* -entry_cfg_node(#20195,#20001) -#20196=@"loc,{#10000},1,1,1,0" -locations_default(#20196,#10000,1,1,1,0) -hasLocation(#20195,#20196) -#20197=* -exit_cfg_node(#20197,#20001) -hasLocation(#20197,#20133) -successor(#20165,#20167) -successor(#20167,#20193) -successor(#20169,#20172) -successor(#20176,#20173) -successor(#20175,#20176) -successor(#20173,#20177) -successor(#20173,#20179) -successor(#20172,#20175) -successor(#20177,#20193) -successor(#20179,#20182) -successor(#20186,#20183) -successor(#20185,#20186) -successor(#20183,#20187) -successor(#20183,#20189) -successor(#20182,#20185) -successor(#20187,#20193) -successor(#20189,#20191) -successor(#20191,#20193) -successor(#20193,#20197) -successor(#20135,#20137) -successor(#20137,#20165) -successor(#20139,#20142) -successor(#20146,#20143) -successor(#20145,#20146) -successor(#20143,#20148) -successor(#20143,#20150) -successor(#20142,#20145) -successor(#20148,#20165) -successor(#20150,#20153) -successor(#20157,#20154) -successor(#20156,#20157) -successor(#20154,#20159) -successor(#20154,#20161) -successor(#20153,#20156) -successor(#20159,#20165) -successor(#20161,#20163) -successor(#20163,#20165) -successor(#20195,#20135) +scopes(#20191,2) +scopenodes(#20190,#20191) +scopenesting(#20191,#20000) +#20192=* +stmts(#20192,1,#20190,1,"{}") +#20193=@"loc,{#10000},9,7,9,8" +locations_default(#20193,#10000,9,7,9,8) +hasLocation(#20192,#20193) +stmt_containers(#20192,#20001) +#20194=* +stmts(#20194,1,#20166,-1,"{}") +#20195=@"loc,{#10000},10,9,10,10" +locations_default(#20195,#10000,10,9,10,10) +hasLocation(#20194,#20195) +stmt_containers(#20194,#20001) +#20196=* +entry_cfg_node(#20196,#20001) +#20197=@"loc,{#10000},1,1,1,0" +locations_default(#20197,#10000,1,1,1,0) +hasLocation(#20196,#20197) +#20198=* +exit_cfg_node(#20198,#20001) +hasLocation(#20198,#20133) +successor(#20166,#20168) +successor(#20168,#20194) +successor(#20170,#20173) +successor(#20177,#20174) +successor(#20176,#20177) +successor(#20174,#20178) +successor(#20174,#20180) +successor(#20173,#20176) +successor(#20178,#20194) +successor(#20180,#20183) +successor(#20187,#20184) +successor(#20186,#20187) +successor(#20184,#20188) +successor(#20184,#20190) +successor(#20183,#20186) +successor(#20188,#20194) +successor(#20190,#20192) +successor(#20192,#20194) +successor(#20194,#20198) +successor(#20136,#20138) +successor(#20138,#20166) +successor(#20140,#20143) +successor(#20147,#20144) +successor(#20146,#20147) +successor(#20144,#20149) +successor(#20144,#20151) +successor(#20143,#20146) +successor(#20149,#20166) +successor(#20151,#20154) +successor(#20158,#20155) +successor(#20157,#20158) +successor(#20155,#20160) +successor(#20155,#20162) +successor(#20154,#20157) +successor(#20160,#20166) +successor(#20162,#20164) +successor(#20164,#20166) +successor(#20196,#20136) numlines(#10000,10,9,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/catchNoBinding.js.trap b/javascript/extractor/tests/esnext/output/trap/catchNoBinding.js.trap index 28beb8736a27..f1884449f0e9 100644 --- a/javascript/extractor/tests/esnext/output/trap/catchNoBinding.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/catchNoBinding.js.trap @@ -154,117 +154,119 @@ toplevels(#20001,0) #20055=@"loc,{#10000},1,1,6,0" locations_default(#20055,#10000,1,1,6,0) hasLocation(#20001,#20055) -#20056=* -stmts(#20056,11,#20001,0,"try {\n\t ... ly {}\n}") -#20057=@"loc,{#10000},1,1,5,1" -locations_default(#20057,#10000,1,1,5,1) -hasLocation(#20056,#20057) -stmt_containers(#20056,#20001) -#20058=* -stmts(#20058,1,#20056,0,"{\n\ttry {} catch {}\n}") -#20059=@"loc,{#10000},1,5,3,1" -locations_default(#20059,#10000,1,5,3,1) -hasLocation(#20058,#20059) -stmt_containers(#20058,#20001) -#20060=* -stmts(#20060,11,#20058,0,"try {} catch {}") -#20061=@"loc,{#10000},2,2,2,16" -locations_default(#20061,#10000,2,2,2,16) -hasLocation(#20060,#20061) -stmt_containers(#20060,#20001) -#20062=* -stmts(#20062,1,#20060,0,"{}") -#20063=@"loc,{#10000},2,6,2,7" -locations_default(#20063,#10000,2,6,2,7) -hasLocation(#20062,#20063) -stmt_containers(#20062,#20001) -#20064=* -stmts(#20064,20,#20060,1,"catch {}") -#20065=@"loc,{#10000},2,9,2,16" -locations_default(#20065,#10000,2,9,2,16) -hasLocation(#20064,#20065) -stmt_containers(#20064,#20001) -#20066=* -scopes(#20066,2) -scopenodes(#20064,#20066) -scopenesting(#20066,#20000) +#20056=@"var;{this};{#20000}" +variables(#20056,"this",#20000) +#20057=* +stmts(#20057,11,#20001,0,"try {\n\t ... ly {}\n}") +#20058=@"loc,{#10000},1,1,5,1" +locations_default(#20058,#10000,1,1,5,1) +hasLocation(#20057,#20058) +stmt_containers(#20057,#20001) +#20059=* +stmts(#20059,1,#20057,0,"{\n\ttry {} catch {}\n}") +#20060=@"loc,{#10000},1,5,3,1" +locations_default(#20060,#10000,1,5,3,1) +hasLocation(#20059,#20060) +stmt_containers(#20059,#20001) +#20061=* +stmts(#20061,11,#20059,0,"try {} catch {}") +#20062=@"loc,{#10000},2,2,2,16" +locations_default(#20062,#10000,2,2,2,16) +hasLocation(#20061,#20062) +stmt_containers(#20061,#20001) +#20063=* +stmts(#20063,1,#20061,0,"{}") +#20064=@"loc,{#10000},2,6,2,7" +locations_default(#20064,#10000,2,6,2,7) +hasLocation(#20063,#20064) +stmt_containers(#20063,#20001) +#20065=* +stmts(#20065,20,#20061,1,"catch {}") +#20066=@"loc,{#10000},2,9,2,16" +locations_default(#20066,#10000,2,9,2,16) +hasLocation(#20065,#20066) +stmt_containers(#20065,#20001) #20067=* -stmts(#20067,1,#20064,1,"{}") -#20068=@"loc,{#10000},2,15,2,16" -locations_default(#20068,#10000,2,15,2,16) -hasLocation(#20067,#20068) -stmt_containers(#20067,#20001) -#20069=* -stmts(#20069,20,#20056,1,"catch { ... ly {}\n}") -#20070=@"loc,{#10000},3,3,5,1" -locations_default(#20070,#10000,3,3,5,1) -hasLocation(#20069,#20070) -stmt_containers(#20069,#20001) -#20071=* -scopes(#20071,2) -scopenodes(#20069,#20071) -scopenesting(#20071,#20000) +scopes(#20067,2) +scopenodes(#20065,#20067) +scopenesting(#20067,#20000) +#20068=* +stmts(#20068,1,#20065,1,"{}") +#20069=@"loc,{#10000},2,15,2,16" +locations_default(#20069,#10000,2,15,2,16) +hasLocation(#20068,#20069) +stmt_containers(#20068,#20001) +#20070=* +stmts(#20070,20,#20057,1,"catch { ... ly {}\n}") +#20071=@"loc,{#10000},3,3,5,1" +locations_default(#20071,#10000,3,3,5,1) +hasLocation(#20070,#20071) +stmt_containers(#20070,#20001) #20072=* -stmts(#20072,1,#20069,1,"{\n\ttry ... ly {}\n}") -#20073=@"loc,{#10000},3,9,5,1" -locations_default(#20073,#10000,3,9,5,1) -hasLocation(#20072,#20073) -stmt_containers(#20072,#20001) -#20074=* -stmts(#20074,11,#20072,0,"try {} ... ally {}") -#20075=@"loc,{#10000},4,2,4,27" -locations_default(#20075,#10000,4,2,4,27) -hasLocation(#20074,#20075) -stmt_containers(#20074,#20001) -#20076=* -stmts(#20076,1,#20074,0,"{}") -#20077=@"loc,{#10000},4,6,4,7" -locations_default(#20077,#10000,4,6,4,7) -hasLocation(#20076,#20077) -stmt_containers(#20076,#20001) -#20078=* -stmts(#20078,20,#20074,1,"catch {}") -#20079=@"loc,{#10000},4,9,4,16" -locations_default(#20079,#10000,4,9,4,16) -hasLocation(#20078,#20079) -stmt_containers(#20078,#20001) -#20080=* -scopes(#20080,2) -scopenodes(#20078,#20080) -scopenesting(#20080,#20071) +scopes(#20072,2) +scopenodes(#20070,#20072) +scopenesting(#20072,#20000) +#20073=* +stmts(#20073,1,#20070,1,"{\n\ttry ... ly {}\n}") +#20074=@"loc,{#10000},3,9,5,1" +locations_default(#20074,#10000,3,9,5,1) +hasLocation(#20073,#20074) +stmt_containers(#20073,#20001) +#20075=* +stmts(#20075,11,#20073,0,"try {} ... ally {}") +#20076=@"loc,{#10000},4,2,4,27" +locations_default(#20076,#10000,4,2,4,27) +hasLocation(#20075,#20076) +stmt_containers(#20075,#20001) +#20077=* +stmts(#20077,1,#20075,0,"{}") +#20078=@"loc,{#10000},4,6,4,7" +locations_default(#20078,#10000,4,6,4,7) +hasLocation(#20077,#20078) +stmt_containers(#20077,#20001) +#20079=* +stmts(#20079,20,#20075,1,"catch {}") +#20080=@"loc,{#10000},4,9,4,16" +locations_default(#20080,#10000,4,9,4,16) +hasLocation(#20079,#20080) +stmt_containers(#20079,#20001) #20081=* -stmts(#20081,1,#20078,1,"{}") -#20082=@"loc,{#10000},4,15,4,16" -locations_default(#20082,#10000,4,15,4,16) -hasLocation(#20081,#20082) -stmt_containers(#20081,#20001) -#20083=* -stmts(#20083,1,#20074,-1,"{}") -#20084=@"loc,{#10000},4,26,4,27" -locations_default(#20084,#10000,4,26,4,27) -hasLocation(#20083,#20084) -stmt_containers(#20083,#20001) -#20085=* -entry_cfg_node(#20085,#20001) -#20086=@"loc,{#10000},1,1,1,0" -locations_default(#20086,#10000,1,1,1,0) -hasLocation(#20085,#20086) -#20087=* -exit_cfg_node(#20087,#20001) -hasLocation(#20087,#20054) -successor(#20056,#20058) -successor(#20060,#20062) -successor(#20062,#20087) -successor(#20064,#20067) -successor(#20067,#20087) -successor(#20058,#20060) -successor(#20069,#20072) -successor(#20074,#20076) -successor(#20076,#20083) -successor(#20078,#20081) -successor(#20081,#20083) -successor(#20083,#20087) -successor(#20072,#20074) -successor(#20085,#20056) +scopes(#20081,2) +scopenodes(#20079,#20081) +scopenesting(#20081,#20072) +#20082=* +stmts(#20082,1,#20079,1,"{}") +#20083=@"loc,{#10000},4,15,4,16" +locations_default(#20083,#10000,4,15,4,16) +hasLocation(#20082,#20083) +stmt_containers(#20082,#20001) +#20084=* +stmts(#20084,1,#20075,-1,"{}") +#20085=@"loc,{#10000},4,26,4,27" +locations_default(#20085,#10000,4,26,4,27) +hasLocation(#20084,#20085) +stmt_containers(#20084,#20001) +#20086=* +entry_cfg_node(#20086,#20001) +#20087=@"loc,{#10000},1,1,1,0" +locations_default(#20087,#10000,1,1,1,0) +hasLocation(#20086,#20087) +#20088=* +exit_cfg_node(#20088,#20001) +hasLocation(#20088,#20054) +successor(#20057,#20059) +successor(#20061,#20063) +successor(#20063,#20088) +successor(#20065,#20068) +successor(#20068,#20088) +successor(#20059,#20061) +successor(#20070,#20073) +successor(#20075,#20077) +successor(#20077,#20084) +successor(#20079,#20082) +successor(#20082,#20084) +successor(#20084,#20088) +successor(#20073,#20075) +successor(#20086,#20057) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/dynamic-import.js.trap b/javascript/extractor/tests/esnext/output/trap/dynamic-import.js.trap index bed8c1d13dcc..85b062a9bd4d 100644 --- a/javascript/extractor/tests/esnext/output/trap/dynamic-import.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/dynamic-import.js.trap @@ -286,248 +286,250 @@ scopenodes(#20001,#20107) scopenesting(#20107,#20000) is_module(#20001) is_es2015_module(#20001) -#20108=* -stmts(#20108,2,#20001,0,"import(""m"");") -hasLocation(#20108,#20003) -stmt_containers(#20108,#20001) +#20108=@"var;{this};{#20107}" +variables(#20108,"this",#20107) #20109=* -exprs(#20109,99,#20108,0,"import(""m"")") -#20110=@"loc,{#10000},1,1,1,11" -locations_default(#20110,#10000,1,1,1,11) -hasLocation(#20109,#20110) -enclosing_stmt(#20109,#20108) -expr_containers(#20109,#20001) -#20111=* -exprs(#20111,4,#20109,0,"""m""") -hasLocation(#20111,#20019) -enclosing_stmt(#20111,#20108) -expr_containers(#20111,#20001) -literals("m","""m""",#20111) +stmts(#20109,2,#20001,0,"import(""m"");") +hasLocation(#20109,#20003) +stmt_containers(#20109,#20001) +#20110=* +exprs(#20110,99,#20109,0,"import(""m"")") +#20111=@"loc,{#10000},1,1,1,11" +locations_default(#20111,#10000,1,1,1,11) +hasLocation(#20110,#20111) +enclosing_stmt(#20110,#20109) +expr_containers(#20110,#20001) #20112=* -regexpterm(#20112,14,#20111,0,"m") -#20113=@"loc,{#10000},1,9,1,9" -locations_default(#20113,#10000,1,9,1,9) -hasLocation(#20112,#20113) -regexp_const_value(#20112,"m") -#20114=* -stmts(#20114,2,#20001,1,"b ? imp ... ) : {};") -hasLocation(#20114,#20005) -stmt_containers(#20114,#20001) +exprs(#20112,4,#20110,0,"""m""") +hasLocation(#20112,#20019) +enclosing_stmt(#20112,#20109) +expr_containers(#20112,#20001) +literals("m","""m""",#20112) +#20113=* +regexpterm(#20113,14,#20112,0,"m") +#20114=@"loc,{#10000},1,9,1,9" +locations_default(#20114,#10000,1,9,1,9) +hasLocation(#20113,#20114) +regexp_const_value(#20113,"m") #20115=* -exprs(#20115,11,#20114,0,"b ? import(""n"") : {}") -#20116=@"loc,{#10000},2,1,2,20" -locations_default(#20116,#10000,2,1,2,20) -hasLocation(#20115,#20116) -enclosing_stmt(#20115,#20114) -expr_containers(#20115,#20001) -#20117=* -exprs(#20117,79,#20115,0,"b") -hasLocation(#20117,#20025) -enclosing_stmt(#20117,#20114) -expr_containers(#20117,#20001) -literals("b","b",#20117) -#20118=@"var;{b};{#20000}" -variables(#20118,"b",#20000) -bind(#20117,#20118) -#20119=* -exprs(#20119,99,#20115,1,"import(""n"")") -#20120=@"loc,{#10000},2,5,2,15" -locations_default(#20120,#10000,2,5,2,15) -hasLocation(#20119,#20120) -enclosing_stmt(#20119,#20114) -expr_containers(#20119,#20001) -#20121=* -exprs(#20121,4,#20119,0,"""n""") -hasLocation(#20121,#20033) -enclosing_stmt(#20121,#20114) -expr_containers(#20121,#20001) -literals("n","""n""",#20121) +stmts(#20115,2,#20001,1,"b ? imp ... ) : {};") +hasLocation(#20115,#20005) +stmt_containers(#20115,#20001) +#20116=* +exprs(#20116,11,#20115,0,"b ? import(""n"") : {}") +#20117=@"loc,{#10000},2,1,2,20" +locations_default(#20117,#10000,2,1,2,20) +hasLocation(#20116,#20117) +enclosing_stmt(#20116,#20115) +expr_containers(#20116,#20001) +#20118=* +exprs(#20118,79,#20116,0,"b") +hasLocation(#20118,#20025) +enclosing_stmt(#20118,#20115) +expr_containers(#20118,#20001) +literals("b","b",#20118) +#20119=@"var;{b};{#20000}" +variables(#20119,"b",#20000) +bind(#20118,#20119) +#20120=* +exprs(#20120,99,#20116,1,"import(""n"")") +#20121=@"loc,{#10000},2,5,2,15" +locations_default(#20121,#10000,2,5,2,15) +hasLocation(#20120,#20121) +enclosing_stmt(#20120,#20115) +expr_containers(#20120,#20001) #20122=* -regexpterm(#20122,14,#20121,0,"n") -#20123=@"loc,{#10000},2,13,2,13" -locations_default(#20123,#10000,2,13,2,13) -hasLocation(#20122,#20123) -regexp_const_value(#20122,"n") -#20124=* -exprs(#20124,8,#20115,2,"{}") -#20125=@"loc,{#10000},2,19,2,20" -locations_default(#20125,#10000,2,19,2,20) -hasLocation(#20124,#20125) -enclosing_stmt(#20124,#20114) -expr_containers(#20124,#20001) -#20126=* -stmts(#20126,2,#20001,2,"import( ... => {});") -hasLocation(#20126,#20007) -stmt_containers(#20126,#20001) +exprs(#20122,4,#20120,0,"""n""") +hasLocation(#20122,#20033) +enclosing_stmt(#20122,#20115) +expr_containers(#20122,#20001) +literals("n","""n""",#20122) +#20123=* +regexpterm(#20123,14,#20122,0,"n") +#20124=@"loc,{#10000},2,13,2,13" +locations_default(#20124,#10000,2,13,2,13) +hasLocation(#20123,#20124) +regexp_const_value(#20123,"n") +#20125=* +exprs(#20125,8,#20116,2,"{}") +#20126=@"loc,{#10000},2,19,2,20" +locations_default(#20126,#10000,2,19,2,20) +hasLocation(#20125,#20126) +enclosing_stmt(#20125,#20115) +expr_containers(#20125,#20001) #20127=* -exprs(#20127,13,#20126,0,"import( ... => {})") -#20128=@"loc,{#10000},3,1,3,27" -locations_default(#20128,#10000,3,1,3,27) -hasLocation(#20127,#20128) -enclosing_stmt(#20127,#20126) -expr_containers(#20127,#20001) -#20129=* -exprs(#20129,14,#20127,-1,"import(""o"").then") -#20130=@"loc,{#10000},3,1,3,16" -locations_default(#20130,#10000,3,1,3,16) -hasLocation(#20129,#20130) -enclosing_stmt(#20129,#20126) -expr_containers(#20129,#20001) -#20131=* -exprs(#20131,99,#20129,0,"import(""o"")") -#20132=@"loc,{#10000},3,1,3,11" -locations_default(#20132,#10000,3,1,3,11) -hasLocation(#20131,#20132) -enclosing_stmt(#20131,#20126) -expr_containers(#20131,#20001) -#20133=* -exprs(#20133,4,#20131,0,"""o""") -hasLocation(#20133,#20049) -enclosing_stmt(#20133,#20126) -expr_containers(#20133,#20001) -literals("o","""o""",#20133) +stmts(#20127,2,#20001,2,"import( ... => {});") +hasLocation(#20127,#20007) +stmt_containers(#20127,#20001) +#20128=* +exprs(#20128,13,#20127,0,"import( ... => {})") +#20129=@"loc,{#10000},3,1,3,27" +locations_default(#20129,#10000,3,1,3,27) +hasLocation(#20128,#20129) +enclosing_stmt(#20128,#20127) +expr_containers(#20128,#20001) +#20130=* +exprs(#20130,14,#20128,-1,"import(""o"").then") +#20131=@"loc,{#10000},3,1,3,16" +locations_default(#20131,#10000,3,1,3,16) +hasLocation(#20130,#20131) +enclosing_stmt(#20130,#20127) +expr_containers(#20130,#20001) +#20132=* +exprs(#20132,99,#20130,0,"import(""o"")") +#20133=@"loc,{#10000},3,1,3,11" +locations_default(#20133,#10000,3,1,3,11) +hasLocation(#20132,#20133) +enclosing_stmt(#20132,#20127) +expr_containers(#20132,#20001) #20134=* -regexpterm(#20134,14,#20133,0,"o") -#20135=@"loc,{#10000},3,9,3,9" -locations_default(#20135,#10000,3,9,3,9) -hasLocation(#20134,#20135) -regexp_const_value(#20134,"o") -#20136=* -exprs(#20136,0,#20129,1,"then") -hasLocation(#20136,#20055) -enclosing_stmt(#20136,#20126) -expr_containers(#20136,#20001) -literals("then","then",#20136) +exprs(#20134,4,#20132,0,"""o""") +hasLocation(#20134,#20049) +enclosing_stmt(#20134,#20127) +expr_containers(#20134,#20001) +literals("o","""o""",#20134) +#20135=* +regexpterm(#20135,14,#20134,0,"o") +#20136=@"loc,{#10000},3,9,3,9" +locations_default(#20136,#10000,3,9,3,9) +hasLocation(#20135,#20136) +regexp_const_value(#20135,"o") #20137=* -exprs(#20137,65,#20127,0,"(o) => {}") -#20138=@"loc,{#10000},3,18,3,26" -locations_default(#20138,#10000,3,18,3,26) -hasLocation(#20137,#20138) -enclosing_stmt(#20137,#20126) +exprs(#20137,0,#20130,1,"then") +hasLocation(#20137,#20055) +enclosing_stmt(#20137,#20127) expr_containers(#20137,#20001) -#20139=* -scopes(#20139,1) -scopenodes(#20137,#20139) -scopenesting(#20139,#20107) -#20140=@"var;{o};{#20139}" -variables(#20140,"o",#20139) -#20141=* -exprs(#20141,78,#20137,0,"o") -hasLocation(#20141,#20061) -expr_containers(#20141,#20137) -literals("o","o",#20141) -decl(#20141,#20140) +literals("then","then",#20137) +#20138=* +exprs(#20138,65,#20128,0,"(o) => {}") +#20139=@"loc,{#10000},3,18,3,26" +locations_default(#20139,#10000,3,18,3,26) +hasLocation(#20138,#20139) +enclosing_stmt(#20138,#20127) +expr_containers(#20138,#20001) +#20140=* +scopes(#20140,1) +scopenodes(#20138,#20140) +scopenesting(#20140,#20107) +#20141=@"var;{o};{#20140}" +variables(#20141,"o",#20140) #20142=* -stmts(#20142,1,#20137,-2,"{}") -#20143=@"loc,{#10000},3,25,3,26" -locations_default(#20143,#10000,3,25,3,26) -hasLocation(#20142,#20143) -stmt_containers(#20142,#20137) -#20144=* -stmts(#20144,2,#20001,3,"import(""m"",);") -hasLocation(#20144,#20011) -stmt_containers(#20144,#20001) +exprs(#20142,78,#20138,0,"o") +hasLocation(#20142,#20061) +expr_containers(#20142,#20138) +literals("o","o",#20142) +decl(#20142,#20141) +#20143=* +stmts(#20143,1,#20138,-2,"{}") +#20144=@"loc,{#10000},3,25,3,26" +locations_default(#20144,#10000,3,25,3,26) +hasLocation(#20143,#20144) +stmt_containers(#20143,#20138) #20145=* -exprs(#20145,99,#20144,0,"import(""m"",)") -#20146=@"loc,{#10000},5,1,5,12" -locations_default(#20146,#10000,5,1,5,12) -hasLocation(#20145,#20146) -enclosing_stmt(#20145,#20144) -expr_containers(#20145,#20001) -#20147=* -exprs(#20147,4,#20145,0,"""m""") -hasLocation(#20147,#20079) -enclosing_stmt(#20147,#20144) -expr_containers(#20147,#20001) -literals("m","""m""",#20147) +stmts(#20145,2,#20001,3,"import(""m"",);") +hasLocation(#20145,#20011) +stmt_containers(#20145,#20001) +#20146=* +exprs(#20146,99,#20145,0,"import(""m"",)") +#20147=@"loc,{#10000},5,1,5,12" +locations_default(#20147,#10000,5,1,5,12) +hasLocation(#20146,#20147) +enclosing_stmt(#20146,#20145) +expr_containers(#20146,#20001) #20148=* -regexpterm(#20148,14,#20147,0,"m") -#20149=@"loc,{#10000},5,9,5,9" -locations_default(#20149,#10000,5,9,5,9) -hasLocation(#20148,#20149) -regexp_const_value(#20148,"m") -#20150=* -stmts(#20150,2,#20001,4,"import(""m"",{},);") -hasLocation(#20150,#20013) -stmt_containers(#20150,#20001) +exprs(#20148,4,#20146,0,"""m""") +hasLocation(#20148,#20079) +enclosing_stmt(#20148,#20145) +expr_containers(#20148,#20001) +literals("m","""m""",#20148) +#20149=* +regexpterm(#20149,14,#20148,0,"m") +#20150=@"loc,{#10000},5,9,5,9" +locations_default(#20150,#10000,5,9,5,9) +hasLocation(#20149,#20150) +regexp_const_value(#20149,"m") #20151=* -exprs(#20151,99,#20150,0,"import(""m"",{},)") -#20152=@"loc,{#10000},6,1,6,15" -locations_default(#20152,#10000,6,1,6,15) -hasLocation(#20151,#20152) -enclosing_stmt(#20151,#20150) -expr_containers(#20151,#20001) -#20153=* -exprs(#20153,4,#20151,0,"""m""") -hasLocation(#20153,#20091) -enclosing_stmt(#20153,#20150) -expr_containers(#20153,#20001) -literals("m","""m""",#20153) +stmts(#20151,2,#20001,4,"import(""m"",{},);") +hasLocation(#20151,#20013) +stmt_containers(#20151,#20001) +#20152=* +exprs(#20152,99,#20151,0,"import(""m"",{},)") +#20153=@"loc,{#10000},6,1,6,15" +locations_default(#20153,#10000,6,1,6,15) +hasLocation(#20152,#20153) +enclosing_stmt(#20152,#20151) +expr_containers(#20152,#20001) #20154=* -regexpterm(#20154,14,#20153,0,"m") -#20155=@"loc,{#10000},6,9,6,9" -locations_default(#20155,#10000,6,9,6,9) -hasLocation(#20154,#20155) -regexp_const_value(#20154,"m") -#20156=* -exprs(#20156,8,#20151,1,"{}") -#20157=@"loc,{#10000},6,12,6,13" -locations_default(#20157,#10000,6,12,6,13) -hasLocation(#20156,#20157) -enclosing_stmt(#20156,#20150) -expr_containers(#20156,#20001) -#20158=* -entry_cfg_node(#20158,#20001) -#20159=@"loc,{#10000},1,1,1,0" -locations_default(#20159,#10000,1,1,1,0) -hasLocation(#20158,#20159) -#20160=* -exit_cfg_node(#20160,#20001) -hasLocation(#20160,#20105) -successor(#20150,#20153) -successor(#20153,#20151) -successor(#20151,#20160) -successor(#20144,#20147) -successor(#20147,#20145) -successor(#20145,#20150) -successor(#20126,#20133) -successor(#20137,#20127) +exprs(#20154,4,#20152,0,"""m""") +hasLocation(#20154,#20091) +enclosing_stmt(#20154,#20151) +expr_containers(#20154,#20001) +literals("m","""m""",#20154) +#20155=* +regexpterm(#20155,14,#20154,0,"m") +#20156=@"loc,{#10000},6,9,6,9" +locations_default(#20156,#10000,6,9,6,9) +hasLocation(#20155,#20156) +regexp_const_value(#20155,"m") +#20157=* +exprs(#20157,8,#20152,1,"{}") +#20158=@"loc,{#10000},6,12,6,13" +locations_default(#20158,#10000,6,12,6,13) +hasLocation(#20157,#20158) +enclosing_stmt(#20157,#20151) +expr_containers(#20157,#20001) +#20159=* +entry_cfg_node(#20159,#20001) +#20160=@"loc,{#10000},1,1,1,0" +locations_default(#20160,#10000,1,1,1,0) +hasLocation(#20159,#20160) #20161=* -entry_cfg_node(#20161,#20137) -#20162=@"loc,{#10000},3,18,3,17" -locations_default(#20162,#10000,3,18,3,17) -hasLocation(#20161,#20162) -#20163=* -exit_cfg_node(#20163,#20137) -#20164=@"loc,{#10000},3,27,3,26" -locations_default(#20164,#10000,3,27,3,26) -hasLocation(#20163,#20164) -successor(#20142,#20163) -successor(#20141,#20142) -successor(#20161,#20141) -successor(#20136,#20129) -successor(#20133,#20131) -successor(#20131,#20136) -successor(#20129,#20137) -successor(#20127,#20144) -successor(#20114,#20115) -successor(#20115,#20117) -#20165=* -guard_node(#20165,1,#20117) -hasLocation(#20165,#20025) -successor(#20165,#20121) +exit_cfg_node(#20161,#20001) +hasLocation(#20161,#20105) +successor(#20151,#20154) +successor(#20154,#20152) +successor(#20152,#20161) +successor(#20145,#20148) +successor(#20148,#20146) +successor(#20146,#20151) +successor(#20127,#20134) +successor(#20138,#20128) +#20162=* +entry_cfg_node(#20162,#20138) +#20163=@"loc,{#10000},3,18,3,17" +locations_default(#20163,#10000,3,18,3,17) +hasLocation(#20162,#20163) +#20164=* +exit_cfg_node(#20164,#20138) +#20165=@"loc,{#10000},3,27,3,26" +locations_default(#20165,#10000,3,27,3,26) +hasLocation(#20164,#20165) +successor(#20143,#20164) +successor(#20142,#20143) +successor(#20162,#20142) +successor(#20137,#20130) +successor(#20134,#20132) +successor(#20132,#20137) +successor(#20130,#20138) +successor(#20128,#20145) +successor(#20115,#20116) +successor(#20116,#20118) #20166=* -guard_node(#20166,0,#20117) +guard_node(#20166,1,#20118) hasLocation(#20166,#20025) -successor(#20166,#20124) -successor(#20117,#20165) -successor(#20117,#20166) -successor(#20121,#20119) -successor(#20119,#20126) -successor(#20124,#20126) -successor(#20108,#20111) -successor(#20111,#20109) -successor(#20109,#20114) -successor(#20158,#20108) +successor(#20166,#20122) +#20167=* +guard_node(#20167,0,#20118) +hasLocation(#20167,#20025) +successor(#20167,#20125) +successor(#20118,#20166) +successor(#20118,#20167) +successor(#20122,#20120) +successor(#20120,#20127) +successor(#20125,#20127) +successor(#20109,#20112) +successor(#20112,#20110) +successor(#20110,#20115) +successor(#20159,#20109) numlines(#10000,6,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/fields.js.trap b/javascript/extractor/tests/esnext/output/trap/fields.js.trap index b317e50f2686..1442df183083 100644 --- a/javascript/extractor/tests/esnext/output/trap/fields.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/fields.js.trap @@ -234,301 +234,315 @@ local_type_names(#20083,"A",#20000) local_type_names(#20084,"B",#20000) #20085=@"local_type_name;{C};{#20000}" local_type_names(#20085,"C",#20000) -#20086=* -stmts(#20086,26,#20001,0,"class A ... rget;\n}") -#20087=@"loc,{#10000},1,1,3,1" -locations_default(#20087,#10000,1,1,3,1) -hasLocation(#20086,#20087) -stmt_containers(#20086,#20001) -#20088=* -exprs(#20088,78,#20086,0,"A") -hasLocation(#20088,#20027) -enclosing_stmt(#20088,#20086) -expr_containers(#20088,#20001) -literals("A","A",#20088) -decl(#20088,#20080) -typedecl(#20088,#20083) +#20086=@"var;{this};{#20000}" +variables(#20086,"this",#20000) +#20087=* +stmts(#20087,26,#20001,0,"class A ... rget;\n}") +#20088=@"loc,{#10000},1,1,3,1" +locations_default(#20088,#10000,1,1,3,1) +hasLocation(#20087,#20088) +stmt_containers(#20087,#20001) #20089=* -scopes(#20089,10) -scopenodes(#20086,#20089) -scopenesting(#20089,#20000) +exprs(#20089,78,#20087,0,"A") +hasLocation(#20089,#20027) +enclosing_stmt(#20089,#20087) +expr_containers(#20089,#20001) +literals("A","A",#20089) +decl(#20089,#20080) +typedecl(#20089,#20083) #20090=* -properties(#20090,#20086,2,8,"x = new.target;") -#20091=@"loc,{#10000},2,3,2,17" -locations_default(#20091,#10000,2,3,2,17) -hasLocation(#20090,#20091) +scopes(#20090,10) +scopenodes(#20087,#20090) +scopenesting(#20090,#20000) +#20091=@"var;{this};{#20090}" +variables(#20091,"this",#20090) #20092=* -#20093=* -exprs(#20093,0,#20090,0,"x") -hasLocation(#20093,#20031) -expr_containers(#20093,#20092) -literals("x","x",#20093) +properties(#20092,#20087,2,8,"x = new.target;") +#20093=@"loc,{#10000},2,3,2,17" +locations_default(#20093,#10000,2,3,2,17) +hasLocation(#20092,#20093) #20094=* -exprs(#20094,82,#20090,1,"new.target") -#20095=@"loc,{#10000},2,7,2,16" -locations_default(#20095,#10000,2,7,2,16) -hasLocation(#20094,#20095) -expr_containers(#20094,#20092) +#20095=* +exprs(#20095,0,#20092,0,"x") +hasLocation(#20095,#20031) +expr_containers(#20095,#20094) +literals("x","x",#20095) #20096=* -properties(#20096,#20086,3,0,"constructor() {}") -#20097=@"loc,{#10000},1,9,1,8" -locations_default(#20097,#10000,1,9,1,8) +exprs(#20096,82,#20092,1,"new.target") +#20097=@"loc,{#10000},2,7,2,16" +locations_default(#20097,#10000,2,7,2,16) hasLocation(#20096,#20097) +expr_containers(#20096,#20094) #20098=* -exprs(#20098,0,#20096,0,"constructor") -hasLocation(#20098,#20097) -enclosing_stmt(#20098,#20086) -expr_containers(#20098,#20001) -literals("constructor","constructor",#20098) -exprs(#20092,9,#20096,1,"() {}") -hasLocation(#20092,#20097) -enclosing_stmt(#20092,#20086) -expr_containers(#20092,#20001) -#20099=* -scopes(#20099,1) -scopenodes(#20092,#20099) -scopenesting(#20099,#20089) -#20100=@"var;{arguments};{#20099}" -variables(#20100,"arguments",#20099) -is_arguments_object(#20100) +properties(#20098,#20087,3,0,"constructor() {}") +#20099=@"loc,{#10000},1,9,1,8" +locations_default(#20099,#10000,1,9,1,8) +hasLocation(#20098,#20099) +#20100=* +exprs(#20100,0,#20098,0,"constructor") +hasLocation(#20100,#20099) +enclosing_stmt(#20100,#20087) +expr_containers(#20100,#20001) +literals("constructor","constructor",#20100) +exprs(#20094,9,#20098,1,"() {}") +hasLocation(#20094,#20099) +enclosing_stmt(#20094,#20087) +expr_containers(#20094,#20001) #20101=* -stmts(#20101,1,#20092,-2,"{}") -hasLocation(#20101,#20097) -stmt_containers(#20101,#20092) -is_method(#20096) -#20102=* -stmts(#20102,26,#20001,1,"class B ... er.x;\n}") -#20103=@"loc,{#10000},5,1,7,1" -locations_default(#20103,#10000,5,1,7,1) -hasLocation(#20102,#20103) -stmt_containers(#20102,#20001) +scopes(#20101,1) +scopenodes(#20094,#20101) +scopenesting(#20101,#20090) +#20102=@"var;{this};{#20101}" +variables(#20102,"this",#20101) +#20103=@"var;{arguments};{#20101}" +variables(#20103,"arguments",#20101) +is_arguments_object(#20103) #20104=* -exprs(#20104,78,#20102,0,"B") -hasLocation(#20104,#20046) -enclosing_stmt(#20104,#20102) -expr_containers(#20104,#20001) -literals("B","B",#20104) -decl(#20104,#20081) -typedecl(#20104,#20084) +stmts(#20104,1,#20094,-2,"{}") +hasLocation(#20104,#20099) +stmt_containers(#20104,#20094) +is_method(#20098) #20105=* -scopes(#20105,10) -scopenodes(#20102,#20105) -scopenesting(#20105,#20000) -#20106=* -exprs(#20106,79,#20102,1,"A") -hasLocation(#20106,#20050) -enclosing_stmt(#20106,#20102) -expr_containers(#20106,#20001) -literals("A","A",#20106) -bind(#20106,#20080) +stmts(#20105,26,#20001,1,"class B ... er.x;\n}") +#20106=@"loc,{#10000},5,1,7,1" +locations_default(#20106,#10000,5,1,7,1) +hasLocation(#20105,#20106) +stmt_containers(#20105,#20001) #20107=* -properties(#20107,#20102,2,8,"y = super.x;") -#20108=@"loc,{#10000},6,3,6,14" -locations_default(#20108,#10000,6,3,6,14) -hasLocation(#20107,#20108) -#20109=* +exprs(#20107,78,#20105,0,"B") +hasLocation(#20107,#20046) +enclosing_stmt(#20107,#20105) +expr_containers(#20107,#20001) +literals("B","B",#20107) +decl(#20107,#20081) +typedecl(#20107,#20084) +#20108=* +scopes(#20108,10) +scopenodes(#20105,#20108) +scopenesting(#20108,#20000) +#20109=@"var;{this};{#20108}" +variables(#20109,"this",#20108) #20110=* -exprs(#20110,0,#20107,0,"y") -hasLocation(#20110,#20054) -expr_containers(#20110,#20109) -literals("y","y",#20110) +exprs(#20110,79,#20105,1,"A") +hasLocation(#20110,#20050) +enclosing_stmt(#20110,#20105) +expr_containers(#20110,#20001) +literals("A","A",#20110) +bind(#20110,#20080) #20111=* -exprs(#20111,14,#20107,1,"super.x") -#20112=@"loc,{#10000},6,7,6,13" -locations_default(#20112,#10000,6,7,6,13) +properties(#20111,#20105,2,8,"y = super.x;") +#20112=@"loc,{#10000},6,3,6,14" +locations_default(#20112,#10000,6,3,6,14) hasLocation(#20111,#20112) -expr_containers(#20111,#20109) #20113=* -exprs(#20113,81,#20111,0,"super") -hasLocation(#20113,#20058) -expr_containers(#20113,#20109) #20114=* -exprs(#20114,0,#20111,1,"x") -hasLocation(#20114,#20062) -expr_containers(#20114,#20109) -literals("x","x",#20114) +exprs(#20114,0,#20111,0,"y") +hasLocation(#20114,#20054) +expr_containers(#20114,#20113) +literals("y","y",#20114) #20115=* -properties(#20115,#20102,3,0,"constru ... rgs); }") -#20116=@"loc,{#10000},5,19,5,18" -locations_default(#20116,#10000,5,19,5,18) +exprs(#20115,14,#20111,1,"super.x") +#20116=@"loc,{#10000},6,7,6,13" +locations_default(#20116,#10000,6,7,6,13) hasLocation(#20115,#20116) +expr_containers(#20115,#20113) #20117=* -exprs(#20117,0,#20115,0,"constructor") -hasLocation(#20117,#20116) -enclosing_stmt(#20117,#20102) -expr_containers(#20117,#20001) -literals("constructor","constructor",#20117) -exprs(#20109,9,#20115,1,"(...arg ... rgs); }") -hasLocation(#20109,#20116) -enclosing_stmt(#20109,#20102) -expr_containers(#20109,#20001) +exprs(#20117,81,#20115,0,"super") +hasLocation(#20117,#20058) +expr_containers(#20117,#20113) #20118=* -scopes(#20118,1) -scopenodes(#20109,#20118) -scopenesting(#20118,#20105) -#20119=@"var;{args};{#20118}" -variables(#20119,"args",#20118) -#20120=* -exprs(#20120,78,#20109,0,"args") -hasLocation(#20120,#20116) -expr_containers(#20120,#20109) -literals("args","args",#20120) -decl(#20120,#20119) -#20121=@"var;{arguments};{#20118}" -variables(#20121,"arguments",#20118) -is_arguments_object(#20121) -has_rest_parameter(#20109) +exprs(#20118,0,#20115,1,"x") +hasLocation(#20118,#20062) +expr_containers(#20118,#20113) +literals("x","x",#20118) +#20119=* +properties(#20119,#20105,3,0,"constru ... rgs); }") +#20120=@"loc,{#10000},5,19,5,18" +locations_default(#20120,#10000,5,19,5,18) +hasLocation(#20119,#20120) +#20121=* +exprs(#20121,0,#20119,0,"constructor") +hasLocation(#20121,#20120) +enclosing_stmt(#20121,#20105) +expr_containers(#20121,#20001) +literals("constructor","constructor",#20121) +exprs(#20113,9,#20119,1,"(...arg ... rgs); }") +hasLocation(#20113,#20120) +enclosing_stmt(#20113,#20105) +expr_containers(#20113,#20001) #20122=* -stmts(#20122,1,#20109,-2,"{ super(...args); }") -hasLocation(#20122,#20116) -stmt_containers(#20122,#20109) -#20123=* -stmts(#20123,2,#20122,0,"super(...args);") -hasLocation(#20123,#20116) -stmt_containers(#20123,#20109) -#20124=* -exprs(#20124,13,#20123,0,"super(...args)") -hasLocation(#20124,#20116) -enclosing_stmt(#20124,#20123) -expr_containers(#20124,#20109) +scopes(#20122,1) +scopenodes(#20113,#20122) +scopenesting(#20122,#20108) +#20123=@"var;{this};{#20122}" +variables(#20123,"this",#20122) +#20124=@"var;{args};{#20122}" +variables(#20124,"args",#20122) #20125=* -exprs(#20125,81,#20124,-1,"super") -hasLocation(#20125,#20116) -enclosing_stmt(#20125,#20123) -expr_containers(#20125,#20109) -#20126=* -exprs(#20126,66,#20124,0,"...args") -hasLocation(#20126,#20116) -enclosing_stmt(#20126,#20123) -expr_containers(#20126,#20109) +exprs(#20125,78,#20113,0,"args") +hasLocation(#20125,#20120) +expr_containers(#20125,#20113) +literals("args","args",#20125) +decl(#20125,#20124) +#20126=@"var;{arguments};{#20122}" +variables(#20126,"arguments",#20122) +is_arguments_object(#20126) +has_rest_parameter(#20113) #20127=* -exprs(#20127,79,#20126,0,"args") -hasLocation(#20127,#20116) -enclosing_stmt(#20127,#20123) -expr_containers(#20127,#20109) -literals("args","args",#20127) -bind(#20127,#20119) -is_method(#20115) +stmts(#20127,1,#20113,-2,"{ super(...args); }") +hasLocation(#20127,#20120) +stmt_containers(#20127,#20113) #20128=* -stmts(#20128,26,#20001,2,"class C {\n async;\n}") -#20129=@"loc,{#10000},9,1,11,1" -locations_default(#20129,#10000,9,1,11,1) -hasLocation(#20128,#20129) -stmt_containers(#20128,#20001) +stmts(#20128,2,#20127,0,"super(...args);") +hasLocation(#20128,#20120) +stmt_containers(#20128,#20113) +#20129=* +exprs(#20129,13,#20128,0,"super(...args)") +hasLocation(#20129,#20120) +enclosing_stmt(#20129,#20128) +expr_containers(#20129,#20113) #20130=* -exprs(#20130,78,#20128,0,"C") -hasLocation(#20130,#20069) +exprs(#20130,81,#20129,-1,"super") +hasLocation(#20130,#20120) enclosing_stmt(#20130,#20128) -expr_containers(#20130,#20001) -literals("C","C",#20130) -decl(#20130,#20082) -typedecl(#20130,#20085) +expr_containers(#20130,#20113) #20131=* -scopes(#20131,10) -scopenodes(#20128,#20131) -scopenesting(#20131,#20000) +exprs(#20131,66,#20129,0,"...args") +hasLocation(#20131,#20120) +enclosing_stmt(#20131,#20128) +expr_containers(#20131,#20113) #20132=* -properties(#20132,#20128,2,8,"async;") -#20133=@"loc,{#10000},10,3,10,8" -locations_default(#20133,#10000,10,3,10,8) -hasLocation(#20132,#20133) -#20134=* +exprs(#20132,79,#20131,0,"args") +hasLocation(#20132,#20120) +enclosing_stmt(#20132,#20128) +expr_containers(#20132,#20113) +literals("args","args",#20132) +bind(#20132,#20124) +is_method(#20119) +#20133=* +stmts(#20133,26,#20001,2,"class C {\n async;\n}") +#20134=@"loc,{#10000},9,1,11,1" +locations_default(#20134,#10000,9,1,11,1) +hasLocation(#20133,#20134) +stmt_containers(#20133,#20001) #20135=* -exprs(#20135,0,#20132,0,"async") -hasLocation(#20135,#20073) -expr_containers(#20135,#20134) -literals("async","async",#20135) +exprs(#20135,78,#20133,0,"C") +hasLocation(#20135,#20069) +enclosing_stmt(#20135,#20133) +expr_containers(#20135,#20001) +literals("C","C",#20135) +decl(#20135,#20082) +typedecl(#20135,#20085) #20136=* -properties(#20136,#20128,3,0,"constructor() {}") -#20137=@"loc,{#10000},9,9,9,8" -locations_default(#20137,#10000,9,9,9,8) -hasLocation(#20136,#20137) +scopes(#20136,10) +scopenodes(#20133,#20136) +scopenesting(#20136,#20000) +#20137=@"var;{this};{#20136}" +variables(#20137,"this",#20136) #20138=* -exprs(#20138,0,#20136,0,"constructor") -hasLocation(#20138,#20137) -enclosing_stmt(#20138,#20128) -expr_containers(#20138,#20001) -literals("constructor","constructor",#20138) -exprs(#20134,9,#20136,1,"() {}") -hasLocation(#20134,#20137) -enclosing_stmt(#20134,#20128) -expr_containers(#20134,#20001) -#20139=* -scopes(#20139,1) -scopenodes(#20134,#20139) -scopenesting(#20139,#20131) -#20140=@"var;{arguments};{#20139}" -variables(#20140,"arguments",#20139) -is_arguments_object(#20140) +properties(#20138,#20133,2,8,"async;") +#20139=@"loc,{#10000},10,3,10,8" +locations_default(#20139,#10000,10,3,10,8) +hasLocation(#20138,#20139) +#20140=* #20141=* -stmts(#20141,1,#20134,-2,"{}") -hasLocation(#20141,#20137) -stmt_containers(#20141,#20134) -is_method(#20136) +exprs(#20141,0,#20138,0,"async") +hasLocation(#20141,#20073) +expr_containers(#20141,#20140) +literals("async","async",#20141) #20142=* -entry_cfg_node(#20142,#20001) -#20143=@"loc,{#10000},1,1,1,0" -locations_default(#20143,#10000,1,1,1,0) +properties(#20142,#20133,3,0,"constructor() {}") +#20143=@"loc,{#10000},9,9,9,8" +locations_default(#20143,#10000,9,9,9,8) hasLocation(#20142,#20143) #20144=* -exit_cfg_node(#20144,#20001) -hasLocation(#20144,#20078) -successor(#20135,#20132) -successor(#20134,#20136) +exprs(#20144,0,#20142,0,"constructor") +hasLocation(#20144,#20143) +enclosing_stmt(#20144,#20133) +expr_containers(#20144,#20001) +literals("constructor","constructor",#20144) +exprs(#20140,9,#20142,1,"() {}") +hasLocation(#20140,#20143) +enclosing_stmt(#20140,#20133) +expr_containers(#20140,#20001) #20145=* -entry_cfg_node(#20145,#20134) -hasLocation(#20145,#20137) -successor(#20132,#20141) -#20146=* -exit_cfg_node(#20146,#20134) -hasLocation(#20146,#20137) -successor(#20141,#20146) -successor(#20145,#20135) -successor(#20138,#20134) -successor(#20136,#20128) -successor(#20130,#20138) -successor(#20128,#20144) -successor(#20114,#20111) -successor(#20113,#20114) -successor(#20111,#20107) -successor(#20110,#20113) -successor(#20109,#20115) -#20147=* -entry_cfg_node(#20147,#20109) -hasLocation(#20147,#20116) +scopes(#20145,1) +scopenodes(#20140,#20145) +scopenesting(#20145,#20136) +#20146=@"var;{this};{#20145}" +variables(#20146,"this",#20145) +#20147=@"var;{arguments};{#20145}" +variables(#20147,"arguments",#20145) +is_arguments_object(#20147) #20148=* -exit_cfg_node(#20148,#20109) -hasLocation(#20148,#20116) -successor(#20123,#20125) -successor(#20127,#20126) -successor(#20126,#20124) -successor(#20125,#20127) -successor(#20107,#20148) -successor(#20124,#20110) -successor(#20122,#20123) -successor(#20120,#20122) -successor(#20147,#20120) -successor(#20117,#20109) -successor(#20115,#20102) -successor(#20106,#20117) -successor(#20104,#20106) -successor(#20102,#20130) -successor(#20094,#20090) -successor(#20093,#20094) -successor(#20092,#20096) +stmts(#20148,1,#20140,-2,"{}") +hasLocation(#20148,#20143) +stmt_containers(#20148,#20140) +is_method(#20142) #20149=* -entry_cfg_node(#20149,#20092) -hasLocation(#20149,#20097) -successor(#20090,#20101) -#20150=* -exit_cfg_node(#20150,#20092) -hasLocation(#20150,#20097) -successor(#20101,#20150) -successor(#20149,#20093) -successor(#20098,#20092) -successor(#20096,#20086) -successor(#20088,#20098) -successor(#20086,#20104) -successor(#20142,#20088) +entry_cfg_node(#20149,#20001) +#20150=@"loc,{#10000},1,1,1,0" +locations_default(#20150,#10000,1,1,1,0) +hasLocation(#20149,#20150) +#20151=* +exit_cfg_node(#20151,#20001) +hasLocation(#20151,#20078) +successor(#20141,#20138) +successor(#20140,#20142) +#20152=* +entry_cfg_node(#20152,#20140) +hasLocation(#20152,#20143) +successor(#20138,#20148) +#20153=* +exit_cfg_node(#20153,#20140) +hasLocation(#20153,#20143) +successor(#20148,#20153) +successor(#20152,#20141) +successor(#20144,#20140) +successor(#20142,#20133) +successor(#20135,#20144) +successor(#20133,#20151) +successor(#20118,#20115) +successor(#20117,#20118) +successor(#20115,#20111) +successor(#20114,#20117) +successor(#20113,#20119) +#20154=* +entry_cfg_node(#20154,#20113) +hasLocation(#20154,#20120) +#20155=* +exit_cfg_node(#20155,#20113) +hasLocation(#20155,#20120) +successor(#20128,#20130) +successor(#20132,#20131) +successor(#20131,#20129) +successor(#20130,#20132) +successor(#20111,#20155) +successor(#20129,#20114) +successor(#20127,#20128) +successor(#20125,#20127) +successor(#20154,#20125) +successor(#20121,#20113) +successor(#20119,#20105) +successor(#20110,#20121) +successor(#20107,#20110) +successor(#20105,#20135) +successor(#20096,#20092) +successor(#20095,#20096) +successor(#20094,#20098) +#20156=* +entry_cfg_node(#20156,#20094) +hasLocation(#20156,#20099) +successor(#20092,#20104) +#20157=* +exit_cfg_node(#20157,#20094) +hasLocation(#20157,#20099) +successor(#20104,#20157) +successor(#20156,#20095) +successor(#20100,#20094) +successor(#20098,#20087) +successor(#20089,#20100) +successor(#20087,#20107) +successor(#20149,#20089) numlines(#10000,11,9,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/for-await.js.trap b/javascript/extractor/tests/esnext/output/trap/for-await.js.trap index 5af93db3494c..d2822cc80a7a 100644 --- a/javascript/extractor/tests/esnext/output/trap/for-await.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/for-await.js.trap @@ -249,202 +249,206 @@ locations_default(#20090,#10000,1,1,9,1) hasLocation(#20001,#20090) #20091=@"var;{foo};{#20000}" variables(#20091,"foo",#20000) -#20092=* -stmts(#20092,17,#20001,0,"async f ... }\n}") -#20093=@"loc,{#10000},1,1,5,1" -locations_default(#20093,#10000,1,1,5,1) -hasLocation(#20092,#20093) -stmt_containers(#20092,#20001) -#20094=* -exprs(#20094,78,#20092,-1,"foo") -hasLocation(#20094,#20025) -expr_containers(#20094,#20092) -literals("foo","foo",#20094) -decl(#20094,#20091) +#20092=@"var;{this};{#20000}" +variables(#20092,"this",#20000) +#20093=* +stmts(#20093,17,#20001,0,"async f ... }\n}") +#20094=@"loc,{#10000},1,1,5,1" +locations_default(#20094,#10000,1,1,5,1) +hasLocation(#20093,#20094) +stmt_containers(#20093,#20001) #20095=* -scopes(#20095,1) -scopenodes(#20092,#20095) -scopenesting(#20095,#20000) -#20096=@"var;{arguments};{#20095}" -variables(#20096,"arguments",#20095) -is_arguments_object(#20096) -is_async(#20092) -#20097=* -stmts(#20097,1,#20092,-2,"{\n f ... }\n}") -#20098=@"loc,{#10000},1,22,5,1" -locations_default(#20098,#10000,1,22,5,1) -hasLocation(#20097,#20098) -stmt_containers(#20097,#20092) +exprs(#20095,78,#20093,-1,"foo") +hasLocation(#20095,#20025) +expr_containers(#20095,#20093) +literals("foo","foo",#20095) +decl(#20095,#20091) +#20096=* +scopes(#20096,1) +scopenodes(#20093,#20096) +scopenesting(#20096,#20000) +#20097=@"var;{this};{#20096}" +variables(#20097,"this",#20096) +#20098=@"var;{arguments};{#20096}" +variables(#20098,"arguments",#20096) +is_arguments_object(#20098) +is_async(#20093) #20099=* -stmts(#20099,21,#20097,0,"for awa ... \n }") -#20100=@"loc,{#10000},2,5,4,5" -locations_default(#20100,#10000,2,5,4,5) +stmts(#20099,1,#20093,-2,"{\n f ... }\n}") +#20100=@"loc,{#10000},1,22,5,1" +locations_default(#20100,#10000,1,22,5,1) hasLocation(#20099,#20100) -stmt_containers(#20099,#20092) +stmt_containers(#20099,#20093) #20101=* -exprs(#20101,79,#20099,1,"calls") -hasLocation(#20101,#20045) -enclosing_stmt(#20101,#20099) -expr_containers(#20101,#20092) -literals("calls","calls",#20101) -#20102=@"var;{calls};{#20000}" -variables(#20102,"calls",#20000) -bind(#20101,#20102) +stmts(#20101,21,#20099,0,"for awa ... \n }") +#20102=@"loc,{#10000},2,5,4,5" +locations_default(#20102,#10000,2,5,4,5) +hasLocation(#20101,#20102) +stmt_containers(#20101,#20093) #20103=* -scopes(#20103,6) -scopenodes(#20099,#20103) -scopenesting(#20103,#20095) -#20104=@"var;{call};{#20103}" -variables(#20104,"call",#20103) +exprs(#20103,79,#20101,1,"calls") +hasLocation(#20103,#20045) +enclosing_stmt(#20103,#20101) +expr_containers(#20103,#20093) +literals("calls","calls",#20103) +#20104=@"var;{calls};{#20000}" +variables(#20104,"calls",#20000) +bind(#20103,#20104) #20105=* -stmts(#20105,22,#20099,0,"const call") -#20106=@"loc,{#10000},2,16,2,25" -locations_default(#20106,#10000,2,16,2,25) -hasLocation(#20105,#20106) -stmt_containers(#20105,#20092) +scopes(#20105,6) +scopenodes(#20101,#20105) +scopenesting(#20105,#20096) +#20106=@"var;{call};{#20105}" +variables(#20106,"call",#20105) #20107=* -exprs(#20107,64,#20105,0,"call") -hasLocation(#20107,#20041) -enclosing_stmt(#20107,#20105) -expr_containers(#20107,#20092) -#20108=* -exprs(#20108,78,#20107,0,"call") -hasLocation(#20108,#20041) -enclosing_stmt(#20108,#20105) -expr_containers(#20108,#20092) -literals("call","call",#20108) -decl(#20108,#20104) +stmts(#20107,22,#20101,0,"const call") +#20108=@"loc,{#10000},2,16,2,25" +locations_default(#20108,#10000,2,16,2,25) +hasLocation(#20107,#20108) +stmt_containers(#20107,#20093) #20109=* -stmts(#20109,1,#20099,2,"{\n ... \n }") -#20110=@"loc,{#10000},2,37,4,5" -locations_default(#20110,#10000,2,37,4,5) -hasLocation(#20109,#20110) -stmt_containers(#20109,#20092) +exprs(#20109,64,#20107,0,"call") +hasLocation(#20109,#20041) +enclosing_stmt(#20109,#20107) +expr_containers(#20109,#20093) +#20110=* +exprs(#20110,78,#20109,0,"call") +hasLocation(#20110,#20041) +enclosing_stmt(#20110,#20107) +expr_containers(#20110,#20093) +literals("call","call",#20110) +decl(#20110,#20106) #20111=* -stmts(#20111,2,#20109,0,"call();") -#20112=@"loc,{#10000},3,9,3,15" -locations_default(#20112,#10000,3,9,3,15) +stmts(#20111,1,#20101,2,"{\n ... \n }") +#20112=@"loc,{#10000},2,37,4,5" +locations_default(#20112,#10000,2,37,4,5) hasLocation(#20111,#20112) -stmt_containers(#20111,#20092) +stmt_containers(#20111,#20093) #20113=* -exprs(#20113,13,#20111,0,"call()") -#20114=@"loc,{#10000},3,9,3,14" -locations_default(#20114,#10000,3,9,3,14) +stmts(#20113,2,#20111,0,"call();") +#20114=@"loc,{#10000},3,9,3,15" +locations_default(#20114,#10000,3,9,3,15) hasLocation(#20113,#20114) -enclosing_stmt(#20113,#20111) -expr_containers(#20113,#20092) +stmt_containers(#20113,#20093) #20115=* -exprs(#20115,79,#20113,-1,"call") -hasLocation(#20115,#20051) -enclosing_stmt(#20115,#20111) -expr_containers(#20115,#20092) -literals("call","call",#20115) -bind(#20115,#20104) -is_for_await_of(#20099) -#20116=* -stmts(#20116,21,#20001,1,"for awa ... ll();\n}") -#20117=@"loc,{#10000},7,1,9,1" -locations_default(#20117,#10000,7,1,9,1) -hasLocation(#20116,#20117) -stmt_containers(#20116,#20001) +exprs(#20115,13,#20113,0,"call()") +#20116=@"loc,{#10000},3,9,3,14" +locations_default(#20116,#10000,3,9,3,14) +hasLocation(#20115,#20116) +enclosing_stmt(#20115,#20113) +expr_containers(#20115,#20093) +#20117=* +exprs(#20117,79,#20115,-1,"call") +hasLocation(#20117,#20051) +enclosing_stmt(#20117,#20113) +expr_containers(#20117,#20093) +literals("call","call",#20117) +bind(#20117,#20106) +is_for_await_of(#20101) #20118=* -exprs(#20118,79,#20116,1,"calls") -hasLocation(#20118,#20074) -enclosing_stmt(#20118,#20116) -expr_containers(#20118,#20001) -literals("calls","calls",#20118) -bind(#20118,#20102) -#20119=* -scopes(#20119,6) -scopenodes(#20116,#20119) -scopenesting(#20119,#20000) -#20120=@"var;{call};{#20119}" -variables(#20120,"call",#20119) +stmts(#20118,21,#20001,1,"for awa ... ll();\n}") +#20119=@"loc,{#10000},7,1,9,1" +locations_default(#20119,#10000,7,1,9,1) +hasLocation(#20118,#20119) +stmt_containers(#20118,#20001) +#20120=* +exprs(#20120,79,#20118,1,"calls") +hasLocation(#20120,#20074) +enclosing_stmt(#20120,#20118) +expr_containers(#20120,#20001) +literals("calls","calls",#20120) +bind(#20120,#20104) #20121=* -stmts(#20121,22,#20116,0,"const call") -#20122=@"loc,{#10000},7,12,7,21" -locations_default(#20122,#10000,7,12,7,21) -hasLocation(#20121,#20122) -stmt_containers(#20121,#20001) +scopes(#20121,6) +scopenodes(#20118,#20121) +scopenesting(#20121,#20000) +#20122=@"var;{call};{#20121}" +variables(#20122,"call",#20121) #20123=* -exprs(#20123,64,#20121,0,"call") -hasLocation(#20123,#20070) -enclosing_stmt(#20123,#20121) -expr_containers(#20123,#20001) -#20124=* -exprs(#20124,78,#20123,0,"call") -hasLocation(#20124,#20070) -enclosing_stmt(#20124,#20121) -expr_containers(#20124,#20001) -literals("call","call",#20124) -decl(#20124,#20120) +stmts(#20123,22,#20118,0,"const call") +#20124=@"loc,{#10000},7,12,7,21" +locations_default(#20124,#10000,7,12,7,21) +hasLocation(#20123,#20124) +stmt_containers(#20123,#20001) #20125=* -stmts(#20125,1,#20116,2,"{\n call();\n}") -#20126=@"loc,{#10000},7,33,9,1" -locations_default(#20126,#10000,7,33,9,1) -hasLocation(#20125,#20126) -stmt_containers(#20125,#20001) +exprs(#20125,64,#20123,0,"call") +hasLocation(#20125,#20070) +enclosing_stmt(#20125,#20123) +expr_containers(#20125,#20001) +#20126=* +exprs(#20126,78,#20125,0,"call") +hasLocation(#20126,#20070) +enclosing_stmt(#20126,#20123) +expr_containers(#20126,#20001) +literals("call","call",#20126) +decl(#20126,#20122) #20127=* -stmts(#20127,2,#20125,0,"call();") -#20128=@"loc,{#10000},8,5,8,11" -locations_default(#20128,#10000,8,5,8,11) +stmts(#20127,1,#20118,2,"{\n call();\n}") +#20128=@"loc,{#10000},7,33,9,1" +locations_default(#20128,#10000,7,33,9,1) hasLocation(#20127,#20128) stmt_containers(#20127,#20001) #20129=* -exprs(#20129,13,#20127,0,"call()") -#20130=@"loc,{#10000},8,5,8,10" -locations_default(#20130,#10000,8,5,8,10) +stmts(#20129,2,#20127,0,"call();") +#20130=@"loc,{#10000},8,5,8,11" +locations_default(#20130,#10000,8,5,8,11) hasLocation(#20129,#20130) -enclosing_stmt(#20129,#20127) -expr_containers(#20129,#20001) +stmt_containers(#20129,#20001) #20131=* -exprs(#20131,79,#20129,-1,"call") -hasLocation(#20131,#20080) -enclosing_stmt(#20131,#20127) +exprs(#20131,13,#20129,0,"call()") +#20132=@"loc,{#10000},8,5,8,10" +locations_default(#20132,#10000,8,5,8,10) +hasLocation(#20131,#20132) +enclosing_stmt(#20131,#20129) expr_containers(#20131,#20001) -literals("call","call",#20131) -bind(#20131,#20120) -is_for_await_of(#20116) -#20132=* -entry_cfg_node(#20132,#20001) -#20133=@"loc,{#10000},1,1,1,0" -locations_default(#20133,#10000,1,1,1,0) -hasLocation(#20132,#20133) +#20133=* +exprs(#20133,79,#20131,-1,"call") +hasLocation(#20133,#20080) +enclosing_stmt(#20133,#20129) +expr_containers(#20133,#20001) +literals("call","call",#20133) +bind(#20133,#20122) +is_for_await_of(#20118) #20134=* -exit_cfg_node(#20134,#20001) -hasLocation(#20134,#20089) -successor(#20118,#20116) -successor(#20116,#20121) -successor(#20116,#20134) -successor(#20127,#20131) -successor(#20131,#20129) -successor(#20129,#20116) -successor(#20125,#20127) -successor(#20121,#20124) -successor(#20124,#20123) -successor(#20123,#20125) -successor(#20092,#20118) -#20135=* -entry_cfg_node(#20135,#20092) -hasLocation(#20135,#20133) +entry_cfg_node(#20134,#20001) +#20135=@"loc,{#10000},1,1,1,0" +locations_default(#20135,#10000,1,1,1,0) +hasLocation(#20134,#20135) #20136=* -exit_cfg_node(#20136,#20092) -#20137=@"loc,{#10000},5,2,5,1" -locations_default(#20137,#10000,5,2,5,1) -hasLocation(#20136,#20137) -successor(#20101,#20099) -successor(#20099,#20105) -successor(#20099,#20136) -successor(#20111,#20115) -successor(#20115,#20113) -successor(#20113,#20099) +exit_cfg_node(#20136,#20001) +hasLocation(#20136,#20089) +successor(#20120,#20118) +successor(#20118,#20123) +successor(#20118,#20136) +successor(#20129,#20133) +successor(#20133,#20131) +successor(#20131,#20118) +successor(#20127,#20129) +successor(#20123,#20126) +successor(#20126,#20125) +successor(#20125,#20127) +successor(#20093,#20120) +#20137=* +entry_cfg_node(#20137,#20093) +hasLocation(#20137,#20135) +#20138=* +exit_cfg_node(#20138,#20093) +#20139=@"loc,{#10000},5,2,5,1" +locations_default(#20139,#10000,5,2,5,1) +hasLocation(#20138,#20139) +successor(#20103,#20101) +successor(#20101,#20107) +successor(#20101,#20138) +successor(#20113,#20117) +successor(#20117,#20115) +successor(#20115,#20101) +successor(#20111,#20113) +successor(#20107,#20110) +successor(#20110,#20109) successor(#20109,#20111) -successor(#20105,#20108) -successor(#20108,#20107) -successor(#20107,#20109) -successor(#20097,#20101) -successor(#20135,#20097) -successor(#20094,#20092) -successor(#20132,#20094) +successor(#20099,#20103) +successor(#20137,#20099) +successor(#20095,#20093) +successor(#20134,#20095) numlines(#10000,9,8,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/import-attributes.js.trap b/javascript/extractor/tests/esnext/output/trap/import-attributes.js.trap index 57d48206e419..c5634ed3af82 100644 --- a/javascript/extractor/tests/esnext/output/trap/import-attributes.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/import-attributes.js.trap @@ -1275,1215 +1275,1217 @@ local_type_names(#20489,"v3",#20483) local_namespace_names(#20490,"v1",#20483) local_namespace_names(#20491,"v2",#20483) local_namespace_names(#20492,"v3",#20483) -#20494=* -stmts(#20494,27,#20001,0,"import ... son"" };") -hasLocation(#20494,#20007) -stmt_containers(#20494,#20001) +#20494=@"var;{this};{#20483}" +variables(#20494,"this",#20483) #20495=* -exprs(#20495,4,#20494,-1,"""module""") -hasLocation(#20495,#20057) -enclosing_stmt(#20495,#20494) -expr_containers(#20495,#20001) -literals("module","""module""",#20495) +stmts(#20495,27,#20001,0,"import ... son"" };") +hasLocation(#20495,#20007) +stmt_containers(#20495,#20001) #20496=* -regexpterm(#20496,14,#20495,0,"module") -#20497=@"loc,{#10000},1,9,1,14" -locations_default(#20497,#10000,1,9,1,14) -hasLocation(#20496,#20497) -regexp_const_value(#20496,"module") -#20498=* -exprs(#20498,8,#20494,-10,"{ type: ""json"" }") -#20499=@"loc,{#10000},1,22,1,37" -locations_default(#20499,#10000,1,22,1,37) -hasLocation(#20498,#20499) -enclosing_stmt(#20498,#20494) -expr_containers(#20498,#20001) -#20500=* -properties(#20500,#20498,0,0,"type: ""json""") -#20501=@"loc,{#10000},1,24,1,35" -locations_default(#20501,#10000,1,24,1,35) -hasLocation(#20500,#20501) -#20502=* -exprs(#20502,0,#20500,0,"type") -hasLocation(#20502,#20063) -enclosing_stmt(#20502,#20494) -expr_containers(#20502,#20001) -literals("type","type",#20502) +exprs(#20496,4,#20495,-1,"""module""") +hasLocation(#20496,#20057) +enclosing_stmt(#20496,#20495) +expr_containers(#20496,#20001) +literals("module","""module""",#20496) +#20497=* +regexpterm(#20497,14,#20496,0,"module") +#20498=@"loc,{#10000},1,9,1,14" +locations_default(#20498,#10000,1,9,1,14) +hasLocation(#20497,#20498) +regexp_const_value(#20497,"module") +#20499=* +exprs(#20499,8,#20495,-10,"{ type: ""json"" }") +#20500=@"loc,{#10000},1,22,1,37" +locations_default(#20500,#10000,1,22,1,37) +hasLocation(#20499,#20500) +enclosing_stmt(#20499,#20495) +expr_containers(#20499,#20001) +#20501=* +properties(#20501,#20499,0,0,"type: ""json""") +#20502=@"loc,{#10000},1,24,1,35" +locations_default(#20502,#10000,1,24,1,35) +hasLocation(#20501,#20502) #20503=* -exprs(#20503,4,#20500,1,"""json""") -hasLocation(#20503,#20067) -enclosing_stmt(#20503,#20494) +exprs(#20503,0,#20501,0,"type") +hasLocation(#20503,#20063) +enclosing_stmt(#20503,#20495) expr_containers(#20503,#20001) -literals("json","""json""",#20503) +literals("type","type",#20503) #20504=* -regexpterm(#20504,14,#20503,0,"json") -#20505=@"loc,{#10000},1,31,1,34" -locations_default(#20505,#10000,1,31,1,34) -hasLocation(#20504,#20505) -regexp_const_value(#20504,"json") -#20506=* -stmts(#20506,27,#20001,1,"import ... son"" };") -hasLocation(#20506,#20009) -stmt_containers(#20506,#20001) +exprs(#20504,4,#20501,1,"""json""") +hasLocation(#20504,#20067) +enclosing_stmt(#20504,#20495) +expr_containers(#20504,#20001) +literals("json","""json""",#20504) +#20505=* +regexpterm(#20505,14,#20504,0,"json") +#20506=@"loc,{#10000},1,31,1,34" +locations_default(#20506,#10000,1,31,1,34) +hasLocation(#20505,#20506) +regexp_const_value(#20505,"json") #20507=* -exprs(#20507,4,#20506,-1,"""module""") -hasLocation(#20507,#20083) -enclosing_stmt(#20507,#20506) -expr_containers(#20507,#20001) -literals("module","""module""",#20507) +stmts(#20507,27,#20001,1,"import ... son"" };") +hasLocation(#20507,#20009) +stmt_containers(#20507,#20001) #20508=* -regexpterm(#20508,14,#20507,0,"module") -#20509=@"loc,{#10000},2,22,2,27" -locations_default(#20509,#10000,2,22,2,27) -hasLocation(#20508,#20509) -regexp_const_value(#20508,"module") -#20510=* -exprs(#20510,8,#20506,-10,"{ type: ""json"" }") -#20511=@"loc,{#10000},2,35,2,50" -locations_default(#20511,#10000,2,35,2,50) -hasLocation(#20510,#20511) -enclosing_stmt(#20510,#20506) -expr_containers(#20510,#20001) -#20512=* -properties(#20512,#20510,0,0,"type: ""json""") -#20513=@"loc,{#10000},2,37,2,48" -locations_default(#20513,#10000,2,37,2,48) -hasLocation(#20512,#20513) -#20514=* -exprs(#20514,0,#20512,0,"type") -hasLocation(#20514,#20089) -enclosing_stmt(#20514,#20506) -expr_containers(#20514,#20001) -literals("type","type",#20514) +exprs(#20508,4,#20507,-1,"""module""") +hasLocation(#20508,#20083) +enclosing_stmt(#20508,#20507) +expr_containers(#20508,#20001) +literals("module","""module""",#20508) +#20509=* +regexpterm(#20509,14,#20508,0,"module") +#20510=@"loc,{#10000},2,22,2,27" +locations_default(#20510,#10000,2,22,2,27) +hasLocation(#20509,#20510) +regexp_const_value(#20509,"module") +#20511=* +exprs(#20511,8,#20507,-10,"{ type: ""json"" }") +#20512=@"loc,{#10000},2,35,2,50" +locations_default(#20512,#10000,2,35,2,50) +hasLocation(#20511,#20512) +enclosing_stmt(#20511,#20507) +expr_containers(#20511,#20001) +#20513=* +properties(#20513,#20511,0,0,"type: ""json""") +#20514=@"loc,{#10000},2,37,2,48" +locations_default(#20514,#10000,2,37,2,48) +hasLocation(#20513,#20514) #20515=* -exprs(#20515,4,#20512,1,"""json""") -hasLocation(#20515,#20093) -enclosing_stmt(#20515,#20506) +exprs(#20515,0,#20513,0,"type") +hasLocation(#20515,#20089) +enclosing_stmt(#20515,#20507) expr_containers(#20515,#20001) -literals("json","""json""",#20515) +literals("type","type",#20515) #20516=* -regexpterm(#20516,14,#20515,0,"json") -#20517=@"loc,{#10000},2,44,2,47" -locations_default(#20517,#10000,2,44,2,47) -hasLocation(#20516,#20517) -regexp_const_value(#20516,"json") -#20518=* -exprs(#20518,85,#20506,0,"* as v1") -#20519=@"loc,{#10000},2,8,2,14" -locations_default(#20519,#10000,2,8,2,14) -hasLocation(#20518,#20519) -enclosing_stmt(#20518,#20506) -expr_containers(#20518,#20001) -#20520=* -exprs(#20520,78,#20518,1,"v1") -hasLocation(#20520,#20079) -enclosing_stmt(#20520,#20506) -expr_containers(#20520,#20001) -literals("v1","v1",#20520) -decl(#20520,#20484) -typedecl(#20520,#20487) -namespacedecl(#20520,#20490) +exprs(#20516,4,#20513,1,"""json""") +hasLocation(#20516,#20093) +enclosing_stmt(#20516,#20507) +expr_containers(#20516,#20001) +literals("json","""json""",#20516) +#20517=* +regexpterm(#20517,14,#20516,0,"json") +#20518=@"loc,{#10000},2,44,2,47" +locations_default(#20518,#10000,2,44,2,47) +hasLocation(#20517,#20518) +regexp_const_value(#20517,"json") +#20519=* +exprs(#20519,85,#20507,0,"* as v1") +#20520=@"loc,{#10000},2,8,2,14" +locations_default(#20520,#10000,2,8,2,14) +hasLocation(#20519,#20520) +enclosing_stmt(#20519,#20507) +expr_containers(#20519,#20001) #20521=* -stmts(#20521,27,#20001,2,"import ... son"" };") -hasLocation(#20521,#20011) -stmt_containers(#20521,#20001) +exprs(#20521,78,#20519,1,"v1") +hasLocation(#20521,#20079) +enclosing_stmt(#20521,#20507) +expr_containers(#20521,#20001) +literals("v1","v1",#20521) +decl(#20521,#20484) +typedecl(#20521,#20487) +namespacedecl(#20521,#20490) #20522=* -exprs(#20522,4,#20521,-1,"""module""") -hasLocation(#20522,#20109) -enclosing_stmt(#20522,#20521) -expr_containers(#20522,#20001) -literals("module","""module""",#20522) +stmts(#20522,27,#20001,2,"import ... son"" };") +hasLocation(#20522,#20011) +stmt_containers(#20522,#20001) #20523=* -regexpterm(#20523,14,#20522,0,"module") -#20524=@"loc,{#10000},3,21,3,26" -locations_default(#20524,#10000,3,21,3,26) -hasLocation(#20523,#20524) -regexp_const_value(#20523,"module") -#20525=* -exprs(#20525,8,#20521,-10,"{ type: ""json"" }") -#20526=@"loc,{#10000},3,34,3,49" -locations_default(#20526,#10000,3,34,3,49) -hasLocation(#20525,#20526) -enclosing_stmt(#20525,#20521) -expr_containers(#20525,#20001) -#20527=* -properties(#20527,#20525,0,0,"type: ""json""") -#20528=@"loc,{#10000},3,36,3,47" -locations_default(#20528,#10000,3,36,3,47) -hasLocation(#20527,#20528) -#20529=* -exprs(#20529,0,#20527,0,"type") -hasLocation(#20529,#20115) -enclosing_stmt(#20529,#20521) -expr_containers(#20529,#20001) -literals("type","type",#20529) +exprs(#20523,4,#20522,-1,"""module""") +hasLocation(#20523,#20109) +enclosing_stmt(#20523,#20522) +expr_containers(#20523,#20001) +literals("module","""module""",#20523) +#20524=* +regexpterm(#20524,14,#20523,0,"module") +#20525=@"loc,{#10000},3,21,3,26" +locations_default(#20525,#10000,3,21,3,26) +hasLocation(#20524,#20525) +regexp_const_value(#20524,"module") +#20526=* +exprs(#20526,8,#20522,-10,"{ type: ""json"" }") +#20527=@"loc,{#10000},3,34,3,49" +locations_default(#20527,#10000,3,34,3,49) +hasLocation(#20526,#20527) +enclosing_stmt(#20526,#20522) +expr_containers(#20526,#20001) +#20528=* +properties(#20528,#20526,0,0,"type: ""json""") +#20529=@"loc,{#10000},3,36,3,47" +locations_default(#20529,#10000,3,36,3,47) +hasLocation(#20528,#20529) #20530=* -exprs(#20530,4,#20527,1,"""json""") -hasLocation(#20530,#20119) -enclosing_stmt(#20530,#20521) +exprs(#20530,0,#20528,0,"type") +hasLocation(#20530,#20115) +enclosing_stmt(#20530,#20522) expr_containers(#20530,#20001) -literals("json","""json""",#20530) +literals("type","type",#20530) #20531=* -regexpterm(#20531,14,#20530,0,"json") -#20532=@"loc,{#10000},3,43,3,46" -locations_default(#20532,#10000,3,43,3,46) -hasLocation(#20531,#20532) -regexp_const_value(#20531,"json") -#20533=* -exprs(#20533,83,#20521,0,"v2") -hasLocation(#20533,#20103) -enclosing_stmt(#20533,#20521) -expr_containers(#20533,#20001) +exprs(#20531,4,#20528,1,"""json""") +hasLocation(#20531,#20119) +enclosing_stmt(#20531,#20522) +expr_containers(#20531,#20001) +literals("json","""json""",#20531) +#20532=* +regexpterm(#20532,14,#20531,0,"json") +#20533=@"loc,{#10000},3,43,3,46" +locations_default(#20533,#10000,3,43,3,46) +hasLocation(#20532,#20533) +regexp_const_value(#20532,"json") #20534=* -exprs(#20534,0,#20533,0,"v2") +exprs(#20534,83,#20522,0,"v2") hasLocation(#20534,#20103) -enclosing_stmt(#20534,#20521) +enclosing_stmt(#20534,#20522) expr_containers(#20534,#20001) -literals("v2","v2",#20534) #20535=* -exprs(#20535,78,#20533,1,"v2") +exprs(#20535,0,#20534,0,"v2") hasLocation(#20535,#20103) -enclosing_stmt(#20535,#20521) +enclosing_stmt(#20535,#20522) expr_containers(#20535,#20001) literals("v2","v2",#20535) -decl(#20535,#20485) -typedecl(#20535,#20488) -namespacedecl(#20535,#20491) #20536=* -stmts(#20536,27,#20001,3,"import ... son"" };") -hasLocation(#20536,#20013) -stmt_containers(#20536,#20001) +exprs(#20536,78,#20534,1,"v2") +hasLocation(#20536,#20103) +enclosing_stmt(#20536,#20522) +expr_containers(#20536,#20001) +literals("v2","v2",#20536) +decl(#20536,#20485) +typedecl(#20536,#20488) +namespacedecl(#20536,#20491) #20537=* -exprs(#20537,4,#20536,-1,"""module""") -hasLocation(#20537,#20131) -enclosing_stmt(#20537,#20536) -expr_containers(#20537,#20001) -literals("module","""module""",#20537) +stmts(#20537,27,#20001,3,"import ... son"" };") +hasLocation(#20537,#20013) +stmt_containers(#20537,#20001) #20538=* -regexpterm(#20538,14,#20537,0,"module") -#20539=@"loc,{#10000},4,17,4,22" -locations_default(#20539,#10000,4,17,4,22) -hasLocation(#20538,#20539) -regexp_const_value(#20538,"module") -#20540=* -exprs(#20540,8,#20536,-10,"{ type: ""json"" }") -#20541=@"loc,{#10000},4,30,4,45" -locations_default(#20541,#10000,4,30,4,45) -hasLocation(#20540,#20541) -enclosing_stmt(#20540,#20536) -expr_containers(#20540,#20001) -#20542=* -properties(#20542,#20540,0,0,"type: ""json""") -#20543=@"loc,{#10000},4,32,4,43" -locations_default(#20543,#10000,4,32,4,43) -hasLocation(#20542,#20543) -#20544=* -exprs(#20544,0,#20542,0,"type") -hasLocation(#20544,#20137) -enclosing_stmt(#20544,#20536) -expr_containers(#20544,#20001) -literals("type","type",#20544) +exprs(#20538,4,#20537,-1,"""module""") +hasLocation(#20538,#20131) +enclosing_stmt(#20538,#20537) +expr_containers(#20538,#20001) +literals("module","""module""",#20538) +#20539=* +regexpterm(#20539,14,#20538,0,"module") +#20540=@"loc,{#10000},4,17,4,22" +locations_default(#20540,#10000,4,17,4,22) +hasLocation(#20539,#20540) +regexp_const_value(#20539,"module") +#20541=* +exprs(#20541,8,#20537,-10,"{ type: ""json"" }") +#20542=@"loc,{#10000},4,30,4,45" +locations_default(#20542,#10000,4,30,4,45) +hasLocation(#20541,#20542) +enclosing_stmt(#20541,#20537) +expr_containers(#20541,#20001) +#20543=* +properties(#20543,#20541,0,0,"type: ""json""") +#20544=@"loc,{#10000},4,32,4,43" +locations_default(#20544,#10000,4,32,4,43) +hasLocation(#20543,#20544) #20545=* -exprs(#20545,4,#20542,1,"""json""") -hasLocation(#20545,#20141) -enclosing_stmt(#20545,#20536) +exprs(#20545,0,#20543,0,"type") +hasLocation(#20545,#20137) +enclosing_stmt(#20545,#20537) expr_containers(#20545,#20001) -literals("json","""json""",#20545) +literals("type","type",#20545) #20546=* -regexpterm(#20546,14,#20545,0,"json") -#20547=@"loc,{#10000},4,39,4,42" -locations_default(#20547,#10000,4,39,4,42) -hasLocation(#20546,#20547) -regexp_const_value(#20546,"json") -#20548=* -exprs(#20548,84,#20536,0,"v3") -hasLocation(#20548,#20127) -enclosing_stmt(#20548,#20536) -expr_containers(#20548,#20001) +exprs(#20546,4,#20543,1,"""json""") +hasLocation(#20546,#20141) +enclosing_stmt(#20546,#20537) +expr_containers(#20546,#20001) +literals("json","""json""",#20546) +#20547=* +regexpterm(#20547,14,#20546,0,"json") +#20548=@"loc,{#10000},4,39,4,42" +locations_default(#20548,#10000,4,39,4,42) +hasLocation(#20547,#20548) +regexp_const_value(#20547,"json") #20549=* -exprs(#20549,78,#20548,1,"v3") +exprs(#20549,84,#20537,0,"v3") hasLocation(#20549,#20127) -enclosing_stmt(#20549,#20536) +enclosing_stmt(#20549,#20537) expr_containers(#20549,#20001) -literals("v3","v3",#20549) -decl(#20549,#20486) -typedecl(#20549,#20489) -namespacedecl(#20549,#20492) #20550=* -stmts(#20550,30,#20001,4,"export ... son"" };") -hasLocation(#20550,#20017) -stmt_containers(#20550,#20001) +exprs(#20550,78,#20549,1,"v3") +hasLocation(#20550,#20127) +enclosing_stmt(#20550,#20537) +expr_containers(#20550,#20001) +literals("v3","v3",#20550) +decl(#20550,#20486) +typedecl(#20550,#20489) +namespacedecl(#20550,#20492) #20551=* -exprs(#20551,4,#20550,-2,"""module""") -hasLocation(#20551,#20157) -enclosing_stmt(#20551,#20550) -expr_containers(#20551,#20001) -literals("module","""module""",#20551) +stmts(#20551,30,#20001,4,"export ... son"" };") +hasLocation(#20551,#20017) +stmt_containers(#20551,#20001) #20552=* -regexpterm(#20552,14,#20551,0,"module") -#20553=@"loc,{#10000},6,21,6,26" -locations_default(#20553,#10000,6,21,6,26) -hasLocation(#20552,#20553) -regexp_const_value(#20552,"module") -#20554=* -exprs(#20554,8,#20550,-10,"{ type: ""json"" }") -#20555=@"loc,{#10000},6,34,6,49" -locations_default(#20555,#10000,6,34,6,49) -hasLocation(#20554,#20555) -enclosing_stmt(#20554,#20550) -expr_containers(#20554,#20001) -#20556=* -properties(#20556,#20554,0,0,"type: ""json""") -#20557=@"loc,{#10000},6,36,6,47" -locations_default(#20557,#10000,6,36,6,47) -hasLocation(#20556,#20557) -#20558=* -exprs(#20558,0,#20556,0,"type") -hasLocation(#20558,#20163) -enclosing_stmt(#20558,#20550) -expr_containers(#20558,#20001) -literals("type","type",#20558) +exprs(#20552,4,#20551,-2,"""module""") +hasLocation(#20552,#20157) +enclosing_stmt(#20552,#20551) +expr_containers(#20552,#20001) +literals("module","""module""",#20552) +#20553=* +regexpterm(#20553,14,#20552,0,"module") +#20554=@"loc,{#10000},6,21,6,26" +locations_default(#20554,#10000,6,21,6,26) +hasLocation(#20553,#20554) +regexp_const_value(#20553,"module") +#20555=* +exprs(#20555,8,#20551,-10,"{ type: ""json"" }") +#20556=@"loc,{#10000},6,34,6,49" +locations_default(#20556,#10000,6,34,6,49) +hasLocation(#20555,#20556) +enclosing_stmt(#20555,#20551) +expr_containers(#20555,#20001) +#20557=* +properties(#20557,#20555,0,0,"type: ""json""") +#20558=@"loc,{#10000},6,36,6,47" +locations_default(#20558,#10000,6,36,6,47) +hasLocation(#20557,#20558) #20559=* -exprs(#20559,4,#20556,1,"""json""") -hasLocation(#20559,#20167) -enclosing_stmt(#20559,#20550) +exprs(#20559,0,#20557,0,"type") +hasLocation(#20559,#20163) +enclosing_stmt(#20559,#20551) expr_containers(#20559,#20001) -literals("json","""json""",#20559) +literals("type","type",#20559) #20560=* -regexpterm(#20560,14,#20559,0,"json") -#20561=@"loc,{#10000},6,43,6,46" -locations_default(#20561,#10000,6,43,6,46) -hasLocation(#20560,#20561) -regexp_const_value(#20560,"json") -#20562=* -exprs(#20562,86,#20550,0,"v4") -hasLocation(#20562,#20151) -enclosing_stmt(#20562,#20550) -expr_containers(#20562,#20001) +exprs(#20560,4,#20557,1,"""json""") +hasLocation(#20560,#20167) +enclosing_stmt(#20560,#20551) +expr_containers(#20560,#20001) +literals("json","""json""",#20560) +#20561=* +regexpterm(#20561,14,#20560,0,"json") +#20562=@"loc,{#10000},6,43,6,46" +locations_default(#20562,#10000,6,43,6,46) +hasLocation(#20561,#20562) +regexp_const_value(#20561,"json") #20563=* -exprs(#20563,0,#20562,0,"v4") +exprs(#20563,86,#20551,0,"v4") hasLocation(#20563,#20151) -enclosing_stmt(#20563,#20550) +enclosing_stmt(#20563,#20551) expr_containers(#20563,#20001) -literals("v4","v4",#20563) #20564=* -exprs(#20564,0,#20562,1,"v4") +exprs(#20564,0,#20563,0,"v4") hasLocation(#20564,#20151) -enclosing_stmt(#20564,#20550) +enclosing_stmt(#20564,#20551) expr_containers(#20564,#20001) literals("v4","v4",#20564) #20565=* -stmts(#20565,28,#20001,5,"export ... son"" };") -hasLocation(#20565,#20019) -stmt_containers(#20565,#20001) +exprs(#20565,0,#20563,1,"v4") +hasLocation(#20565,#20151) +enclosing_stmt(#20565,#20551) +expr_containers(#20565,#20001) +literals("v4","v4",#20565) #20566=* -exprs(#20566,4,#20565,0,"""module""") -hasLocation(#20566,#20179) -enclosing_stmt(#20566,#20565) -expr_containers(#20566,#20001) -literals("module","""module""",#20566) +stmts(#20566,28,#20001,5,"export ... son"" };") +hasLocation(#20566,#20019) +stmt_containers(#20566,#20001) #20567=* -regexpterm(#20567,14,#20566,0,"module") -#20568=@"loc,{#10000},7,16,7,21" -locations_default(#20568,#10000,7,16,7,21) -hasLocation(#20567,#20568) -regexp_const_value(#20567,"module") -#20569=* -exprs(#20569,8,#20565,-10,"{ type: ""json"" }") -#20570=@"loc,{#10000},7,29,7,44" -locations_default(#20570,#10000,7,29,7,44) -hasLocation(#20569,#20570) -enclosing_stmt(#20569,#20565) -expr_containers(#20569,#20001) -#20571=* -properties(#20571,#20569,0,0,"type: ""json""") -#20572=@"loc,{#10000},7,31,7,42" -locations_default(#20572,#10000,7,31,7,42) -hasLocation(#20571,#20572) -#20573=* -exprs(#20573,0,#20571,0,"type") -hasLocation(#20573,#20185) -enclosing_stmt(#20573,#20565) -expr_containers(#20573,#20001) -literals("type","type",#20573) +exprs(#20567,4,#20566,0,"""module""") +hasLocation(#20567,#20179) +enclosing_stmt(#20567,#20566) +expr_containers(#20567,#20001) +literals("module","""module""",#20567) +#20568=* +regexpterm(#20568,14,#20567,0,"module") +#20569=@"loc,{#10000},7,16,7,21" +locations_default(#20569,#10000,7,16,7,21) +hasLocation(#20568,#20569) +regexp_const_value(#20568,"module") +#20570=* +exprs(#20570,8,#20566,-10,"{ type: ""json"" }") +#20571=@"loc,{#10000},7,29,7,44" +locations_default(#20571,#10000,7,29,7,44) +hasLocation(#20570,#20571) +enclosing_stmt(#20570,#20566) +expr_containers(#20570,#20001) +#20572=* +properties(#20572,#20570,0,0,"type: ""json""") +#20573=@"loc,{#10000},7,31,7,42" +locations_default(#20573,#10000,7,31,7,42) +hasLocation(#20572,#20573) #20574=* -exprs(#20574,4,#20571,1,"""json""") -hasLocation(#20574,#20189) -enclosing_stmt(#20574,#20565) +exprs(#20574,0,#20572,0,"type") +hasLocation(#20574,#20185) +enclosing_stmt(#20574,#20566) expr_containers(#20574,#20001) -literals("json","""json""",#20574) +literals("type","type",#20574) #20575=* -regexpterm(#20575,14,#20574,0,"json") -#20576=@"loc,{#10000},7,38,7,41" -locations_default(#20576,#10000,7,38,7,41) -hasLocation(#20575,#20576) -regexp_const_value(#20575,"json") -#20577=* -stmts(#20577,30,#20001,6,"export ... son"" };") -hasLocation(#20577,#20021) -stmt_containers(#20577,#20001) +exprs(#20575,4,#20572,1,"""json""") +hasLocation(#20575,#20189) +enclosing_stmt(#20575,#20566) +expr_containers(#20575,#20001) +literals("json","""json""",#20575) +#20576=* +regexpterm(#20576,14,#20575,0,"json") +#20577=@"loc,{#10000},7,38,7,41" +locations_default(#20577,#10000,7,38,7,41) +hasLocation(#20576,#20577) +regexp_const_value(#20576,"json") #20578=* -exprs(#20578,4,#20577,-2,"""module""") -hasLocation(#20578,#20205) -enclosing_stmt(#20578,#20577) -expr_containers(#20578,#20001) -literals("module","""module""",#20578) +stmts(#20578,30,#20001,6,"export ... son"" };") +hasLocation(#20578,#20021) +stmt_containers(#20578,#20001) #20579=* -regexpterm(#20579,14,#20578,0,"module") -#20580=@"loc,{#10000},8,22,8,27" -locations_default(#20580,#10000,8,22,8,27) -hasLocation(#20579,#20580) -regexp_const_value(#20579,"module") -#20581=* -exprs(#20581,8,#20577,-10,"{ type: ""json"" }") -#20582=@"loc,{#10000},8,35,8,50" -locations_default(#20582,#10000,8,35,8,50) -hasLocation(#20581,#20582) -enclosing_stmt(#20581,#20577) -expr_containers(#20581,#20001) -#20583=* -properties(#20583,#20581,0,0,"type: ""json""") -#20584=@"loc,{#10000},8,37,8,48" -locations_default(#20584,#10000,8,37,8,48) -hasLocation(#20583,#20584) -#20585=* -exprs(#20585,0,#20583,0,"type") -hasLocation(#20585,#20211) -enclosing_stmt(#20585,#20577) -expr_containers(#20585,#20001) -literals("type","type",#20585) +exprs(#20579,4,#20578,-2,"""module""") +hasLocation(#20579,#20205) +enclosing_stmt(#20579,#20578) +expr_containers(#20579,#20001) +literals("module","""module""",#20579) +#20580=* +regexpterm(#20580,14,#20579,0,"module") +#20581=@"loc,{#10000},8,22,8,27" +locations_default(#20581,#10000,8,22,8,27) +hasLocation(#20580,#20581) +regexp_const_value(#20580,"module") +#20582=* +exprs(#20582,8,#20578,-10,"{ type: ""json"" }") +#20583=@"loc,{#10000},8,35,8,50" +locations_default(#20583,#10000,8,35,8,50) +hasLocation(#20582,#20583) +enclosing_stmt(#20582,#20578) +expr_containers(#20582,#20001) +#20584=* +properties(#20584,#20582,0,0,"type: ""json""") +#20585=@"loc,{#10000},8,37,8,48" +locations_default(#20585,#10000,8,37,8,48) +hasLocation(#20584,#20585) #20586=* -exprs(#20586,4,#20583,1,"""json""") -hasLocation(#20586,#20215) -enclosing_stmt(#20586,#20577) +exprs(#20586,0,#20584,0,"type") +hasLocation(#20586,#20211) +enclosing_stmt(#20586,#20578) expr_containers(#20586,#20001) -literals("json","""json""",#20586) +literals("type","type",#20586) #20587=* -regexpterm(#20587,14,#20586,0,"json") -#20588=@"loc,{#10000},8,44,8,47" -locations_default(#20588,#10000,8,44,8,47) -hasLocation(#20587,#20588) -regexp_const_value(#20587,"json") -#20589=* -exprs(#20589,96,#20577,0,"* as v5") -#20590=@"loc,{#10000},8,8,8,14" -locations_default(#20590,#10000,8,8,8,14) -hasLocation(#20589,#20590) -enclosing_stmt(#20589,#20577) -expr_containers(#20589,#20001) -#20591=* -exprs(#20591,0,#20589,1,"v5") -hasLocation(#20591,#20201) -enclosing_stmt(#20591,#20577) -expr_containers(#20591,#20001) -literals("v5","v5",#20591) +exprs(#20587,4,#20584,1,"""json""") +hasLocation(#20587,#20215) +enclosing_stmt(#20587,#20578) +expr_containers(#20587,#20001) +literals("json","""json""",#20587) +#20588=* +regexpterm(#20588,14,#20587,0,"json") +#20589=@"loc,{#10000},8,44,8,47" +locations_default(#20589,#10000,8,44,8,47) +hasLocation(#20588,#20589) +regexp_const_value(#20588,"json") +#20590=* +exprs(#20590,96,#20578,0,"* as v5") +#20591=@"loc,{#10000},8,8,8,14" +locations_default(#20591,#10000,8,8,8,14) +hasLocation(#20590,#20591) +enclosing_stmt(#20590,#20578) +expr_containers(#20590,#20001) #20592=* -stmts(#20592,22,#20001,7,"const v ... "" } });") -hasLocation(#20592,#20025) -stmt_containers(#20592,#20001) +exprs(#20592,0,#20590,1,"v5") +hasLocation(#20592,#20201) +enclosing_stmt(#20592,#20578) +expr_containers(#20592,#20001) +literals("v5","v5",#20592) #20593=* -exprs(#20593,64,#20592,0,"v6 = im ... n"" } })") -#20594=@"loc,{#10000},10,7,10,55" -locations_default(#20594,#10000,10,7,10,55) -hasLocation(#20593,#20594) -enclosing_stmt(#20593,#20592) -expr_containers(#20593,#20001) -#20595=* -exprs(#20595,78,#20593,0,"v6") -hasLocation(#20595,#20223) -enclosing_stmt(#20595,#20592) -expr_containers(#20595,#20001) -literals("v6","v6",#20595) -decl(#20595,#20493) +stmts(#20593,22,#20001,7,"const v ... "" } });") +hasLocation(#20593,#20025) +stmt_containers(#20593,#20001) +#20594=* +exprs(#20594,64,#20593,0,"v6 = im ... n"" } })") +#20595=@"loc,{#10000},10,7,10,55" +locations_default(#20595,#10000,10,7,10,55) +hasLocation(#20594,#20595) +enclosing_stmt(#20594,#20593) +expr_containers(#20594,#20001) #20596=* -exprs(#20596,99,#20593,1,"import( ... n"" } })") -#20597=@"loc,{#10000},10,12,10,55" -locations_default(#20597,#10000,10,12,10,55) -hasLocation(#20596,#20597) -enclosing_stmt(#20596,#20592) +exprs(#20596,78,#20594,0,"v6") +hasLocation(#20596,#20223) +enclosing_stmt(#20596,#20593) expr_containers(#20596,#20001) -#20598=* -exprs(#20598,4,#20596,0,"""module""") -hasLocation(#20598,#20231) -enclosing_stmt(#20598,#20592) -expr_containers(#20598,#20001) -literals("module","""module""",#20598) +literals("v6","v6",#20596) +decl(#20596,#20493) +#20597=* +exprs(#20597,99,#20594,1,"import( ... n"" } })") +#20598=@"loc,{#10000},10,12,10,55" +locations_default(#20598,#10000,10,12,10,55) +hasLocation(#20597,#20598) +enclosing_stmt(#20597,#20593) +expr_containers(#20597,#20001) #20599=* -regexpterm(#20599,14,#20598,0,"module") -#20600=@"loc,{#10000},10,20,10,25" -locations_default(#20600,#10000,10,20,10,25) -hasLocation(#20599,#20600) -regexp_const_value(#20599,"module") -#20601=* -exprs(#20601,8,#20596,1,"{ with: ... on"" } }") -#20602=@"loc,{#10000},10,29,10,54" -locations_default(#20602,#10000,10,29,10,54) -hasLocation(#20601,#20602) -enclosing_stmt(#20601,#20592) -expr_containers(#20601,#20001) -#20603=* -properties(#20603,#20601,0,0,"with: { ... json"" }") -#20604=@"loc,{#10000},10,31,10,52" -locations_default(#20604,#10000,10,31,10,52) -hasLocation(#20603,#20604) -#20605=* -exprs(#20605,0,#20603,0,"with") -hasLocation(#20605,#20237) -enclosing_stmt(#20605,#20592) -expr_containers(#20605,#20001) -literals("with","with",#20605) +exprs(#20599,4,#20597,0,"""module""") +hasLocation(#20599,#20231) +enclosing_stmt(#20599,#20593) +expr_containers(#20599,#20001) +literals("module","""module""",#20599) +#20600=* +regexpterm(#20600,14,#20599,0,"module") +#20601=@"loc,{#10000},10,20,10,25" +locations_default(#20601,#10000,10,20,10,25) +hasLocation(#20600,#20601) +regexp_const_value(#20600,"module") +#20602=* +exprs(#20602,8,#20597,1,"{ with: ... on"" } }") +#20603=@"loc,{#10000},10,29,10,54" +locations_default(#20603,#10000,10,29,10,54) +hasLocation(#20602,#20603) +enclosing_stmt(#20602,#20593) +expr_containers(#20602,#20001) +#20604=* +properties(#20604,#20602,0,0,"with: { ... json"" }") +#20605=@"loc,{#10000},10,31,10,52" +locations_default(#20605,#10000,10,31,10,52) +hasLocation(#20604,#20605) #20606=* -exprs(#20606,8,#20603,1,"{ type: ""json"" }") -#20607=@"loc,{#10000},10,37,10,52" -locations_default(#20607,#10000,10,37,10,52) -hasLocation(#20606,#20607) -enclosing_stmt(#20606,#20592) +exprs(#20606,0,#20604,0,"with") +hasLocation(#20606,#20237) +enclosing_stmt(#20606,#20593) expr_containers(#20606,#20001) -#20608=* -properties(#20608,#20606,0,0,"type: ""json""") -#20609=@"loc,{#10000},10,39,10,50" -locations_default(#20609,#10000,10,39,10,50) -hasLocation(#20608,#20609) -#20610=* -exprs(#20610,0,#20608,0,"type") -hasLocation(#20610,#20243) -enclosing_stmt(#20610,#20592) -expr_containers(#20610,#20001) -literals("type","type",#20610) +literals("with","with",#20606) +#20607=* +exprs(#20607,8,#20604,1,"{ type: ""json"" }") +#20608=@"loc,{#10000},10,37,10,52" +locations_default(#20608,#10000,10,37,10,52) +hasLocation(#20607,#20608) +enclosing_stmt(#20607,#20593) +expr_containers(#20607,#20001) +#20609=* +properties(#20609,#20607,0,0,"type: ""json""") +#20610=@"loc,{#10000},10,39,10,50" +locations_default(#20610,#10000,10,39,10,50) +hasLocation(#20609,#20610) #20611=* -exprs(#20611,4,#20608,1,"""json""") -hasLocation(#20611,#20247) -enclosing_stmt(#20611,#20592) +exprs(#20611,0,#20609,0,"type") +hasLocation(#20611,#20243) +enclosing_stmt(#20611,#20593) expr_containers(#20611,#20001) -literals("json","""json""",#20611) +literals("type","type",#20611) #20612=* -regexpterm(#20612,14,#20611,0,"json") -#20613=@"loc,{#10000},10,46,10,49" -locations_default(#20613,#10000,10,46,10,49) -hasLocation(#20612,#20613) -regexp_const_value(#20612,"json") -#20614=* -stmts(#20614,27,#20001,8,"import ""module""") -#20615=@"loc,{#10000},12,1,12,15" -locations_default(#20615,#10000,12,1,12,15) -hasLocation(#20614,#20615) -stmt_containers(#20614,#20001) -#20616=* -exprs(#20616,4,#20614,-1,"""module""") -hasLocation(#20616,#20259) -enclosing_stmt(#20616,#20614) -expr_containers(#20616,#20001) -literals("module","""module""",#20616) +exprs(#20612,4,#20609,1,"""json""") +hasLocation(#20612,#20247) +enclosing_stmt(#20612,#20593) +expr_containers(#20612,#20001) +literals("json","""json""",#20612) +#20613=* +regexpterm(#20613,14,#20612,0,"json") +#20614=@"loc,{#10000},10,46,10,49" +locations_default(#20614,#10000,10,46,10,49) +hasLocation(#20613,#20614) +regexp_const_value(#20613,"json") +#20615=* +stmts(#20615,27,#20001,8,"import ""module""") +#20616=@"loc,{#10000},12,1,12,15" +locations_default(#20616,#10000,12,1,12,15) +hasLocation(#20615,#20616) +stmt_containers(#20615,#20001) #20617=* -regexpterm(#20617,14,#20616,0,"module") -#20618=@"loc,{#10000},12,9,12,14" -locations_default(#20618,#10000,12,9,12,14) -hasLocation(#20617,#20618) -regexp_const_value(#20617,"module") -#20619=* -stmts(#20619,2,#20001,9,"assert( ... son""});") -#20620=@"loc,{#10000},13,1,13,23" -locations_default(#20620,#10000,13,1,13,23) -hasLocation(#20619,#20620) -stmt_containers(#20619,#20001) -#20621=* -exprs(#20621,13,#20619,0,"assert( ... json""})") -#20622=@"loc,{#10000},13,1,13,22" -locations_default(#20622,#10000,13,1,13,22) -hasLocation(#20621,#20622) -enclosing_stmt(#20621,#20619) -expr_containers(#20621,#20001) -#20623=* -exprs(#20623,79,#20621,-1,"assert") -hasLocation(#20623,#20261) -enclosing_stmt(#20623,#20619) -expr_containers(#20623,#20001) -literals("assert","assert",#20623) -#20624=@"var;{assert};{#20000}" -variables(#20624,"assert",#20000) -bind(#20623,#20624) -#20625=* -exprs(#20625,8,#20621,0,"{type: ""json""}") -#20626=@"loc,{#10000},13,8,13,21" -locations_default(#20626,#10000,13,8,13,21) -hasLocation(#20625,#20626) -enclosing_stmt(#20625,#20619) -expr_containers(#20625,#20001) -#20627=* -properties(#20627,#20625,0,0,"type: ""json""") -#20628=@"loc,{#10000},13,9,13,20" -locations_default(#20628,#10000,13,9,13,20) -hasLocation(#20627,#20628) -#20629=* -exprs(#20629,0,#20627,0,"type") -hasLocation(#20629,#20267) -enclosing_stmt(#20629,#20619) -expr_containers(#20629,#20001) -literals("type","type",#20629) +exprs(#20617,4,#20615,-1,"""module""") +hasLocation(#20617,#20259) +enclosing_stmt(#20617,#20615) +expr_containers(#20617,#20001) +literals("module","""module""",#20617) +#20618=* +regexpterm(#20618,14,#20617,0,"module") +#20619=@"loc,{#10000},12,9,12,14" +locations_default(#20619,#10000,12,9,12,14) +hasLocation(#20618,#20619) +regexp_const_value(#20618,"module") +#20620=* +stmts(#20620,2,#20001,9,"assert( ... son""});") +#20621=@"loc,{#10000},13,1,13,23" +locations_default(#20621,#10000,13,1,13,23) +hasLocation(#20620,#20621) +stmt_containers(#20620,#20001) +#20622=* +exprs(#20622,13,#20620,0,"assert( ... json""})") +#20623=@"loc,{#10000},13,1,13,22" +locations_default(#20623,#10000,13,1,13,22) +hasLocation(#20622,#20623) +enclosing_stmt(#20622,#20620) +expr_containers(#20622,#20001) +#20624=* +exprs(#20624,79,#20622,-1,"assert") +hasLocation(#20624,#20261) +enclosing_stmt(#20624,#20620) +expr_containers(#20624,#20001) +literals("assert","assert",#20624) +#20625=@"var;{assert};{#20000}" +variables(#20625,"assert",#20000) +bind(#20624,#20625) +#20626=* +exprs(#20626,8,#20622,0,"{type: ""json""}") +#20627=@"loc,{#10000},13,8,13,21" +locations_default(#20627,#10000,13,8,13,21) +hasLocation(#20626,#20627) +enclosing_stmt(#20626,#20620) +expr_containers(#20626,#20001) +#20628=* +properties(#20628,#20626,0,0,"type: ""json""") +#20629=@"loc,{#10000},13,9,13,20" +locations_default(#20629,#10000,13,9,13,20) +hasLocation(#20628,#20629) #20630=* -exprs(#20630,4,#20627,1,"""json""") -hasLocation(#20630,#20271) -enclosing_stmt(#20630,#20619) +exprs(#20630,0,#20628,0,"type") +hasLocation(#20630,#20267) +enclosing_stmt(#20630,#20620) expr_containers(#20630,#20001) -literals("json","""json""",#20630) +literals("type","type",#20630) #20631=* -regexpterm(#20631,14,#20630,0,"json") -#20632=@"loc,{#10000},13,16,13,19" -locations_default(#20632,#10000,13,16,13,19) -hasLocation(#20631,#20632) -regexp_const_value(#20631,"json") -#20633=* -stmts(#20633,27,#20001,10,"import ... son"" };") -hasLocation(#20633,#20035) -stmt_containers(#20633,#20001) +exprs(#20631,4,#20628,1,"""json""") +hasLocation(#20631,#20271) +enclosing_stmt(#20631,#20620) +expr_containers(#20631,#20001) +literals("json","""json""",#20631) +#20632=* +regexpterm(#20632,14,#20631,0,"json") +#20633=@"loc,{#10000},13,16,13,19" +locations_default(#20633,#10000,13,16,13,19) +hasLocation(#20632,#20633) +regexp_const_value(#20632,"json") #20634=* -exprs(#20634,4,#20633,-1,"""module""") -hasLocation(#20634,#20281) -enclosing_stmt(#20634,#20633) -expr_containers(#20634,#20001) -literals("module","""module""",#20634) +stmts(#20634,27,#20001,10,"import ... son"" };") +hasLocation(#20634,#20035) +stmt_containers(#20634,#20001) #20635=* -regexpterm(#20635,14,#20634,0,"module") -#20636=@"loc,{#10000},15,9,15,14" -locations_default(#20636,#10000,15,9,15,14) -hasLocation(#20635,#20636) -regexp_const_value(#20635,"module") -#20637=* -exprs(#20637,8,#20633,-10,"{ type: ""json"" }") -#20638=@"loc,{#10000},15,24,15,39" -locations_default(#20638,#10000,15,24,15,39) -hasLocation(#20637,#20638) -enclosing_stmt(#20637,#20633) -expr_containers(#20637,#20001) -#20639=* -properties(#20639,#20637,0,0,"type: ""json""") -#20640=@"loc,{#10000},15,26,15,37" -locations_default(#20640,#10000,15,26,15,37) -hasLocation(#20639,#20640) -#20641=* -exprs(#20641,0,#20639,0,"type") -hasLocation(#20641,#20287) -enclosing_stmt(#20641,#20633) -expr_containers(#20641,#20001) -literals("type","type",#20641) +exprs(#20635,4,#20634,-1,"""module""") +hasLocation(#20635,#20281) +enclosing_stmt(#20635,#20634) +expr_containers(#20635,#20001) +literals("module","""module""",#20635) +#20636=* +regexpterm(#20636,14,#20635,0,"module") +#20637=@"loc,{#10000},15,9,15,14" +locations_default(#20637,#10000,15,9,15,14) +hasLocation(#20636,#20637) +regexp_const_value(#20636,"module") +#20638=* +exprs(#20638,8,#20634,-10,"{ type: ""json"" }") +#20639=@"loc,{#10000},15,24,15,39" +locations_default(#20639,#10000,15,24,15,39) +hasLocation(#20638,#20639) +enclosing_stmt(#20638,#20634) +expr_containers(#20638,#20001) +#20640=* +properties(#20640,#20638,0,0,"type: ""json""") +#20641=@"loc,{#10000},15,26,15,37" +locations_default(#20641,#10000,15,26,15,37) +hasLocation(#20640,#20641) #20642=* -exprs(#20642,4,#20639,1,"""json""") -hasLocation(#20642,#20291) -enclosing_stmt(#20642,#20633) +exprs(#20642,0,#20640,0,"type") +hasLocation(#20642,#20287) +enclosing_stmt(#20642,#20634) expr_containers(#20642,#20001) -literals("json","""json""",#20642) +literals("type","type",#20642) #20643=* -regexpterm(#20643,14,#20642,0,"json") -#20644=@"loc,{#10000},15,33,15,36" -locations_default(#20644,#10000,15,33,15,36) -hasLocation(#20643,#20644) -regexp_const_value(#20643,"json") -#20645=* -stmts(#20645,27,#20001,11,"import ... son"" };") -hasLocation(#20645,#20037) -stmt_containers(#20645,#20001) +exprs(#20643,4,#20640,1,"""json""") +hasLocation(#20643,#20291) +enclosing_stmt(#20643,#20634) +expr_containers(#20643,#20001) +literals("json","""json""",#20643) +#20644=* +regexpterm(#20644,14,#20643,0,"json") +#20645=@"loc,{#10000},15,33,15,36" +locations_default(#20645,#10000,15,33,15,36) +hasLocation(#20644,#20645) +regexp_const_value(#20644,"json") #20646=* -exprs(#20646,4,#20645,-1,"""module""") -hasLocation(#20646,#20307) -enclosing_stmt(#20646,#20645) -expr_containers(#20646,#20001) -literals("module","""module""",#20646) +stmts(#20646,27,#20001,11,"import ... son"" };") +hasLocation(#20646,#20037) +stmt_containers(#20646,#20001) #20647=* -regexpterm(#20647,14,#20646,0,"module") -#20648=@"loc,{#10000},16,22,16,27" -locations_default(#20648,#10000,16,22,16,27) -hasLocation(#20647,#20648) -regexp_const_value(#20647,"module") -#20649=* -exprs(#20649,8,#20645,-10,"{ type: ""json"" }") -#20650=@"loc,{#10000},16,37,16,52" -locations_default(#20650,#10000,16,37,16,52) -hasLocation(#20649,#20650) -enclosing_stmt(#20649,#20645) -expr_containers(#20649,#20001) -#20651=* -properties(#20651,#20649,0,0,"type: ""json""") -#20652=@"loc,{#10000},16,39,16,50" -locations_default(#20652,#10000,16,39,16,50) -hasLocation(#20651,#20652) -#20653=* -exprs(#20653,0,#20651,0,"type") -hasLocation(#20653,#20313) -enclosing_stmt(#20653,#20645) -expr_containers(#20653,#20001) -literals("type","type",#20653) +exprs(#20647,4,#20646,-1,"""module""") +hasLocation(#20647,#20307) +enclosing_stmt(#20647,#20646) +expr_containers(#20647,#20001) +literals("module","""module""",#20647) +#20648=* +regexpterm(#20648,14,#20647,0,"module") +#20649=@"loc,{#10000},16,22,16,27" +locations_default(#20649,#10000,16,22,16,27) +hasLocation(#20648,#20649) +regexp_const_value(#20648,"module") +#20650=* +exprs(#20650,8,#20646,-10,"{ type: ""json"" }") +#20651=@"loc,{#10000},16,37,16,52" +locations_default(#20651,#10000,16,37,16,52) +hasLocation(#20650,#20651) +enclosing_stmt(#20650,#20646) +expr_containers(#20650,#20001) +#20652=* +properties(#20652,#20650,0,0,"type: ""json""") +#20653=@"loc,{#10000},16,39,16,50" +locations_default(#20653,#10000,16,39,16,50) +hasLocation(#20652,#20653) #20654=* -exprs(#20654,4,#20651,1,"""json""") -hasLocation(#20654,#20317) -enclosing_stmt(#20654,#20645) +exprs(#20654,0,#20652,0,"type") +hasLocation(#20654,#20313) +enclosing_stmt(#20654,#20646) expr_containers(#20654,#20001) -literals("json","""json""",#20654) +literals("type","type",#20654) #20655=* -regexpterm(#20655,14,#20654,0,"json") -#20656=@"loc,{#10000},16,46,16,49" -locations_default(#20656,#10000,16,46,16,49) -hasLocation(#20655,#20656) -regexp_const_value(#20655,"json") -#20657=* -exprs(#20657,85,#20645,0,"* as v1") -#20658=@"loc,{#10000},16,8,16,14" -locations_default(#20658,#10000,16,8,16,14) -hasLocation(#20657,#20658) -enclosing_stmt(#20657,#20645) -expr_containers(#20657,#20001) -#20659=* -exprs(#20659,78,#20657,1,"v1") -hasLocation(#20659,#20303) -enclosing_stmt(#20659,#20645) -expr_containers(#20659,#20001) -literals("v1","v1",#20659) -decl(#20659,#20484) -typedecl(#20659,#20487) -namespacedecl(#20659,#20490) +exprs(#20655,4,#20652,1,"""json""") +hasLocation(#20655,#20317) +enclosing_stmt(#20655,#20646) +expr_containers(#20655,#20001) +literals("json","""json""",#20655) +#20656=* +regexpterm(#20656,14,#20655,0,"json") +#20657=@"loc,{#10000},16,46,16,49" +locations_default(#20657,#10000,16,46,16,49) +hasLocation(#20656,#20657) +regexp_const_value(#20656,"json") +#20658=* +exprs(#20658,85,#20646,0,"* as v1") +#20659=@"loc,{#10000},16,8,16,14" +locations_default(#20659,#10000,16,8,16,14) +hasLocation(#20658,#20659) +enclosing_stmt(#20658,#20646) +expr_containers(#20658,#20001) #20660=* -stmts(#20660,27,#20001,12,"import ... son"" };") -hasLocation(#20660,#20039) -stmt_containers(#20660,#20001) +exprs(#20660,78,#20658,1,"v1") +hasLocation(#20660,#20303) +enclosing_stmt(#20660,#20646) +expr_containers(#20660,#20001) +literals("v1","v1",#20660) +decl(#20660,#20484) +typedecl(#20660,#20487) +namespacedecl(#20660,#20490) #20661=* -exprs(#20661,4,#20660,-1,"""module""") -hasLocation(#20661,#20333) -enclosing_stmt(#20661,#20660) -expr_containers(#20661,#20001) -literals("module","""module""",#20661) +stmts(#20661,27,#20001,12,"import ... son"" };") +hasLocation(#20661,#20039) +stmt_containers(#20661,#20001) #20662=* -regexpterm(#20662,14,#20661,0,"module") -#20663=@"loc,{#10000},17,21,17,26" -locations_default(#20663,#10000,17,21,17,26) -hasLocation(#20662,#20663) -regexp_const_value(#20662,"module") -#20664=* -exprs(#20664,8,#20660,-10,"{ type: ""json"" }") -#20665=@"loc,{#10000},17,36,17,51" -locations_default(#20665,#10000,17,36,17,51) -hasLocation(#20664,#20665) -enclosing_stmt(#20664,#20660) -expr_containers(#20664,#20001) -#20666=* -properties(#20666,#20664,0,0,"type: ""json""") -#20667=@"loc,{#10000},17,38,17,49" -locations_default(#20667,#10000,17,38,17,49) -hasLocation(#20666,#20667) -#20668=* -exprs(#20668,0,#20666,0,"type") -hasLocation(#20668,#20339) -enclosing_stmt(#20668,#20660) -expr_containers(#20668,#20001) -literals("type","type",#20668) +exprs(#20662,4,#20661,-1,"""module""") +hasLocation(#20662,#20333) +enclosing_stmt(#20662,#20661) +expr_containers(#20662,#20001) +literals("module","""module""",#20662) +#20663=* +regexpterm(#20663,14,#20662,0,"module") +#20664=@"loc,{#10000},17,21,17,26" +locations_default(#20664,#10000,17,21,17,26) +hasLocation(#20663,#20664) +regexp_const_value(#20663,"module") +#20665=* +exprs(#20665,8,#20661,-10,"{ type: ""json"" }") +#20666=@"loc,{#10000},17,36,17,51" +locations_default(#20666,#10000,17,36,17,51) +hasLocation(#20665,#20666) +enclosing_stmt(#20665,#20661) +expr_containers(#20665,#20001) +#20667=* +properties(#20667,#20665,0,0,"type: ""json""") +#20668=@"loc,{#10000},17,38,17,49" +locations_default(#20668,#10000,17,38,17,49) +hasLocation(#20667,#20668) #20669=* -exprs(#20669,4,#20666,1,"""json""") -hasLocation(#20669,#20343) -enclosing_stmt(#20669,#20660) +exprs(#20669,0,#20667,0,"type") +hasLocation(#20669,#20339) +enclosing_stmt(#20669,#20661) expr_containers(#20669,#20001) -literals("json","""json""",#20669) +literals("type","type",#20669) #20670=* -regexpterm(#20670,14,#20669,0,"json") -#20671=@"loc,{#10000},17,45,17,48" -locations_default(#20671,#10000,17,45,17,48) -hasLocation(#20670,#20671) -regexp_const_value(#20670,"json") -#20672=* -exprs(#20672,83,#20660,0,"v2") -hasLocation(#20672,#20327) -enclosing_stmt(#20672,#20660) -expr_containers(#20672,#20001) +exprs(#20670,4,#20667,1,"""json""") +hasLocation(#20670,#20343) +enclosing_stmt(#20670,#20661) +expr_containers(#20670,#20001) +literals("json","""json""",#20670) +#20671=* +regexpterm(#20671,14,#20670,0,"json") +#20672=@"loc,{#10000},17,45,17,48" +locations_default(#20672,#10000,17,45,17,48) +hasLocation(#20671,#20672) +regexp_const_value(#20671,"json") #20673=* -exprs(#20673,0,#20672,0,"v2") +exprs(#20673,83,#20661,0,"v2") hasLocation(#20673,#20327) -enclosing_stmt(#20673,#20660) +enclosing_stmt(#20673,#20661) expr_containers(#20673,#20001) -literals("v2","v2",#20673) #20674=* -exprs(#20674,78,#20672,1,"v2") +exprs(#20674,0,#20673,0,"v2") hasLocation(#20674,#20327) -enclosing_stmt(#20674,#20660) +enclosing_stmt(#20674,#20661) expr_containers(#20674,#20001) literals("v2","v2",#20674) -decl(#20674,#20485) -typedecl(#20674,#20488) -namespacedecl(#20674,#20491) #20675=* -stmts(#20675,27,#20001,13,"import ... son"" };") -hasLocation(#20675,#20041) -stmt_containers(#20675,#20001) +exprs(#20675,78,#20673,1,"v2") +hasLocation(#20675,#20327) +enclosing_stmt(#20675,#20661) +expr_containers(#20675,#20001) +literals("v2","v2",#20675) +decl(#20675,#20485) +typedecl(#20675,#20488) +namespacedecl(#20675,#20491) #20676=* -exprs(#20676,4,#20675,-1,"""module""") -hasLocation(#20676,#20355) -enclosing_stmt(#20676,#20675) -expr_containers(#20676,#20001) -literals("module","""module""",#20676) +stmts(#20676,27,#20001,13,"import ... son"" };") +hasLocation(#20676,#20041) +stmt_containers(#20676,#20001) #20677=* -regexpterm(#20677,14,#20676,0,"module") -#20678=@"loc,{#10000},18,17,18,22" -locations_default(#20678,#10000,18,17,18,22) -hasLocation(#20677,#20678) -regexp_const_value(#20677,"module") -#20679=* -exprs(#20679,8,#20675,-10,"{ type: ""json"" }") -#20680=@"loc,{#10000},18,32,18,47" -locations_default(#20680,#10000,18,32,18,47) -hasLocation(#20679,#20680) -enclosing_stmt(#20679,#20675) -expr_containers(#20679,#20001) -#20681=* -properties(#20681,#20679,0,0,"type: ""json""") -#20682=@"loc,{#10000},18,34,18,45" -locations_default(#20682,#10000,18,34,18,45) -hasLocation(#20681,#20682) -#20683=* -exprs(#20683,0,#20681,0,"type") -hasLocation(#20683,#20361) -enclosing_stmt(#20683,#20675) -expr_containers(#20683,#20001) -literals("type","type",#20683) +exprs(#20677,4,#20676,-1,"""module""") +hasLocation(#20677,#20355) +enclosing_stmt(#20677,#20676) +expr_containers(#20677,#20001) +literals("module","""module""",#20677) +#20678=* +regexpterm(#20678,14,#20677,0,"module") +#20679=@"loc,{#10000},18,17,18,22" +locations_default(#20679,#10000,18,17,18,22) +hasLocation(#20678,#20679) +regexp_const_value(#20678,"module") +#20680=* +exprs(#20680,8,#20676,-10,"{ type: ""json"" }") +#20681=@"loc,{#10000},18,32,18,47" +locations_default(#20681,#10000,18,32,18,47) +hasLocation(#20680,#20681) +enclosing_stmt(#20680,#20676) +expr_containers(#20680,#20001) +#20682=* +properties(#20682,#20680,0,0,"type: ""json""") +#20683=@"loc,{#10000},18,34,18,45" +locations_default(#20683,#10000,18,34,18,45) +hasLocation(#20682,#20683) #20684=* -exprs(#20684,4,#20681,1,"""json""") -hasLocation(#20684,#20365) -enclosing_stmt(#20684,#20675) +exprs(#20684,0,#20682,0,"type") +hasLocation(#20684,#20361) +enclosing_stmt(#20684,#20676) expr_containers(#20684,#20001) -literals("json","""json""",#20684) +literals("type","type",#20684) #20685=* -regexpterm(#20685,14,#20684,0,"json") -#20686=@"loc,{#10000},18,41,18,44" -locations_default(#20686,#10000,18,41,18,44) -hasLocation(#20685,#20686) -regexp_const_value(#20685,"json") -#20687=* -exprs(#20687,84,#20675,0,"v3") -hasLocation(#20687,#20351) -enclosing_stmt(#20687,#20675) -expr_containers(#20687,#20001) +exprs(#20685,4,#20682,1,"""json""") +hasLocation(#20685,#20365) +enclosing_stmt(#20685,#20676) +expr_containers(#20685,#20001) +literals("json","""json""",#20685) +#20686=* +regexpterm(#20686,14,#20685,0,"json") +#20687=@"loc,{#10000},18,41,18,44" +locations_default(#20687,#10000,18,41,18,44) +hasLocation(#20686,#20687) +regexp_const_value(#20686,"json") #20688=* -exprs(#20688,78,#20687,1,"v3") +exprs(#20688,84,#20676,0,"v3") hasLocation(#20688,#20351) -enclosing_stmt(#20688,#20675) +enclosing_stmt(#20688,#20676) expr_containers(#20688,#20001) -literals("v3","v3",#20688) -decl(#20688,#20486) -typedecl(#20688,#20489) -namespacedecl(#20688,#20492) #20689=* -stmts(#20689,30,#20001,14,"export ... son"" };") -hasLocation(#20689,#20045) -stmt_containers(#20689,#20001) +exprs(#20689,78,#20688,1,"v3") +hasLocation(#20689,#20351) +enclosing_stmt(#20689,#20676) +expr_containers(#20689,#20001) +literals("v3","v3",#20689) +decl(#20689,#20486) +typedecl(#20689,#20489) +namespacedecl(#20689,#20492) #20690=* -exprs(#20690,4,#20689,-2,"""module""") -hasLocation(#20690,#20381) -enclosing_stmt(#20690,#20689) -expr_containers(#20690,#20001) -literals("module","""module""",#20690) +stmts(#20690,30,#20001,14,"export ... son"" };") +hasLocation(#20690,#20045) +stmt_containers(#20690,#20001) #20691=* -regexpterm(#20691,14,#20690,0,"module") -#20692=@"loc,{#10000},20,21,20,26" -locations_default(#20692,#10000,20,21,20,26) -hasLocation(#20691,#20692) -regexp_const_value(#20691,"module") -#20693=* -exprs(#20693,8,#20689,-10,"{ type: ""json"" }") -#20694=@"loc,{#10000},20,36,20,51" -locations_default(#20694,#10000,20,36,20,51) -hasLocation(#20693,#20694) -enclosing_stmt(#20693,#20689) -expr_containers(#20693,#20001) -#20695=* -properties(#20695,#20693,0,0,"type: ""json""") -#20696=@"loc,{#10000},20,38,20,49" -locations_default(#20696,#10000,20,38,20,49) -hasLocation(#20695,#20696) -#20697=* -exprs(#20697,0,#20695,0,"type") -hasLocation(#20697,#20387) -enclosing_stmt(#20697,#20689) -expr_containers(#20697,#20001) -literals("type","type",#20697) +exprs(#20691,4,#20690,-2,"""module""") +hasLocation(#20691,#20381) +enclosing_stmt(#20691,#20690) +expr_containers(#20691,#20001) +literals("module","""module""",#20691) +#20692=* +regexpterm(#20692,14,#20691,0,"module") +#20693=@"loc,{#10000},20,21,20,26" +locations_default(#20693,#10000,20,21,20,26) +hasLocation(#20692,#20693) +regexp_const_value(#20692,"module") +#20694=* +exprs(#20694,8,#20690,-10,"{ type: ""json"" }") +#20695=@"loc,{#10000},20,36,20,51" +locations_default(#20695,#10000,20,36,20,51) +hasLocation(#20694,#20695) +enclosing_stmt(#20694,#20690) +expr_containers(#20694,#20001) +#20696=* +properties(#20696,#20694,0,0,"type: ""json""") +#20697=@"loc,{#10000},20,38,20,49" +locations_default(#20697,#10000,20,38,20,49) +hasLocation(#20696,#20697) #20698=* -exprs(#20698,4,#20695,1,"""json""") -hasLocation(#20698,#20391) -enclosing_stmt(#20698,#20689) +exprs(#20698,0,#20696,0,"type") +hasLocation(#20698,#20387) +enclosing_stmt(#20698,#20690) expr_containers(#20698,#20001) -literals("json","""json""",#20698) +literals("type","type",#20698) #20699=* -regexpterm(#20699,14,#20698,0,"json") -#20700=@"loc,{#10000},20,45,20,48" -locations_default(#20700,#10000,20,45,20,48) -hasLocation(#20699,#20700) -regexp_const_value(#20699,"json") -#20701=* -exprs(#20701,86,#20689,0,"v4") -hasLocation(#20701,#20375) -enclosing_stmt(#20701,#20689) -expr_containers(#20701,#20001) +exprs(#20699,4,#20696,1,"""json""") +hasLocation(#20699,#20391) +enclosing_stmt(#20699,#20690) +expr_containers(#20699,#20001) +literals("json","""json""",#20699) +#20700=* +regexpterm(#20700,14,#20699,0,"json") +#20701=@"loc,{#10000},20,45,20,48" +locations_default(#20701,#10000,20,45,20,48) +hasLocation(#20700,#20701) +regexp_const_value(#20700,"json") #20702=* -exprs(#20702,0,#20701,0,"v4") +exprs(#20702,86,#20690,0,"v4") hasLocation(#20702,#20375) -enclosing_stmt(#20702,#20689) +enclosing_stmt(#20702,#20690) expr_containers(#20702,#20001) -literals("v4","v4",#20702) #20703=* -exprs(#20703,0,#20701,1,"v4") +exprs(#20703,0,#20702,0,"v4") hasLocation(#20703,#20375) -enclosing_stmt(#20703,#20689) +enclosing_stmt(#20703,#20690) expr_containers(#20703,#20001) literals("v4","v4",#20703) #20704=* -stmts(#20704,28,#20001,15,"export ... son"" };") -hasLocation(#20704,#20047) -stmt_containers(#20704,#20001) +exprs(#20704,0,#20702,1,"v4") +hasLocation(#20704,#20375) +enclosing_stmt(#20704,#20690) +expr_containers(#20704,#20001) +literals("v4","v4",#20704) #20705=* -exprs(#20705,4,#20704,0,"""module""") -hasLocation(#20705,#20403) -enclosing_stmt(#20705,#20704) -expr_containers(#20705,#20001) -literals("module","""module""",#20705) +stmts(#20705,28,#20001,15,"export ... son"" };") +hasLocation(#20705,#20047) +stmt_containers(#20705,#20001) #20706=* -regexpterm(#20706,14,#20705,0,"module") -#20707=@"loc,{#10000},21,16,21,21" -locations_default(#20707,#10000,21,16,21,21) -hasLocation(#20706,#20707) -regexp_const_value(#20706,"module") -#20708=* -exprs(#20708,8,#20704,-10,"{ type: ""json"" }") -#20709=@"loc,{#10000},21,31,21,46" -locations_default(#20709,#10000,21,31,21,46) -hasLocation(#20708,#20709) -enclosing_stmt(#20708,#20704) -expr_containers(#20708,#20001) -#20710=* -properties(#20710,#20708,0,0,"type: ""json""") -#20711=@"loc,{#10000},21,33,21,44" -locations_default(#20711,#10000,21,33,21,44) -hasLocation(#20710,#20711) -#20712=* -exprs(#20712,0,#20710,0,"type") -hasLocation(#20712,#20409) -enclosing_stmt(#20712,#20704) -expr_containers(#20712,#20001) -literals("type","type",#20712) +exprs(#20706,4,#20705,0,"""module""") +hasLocation(#20706,#20403) +enclosing_stmt(#20706,#20705) +expr_containers(#20706,#20001) +literals("module","""module""",#20706) +#20707=* +regexpterm(#20707,14,#20706,0,"module") +#20708=@"loc,{#10000},21,16,21,21" +locations_default(#20708,#10000,21,16,21,21) +hasLocation(#20707,#20708) +regexp_const_value(#20707,"module") +#20709=* +exprs(#20709,8,#20705,-10,"{ type: ""json"" }") +#20710=@"loc,{#10000},21,31,21,46" +locations_default(#20710,#10000,21,31,21,46) +hasLocation(#20709,#20710) +enclosing_stmt(#20709,#20705) +expr_containers(#20709,#20001) +#20711=* +properties(#20711,#20709,0,0,"type: ""json""") +#20712=@"loc,{#10000},21,33,21,44" +locations_default(#20712,#10000,21,33,21,44) +hasLocation(#20711,#20712) #20713=* -exprs(#20713,4,#20710,1,"""json""") -hasLocation(#20713,#20413) -enclosing_stmt(#20713,#20704) +exprs(#20713,0,#20711,0,"type") +hasLocation(#20713,#20409) +enclosing_stmt(#20713,#20705) expr_containers(#20713,#20001) -literals("json","""json""",#20713) +literals("type","type",#20713) #20714=* -regexpterm(#20714,14,#20713,0,"json") -#20715=@"loc,{#10000},21,40,21,43" -locations_default(#20715,#10000,21,40,21,43) -hasLocation(#20714,#20715) -regexp_const_value(#20714,"json") -#20716=* -stmts(#20716,30,#20001,16,"export ... son"" };") -hasLocation(#20716,#20049) -stmt_containers(#20716,#20001) +exprs(#20714,4,#20711,1,"""json""") +hasLocation(#20714,#20413) +enclosing_stmt(#20714,#20705) +expr_containers(#20714,#20001) +literals("json","""json""",#20714) +#20715=* +regexpterm(#20715,14,#20714,0,"json") +#20716=@"loc,{#10000},21,40,21,43" +locations_default(#20716,#10000,21,40,21,43) +hasLocation(#20715,#20716) +regexp_const_value(#20715,"json") #20717=* -exprs(#20717,4,#20716,-2,"""module""") -hasLocation(#20717,#20429) -enclosing_stmt(#20717,#20716) -expr_containers(#20717,#20001) -literals("module","""module""",#20717) +stmts(#20717,30,#20001,16,"export ... son"" };") +hasLocation(#20717,#20049) +stmt_containers(#20717,#20001) #20718=* -regexpterm(#20718,14,#20717,0,"module") -#20719=@"loc,{#10000},22,22,22,27" -locations_default(#20719,#10000,22,22,22,27) -hasLocation(#20718,#20719) -regexp_const_value(#20718,"module") -#20720=* -exprs(#20720,8,#20716,-10,"{ type: ""json"" }") -#20721=@"loc,{#10000},22,37,22,52" -locations_default(#20721,#10000,22,37,22,52) -hasLocation(#20720,#20721) -enclosing_stmt(#20720,#20716) -expr_containers(#20720,#20001) -#20722=* -properties(#20722,#20720,0,0,"type: ""json""") -#20723=@"loc,{#10000},22,39,22,50" -locations_default(#20723,#10000,22,39,22,50) -hasLocation(#20722,#20723) -#20724=* -exprs(#20724,0,#20722,0,"type") -hasLocation(#20724,#20435) -enclosing_stmt(#20724,#20716) -expr_containers(#20724,#20001) -literals("type","type",#20724) +exprs(#20718,4,#20717,-2,"""module""") +hasLocation(#20718,#20429) +enclosing_stmt(#20718,#20717) +expr_containers(#20718,#20001) +literals("module","""module""",#20718) +#20719=* +regexpterm(#20719,14,#20718,0,"module") +#20720=@"loc,{#10000},22,22,22,27" +locations_default(#20720,#10000,22,22,22,27) +hasLocation(#20719,#20720) +regexp_const_value(#20719,"module") +#20721=* +exprs(#20721,8,#20717,-10,"{ type: ""json"" }") +#20722=@"loc,{#10000},22,37,22,52" +locations_default(#20722,#10000,22,37,22,52) +hasLocation(#20721,#20722) +enclosing_stmt(#20721,#20717) +expr_containers(#20721,#20001) +#20723=* +properties(#20723,#20721,0,0,"type: ""json""") +#20724=@"loc,{#10000},22,39,22,50" +locations_default(#20724,#10000,22,39,22,50) +hasLocation(#20723,#20724) #20725=* -exprs(#20725,4,#20722,1,"""json""") -hasLocation(#20725,#20439) -enclosing_stmt(#20725,#20716) +exprs(#20725,0,#20723,0,"type") +hasLocation(#20725,#20435) +enclosing_stmt(#20725,#20717) expr_containers(#20725,#20001) -literals("json","""json""",#20725) +literals("type","type",#20725) #20726=* -regexpterm(#20726,14,#20725,0,"json") -#20727=@"loc,{#10000},22,46,22,49" -locations_default(#20727,#10000,22,46,22,49) -hasLocation(#20726,#20727) -regexp_const_value(#20726,"json") -#20728=* -exprs(#20728,96,#20716,0,"* as v5") -#20729=@"loc,{#10000},22,8,22,14" -locations_default(#20729,#10000,22,8,22,14) -hasLocation(#20728,#20729) -enclosing_stmt(#20728,#20716) -expr_containers(#20728,#20001) -#20730=* -exprs(#20730,0,#20728,1,"v5") -hasLocation(#20730,#20425) -enclosing_stmt(#20730,#20716) -expr_containers(#20730,#20001) -literals("v5","v5",#20730) +exprs(#20726,4,#20723,1,"""json""") +hasLocation(#20726,#20439) +enclosing_stmt(#20726,#20717) +expr_containers(#20726,#20001) +literals("json","""json""",#20726) +#20727=* +regexpterm(#20727,14,#20726,0,"json") +#20728=@"loc,{#10000},22,46,22,49" +locations_default(#20728,#10000,22,46,22,49) +hasLocation(#20727,#20728) +regexp_const_value(#20727,"json") +#20729=* +exprs(#20729,96,#20717,0,"* as v5") +#20730=@"loc,{#10000},22,8,22,14" +locations_default(#20730,#10000,22,8,22,14) +hasLocation(#20729,#20730) +enclosing_stmt(#20729,#20717) +expr_containers(#20729,#20001) #20731=* -stmts(#20731,22,#20001,17,"const v ... "" } });") -hasLocation(#20731,#20053) -stmt_containers(#20731,#20001) +exprs(#20731,0,#20729,1,"v5") +hasLocation(#20731,#20425) +enclosing_stmt(#20731,#20717) +expr_containers(#20731,#20001) +literals("v5","v5",#20731) #20732=* -exprs(#20732,64,#20731,0,"v6 = im ... n"" } })") -#20733=@"loc,{#10000},24,7,24,57" -locations_default(#20733,#10000,24,7,24,57) -hasLocation(#20732,#20733) -enclosing_stmt(#20732,#20731) -expr_containers(#20732,#20001) -#20734=* -exprs(#20734,78,#20732,0,"v6") -hasLocation(#20734,#20447) -enclosing_stmt(#20734,#20731) -expr_containers(#20734,#20001) -literals("v6","v6",#20734) -decl(#20734,#20493) +stmts(#20732,22,#20001,17,"const v ... "" } });") +hasLocation(#20732,#20053) +stmt_containers(#20732,#20001) +#20733=* +exprs(#20733,64,#20732,0,"v6 = im ... n"" } })") +#20734=@"loc,{#10000},24,7,24,57" +locations_default(#20734,#10000,24,7,24,57) +hasLocation(#20733,#20734) +enclosing_stmt(#20733,#20732) +expr_containers(#20733,#20001) #20735=* -exprs(#20735,99,#20732,1,"import( ... n"" } })") -#20736=@"loc,{#10000},24,12,24,57" -locations_default(#20736,#10000,24,12,24,57) -hasLocation(#20735,#20736) -enclosing_stmt(#20735,#20731) +exprs(#20735,78,#20733,0,"v6") +hasLocation(#20735,#20447) +enclosing_stmt(#20735,#20732) expr_containers(#20735,#20001) -#20737=* -exprs(#20737,4,#20735,0,"""module""") -hasLocation(#20737,#20455) -enclosing_stmt(#20737,#20731) -expr_containers(#20737,#20001) -literals("module","""module""",#20737) +literals("v6","v6",#20735) +decl(#20735,#20493) +#20736=* +exprs(#20736,99,#20733,1,"import( ... n"" } })") +#20737=@"loc,{#10000},24,12,24,57" +locations_default(#20737,#10000,24,12,24,57) +hasLocation(#20736,#20737) +enclosing_stmt(#20736,#20732) +expr_containers(#20736,#20001) #20738=* -regexpterm(#20738,14,#20737,0,"module") -#20739=@"loc,{#10000},24,20,24,25" -locations_default(#20739,#10000,24,20,24,25) -hasLocation(#20738,#20739) -regexp_const_value(#20738,"module") -#20740=* -exprs(#20740,8,#20735,1,"{ asser ... on"" } }") -#20741=@"loc,{#10000},24,29,24,56" -locations_default(#20741,#10000,24,29,24,56) -hasLocation(#20740,#20741) -enclosing_stmt(#20740,#20731) -expr_containers(#20740,#20001) -#20742=* -properties(#20742,#20740,0,0,"assert: ... json"" }") -#20743=@"loc,{#10000},24,31,24,54" -locations_default(#20743,#10000,24,31,24,54) -hasLocation(#20742,#20743) -#20744=* -exprs(#20744,0,#20742,0,"assert") -hasLocation(#20744,#20461) -enclosing_stmt(#20744,#20731) -expr_containers(#20744,#20001) -literals("assert","assert",#20744) +exprs(#20738,4,#20736,0,"""module""") +hasLocation(#20738,#20455) +enclosing_stmt(#20738,#20732) +expr_containers(#20738,#20001) +literals("module","""module""",#20738) +#20739=* +regexpterm(#20739,14,#20738,0,"module") +#20740=@"loc,{#10000},24,20,24,25" +locations_default(#20740,#10000,24,20,24,25) +hasLocation(#20739,#20740) +regexp_const_value(#20739,"module") +#20741=* +exprs(#20741,8,#20736,1,"{ asser ... on"" } }") +#20742=@"loc,{#10000},24,29,24,56" +locations_default(#20742,#10000,24,29,24,56) +hasLocation(#20741,#20742) +enclosing_stmt(#20741,#20732) +expr_containers(#20741,#20001) +#20743=* +properties(#20743,#20741,0,0,"assert: ... json"" }") +#20744=@"loc,{#10000},24,31,24,54" +locations_default(#20744,#10000,24,31,24,54) +hasLocation(#20743,#20744) #20745=* -exprs(#20745,8,#20742,1,"{ type: ""json"" }") -#20746=@"loc,{#10000},24,39,24,54" -locations_default(#20746,#10000,24,39,24,54) -hasLocation(#20745,#20746) -enclosing_stmt(#20745,#20731) +exprs(#20745,0,#20743,0,"assert") +hasLocation(#20745,#20461) +enclosing_stmt(#20745,#20732) expr_containers(#20745,#20001) -#20747=* -properties(#20747,#20745,0,0,"type: ""json""") -#20748=@"loc,{#10000},24,41,24,52" -locations_default(#20748,#10000,24,41,24,52) -hasLocation(#20747,#20748) -#20749=* -exprs(#20749,0,#20747,0,"type") -hasLocation(#20749,#20467) -enclosing_stmt(#20749,#20731) -expr_containers(#20749,#20001) -literals("type","type",#20749) +literals("assert","assert",#20745) +#20746=* +exprs(#20746,8,#20743,1,"{ type: ""json"" }") +#20747=@"loc,{#10000},24,39,24,54" +locations_default(#20747,#10000,24,39,24,54) +hasLocation(#20746,#20747) +enclosing_stmt(#20746,#20732) +expr_containers(#20746,#20001) +#20748=* +properties(#20748,#20746,0,0,"type: ""json""") +#20749=@"loc,{#10000},24,41,24,52" +locations_default(#20749,#10000,24,41,24,52) +hasLocation(#20748,#20749) #20750=* -exprs(#20750,4,#20747,1,"""json""") -hasLocation(#20750,#20471) -enclosing_stmt(#20750,#20731) +exprs(#20750,0,#20748,0,"type") +hasLocation(#20750,#20467) +enclosing_stmt(#20750,#20732) expr_containers(#20750,#20001) -literals("json","""json""",#20750) +literals("type","type",#20750) #20751=* -regexpterm(#20751,14,#20750,0,"json") -#20752=@"loc,{#10000},24,48,24,51" -locations_default(#20752,#10000,24,48,24,51) -hasLocation(#20751,#20752) -regexp_const_value(#20751,"json") -#20753=* -entry_cfg_node(#20753,#20001) -#20754=@"loc,{#10000},1,1,1,0" -locations_default(#20754,#10000,1,1,1,0) -hasLocation(#20753,#20754) -#20755=* -exit_cfg_node(#20755,#20001) -hasLocation(#20755,#20481) -successor(#20731,#20734) -successor(#20737,#20735) -successor(#20735,#20732) -successor(#20734,#20737) -successor(#20732,#20755) -successor(#20716,#20717) -successor(#20728,#20730) -successor(#20730,#20731) -successor(#20717,#20728) +exprs(#20751,4,#20748,1,"""json""") +hasLocation(#20751,#20471) +enclosing_stmt(#20751,#20732) +expr_containers(#20751,#20001) +literals("json","""json""",#20751) +#20752=* +regexpterm(#20752,14,#20751,0,"json") +#20753=@"loc,{#10000},24,48,24,51" +locations_default(#20753,#10000,24,48,24,51) +hasLocation(#20752,#20753) +regexp_const_value(#20752,"json") +#20754=* +entry_cfg_node(#20754,#20001) +#20755=@"loc,{#10000},1,1,1,0" +locations_default(#20755,#10000,1,1,1,0) +hasLocation(#20754,#20755) +#20756=* +exit_cfg_node(#20756,#20001) +hasLocation(#20756,#20481) +successor(#20732,#20735) +successor(#20738,#20736) +successor(#20736,#20733) +successor(#20735,#20738) +successor(#20733,#20756) +successor(#20717,#20718) +successor(#20729,#20731) +successor(#20731,#20732) +successor(#20718,#20729) +successor(#20705,#20706) +successor(#20706,#20717) +successor(#20690,#20691) +successor(#20702,#20703) successor(#20704,#20705) -successor(#20705,#20716) -successor(#20689,#20690) -successor(#20701,#20702) successor(#20703,#20704) -successor(#20702,#20703) -successor(#20690,#20701) -successor(#20675,#20689) -successor(#20660,#20675) -successor(#20645,#20660) -successor(#20633,#20645) -successor(#20619,#20623) -successor(#20625,#20629) -successor(#20630,#20627) -successor(#20629,#20630) -successor(#20627,#20621) -successor(#20623,#20625) -successor(#20621,#20633) -successor(#20614,#20619) -successor(#20592,#20595) -successor(#20598,#20596) -successor(#20596,#20593) -successor(#20595,#20598) -successor(#20593,#20614) -successor(#20577,#20578) -successor(#20589,#20591) -successor(#20591,#20592) -successor(#20578,#20589) +successor(#20691,#20702) +successor(#20676,#20690) +successor(#20661,#20676) +successor(#20646,#20661) +successor(#20634,#20646) +successor(#20620,#20624) +successor(#20626,#20630) +successor(#20631,#20628) +successor(#20630,#20631) +successor(#20628,#20622) +successor(#20624,#20626) +successor(#20622,#20634) +successor(#20615,#20620) +successor(#20593,#20596) +successor(#20599,#20597) +successor(#20597,#20594) +successor(#20596,#20599) +successor(#20594,#20615) +successor(#20578,#20579) +successor(#20590,#20592) +successor(#20592,#20593) +successor(#20579,#20590) +successor(#20566,#20567) +successor(#20567,#20578) +successor(#20551,#20552) +successor(#20563,#20564) successor(#20565,#20566) -successor(#20566,#20577) -successor(#20550,#20551) -successor(#20562,#20563) successor(#20564,#20565) -successor(#20563,#20564) -successor(#20551,#20562) -successor(#20536,#20550) -successor(#20521,#20536) -successor(#20506,#20521) -successor(#20494,#20506) -successor(#20687,#20494) -successor(#20672,#20687) -successor(#20657,#20672) -successor(#20548,#20657) -successor(#20533,#20548) -successor(#20518,#20533) -successor(#20753,#20518) -#20756=* -js_parse_errors(#20756,#20001,"Error: Duplicate export 'v4'","export { v4 } from ""module"" assert { type: ""json"" }; +successor(#20552,#20563) +successor(#20537,#20551) +successor(#20522,#20537) +successor(#20507,#20522) +successor(#20495,#20507) +successor(#20688,#20495) +successor(#20673,#20688) +successor(#20658,#20673) +successor(#20549,#20658) +successor(#20534,#20549) +successor(#20519,#20534) +successor(#20754,#20519) +#20757=* +js_parse_errors(#20757,#20001,"Error: Duplicate export 'v4'","export { v4 } from ""module"" assert { type: ""json"" }; ") -#20757=@"loc,{#10000},20,10,20,10" -locations_default(#20757,#10000,20,10,20,10) -hasLocation(#20756,#20757) -#20758=* -lines(#20758,#20001,"import ""module"" with { type: ""json"" };"," -") -hasLocation(#20758,#20007) +#20758=@"loc,{#10000},20,10,20,10" +locations_default(#20758,#10000,20,10,20,10) +hasLocation(#20757,#20758) #20759=* -lines(#20759,#20001,"import * as v1 from ""module"" with { type: ""json"" };"," +lines(#20759,#20001,"import ""module"" with { type: ""json"" };"," ") -hasLocation(#20759,#20009) +hasLocation(#20759,#20007) #20760=* -lines(#20760,#20001,"import { v2 } from ""module"" with { type: ""json"" };"," +lines(#20760,#20001,"import * as v1 from ""module"" with { type: ""json"" };"," ") -hasLocation(#20760,#20011) +hasLocation(#20760,#20009) #20761=* -lines(#20761,#20001,"import v3 from ""module"" with { type: ""json"" };"," +lines(#20761,#20001,"import { v2 } from ""module"" with { type: ""json"" };"," ") -hasLocation(#20761,#20013) +hasLocation(#20761,#20011) #20762=* -lines(#20762,#20001,""," +lines(#20762,#20001,"import v3 from ""module"" with { type: ""json"" };"," ") -hasLocation(#20762,#20015) +hasLocation(#20762,#20013) #20763=* -lines(#20763,#20001,"export { v4 } from ""module"" with { type: ""json"" };"," +lines(#20763,#20001,""," ") -hasLocation(#20763,#20017) +hasLocation(#20763,#20015) #20764=* -lines(#20764,#20001,"export * from ""module"" with { type: ""json"" };"," +lines(#20764,#20001,"export { v4 } from ""module"" with { type: ""json"" };"," ") -hasLocation(#20764,#20019) +hasLocation(#20764,#20017) #20765=* -lines(#20765,#20001,"export * as v5 from ""module"" with { type: ""json"" };"," +lines(#20765,#20001,"export * from ""module"" with { type: ""json"" };"," ") -hasLocation(#20765,#20021) +hasLocation(#20765,#20019) #20766=* -lines(#20766,#20001,""," +lines(#20766,#20001,"export * as v5 from ""module"" with { type: ""json"" };"," ") -hasLocation(#20766,#20023) +hasLocation(#20766,#20021) #20767=* -lines(#20767,#20001,"const v6 = import(""module"", { with: { type: ""json"" } });"," +lines(#20767,#20001,""," ") -hasLocation(#20767,#20025) +hasLocation(#20767,#20023) #20768=* -lines(#20768,#20001,""," +lines(#20768,#20001,"const v6 = import(""module"", { with: { type: ""json"" } });"," ") -hasLocation(#20768,#20027) +hasLocation(#20768,#20025) #20769=* -lines(#20769,#20001,"import ""module"" // missing semicolon"," +lines(#20769,#20001,""," ") -hasLocation(#20769,#20029) +hasLocation(#20769,#20027) #20770=* -lines(#20770,#20001,"assert({type: ""json""}); // function call, not import assertion"," +lines(#20770,#20001,"import ""module"" // missing semicolon"," ") -hasLocation(#20770,#20031) +hasLocation(#20770,#20029) #20771=* -lines(#20771,#20001,""," +lines(#20771,#20001,"assert({type: ""json""}); // function call, not import assertion"," ") -hasLocation(#20771,#20033) +hasLocation(#20771,#20031) #20772=* -lines(#20772,#20001,"import ""module"" assert { type: ""json"" };"," +lines(#20772,#20001,""," ") -hasLocation(#20772,#20035) +hasLocation(#20772,#20033) #20773=* -lines(#20773,#20001,"import * as v1 from ""module"" assert { type: ""json"" };"," +lines(#20773,#20001,"import ""module"" assert { type: ""json"" };"," ") -hasLocation(#20773,#20037) +hasLocation(#20773,#20035) #20774=* -lines(#20774,#20001,"import { v2 } from ""module"" assert { type: ""json"" };"," +lines(#20774,#20001,"import * as v1 from ""module"" assert { type: ""json"" };"," ") -hasLocation(#20774,#20039) +hasLocation(#20774,#20037) #20775=* -lines(#20775,#20001,"import v3 from ""module"" assert { type: ""json"" };"," +lines(#20775,#20001,"import { v2 } from ""module"" assert { type: ""json"" };"," ") -hasLocation(#20775,#20041) +hasLocation(#20775,#20039) #20776=* -lines(#20776,#20001,""," +lines(#20776,#20001,"import v3 from ""module"" assert { type: ""json"" };"," ") -hasLocation(#20776,#20043) +hasLocation(#20776,#20041) #20777=* -lines(#20777,#20001,"export { v4 } from ""module"" assert { type: ""json"" };"," +lines(#20777,#20001,""," ") -hasLocation(#20777,#20045) +hasLocation(#20777,#20043) #20778=* -lines(#20778,#20001,"export * from ""module"" assert { type: ""json"" };"," +lines(#20778,#20001,"export { v4 } from ""module"" assert { type: ""json"" };"," ") -hasLocation(#20778,#20047) +hasLocation(#20778,#20045) #20779=* -lines(#20779,#20001,"export * as v5 from ""module"" assert { type: ""json"" };"," +lines(#20779,#20001,"export * from ""module"" assert { type: ""json"" };"," ") -hasLocation(#20779,#20049) +hasLocation(#20779,#20047) #20780=* -lines(#20780,#20001,""," +lines(#20780,#20001,"export * as v5 from ""module"" assert { type: ""json"" };"," ") -hasLocation(#20780,#20051) +hasLocation(#20780,#20049) #20781=* -lines(#20781,#20001,"const v6 = import(""module"", { assert: { type: ""json"" } });"," +lines(#20781,#20001,""," +") +hasLocation(#20781,#20051) +#20782=* +lines(#20782,#20001,"const v6 = import(""module"", { assert: { type: ""json"" } });"," ") -hasLocation(#20781,#20053) +hasLocation(#20782,#20053) numlines(#20001,24,0,0) numlines(#10000,24,18,2) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/nullish-coalescing.js.trap b/javascript/extractor/tests/esnext/output/trap/nullish-coalescing.js.trap index 234c05a94469..e926b5a287ab 100644 --- a/javascript/extractor/tests/esnext/output/trap/nullish-coalescing.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/nullish-coalescing.js.trap @@ -200,295 +200,297 @@ toplevels(#20001,0) #20074=@"loc,{#10000},1,1,7,15" locations_default(#20074,#10000,1,1,7,15) hasLocation(#20001,#20074) -#20075=* -stmts(#20075,2,#20001,0,"x1 ?? y1;") -hasLocation(#20075,#20003) -stmt_containers(#20075,#20001) +#20075=@"var;{this};{#20000}" +variables(#20075,"this",#20000) #20076=* -exprs(#20076,107,#20075,0,"x1 ?? y1") -#20077=@"loc,{#10000},1,1,1,8" -locations_default(#20077,#10000,1,1,1,8) -hasLocation(#20076,#20077) -enclosing_stmt(#20076,#20075) -expr_containers(#20076,#20001) -#20078=* -exprs(#20078,79,#20076,0,"x1") -hasLocation(#20078,#20017) -enclosing_stmt(#20078,#20075) -expr_containers(#20078,#20001) -literals("x1","x1",#20078) -#20079=@"var;{x1};{#20000}" -variables(#20079,"x1",#20000) -bind(#20078,#20079) -#20080=* -exprs(#20080,79,#20076,1,"y1") -hasLocation(#20080,#20021) -enclosing_stmt(#20080,#20075) -expr_containers(#20080,#20001) -literals("y1","y1",#20080) -#20081=@"var;{y1};{#20000}" -variables(#20081,"y1",#20000) -bind(#20080,#20081) -#20082=* -stmts(#20082,2,#20001,1,"x2 || y2 ?? z2;") -hasLocation(#20082,#20007) -stmt_containers(#20082,#20001) +stmts(#20076,2,#20001,0,"x1 ?? y1;") +hasLocation(#20076,#20003) +stmt_containers(#20076,#20001) +#20077=* +exprs(#20077,107,#20076,0,"x1 ?? y1") +#20078=@"loc,{#10000},1,1,1,8" +locations_default(#20078,#10000,1,1,1,8) +hasLocation(#20077,#20078) +enclosing_stmt(#20077,#20076) +expr_containers(#20077,#20001) +#20079=* +exprs(#20079,79,#20077,0,"x1") +hasLocation(#20079,#20017) +enclosing_stmt(#20079,#20076) +expr_containers(#20079,#20001) +literals("x1","x1",#20079) +#20080=@"var;{x1};{#20000}" +variables(#20080,"x1",#20000) +bind(#20079,#20080) +#20081=* +exprs(#20081,79,#20077,1,"y1") +hasLocation(#20081,#20021) +enclosing_stmt(#20081,#20076) +expr_containers(#20081,#20001) +literals("y1","y1",#20081) +#20082=@"var;{y1};{#20000}" +variables(#20082,"y1",#20000) +bind(#20081,#20082) #20083=* -exprs(#20083,107,#20082,0,"x2 || y2 ?? z2") -#20084=@"loc,{#10000},3,1,3,14" -locations_default(#20084,#10000,3,1,3,14) -hasLocation(#20083,#20084) -enclosing_stmt(#20083,#20082) -expr_containers(#20083,#20001) -#20085=* -exprs(#20085,45,#20083,0,"x2 || y2") -#20086=@"loc,{#10000},3,1,3,8" -locations_default(#20086,#10000,3,1,3,8) -hasLocation(#20085,#20086) -enclosing_stmt(#20085,#20082) -expr_containers(#20085,#20001) -#20087=* -exprs(#20087,79,#20085,0,"x2") -hasLocation(#20087,#20025) -enclosing_stmt(#20087,#20082) -expr_containers(#20087,#20001) -literals("x2","x2",#20087) -#20088=@"var;{x2};{#20000}" -variables(#20088,"x2",#20000) -bind(#20087,#20088) -#20089=* -exprs(#20089,79,#20085,1,"y2") -hasLocation(#20089,#20029) -enclosing_stmt(#20089,#20082) -expr_containers(#20089,#20001) -literals("y2","y2",#20089) -#20090=@"var;{y2};{#20000}" -variables(#20090,"y2",#20000) -bind(#20089,#20090) -#20091=* -exprs(#20091,79,#20083,1,"z2") -hasLocation(#20091,#20033) -enclosing_stmt(#20091,#20082) -expr_containers(#20091,#20001) -literals("z2","z2",#20091) -#20092=@"var;{z2};{#20000}" -variables(#20092,"z2",#20000) -bind(#20091,#20092) -#20093=* -stmts(#20093,2,#20001,2,"x3 ?? y3 || z3;") -hasLocation(#20093,#20009) -stmt_containers(#20093,#20001) +stmts(#20083,2,#20001,1,"x2 || y2 ?? z2;") +hasLocation(#20083,#20007) +stmt_containers(#20083,#20001) +#20084=* +exprs(#20084,107,#20083,0,"x2 || y2 ?? z2") +#20085=@"loc,{#10000},3,1,3,14" +locations_default(#20085,#10000,3,1,3,14) +hasLocation(#20084,#20085) +enclosing_stmt(#20084,#20083) +expr_containers(#20084,#20001) +#20086=* +exprs(#20086,45,#20084,0,"x2 || y2") +#20087=@"loc,{#10000},3,1,3,8" +locations_default(#20087,#10000,3,1,3,8) +hasLocation(#20086,#20087) +enclosing_stmt(#20086,#20083) +expr_containers(#20086,#20001) +#20088=* +exprs(#20088,79,#20086,0,"x2") +hasLocation(#20088,#20025) +enclosing_stmt(#20088,#20083) +expr_containers(#20088,#20001) +literals("x2","x2",#20088) +#20089=@"var;{x2};{#20000}" +variables(#20089,"x2",#20000) +bind(#20088,#20089) +#20090=* +exprs(#20090,79,#20086,1,"y2") +hasLocation(#20090,#20029) +enclosing_stmt(#20090,#20083) +expr_containers(#20090,#20001) +literals("y2","y2",#20090) +#20091=@"var;{y2};{#20000}" +variables(#20091,"y2",#20000) +bind(#20090,#20091) +#20092=* +exprs(#20092,79,#20084,1,"z2") +hasLocation(#20092,#20033) +enclosing_stmt(#20092,#20083) +expr_containers(#20092,#20001) +literals("z2","z2",#20092) +#20093=@"var;{z2};{#20000}" +variables(#20093,"z2",#20000) +bind(#20092,#20093) #20094=* -exprs(#20094,45,#20093,0,"x3 ?? y3 || z3") -#20095=@"loc,{#10000},4,1,4,14" -locations_default(#20095,#10000,4,1,4,14) -hasLocation(#20094,#20095) -enclosing_stmt(#20094,#20093) -expr_containers(#20094,#20001) -#20096=* -exprs(#20096,107,#20094,0,"x3 ?? y3") -#20097=@"loc,{#10000},4,1,4,8" -locations_default(#20097,#10000,4,1,4,8) -hasLocation(#20096,#20097) -enclosing_stmt(#20096,#20093) -expr_containers(#20096,#20001) -#20098=* -exprs(#20098,79,#20096,0,"x3") -hasLocation(#20098,#20037) -enclosing_stmt(#20098,#20093) -expr_containers(#20098,#20001) -literals("x3","x3",#20098) -#20099=@"var;{x3};{#20000}" -variables(#20099,"x3",#20000) -bind(#20098,#20099) -#20100=* -exprs(#20100,79,#20096,1,"y3") -hasLocation(#20100,#20041) -enclosing_stmt(#20100,#20093) -expr_containers(#20100,#20001) -literals("y3","y3",#20100) -#20101=@"var;{y3};{#20000}" -variables(#20101,"y3",#20000) -bind(#20100,#20101) -#20102=* -exprs(#20102,79,#20094,1,"z3") -hasLocation(#20102,#20045) -enclosing_stmt(#20102,#20093) -expr_containers(#20102,#20001) -literals("z3","z3",#20102) -#20103=@"var;{z3};{#20000}" -variables(#20103,"z3",#20000) -bind(#20102,#20103) -#20104=* -stmts(#20104,2,#20001,3,"x4 && y4 ?? z4;") -hasLocation(#20104,#20013) -stmt_containers(#20104,#20001) +stmts(#20094,2,#20001,2,"x3 ?? y3 || z3;") +hasLocation(#20094,#20009) +stmt_containers(#20094,#20001) +#20095=* +exprs(#20095,45,#20094,0,"x3 ?? y3 || z3") +#20096=@"loc,{#10000},4,1,4,14" +locations_default(#20096,#10000,4,1,4,14) +hasLocation(#20095,#20096) +enclosing_stmt(#20095,#20094) +expr_containers(#20095,#20001) +#20097=* +exprs(#20097,107,#20095,0,"x3 ?? y3") +#20098=@"loc,{#10000},4,1,4,8" +locations_default(#20098,#10000,4,1,4,8) +hasLocation(#20097,#20098) +enclosing_stmt(#20097,#20094) +expr_containers(#20097,#20001) +#20099=* +exprs(#20099,79,#20097,0,"x3") +hasLocation(#20099,#20037) +enclosing_stmt(#20099,#20094) +expr_containers(#20099,#20001) +literals("x3","x3",#20099) +#20100=@"var;{x3};{#20000}" +variables(#20100,"x3",#20000) +bind(#20099,#20100) +#20101=* +exprs(#20101,79,#20097,1,"y3") +hasLocation(#20101,#20041) +enclosing_stmt(#20101,#20094) +expr_containers(#20101,#20001) +literals("y3","y3",#20101) +#20102=@"var;{y3};{#20000}" +variables(#20102,"y3",#20000) +bind(#20101,#20102) +#20103=* +exprs(#20103,79,#20095,1,"z3") +hasLocation(#20103,#20045) +enclosing_stmt(#20103,#20094) +expr_containers(#20103,#20001) +literals("z3","z3",#20103) +#20104=@"var;{z3};{#20000}" +variables(#20104,"z3",#20000) +bind(#20103,#20104) #20105=* -exprs(#20105,107,#20104,0,"x4 && y4 ?? z4") -#20106=@"loc,{#10000},6,1,6,14" -locations_default(#20106,#10000,6,1,6,14) -hasLocation(#20105,#20106) -enclosing_stmt(#20105,#20104) -expr_containers(#20105,#20001) -#20107=* -exprs(#20107,44,#20105,0,"x4 && y4") -#20108=@"loc,{#10000},6,1,6,8" -locations_default(#20108,#10000,6,1,6,8) -hasLocation(#20107,#20108) -enclosing_stmt(#20107,#20104) -expr_containers(#20107,#20001) -#20109=* -exprs(#20109,79,#20107,0,"x4") -hasLocation(#20109,#20049) -enclosing_stmt(#20109,#20104) -expr_containers(#20109,#20001) -literals("x4","x4",#20109) -#20110=@"var;{x4};{#20000}" -variables(#20110,"x4",#20000) -bind(#20109,#20110) -#20111=* -exprs(#20111,79,#20107,1,"y4") -hasLocation(#20111,#20053) -enclosing_stmt(#20111,#20104) -expr_containers(#20111,#20001) -literals("y4","y4",#20111) -#20112=@"var;{y4};{#20000}" -variables(#20112,"y4",#20000) -bind(#20111,#20112) -#20113=* -exprs(#20113,79,#20105,1,"z4") -hasLocation(#20113,#20057) -enclosing_stmt(#20113,#20104) -expr_containers(#20113,#20001) -literals("z4","z4",#20113) -#20114=@"var;{z4};{#20000}" -variables(#20114,"z4",#20000) -bind(#20113,#20114) -#20115=* -stmts(#20115,2,#20001,4,"x5 ?? y5 && z5;") -hasLocation(#20115,#20015) -stmt_containers(#20115,#20001) +stmts(#20105,2,#20001,3,"x4 && y4 ?? z4;") +hasLocation(#20105,#20013) +stmt_containers(#20105,#20001) +#20106=* +exprs(#20106,107,#20105,0,"x4 && y4 ?? z4") +#20107=@"loc,{#10000},6,1,6,14" +locations_default(#20107,#10000,6,1,6,14) +hasLocation(#20106,#20107) +enclosing_stmt(#20106,#20105) +expr_containers(#20106,#20001) +#20108=* +exprs(#20108,44,#20106,0,"x4 && y4") +#20109=@"loc,{#10000},6,1,6,8" +locations_default(#20109,#10000,6,1,6,8) +hasLocation(#20108,#20109) +enclosing_stmt(#20108,#20105) +expr_containers(#20108,#20001) +#20110=* +exprs(#20110,79,#20108,0,"x4") +hasLocation(#20110,#20049) +enclosing_stmt(#20110,#20105) +expr_containers(#20110,#20001) +literals("x4","x4",#20110) +#20111=@"var;{x4};{#20000}" +variables(#20111,"x4",#20000) +bind(#20110,#20111) +#20112=* +exprs(#20112,79,#20108,1,"y4") +hasLocation(#20112,#20053) +enclosing_stmt(#20112,#20105) +expr_containers(#20112,#20001) +literals("y4","y4",#20112) +#20113=@"var;{y4};{#20000}" +variables(#20113,"y4",#20000) +bind(#20112,#20113) +#20114=* +exprs(#20114,79,#20106,1,"z4") +hasLocation(#20114,#20057) +enclosing_stmt(#20114,#20105) +expr_containers(#20114,#20001) +literals("z4","z4",#20114) +#20115=@"var;{z4};{#20000}" +variables(#20115,"z4",#20000) +bind(#20114,#20115) #20116=* -exprs(#20116,107,#20115,0,"x5 ?? y5 && z5") -#20117=@"loc,{#10000},7,1,7,14" -locations_default(#20117,#10000,7,1,7,14) -hasLocation(#20116,#20117) -enclosing_stmt(#20116,#20115) -expr_containers(#20116,#20001) -#20118=* -exprs(#20118,79,#20116,0,"x5") -hasLocation(#20118,#20061) -enclosing_stmt(#20118,#20115) -expr_containers(#20118,#20001) -literals("x5","x5",#20118) -#20119=@"var;{x5};{#20000}" -variables(#20119,"x5",#20000) -bind(#20118,#20119) -#20120=* -exprs(#20120,44,#20116,1,"y5 && z5") -#20121=@"loc,{#10000},7,7,7,14" -locations_default(#20121,#10000,7,7,7,14) -hasLocation(#20120,#20121) -enclosing_stmt(#20120,#20115) -expr_containers(#20120,#20001) -#20122=* -exprs(#20122,79,#20120,0,"y5") -hasLocation(#20122,#20065) -enclosing_stmt(#20122,#20115) -expr_containers(#20122,#20001) -literals("y5","y5",#20122) -#20123=@"var;{y5};{#20000}" -variables(#20123,"y5",#20000) -bind(#20122,#20123) -#20124=* -exprs(#20124,79,#20120,1,"z5") -hasLocation(#20124,#20069) -enclosing_stmt(#20124,#20115) -expr_containers(#20124,#20001) -literals("z5","z5",#20124) -#20125=@"var;{z5};{#20000}" -variables(#20125,"z5",#20000) -bind(#20124,#20125) -#20126=* -entry_cfg_node(#20126,#20001) -#20127=@"loc,{#10000},1,1,1,0" -locations_default(#20127,#10000,1,1,1,0) -hasLocation(#20126,#20127) -#20128=* -exit_cfg_node(#20128,#20001) -hasLocation(#20128,#20073) -successor(#20115,#20116) -successor(#20116,#20118) -successor(#20118,#20120) -successor(#20118,#20128) -successor(#20120,#20122) +stmts(#20116,2,#20001,4,"x5 ?? y5 && z5;") +hasLocation(#20116,#20015) +stmt_containers(#20116,#20001) +#20117=* +exprs(#20117,107,#20116,0,"x5 ?? y5 && z5") +#20118=@"loc,{#10000},7,1,7,14" +locations_default(#20118,#10000,7,1,7,14) +hasLocation(#20117,#20118) +enclosing_stmt(#20117,#20116) +expr_containers(#20117,#20001) +#20119=* +exprs(#20119,79,#20117,0,"x5") +hasLocation(#20119,#20061) +enclosing_stmt(#20119,#20116) +expr_containers(#20119,#20001) +literals("x5","x5",#20119) +#20120=@"var;{x5};{#20000}" +variables(#20120,"x5",#20000) +bind(#20119,#20120) +#20121=* +exprs(#20121,44,#20117,1,"y5 && z5") +#20122=@"loc,{#10000},7,7,7,14" +locations_default(#20122,#10000,7,7,7,14) +hasLocation(#20121,#20122) +enclosing_stmt(#20121,#20116) +expr_containers(#20121,#20001) +#20123=* +exprs(#20123,79,#20121,0,"y5") +hasLocation(#20123,#20065) +enclosing_stmt(#20123,#20116) +expr_containers(#20123,#20001) +literals("y5","y5",#20123) +#20124=@"var;{y5};{#20000}" +variables(#20124,"y5",#20000) +bind(#20123,#20124) +#20125=* +exprs(#20125,79,#20121,1,"z5") +hasLocation(#20125,#20069) +enclosing_stmt(#20125,#20116) +expr_containers(#20125,#20001) +literals("z5","z5",#20125) +#20126=@"var;{z5};{#20000}" +variables(#20126,"z5",#20000) +bind(#20125,#20126) +#20127=* +entry_cfg_node(#20127,#20001) +#20128=@"loc,{#10000},1,1,1,0" +locations_default(#20128,#10000,1,1,1,0) +hasLocation(#20127,#20128) #20129=* -guard_node(#20129,1,#20122) -hasLocation(#20129,#20065) -successor(#20129,#20124) +exit_cfg_node(#20129,#20001) +hasLocation(#20129,#20073) +successor(#20116,#20117) +successor(#20117,#20119) +successor(#20119,#20121) +successor(#20119,#20129) +successor(#20121,#20123) #20130=* -guard_node(#20130,0,#20122) +guard_node(#20130,1,#20123) hasLocation(#20130,#20065) -successor(#20130,#20128) -successor(#20122,#20129) -successor(#20122,#20130) -successor(#20124,#20128) -successor(#20104,#20105) -successor(#20105,#20107) -successor(#20107,#20109) +successor(#20130,#20125) #20131=* -guard_node(#20131,1,#20109) -hasLocation(#20131,#20049) -successor(#20131,#20111) +guard_node(#20131,0,#20123) +hasLocation(#20131,#20065) +successor(#20131,#20129) +successor(#20123,#20130) +successor(#20123,#20131) +successor(#20125,#20129) +successor(#20105,#20106) +successor(#20106,#20108) +successor(#20108,#20110) #20132=* -guard_node(#20132,0,#20109) +guard_node(#20132,1,#20110) hasLocation(#20132,#20049) -successor(#20132,#20113) -successor(#20132,#20115) -successor(#20109,#20131) -successor(#20109,#20132) -successor(#20111,#20113) -successor(#20111,#20115) -successor(#20113,#20115) -successor(#20093,#20094) -successor(#20094,#20096) -successor(#20096,#20098) -successor(#20098,#20100) -successor(#20098,#20104) -successor(#20098,#20102) +successor(#20132,#20112) #20133=* -guard_node(#20133,1,#20100) -hasLocation(#20133,#20041) -successor(#20133,#20104) +guard_node(#20133,0,#20110) +hasLocation(#20133,#20049) +successor(#20133,#20114) +successor(#20133,#20116) +successor(#20110,#20132) +successor(#20110,#20133) +successor(#20112,#20114) +successor(#20112,#20116) +successor(#20114,#20116) +successor(#20094,#20095) +successor(#20095,#20097) +successor(#20097,#20099) +successor(#20099,#20101) +successor(#20099,#20105) +successor(#20099,#20103) #20134=* -guard_node(#20134,0,#20100) +guard_node(#20134,1,#20101) hasLocation(#20134,#20041) -successor(#20134,#20102) -successor(#20100,#20133) -successor(#20100,#20134) -successor(#20102,#20104) -successor(#20082,#20083) -successor(#20083,#20085) -successor(#20085,#20087) +successor(#20134,#20105) #20135=* -guard_node(#20135,1,#20087) -hasLocation(#20135,#20025) -successor(#20135,#20091) -successor(#20135,#20093) +guard_node(#20135,0,#20101) +hasLocation(#20135,#20041) +successor(#20135,#20103) +successor(#20101,#20134) +successor(#20101,#20135) +successor(#20103,#20105) +successor(#20083,#20084) +successor(#20084,#20086) +successor(#20086,#20088) #20136=* -guard_node(#20136,0,#20087) +guard_node(#20136,1,#20088) hasLocation(#20136,#20025) -successor(#20136,#20089) -successor(#20087,#20135) -successor(#20087,#20136) -successor(#20089,#20091) -successor(#20089,#20093) -successor(#20091,#20093) -successor(#20075,#20076) -successor(#20076,#20078) -successor(#20078,#20080) -successor(#20078,#20082) -successor(#20080,#20082) -successor(#20126,#20075) +successor(#20136,#20092) +successor(#20136,#20094) +#20137=* +guard_node(#20137,0,#20088) +hasLocation(#20137,#20025) +successor(#20137,#20090) +successor(#20088,#20136) +successor(#20088,#20137) +successor(#20090,#20092) +successor(#20090,#20094) +successor(#20092,#20094) +successor(#20076,#20077) +successor(#20077,#20079) +successor(#20079,#20081) +successor(#20079,#20083) +successor(#20081,#20083) +successor(#20127,#20076) numlines(#10000,7,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/optional-chaining.js.trap b/javascript/extractor/tests/esnext/output/trap/optional-chaining.js.trap index fb44a9971707..15f922d5b4e7 100644 --- a/javascript/extractor/tests/esnext/output/trap/optional-chaining.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/optional-chaining.js.trap @@ -326,330 +326,332 @@ toplevels(#20001,0) #20122=@"loc,{#10000},1,1,13,11" locations_default(#20122,#10000,1,1,13,11) hasLocation(#20001,#20122) -#20123=* -stmts(#20123,2,#20001,0,"a1?.b1;") -hasLocation(#20123,#20003) -stmt_containers(#20123,#20001) +#20123=@"var;{this};{#20000}" +variables(#20123,"this",#20000) #20124=* -exprs(#20124,14,#20123,0,"a1?.b1") -#20125=@"loc,{#10000},1,1,1,6" -locations_default(#20125,#10000,1,1,1,6) -hasLocation(#20124,#20125) -enclosing_stmt(#20124,#20123) -expr_containers(#20124,#20001) -#20126=* -exprs(#20126,79,#20124,0,"a1") -hasLocation(#20126,#20029) -enclosing_stmt(#20126,#20123) -expr_containers(#20126,#20001) -literals("a1","a1",#20126) -#20127=@"var;{a1};{#20000}" -variables(#20127,"a1",#20000) -bind(#20126,#20127) -#20128=* -exprs(#20128,0,#20124,1,"b1") -hasLocation(#20128,#20033) -enclosing_stmt(#20128,#20123) -expr_containers(#20128,#20001) -literals("b1","b1",#20128) -isOptionalChaining(#20124) +stmts(#20124,2,#20001,0,"a1?.b1;") +hasLocation(#20124,#20003) +stmt_containers(#20124,#20001) +#20125=* +exprs(#20125,14,#20124,0,"a1?.b1") +#20126=@"loc,{#10000},1,1,1,6" +locations_default(#20126,#10000,1,1,1,6) +hasLocation(#20125,#20126) +enclosing_stmt(#20125,#20124) +expr_containers(#20125,#20001) +#20127=* +exprs(#20127,79,#20125,0,"a1") +hasLocation(#20127,#20029) +enclosing_stmt(#20127,#20124) +expr_containers(#20127,#20001) +literals("a1","a1",#20127) +#20128=@"var;{a1};{#20000}" +variables(#20128,"a1",#20000) +bind(#20127,#20128) #20129=* -stmts(#20129,2,#20001,1,"a2?.[x2];") -hasLocation(#20129,#20007) -stmt_containers(#20129,#20001) +exprs(#20129,0,#20125,1,"b1") +hasLocation(#20129,#20033) +enclosing_stmt(#20129,#20124) +expr_containers(#20129,#20001) +literals("b1","b1",#20129) +isOptionalChaining(#20125) #20130=* -exprs(#20130,15,#20129,0,"a2?.[x2]") -#20131=@"loc,{#10000},3,1,3,8" -locations_default(#20131,#10000,3,1,3,8) -hasLocation(#20130,#20131) -enclosing_stmt(#20130,#20129) -expr_containers(#20130,#20001) -#20132=* -exprs(#20132,79,#20130,0,"a2") -hasLocation(#20132,#20037) -enclosing_stmt(#20132,#20129) -expr_containers(#20132,#20001) -literals("a2","a2",#20132) -#20133=@"var;{a2};{#20000}" -variables(#20133,"a2",#20000) -bind(#20132,#20133) -#20134=* -exprs(#20134,79,#20130,1,"x2") -hasLocation(#20134,#20043) -enclosing_stmt(#20134,#20129) -expr_containers(#20134,#20001) -literals("x2","x2",#20134) -#20135=@"var;{x2};{#20000}" -variables(#20135,"x2",#20000) -bind(#20134,#20135) -isOptionalChaining(#20130) -#20136=* -stmts(#20136,2,#20001,2,"a3?.b3();") -hasLocation(#20136,#20011) -stmt_containers(#20136,#20001) +stmts(#20130,2,#20001,1,"a2?.[x2];") +hasLocation(#20130,#20007) +stmt_containers(#20130,#20001) +#20131=* +exprs(#20131,15,#20130,0,"a2?.[x2]") +#20132=@"loc,{#10000},3,1,3,8" +locations_default(#20132,#10000,3,1,3,8) +hasLocation(#20131,#20132) +enclosing_stmt(#20131,#20130) +expr_containers(#20131,#20001) +#20133=* +exprs(#20133,79,#20131,0,"a2") +hasLocation(#20133,#20037) +enclosing_stmt(#20133,#20130) +expr_containers(#20133,#20001) +literals("a2","a2",#20133) +#20134=@"var;{a2};{#20000}" +variables(#20134,"a2",#20000) +bind(#20133,#20134) +#20135=* +exprs(#20135,79,#20131,1,"x2") +hasLocation(#20135,#20043) +enclosing_stmt(#20135,#20130) +expr_containers(#20135,#20001) +literals("x2","x2",#20135) +#20136=@"var;{x2};{#20000}" +variables(#20136,"x2",#20000) +bind(#20135,#20136) +isOptionalChaining(#20131) #20137=* -exprs(#20137,13,#20136,0,"a3?.b3()") -#20138=@"loc,{#10000},5,1,5,8" -locations_default(#20138,#10000,5,1,5,8) -hasLocation(#20137,#20138) -enclosing_stmt(#20137,#20136) -expr_containers(#20137,#20001) -#20139=* -exprs(#20139,14,#20137,-1,"a3?.b3") -#20140=@"loc,{#10000},5,1,5,6" -locations_default(#20140,#10000,5,1,5,6) -hasLocation(#20139,#20140) -enclosing_stmt(#20139,#20136) -expr_containers(#20139,#20001) -#20141=* -exprs(#20141,79,#20139,0,"a3") -hasLocation(#20141,#20049) -enclosing_stmt(#20141,#20136) -expr_containers(#20141,#20001) -literals("a3","a3",#20141) -#20142=@"var;{a3};{#20000}" -variables(#20142,"a3",#20000) -bind(#20141,#20142) -#20143=* -exprs(#20143,0,#20139,1,"b3") -hasLocation(#20143,#20053) -enclosing_stmt(#20143,#20136) -expr_containers(#20143,#20001) -literals("b3","b3",#20143) -isOptionalChaining(#20139) +stmts(#20137,2,#20001,2,"a3?.b3();") +hasLocation(#20137,#20011) +stmt_containers(#20137,#20001) +#20138=* +exprs(#20138,13,#20137,0,"a3?.b3()") +#20139=@"loc,{#10000},5,1,5,8" +locations_default(#20139,#10000,5,1,5,8) +hasLocation(#20138,#20139) +enclosing_stmt(#20138,#20137) +expr_containers(#20138,#20001) +#20140=* +exprs(#20140,14,#20138,-1,"a3?.b3") +#20141=@"loc,{#10000},5,1,5,6" +locations_default(#20141,#10000,5,1,5,6) +hasLocation(#20140,#20141) +enclosing_stmt(#20140,#20137) +expr_containers(#20140,#20001) +#20142=* +exprs(#20142,79,#20140,0,"a3") +hasLocation(#20142,#20049) +enclosing_stmt(#20142,#20137) +expr_containers(#20142,#20001) +literals("a3","a3",#20142) +#20143=@"var;{a3};{#20000}" +variables(#20143,"a3",#20000) +bind(#20142,#20143) #20144=* -stmts(#20144,2,#20001,3,"a4?.();") -hasLocation(#20144,#20015) -stmt_containers(#20144,#20001) +exprs(#20144,0,#20140,1,"b3") +hasLocation(#20144,#20053) +enclosing_stmt(#20144,#20137) +expr_containers(#20144,#20001) +literals("b3","b3",#20144) +isOptionalChaining(#20140) #20145=* -exprs(#20145,13,#20144,0,"a4?.()") -#20146=@"loc,{#10000},7,1,7,6" -locations_default(#20146,#10000,7,1,7,6) -hasLocation(#20145,#20146) -enclosing_stmt(#20145,#20144) -expr_containers(#20145,#20001) -#20147=* -exprs(#20147,79,#20145,-1,"a4") -hasLocation(#20147,#20061) -enclosing_stmt(#20147,#20144) -expr_containers(#20147,#20001) -literals("a4","a4",#20147) -#20148=@"var;{a4};{#20000}" -variables(#20148,"a4",#20000) -bind(#20147,#20148) -isOptionalChaining(#20145) -#20149=* -stmts(#20149,2,#20001,4,"o5?.3:2;") -hasLocation(#20149,#20019) -stmt_containers(#20149,#20001) +stmts(#20145,2,#20001,3,"a4?.();") +hasLocation(#20145,#20015) +stmt_containers(#20145,#20001) +#20146=* +exprs(#20146,13,#20145,0,"a4?.()") +#20147=@"loc,{#10000},7,1,7,6" +locations_default(#20147,#10000,7,1,7,6) +hasLocation(#20146,#20147) +enclosing_stmt(#20146,#20145) +expr_containers(#20146,#20001) +#20148=* +exprs(#20148,79,#20146,-1,"a4") +hasLocation(#20148,#20061) +enclosing_stmt(#20148,#20145) +expr_containers(#20148,#20001) +literals("a4","a4",#20148) +#20149=@"var;{a4};{#20000}" +variables(#20149,"a4",#20000) +bind(#20148,#20149) +isOptionalChaining(#20146) #20150=* -exprs(#20150,11,#20149,0,"o5?.3:2") -#20151=@"loc,{#10000},9,1,9,7" -locations_default(#20151,#10000,9,1,9,7) -hasLocation(#20150,#20151) -enclosing_stmt(#20150,#20149) -expr_containers(#20150,#20001) -#20152=* -exprs(#20152,79,#20150,0,"o5") -hasLocation(#20152,#20071) -enclosing_stmt(#20152,#20149) -expr_containers(#20152,#20001) -literals("o5","o5",#20152) -#20153=@"var;{o5};{#20000}" -variables(#20153,"o5",#20000) -bind(#20152,#20153) -#20154=* -exprs(#20154,3,#20150,1,".3") -hasLocation(#20154,#20075) -enclosing_stmt(#20154,#20149) -expr_containers(#20154,#20001) -literals("0.3",".3",#20154) +stmts(#20150,2,#20001,4,"o5?.3:2;") +hasLocation(#20150,#20019) +stmt_containers(#20150,#20001) +#20151=* +exprs(#20151,11,#20150,0,"o5?.3:2") +#20152=@"loc,{#10000},9,1,9,7" +locations_default(#20152,#10000,9,1,9,7) +hasLocation(#20151,#20152) +enclosing_stmt(#20151,#20150) +expr_containers(#20151,#20001) +#20153=* +exprs(#20153,79,#20151,0,"o5") +hasLocation(#20153,#20071) +enclosing_stmt(#20153,#20150) +expr_containers(#20153,#20001) +literals("o5","o5",#20153) +#20154=@"var;{o5};{#20000}" +variables(#20154,"o5",#20000) +bind(#20153,#20154) #20155=* -exprs(#20155,3,#20150,2,"2") -hasLocation(#20155,#20079) -enclosing_stmt(#20155,#20149) +exprs(#20155,3,#20151,1,".3") +hasLocation(#20155,#20075) +enclosing_stmt(#20155,#20150) expr_containers(#20155,#20001) -literals("2","2",#20155) +literals("0.3",".3",#20155) #20156=* -stmts(#20156,2,#20001,5,"a6?.b6[ ... y6).d6;") -hasLocation(#20156,#20023) -stmt_containers(#20156,#20001) +exprs(#20156,3,#20151,2,"2") +hasLocation(#20156,#20079) +enclosing_stmt(#20156,#20150) +expr_containers(#20156,#20001) +literals("2","2",#20156) #20157=* -exprs(#20157,14,#20156,0,"a6?.b6[ ... (y6).d6") -#20158=@"loc,{#10000},11,1,11,22" -locations_default(#20158,#10000,11,1,11,22) -hasLocation(#20157,#20158) -enclosing_stmt(#20157,#20156) -expr_containers(#20157,#20001) -#20159=* -exprs(#20159,13,#20157,0,"a6?.b6[x6].c6?.(y6)") -#20160=@"loc,{#10000},11,1,11,19" -locations_default(#20160,#10000,11,1,11,19) -hasLocation(#20159,#20160) -enclosing_stmt(#20159,#20156) -expr_containers(#20159,#20001) -#20161=* -exprs(#20161,14,#20159,-1,"a6?.b6[x6].c6") -#20162=@"loc,{#10000},11,1,11,13" -locations_default(#20162,#10000,11,1,11,13) -hasLocation(#20161,#20162) -enclosing_stmt(#20161,#20156) -expr_containers(#20161,#20001) -#20163=* -exprs(#20163,15,#20161,0,"a6?.b6[x6]") -#20164=@"loc,{#10000},11,1,11,10" -locations_default(#20164,#10000,11,1,11,10) -hasLocation(#20163,#20164) -enclosing_stmt(#20163,#20156) -expr_containers(#20163,#20001) -#20165=* -exprs(#20165,14,#20163,0,"a6?.b6") -#20166=@"loc,{#10000},11,1,11,6" -locations_default(#20166,#10000,11,1,11,6) -hasLocation(#20165,#20166) -enclosing_stmt(#20165,#20156) -expr_containers(#20165,#20001) -#20167=* -exprs(#20167,79,#20165,0,"a6") -hasLocation(#20167,#20083) -enclosing_stmt(#20167,#20156) -expr_containers(#20167,#20001) -literals("a6","a6",#20167) -#20168=@"var;{a6};{#20000}" -variables(#20168,"a6",#20000) -bind(#20167,#20168) -#20169=* -exprs(#20169,0,#20165,1,"b6") -hasLocation(#20169,#20087) -enclosing_stmt(#20169,#20156) -expr_containers(#20169,#20001) -literals("b6","b6",#20169) -isOptionalChaining(#20165) +stmts(#20157,2,#20001,5,"a6?.b6[ ... y6).d6;") +hasLocation(#20157,#20023) +stmt_containers(#20157,#20001) +#20158=* +exprs(#20158,14,#20157,0,"a6?.b6[ ... (y6).d6") +#20159=@"loc,{#10000},11,1,11,22" +locations_default(#20159,#10000,11,1,11,22) +hasLocation(#20158,#20159) +enclosing_stmt(#20158,#20157) +expr_containers(#20158,#20001) +#20160=* +exprs(#20160,13,#20158,0,"a6?.b6[x6].c6?.(y6)") +#20161=@"loc,{#10000},11,1,11,19" +locations_default(#20161,#10000,11,1,11,19) +hasLocation(#20160,#20161) +enclosing_stmt(#20160,#20157) +expr_containers(#20160,#20001) +#20162=* +exprs(#20162,14,#20160,-1,"a6?.b6[x6].c6") +#20163=@"loc,{#10000},11,1,11,13" +locations_default(#20163,#10000,11,1,11,13) +hasLocation(#20162,#20163) +enclosing_stmt(#20162,#20157) +expr_containers(#20162,#20001) +#20164=* +exprs(#20164,15,#20162,0,"a6?.b6[x6]") +#20165=@"loc,{#10000},11,1,11,10" +locations_default(#20165,#10000,11,1,11,10) +hasLocation(#20164,#20165) +enclosing_stmt(#20164,#20157) +expr_containers(#20164,#20001) +#20166=* +exprs(#20166,14,#20164,0,"a6?.b6") +#20167=@"loc,{#10000},11,1,11,6" +locations_default(#20167,#10000,11,1,11,6) +hasLocation(#20166,#20167) +enclosing_stmt(#20166,#20157) +expr_containers(#20166,#20001) +#20168=* +exprs(#20168,79,#20166,0,"a6") +hasLocation(#20168,#20083) +enclosing_stmt(#20168,#20157) +expr_containers(#20168,#20001) +literals("a6","a6",#20168) +#20169=@"var;{a6};{#20000}" +variables(#20169,"a6",#20000) +bind(#20168,#20169) #20170=* -exprs(#20170,79,#20163,1,"x6") -hasLocation(#20170,#20091) -enclosing_stmt(#20170,#20156) +exprs(#20170,0,#20166,1,"b6") +hasLocation(#20170,#20087) +enclosing_stmt(#20170,#20157) expr_containers(#20170,#20001) -literals("x6","x6",#20170) -#20171=@"var;{x6};{#20000}" -variables(#20171,"x6",#20000) -bind(#20170,#20171) -#20172=* -exprs(#20172,0,#20161,1,"c6") -hasLocation(#20172,#20097) -enclosing_stmt(#20172,#20156) -expr_containers(#20172,#20001) -literals("c6","c6",#20172) +literals("b6","b6",#20170) +isOptionalChaining(#20166) +#20171=* +exprs(#20171,79,#20164,1,"x6") +hasLocation(#20171,#20091) +enclosing_stmt(#20171,#20157) +expr_containers(#20171,#20001) +literals("x6","x6",#20171) +#20172=@"var;{x6};{#20000}" +variables(#20172,"x6",#20000) +bind(#20171,#20172) #20173=* -exprs(#20173,79,#20159,0,"y6") -hasLocation(#20173,#20103) -enclosing_stmt(#20173,#20156) +exprs(#20173,0,#20162,1,"c6") +hasLocation(#20173,#20097) +enclosing_stmt(#20173,#20157) expr_containers(#20173,#20001) -literals("y6","y6",#20173) -#20174=@"var;{y6};{#20000}" -variables(#20174,"y6",#20000) -bind(#20173,#20174) -isOptionalChaining(#20159) -#20175=* -exprs(#20175,0,#20157,1,"d6") -hasLocation(#20175,#20109) -enclosing_stmt(#20175,#20156) -expr_containers(#20175,#20001) -literals("d6","d6",#20175) +literals("c6","c6",#20173) +#20174=* +exprs(#20174,79,#20160,0,"y6") +hasLocation(#20174,#20103) +enclosing_stmt(#20174,#20157) +expr_containers(#20174,#20001) +literals("y6","y6",#20174) +#20175=@"var;{y6};{#20000}" +variables(#20175,"y6",#20000) +bind(#20174,#20175) +isOptionalChaining(#20160) #20176=* -stmts(#20176,2,#20001,6,"delete a?.b") -hasLocation(#20176,#20027) -stmt_containers(#20176,#20001) +exprs(#20176,0,#20158,1,"d6") +hasLocation(#20176,#20109) +enclosing_stmt(#20176,#20157) +expr_containers(#20176,#20001) +literals("d6","d6",#20176) #20177=* -exprs(#20177,22,#20176,0,"delete a?.b") +stmts(#20177,2,#20001,6,"delete a?.b") hasLocation(#20177,#20027) -enclosing_stmt(#20177,#20176) -expr_containers(#20177,#20001) +stmt_containers(#20177,#20001) #20178=* -exprs(#20178,14,#20177,0,"a?.b") -#20179=@"loc,{#10000},13,8,13,11" -locations_default(#20179,#10000,13,8,13,11) -hasLocation(#20178,#20179) -enclosing_stmt(#20178,#20176) +exprs(#20178,22,#20177,0,"delete a?.b") +hasLocation(#20178,#20027) +enclosing_stmt(#20178,#20177) expr_containers(#20178,#20001) -#20180=* -exprs(#20180,79,#20178,0,"a") -hasLocation(#20180,#20115) -enclosing_stmt(#20180,#20176) -expr_containers(#20180,#20001) -literals("a","a",#20180) -#20181=@"var;{a};{#20000}" -variables(#20181,"a",#20000) -bind(#20180,#20181) -#20182=* -exprs(#20182,0,#20178,1,"b") -hasLocation(#20182,#20119) -enclosing_stmt(#20182,#20176) -expr_containers(#20182,#20001) -literals("b","b",#20182) -isOptionalChaining(#20178) +#20179=* +exprs(#20179,14,#20178,0,"a?.b") +#20180=@"loc,{#10000},13,8,13,11" +locations_default(#20180,#10000,13,8,13,11) +hasLocation(#20179,#20180) +enclosing_stmt(#20179,#20177) +expr_containers(#20179,#20001) +#20181=* +exprs(#20181,79,#20179,0,"a") +hasLocation(#20181,#20115) +enclosing_stmt(#20181,#20177) +expr_containers(#20181,#20001) +literals("a","a",#20181) +#20182=@"var;{a};{#20000}" +variables(#20182,"a",#20000) +bind(#20181,#20182) #20183=* -entry_cfg_node(#20183,#20001) -#20184=@"loc,{#10000},1,1,1,0" -locations_default(#20184,#10000,1,1,1,0) -hasLocation(#20183,#20184) -#20185=* -exit_cfg_node(#20185,#20001) -hasLocation(#20185,#20121) -successor(#20176,#20180) -successor(#20182,#20178) -successor(#20180,#20182) -successor(#20178,#20177) -successor(#20180,#20177) -successor(#20177,#20185) -successor(#20156,#20167) -successor(#20175,#20157) -successor(#20173,#20159) -successor(#20172,#20161) -successor(#20170,#20163) -successor(#20169,#20165) -successor(#20167,#20169) -successor(#20165,#20170) -successor(#20167,#20176) -successor(#20163,#20172) -successor(#20161,#20173) -successor(#20159,#20175) -successor(#20161,#20176) -successor(#20157,#20176) -successor(#20149,#20150) -successor(#20150,#20152) +exprs(#20183,0,#20179,1,"b") +hasLocation(#20183,#20119) +enclosing_stmt(#20183,#20177) +expr_containers(#20183,#20001) +literals("b","b",#20183) +isOptionalChaining(#20179) +#20184=* +entry_cfg_node(#20184,#20001) +#20185=@"loc,{#10000},1,1,1,0" +locations_default(#20185,#10000,1,1,1,0) +hasLocation(#20184,#20185) #20186=* -guard_node(#20186,1,#20152) -hasLocation(#20186,#20071) -successor(#20186,#20154) +exit_cfg_node(#20186,#20001) +hasLocation(#20186,#20121) +successor(#20177,#20181) +successor(#20183,#20179) +successor(#20181,#20183) +successor(#20179,#20178) +successor(#20181,#20178) +successor(#20178,#20186) +successor(#20157,#20168) +successor(#20176,#20158) +successor(#20174,#20160) +successor(#20173,#20162) +successor(#20171,#20164) +successor(#20170,#20166) +successor(#20168,#20170) +successor(#20166,#20171) +successor(#20168,#20177) +successor(#20164,#20173) +successor(#20162,#20174) +successor(#20160,#20176) +successor(#20162,#20177) +successor(#20158,#20177) +successor(#20150,#20151) +successor(#20151,#20153) #20187=* -guard_node(#20187,0,#20152) +guard_node(#20187,1,#20153) hasLocation(#20187,#20071) successor(#20187,#20155) -successor(#20152,#20186) -successor(#20152,#20187) -successor(#20154,#20156) -successor(#20155,#20156) -successor(#20144,#20147) -successor(#20147,#20145) -successor(#20145,#20149) -successor(#20147,#20149) -successor(#20136,#20141) -successor(#20143,#20139) -successor(#20141,#20143) -successor(#20139,#20137) -successor(#20141,#20144) -successor(#20137,#20144) -successor(#20129,#20132) -successor(#20134,#20130) -successor(#20132,#20134) -successor(#20130,#20136) -successor(#20132,#20136) -successor(#20123,#20126) -successor(#20128,#20124) -successor(#20126,#20128) -successor(#20124,#20129) -successor(#20126,#20129) -successor(#20183,#20123) +#20188=* +guard_node(#20188,0,#20153) +hasLocation(#20188,#20071) +successor(#20188,#20156) +successor(#20153,#20187) +successor(#20153,#20188) +successor(#20155,#20157) +successor(#20156,#20157) +successor(#20145,#20148) +successor(#20148,#20146) +successor(#20146,#20150) +successor(#20148,#20150) +successor(#20137,#20142) +successor(#20144,#20140) +successor(#20142,#20144) +successor(#20140,#20138) +successor(#20142,#20145) +successor(#20138,#20145) +successor(#20130,#20133) +successor(#20135,#20131) +successor(#20133,#20135) +successor(#20131,#20137) +successor(#20133,#20137) +successor(#20124,#20127) +successor(#20129,#20125) +successor(#20127,#20129) +successor(#20125,#20130) +successor(#20127,#20130) +successor(#20184,#20124) numlines(#10000,13,7,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/optional-chaining_short-circuiting.js.trap b/javascript/extractor/tests/esnext/output/trap/optional-chaining_short-circuiting.js.trap index 70fe3585215e..c74fcdf8b1e3 100644 --- a/javascript/extractor/tests/esnext/output/trap/optional-chaining_short-circuiting.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/optional-chaining_short-circuiting.js.trap @@ -863,845 +863,847 @@ toplevels(#20001,0) #20327=@"loc,{#10000},1,1,30,0" locations_default(#20327,#10000,1,1,30,0) hasLocation(#20001,#20327) -#20328=* -stmts(#20328,2,#20001,0,"a?.b.c(++x).d;") -hasLocation(#20328,#20003) -stmt_containers(#20328,#20001) +#20328=@"var;{this};{#20000}" +variables(#20328,"this",#20000) #20329=* -exprs(#20329,14,#20328,0,"a?.b.c(++x).d") -#20330=@"loc,{#10000},1,1,1,13" -locations_default(#20330,#10000,1,1,1,13) -hasLocation(#20329,#20330) -enclosing_stmt(#20329,#20328) -expr_containers(#20329,#20001) -#20331=* -exprs(#20331,13,#20329,0,"a?.b.c(++x)") -#20332=@"loc,{#10000},1,1,1,11" -locations_default(#20332,#10000,1,1,1,11) -hasLocation(#20331,#20332) -enclosing_stmt(#20331,#20328) -expr_containers(#20331,#20001) -#20333=* -exprs(#20333,14,#20331,-1,"a?.b.c") -#20334=@"loc,{#10000},1,1,1,6" -locations_default(#20334,#10000,1,1,1,6) -hasLocation(#20333,#20334) -enclosing_stmt(#20333,#20328) -expr_containers(#20333,#20001) -#20335=* -exprs(#20335,14,#20333,0,"a?.b") -#20336=@"loc,{#10000},1,1,1,4" -locations_default(#20336,#10000,1,1,1,4) -hasLocation(#20335,#20336) -enclosing_stmt(#20335,#20328) -expr_containers(#20335,#20001) -#20337=* -exprs(#20337,79,#20335,0,"a") -hasLocation(#20337,#20061) -enclosing_stmt(#20337,#20328) -expr_containers(#20337,#20001) -literals("a","a",#20337) -#20338=@"var;{a};{#20000}" -variables(#20338,"a",#20000) -bind(#20337,#20338) -#20339=* -exprs(#20339,0,#20335,1,"b") -hasLocation(#20339,#20065) -enclosing_stmt(#20339,#20328) -expr_containers(#20339,#20001) -literals("b","b",#20339) -isOptionalChaining(#20335) +stmts(#20329,2,#20001,0,"a?.b.c(++x).d;") +hasLocation(#20329,#20003) +stmt_containers(#20329,#20001) +#20330=* +exprs(#20330,14,#20329,0,"a?.b.c(++x).d") +#20331=@"loc,{#10000},1,1,1,13" +locations_default(#20331,#10000,1,1,1,13) +hasLocation(#20330,#20331) +enclosing_stmt(#20330,#20329) +expr_containers(#20330,#20001) +#20332=* +exprs(#20332,13,#20330,0,"a?.b.c(++x)") +#20333=@"loc,{#10000},1,1,1,11" +locations_default(#20333,#10000,1,1,1,11) +hasLocation(#20332,#20333) +enclosing_stmt(#20332,#20329) +expr_containers(#20332,#20001) +#20334=* +exprs(#20334,14,#20332,-1,"a?.b.c") +#20335=@"loc,{#10000},1,1,1,6" +locations_default(#20335,#10000,1,1,1,6) +hasLocation(#20334,#20335) +enclosing_stmt(#20334,#20329) +expr_containers(#20334,#20001) +#20336=* +exprs(#20336,14,#20334,0,"a?.b") +#20337=@"loc,{#10000},1,1,1,4" +locations_default(#20337,#10000,1,1,1,4) +hasLocation(#20336,#20337) +enclosing_stmt(#20336,#20329) +expr_containers(#20336,#20001) +#20338=* +exprs(#20338,79,#20336,0,"a") +hasLocation(#20338,#20061) +enclosing_stmt(#20338,#20329) +expr_containers(#20338,#20001) +literals("a","a",#20338) +#20339=@"var;{a};{#20000}" +variables(#20339,"a",#20000) +bind(#20338,#20339) #20340=* -exprs(#20340,0,#20333,1,"c") -hasLocation(#20340,#20069) -enclosing_stmt(#20340,#20328) +exprs(#20340,0,#20336,1,"b") +hasLocation(#20340,#20065) +enclosing_stmt(#20340,#20329) expr_containers(#20340,#20001) -literals("c","c",#20340) +literals("b","b",#20340) +isOptionalChaining(#20336) #20341=* -exprs(#20341,59,#20331,0,"++x") -#20342=@"loc,{#10000},1,8,1,10" -locations_default(#20342,#10000,1,8,1,10) -hasLocation(#20341,#20342) -enclosing_stmt(#20341,#20328) +exprs(#20341,0,#20334,1,"c") +hasLocation(#20341,#20069) +enclosing_stmt(#20341,#20329) expr_containers(#20341,#20001) -#20343=* -exprs(#20343,79,#20341,0,"x") -hasLocation(#20343,#20075) -enclosing_stmt(#20343,#20328) -expr_containers(#20343,#20001) -literals("x","x",#20343) -#20344=@"var;{x};{#20000}" -variables(#20344,"x",#20000) -bind(#20343,#20344) -#20345=* -exprs(#20345,0,#20329,1,"d") -hasLocation(#20345,#20081) -enclosing_stmt(#20345,#20328) -expr_containers(#20345,#20001) -literals("d","d",#20345) +literals("c","c",#20341) +#20342=* +exprs(#20342,59,#20332,0,"++x") +#20343=@"loc,{#10000},1,8,1,10" +locations_default(#20343,#10000,1,8,1,10) +hasLocation(#20342,#20343) +enclosing_stmt(#20342,#20329) +expr_containers(#20342,#20001) +#20344=* +exprs(#20344,79,#20342,0,"x") +hasLocation(#20344,#20075) +enclosing_stmt(#20344,#20329) +expr_containers(#20344,#20001) +literals("x","x",#20344) +#20345=@"var;{x};{#20000}" +variables(#20345,"x",#20000) +bind(#20344,#20345) #20346=* -stmts(#20346,2,#20001,1,"a?.b[3].c?.(x).d;") -hasLocation(#20346,#20007) -stmt_containers(#20346,#20001) +exprs(#20346,0,#20330,1,"d") +hasLocation(#20346,#20081) +enclosing_stmt(#20346,#20329) +expr_containers(#20346,#20001) +literals("d","d",#20346) #20347=* -exprs(#20347,14,#20346,0,"a?.b[3].c?.(x).d") -#20348=@"loc,{#10000},3,1,3,16" -locations_default(#20348,#10000,3,1,3,16) -hasLocation(#20347,#20348) -enclosing_stmt(#20347,#20346) -expr_containers(#20347,#20001) -#20349=* -exprs(#20349,13,#20347,0,"a?.b[3].c?.(x)") -#20350=@"loc,{#10000},3,1,3,14" -locations_default(#20350,#10000,3,1,3,14) -hasLocation(#20349,#20350) -enclosing_stmt(#20349,#20346) -expr_containers(#20349,#20001) -#20351=* -exprs(#20351,14,#20349,-1,"a?.b[3].c") -#20352=@"loc,{#10000},3,1,3,9" -locations_default(#20352,#10000,3,1,3,9) -hasLocation(#20351,#20352) -enclosing_stmt(#20351,#20346) -expr_containers(#20351,#20001) -#20353=* -exprs(#20353,15,#20351,0,"a?.b[3]") -#20354=@"loc,{#10000},3,1,3,7" -locations_default(#20354,#10000,3,1,3,7) -hasLocation(#20353,#20354) -enclosing_stmt(#20353,#20346) -expr_containers(#20353,#20001) -#20355=* -exprs(#20355,14,#20353,0,"a?.b") -#20356=@"loc,{#10000},3,1,3,4" -locations_default(#20356,#10000,3,1,3,4) -hasLocation(#20355,#20356) -enclosing_stmt(#20355,#20346) -expr_containers(#20355,#20001) -#20357=* -exprs(#20357,79,#20355,0,"a") -hasLocation(#20357,#20085) -enclosing_stmt(#20357,#20346) -expr_containers(#20357,#20001) -literals("a","a",#20357) -bind(#20357,#20338) +stmts(#20347,2,#20001,1,"a?.b[3].c?.(x).d;") +hasLocation(#20347,#20007) +stmt_containers(#20347,#20001) +#20348=* +exprs(#20348,14,#20347,0,"a?.b[3].c?.(x).d") +#20349=@"loc,{#10000},3,1,3,16" +locations_default(#20349,#10000,3,1,3,16) +hasLocation(#20348,#20349) +enclosing_stmt(#20348,#20347) +expr_containers(#20348,#20001) +#20350=* +exprs(#20350,13,#20348,0,"a?.b[3].c?.(x)") +#20351=@"loc,{#10000},3,1,3,14" +locations_default(#20351,#10000,3,1,3,14) +hasLocation(#20350,#20351) +enclosing_stmt(#20350,#20347) +expr_containers(#20350,#20001) +#20352=* +exprs(#20352,14,#20350,-1,"a?.b[3].c") +#20353=@"loc,{#10000},3,1,3,9" +locations_default(#20353,#10000,3,1,3,9) +hasLocation(#20352,#20353) +enclosing_stmt(#20352,#20347) +expr_containers(#20352,#20001) +#20354=* +exprs(#20354,15,#20352,0,"a?.b[3]") +#20355=@"loc,{#10000},3,1,3,7" +locations_default(#20355,#10000,3,1,3,7) +hasLocation(#20354,#20355) +enclosing_stmt(#20354,#20347) +expr_containers(#20354,#20001) +#20356=* +exprs(#20356,14,#20354,0,"a?.b") +#20357=@"loc,{#10000},3,1,3,4" +locations_default(#20357,#10000,3,1,3,4) +hasLocation(#20356,#20357) +enclosing_stmt(#20356,#20347) +expr_containers(#20356,#20001) #20358=* -exprs(#20358,0,#20355,1,"b") -hasLocation(#20358,#20089) -enclosing_stmt(#20358,#20346) +exprs(#20358,79,#20356,0,"a") +hasLocation(#20358,#20085) +enclosing_stmt(#20358,#20347) expr_containers(#20358,#20001) -literals("b","b",#20358) -isOptionalChaining(#20355) +literals("a","a",#20358) +bind(#20358,#20339) #20359=* -exprs(#20359,3,#20353,1,"3") -hasLocation(#20359,#20093) -enclosing_stmt(#20359,#20346) +exprs(#20359,0,#20356,1,"b") +hasLocation(#20359,#20089) +enclosing_stmt(#20359,#20347) expr_containers(#20359,#20001) -literals("3","3",#20359) +literals("b","b",#20359) +isOptionalChaining(#20356) #20360=* -exprs(#20360,0,#20351,1,"c") -hasLocation(#20360,#20099) -enclosing_stmt(#20360,#20346) +exprs(#20360,3,#20354,1,"3") +hasLocation(#20360,#20093) +enclosing_stmt(#20360,#20347) expr_containers(#20360,#20001) -literals("c","c",#20360) +literals("3","3",#20360) #20361=* -exprs(#20361,79,#20349,0,"x") -hasLocation(#20361,#20105) -enclosing_stmt(#20361,#20346) +exprs(#20361,0,#20352,1,"c") +hasLocation(#20361,#20099) +enclosing_stmt(#20361,#20347) expr_containers(#20361,#20001) -literals("x","x",#20361) -bind(#20361,#20344) -isOptionalChaining(#20349) +literals("c","c",#20361) #20362=* -exprs(#20362,0,#20347,1,"d") -hasLocation(#20362,#20111) -enclosing_stmt(#20362,#20346) +exprs(#20362,79,#20350,0,"x") +hasLocation(#20362,#20105) +enclosing_stmt(#20362,#20347) expr_containers(#20362,#20001) -literals("d","d",#20362) +literals("x","x",#20362) +bind(#20362,#20345) +isOptionalChaining(#20350) #20363=* -stmts(#20363,2,#20001,2,"(a?.b).c;") -hasLocation(#20363,#20011) -stmt_containers(#20363,#20001) +exprs(#20363,0,#20348,1,"d") +hasLocation(#20363,#20111) +enclosing_stmt(#20363,#20347) +expr_containers(#20363,#20001) +literals("d","d",#20363) #20364=* -exprs(#20364,14,#20363,0,"(a?.b).c") -#20365=@"loc,{#10000},5,1,5,8" -locations_default(#20365,#10000,5,1,5,8) -hasLocation(#20364,#20365) -enclosing_stmt(#20364,#20363) -expr_containers(#20364,#20001) -#20366=* -exprs(#20366,63,#20364,0,"(a?.b)") -#20367=@"loc,{#10000},5,1,5,6" -locations_default(#20367,#10000,5,1,5,6) -hasLocation(#20366,#20367) -enclosing_stmt(#20366,#20363) -expr_containers(#20366,#20001) -#20368=* -exprs(#20368,14,#20366,0,"a?.b") -#20369=@"loc,{#10000},5,2,5,5" -locations_default(#20369,#10000,5,2,5,5) -hasLocation(#20368,#20369) -enclosing_stmt(#20368,#20363) -expr_containers(#20368,#20001) -#20370=* -exprs(#20370,79,#20368,0,"a") -hasLocation(#20370,#20117) -enclosing_stmt(#20370,#20363) -expr_containers(#20370,#20001) -literals("a","a",#20370) -bind(#20370,#20338) +stmts(#20364,2,#20001,2,"(a?.b).c;") +hasLocation(#20364,#20011) +stmt_containers(#20364,#20001) +#20365=* +exprs(#20365,14,#20364,0,"(a?.b).c") +#20366=@"loc,{#10000},5,1,5,8" +locations_default(#20366,#10000,5,1,5,8) +hasLocation(#20365,#20366) +enclosing_stmt(#20365,#20364) +expr_containers(#20365,#20001) +#20367=* +exprs(#20367,63,#20365,0,"(a?.b)") +#20368=@"loc,{#10000},5,1,5,6" +locations_default(#20368,#10000,5,1,5,6) +hasLocation(#20367,#20368) +enclosing_stmt(#20367,#20364) +expr_containers(#20367,#20001) +#20369=* +exprs(#20369,14,#20367,0,"a?.b") +#20370=@"loc,{#10000},5,2,5,5" +locations_default(#20370,#10000,5,2,5,5) +hasLocation(#20369,#20370) +enclosing_stmt(#20369,#20364) +expr_containers(#20369,#20001) #20371=* -exprs(#20371,0,#20368,1,"b") -hasLocation(#20371,#20121) -enclosing_stmt(#20371,#20363) +exprs(#20371,79,#20369,0,"a") +hasLocation(#20371,#20117) +enclosing_stmt(#20371,#20364) expr_containers(#20371,#20001) -literals("b","b",#20371) -isOptionalChaining(#20368) +literals("a","a",#20371) +bind(#20371,#20339) #20372=* -exprs(#20372,0,#20364,1,"c") -hasLocation(#20372,#20127) -enclosing_stmt(#20372,#20363) +exprs(#20372,0,#20369,1,"b") +hasLocation(#20372,#20121) +enclosing_stmt(#20372,#20364) expr_containers(#20372,#20001) -literals("c","c",#20372) +literals("b","b",#20372) +isOptionalChaining(#20369) #20373=* -stmts(#20373,2,#20001,3,"(a?.b.c).d;") -hasLocation(#20373,#20015) -stmt_containers(#20373,#20001) +exprs(#20373,0,#20365,1,"c") +hasLocation(#20373,#20127) +enclosing_stmt(#20373,#20364) +expr_containers(#20373,#20001) +literals("c","c",#20373) #20374=* -exprs(#20374,14,#20373,0,"(a?.b.c).d") -#20375=@"loc,{#10000},7,1,7,10" -locations_default(#20375,#10000,7,1,7,10) -hasLocation(#20374,#20375) -enclosing_stmt(#20374,#20373) -expr_containers(#20374,#20001) -#20376=* -exprs(#20376,63,#20374,0,"(a?.b.c)") -#20377=@"loc,{#10000},7,1,7,8" -locations_default(#20377,#10000,7,1,7,8) -hasLocation(#20376,#20377) -enclosing_stmt(#20376,#20373) -expr_containers(#20376,#20001) -#20378=* -exprs(#20378,14,#20376,0,"a?.b.c") -#20379=@"loc,{#10000},7,2,7,7" -locations_default(#20379,#10000,7,2,7,7) -hasLocation(#20378,#20379) -enclosing_stmt(#20378,#20373) -expr_containers(#20378,#20001) -#20380=* -exprs(#20380,14,#20378,0,"a?.b") -#20381=@"loc,{#10000},7,2,7,5" -locations_default(#20381,#10000,7,2,7,5) -hasLocation(#20380,#20381) -enclosing_stmt(#20380,#20373) -expr_containers(#20380,#20001) -#20382=* -exprs(#20382,79,#20380,0,"a") -hasLocation(#20382,#20133) -enclosing_stmt(#20382,#20373) -expr_containers(#20382,#20001) -literals("a","a",#20382) -bind(#20382,#20338) +stmts(#20374,2,#20001,3,"(a?.b.c).d;") +hasLocation(#20374,#20015) +stmt_containers(#20374,#20001) +#20375=* +exprs(#20375,14,#20374,0,"(a?.b.c).d") +#20376=@"loc,{#10000},7,1,7,10" +locations_default(#20376,#10000,7,1,7,10) +hasLocation(#20375,#20376) +enclosing_stmt(#20375,#20374) +expr_containers(#20375,#20001) +#20377=* +exprs(#20377,63,#20375,0,"(a?.b.c)") +#20378=@"loc,{#10000},7,1,7,8" +locations_default(#20378,#10000,7,1,7,8) +hasLocation(#20377,#20378) +enclosing_stmt(#20377,#20374) +expr_containers(#20377,#20001) +#20379=* +exprs(#20379,14,#20377,0,"a?.b.c") +#20380=@"loc,{#10000},7,2,7,7" +locations_default(#20380,#10000,7,2,7,7) +hasLocation(#20379,#20380) +enclosing_stmt(#20379,#20374) +expr_containers(#20379,#20001) +#20381=* +exprs(#20381,14,#20379,0,"a?.b") +#20382=@"loc,{#10000},7,2,7,5" +locations_default(#20382,#10000,7,2,7,5) +hasLocation(#20381,#20382) +enclosing_stmt(#20381,#20374) +expr_containers(#20381,#20001) #20383=* -exprs(#20383,0,#20380,1,"b") -hasLocation(#20383,#20137) -enclosing_stmt(#20383,#20373) +exprs(#20383,79,#20381,0,"a") +hasLocation(#20383,#20133) +enclosing_stmt(#20383,#20374) expr_containers(#20383,#20001) -literals("b","b",#20383) -isOptionalChaining(#20380) +literals("a","a",#20383) +bind(#20383,#20339) #20384=* -exprs(#20384,0,#20378,1,"c") -hasLocation(#20384,#20141) -enclosing_stmt(#20384,#20373) +exprs(#20384,0,#20381,1,"b") +hasLocation(#20384,#20137) +enclosing_stmt(#20384,#20374) expr_containers(#20384,#20001) -literals("c","c",#20384) +literals("b","b",#20384) +isOptionalChaining(#20381) #20385=* -exprs(#20385,0,#20374,1,"d") -hasLocation(#20385,#20147) -enclosing_stmt(#20385,#20373) +exprs(#20385,0,#20379,1,"c") +hasLocation(#20385,#20141) +enclosing_stmt(#20385,#20374) expr_containers(#20385,#20001) -literals("d","d",#20385) +literals("c","c",#20385) #20386=* -stmts(#20386,2,#20001,4,"a?.[b?.c?.d].e?.f;") -hasLocation(#20386,#20019) -stmt_containers(#20386,#20001) +exprs(#20386,0,#20375,1,"d") +hasLocation(#20386,#20147) +enclosing_stmt(#20386,#20374) +expr_containers(#20386,#20001) +literals("d","d",#20386) #20387=* -exprs(#20387,14,#20386,0,"a?.[b?.c?.d].e?.f") -#20388=@"loc,{#10000},9,1,9,17" -locations_default(#20388,#10000,9,1,9,17) -hasLocation(#20387,#20388) -enclosing_stmt(#20387,#20386) -expr_containers(#20387,#20001) -#20389=* -exprs(#20389,14,#20387,0,"a?.[b?.c?.d].e") -#20390=@"loc,{#10000},9,1,9,14" -locations_default(#20390,#10000,9,1,9,14) -hasLocation(#20389,#20390) -enclosing_stmt(#20389,#20386) -expr_containers(#20389,#20001) -#20391=* -exprs(#20391,15,#20389,0,"a?.[b?.c?.d]") -#20392=@"loc,{#10000},9,1,9,12" -locations_default(#20392,#10000,9,1,9,12) -hasLocation(#20391,#20392) -enclosing_stmt(#20391,#20386) -expr_containers(#20391,#20001) -#20393=* -exprs(#20393,79,#20391,0,"a") -hasLocation(#20393,#20151) -enclosing_stmt(#20393,#20386) -expr_containers(#20393,#20001) -literals("a","a",#20393) -bind(#20393,#20338) +stmts(#20387,2,#20001,4,"a?.[b?.c?.d].e?.f;") +hasLocation(#20387,#20019) +stmt_containers(#20387,#20001) +#20388=* +exprs(#20388,14,#20387,0,"a?.[b?.c?.d].e?.f") +#20389=@"loc,{#10000},9,1,9,17" +locations_default(#20389,#10000,9,1,9,17) +hasLocation(#20388,#20389) +enclosing_stmt(#20388,#20387) +expr_containers(#20388,#20001) +#20390=* +exprs(#20390,14,#20388,0,"a?.[b?.c?.d].e") +#20391=@"loc,{#10000},9,1,9,14" +locations_default(#20391,#10000,9,1,9,14) +hasLocation(#20390,#20391) +enclosing_stmt(#20390,#20387) +expr_containers(#20390,#20001) +#20392=* +exprs(#20392,15,#20390,0,"a?.[b?.c?.d]") +#20393=@"loc,{#10000},9,1,9,12" +locations_default(#20393,#10000,9,1,9,12) +hasLocation(#20392,#20393) +enclosing_stmt(#20392,#20387) +expr_containers(#20392,#20001) #20394=* -exprs(#20394,14,#20391,1,"b?.c?.d") -#20395=@"loc,{#10000},9,5,9,11" -locations_default(#20395,#10000,9,5,9,11) -hasLocation(#20394,#20395) -enclosing_stmt(#20394,#20386) +exprs(#20394,79,#20392,0,"a") +hasLocation(#20394,#20151) +enclosing_stmt(#20394,#20387) expr_containers(#20394,#20001) -#20396=* -exprs(#20396,14,#20394,0,"b?.c") -#20397=@"loc,{#10000},9,5,9,8" -locations_default(#20397,#10000,9,5,9,8) -hasLocation(#20396,#20397) -enclosing_stmt(#20396,#20386) -expr_containers(#20396,#20001) -#20398=* -exprs(#20398,79,#20396,0,"b") -hasLocation(#20398,#20157) -enclosing_stmt(#20398,#20386) -expr_containers(#20398,#20001) -literals("b","b",#20398) -#20399=@"var;{b};{#20000}" -variables(#20399,"b",#20000) -bind(#20398,#20399) -#20400=* -exprs(#20400,0,#20396,1,"c") -hasLocation(#20400,#20161) -enclosing_stmt(#20400,#20386) -expr_containers(#20400,#20001) -literals("c","c",#20400) -isOptionalChaining(#20396) +literals("a","a",#20394) +bind(#20394,#20339) +#20395=* +exprs(#20395,14,#20392,1,"b?.c?.d") +#20396=@"loc,{#10000},9,5,9,11" +locations_default(#20396,#10000,9,5,9,11) +hasLocation(#20395,#20396) +enclosing_stmt(#20395,#20387) +expr_containers(#20395,#20001) +#20397=* +exprs(#20397,14,#20395,0,"b?.c") +#20398=@"loc,{#10000},9,5,9,8" +locations_default(#20398,#10000,9,5,9,8) +hasLocation(#20397,#20398) +enclosing_stmt(#20397,#20387) +expr_containers(#20397,#20001) +#20399=* +exprs(#20399,79,#20397,0,"b") +hasLocation(#20399,#20157) +enclosing_stmt(#20399,#20387) +expr_containers(#20399,#20001) +literals("b","b",#20399) +#20400=@"var;{b};{#20000}" +variables(#20400,"b",#20000) +bind(#20399,#20400) #20401=* -exprs(#20401,0,#20394,1,"d") -hasLocation(#20401,#20165) -enclosing_stmt(#20401,#20386) +exprs(#20401,0,#20397,1,"c") +hasLocation(#20401,#20161) +enclosing_stmt(#20401,#20387) expr_containers(#20401,#20001) -literals("d","d",#20401) -isOptionalChaining(#20394) -isOptionalChaining(#20391) +literals("c","c",#20401) +isOptionalChaining(#20397) #20402=* -exprs(#20402,0,#20389,1,"e") -hasLocation(#20402,#20171) -enclosing_stmt(#20402,#20386) +exprs(#20402,0,#20395,1,"d") +hasLocation(#20402,#20165) +enclosing_stmt(#20402,#20387) expr_containers(#20402,#20001) -literals("e","e",#20402) +literals("d","d",#20402) +isOptionalChaining(#20395) +isOptionalChaining(#20392) #20403=* -exprs(#20403,0,#20387,1,"f") -hasLocation(#20403,#20175) -enclosing_stmt(#20403,#20386) +exprs(#20403,0,#20390,1,"e") +hasLocation(#20403,#20171) +enclosing_stmt(#20403,#20387) expr_containers(#20403,#20001) -literals("f","f",#20403) -isOptionalChaining(#20387) +literals("e","e",#20403) #20404=* -stmts(#20404,2,#20001,5,"a?.()[b ... ?.().f;") -hasLocation(#20404,#20023) -stmt_containers(#20404,#20001) +exprs(#20404,0,#20388,1,"f") +hasLocation(#20404,#20175) +enclosing_stmt(#20404,#20387) +expr_containers(#20404,#20001) +literals("f","f",#20404) +isOptionalChaining(#20388) #20405=* -exprs(#20405,14,#20404,0,"a?.()[b ... e?.().f") -#20406=@"loc,{#10000},11,1,11,28" -locations_default(#20406,#10000,11,1,11,28) -hasLocation(#20405,#20406) -enclosing_stmt(#20405,#20404) -expr_containers(#20405,#20001) -#20407=* -exprs(#20407,13,#20405,0,"a?.()[b ... ].e?.()") -#20408=@"loc,{#10000},11,1,11,26" -locations_default(#20408,#10000,11,1,11,26) -hasLocation(#20407,#20408) -enclosing_stmt(#20407,#20404) -expr_containers(#20407,#20001) -#20409=* -exprs(#20409,14,#20407,-1,"a?.()[b ... ().d].e") -#20410=@"loc,{#10000},11,1,11,22" -locations_default(#20410,#10000,11,1,11,22) -hasLocation(#20409,#20410) -enclosing_stmt(#20409,#20404) -expr_containers(#20409,#20001) -#20411=* -exprs(#20411,15,#20409,0,"a?.()[b?.().c?.().d]") -#20412=@"loc,{#10000},11,1,11,20" -locations_default(#20412,#10000,11,1,11,20) -hasLocation(#20411,#20412) -enclosing_stmt(#20411,#20404) -expr_containers(#20411,#20001) -#20413=* -exprs(#20413,13,#20411,0,"a?.()") -#20414=@"loc,{#10000},11,1,11,5" -locations_default(#20414,#10000,11,1,11,5) -hasLocation(#20413,#20414) -enclosing_stmt(#20413,#20404) -expr_containers(#20413,#20001) -#20415=* -exprs(#20415,79,#20413,-1,"a") -hasLocation(#20415,#20179) -enclosing_stmt(#20415,#20404) -expr_containers(#20415,#20001) -literals("a","a",#20415) -bind(#20415,#20338) -isOptionalChaining(#20413) +stmts(#20405,2,#20001,5,"a?.()[b ... ?.().f;") +hasLocation(#20405,#20023) +stmt_containers(#20405,#20001) +#20406=* +exprs(#20406,14,#20405,0,"a?.()[b ... e?.().f") +#20407=@"loc,{#10000},11,1,11,28" +locations_default(#20407,#10000,11,1,11,28) +hasLocation(#20406,#20407) +enclosing_stmt(#20406,#20405) +expr_containers(#20406,#20001) +#20408=* +exprs(#20408,13,#20406,0,"a?.()[b ... ].e?.()") +#20409=@"loc,{#10000},11,1,11,26" +locations_default(#20409,#10000,11,1,11,26) +hasLocation(#20408,#20409) +enclosing_stmt(#20408,#20405) +expr_containers(#20408,#20001) +#20410=* +exprs(#20410,14,#20408,-1,"a?.()[b ... ().d].e") +#20411=@"loc,{#10000},11,1,11,22" +locations_default(#20411,#10000,11,1,11,22) +hasLocation(#20410,#20411) +enclosing_stmt(#20410,#20405) +expr_containers(#20410,#20001) +#20412=* +exprs(#20412,15,#20410,0,"a?.()[b?.().c?.().d]") +#20413=@"loc,{#10000},11,1,11,20" +locations_default(#20413,#10000,11,1,11,20) +hasLocation(#20412,#20413) +enclosing_stmt(#20412,#20405) +expr_containers(#20412,#20001) +#20414=* +exprs(#20414,13,#20412,0,"a?.()") +#20415=@"loc,{#10000},11,1,11,5" +locations_default(#20415,#10000,11,1,11,5) +hasLocation(#20414,#20415) +enclosing_stmt(#20414,#20405) +expr_containers(#20414,#20001) #20416=* -exprs(#20416,14,#20411,1,"b?.().c?.().d") -#20417=@"loc,{#10000},11,7,11,19" -locations_default(#20417,#10000,11,7,11,19) -hasLocation(#20416,#20417) -enclosing_stmt(#20416,#20404) +exprs(#20416,79,#20414,-1,"a") +hasLocation(#20416,#20179) +enclosing_stmt(#20416,#20405) expr_containers(#20416,#20001) -#20418=* -exprs(#20418,13,#20416,0,"b?.().c?.()") -#20419=@"loc,{#10000},11,7,11,17" -locations_default(#20419,#10000,11,7,11,17) -hasLocation(#20418,#20419) -enclosing_stmt(#20418,#20404) -expr_containers(#20418,#20001) -#20420=* -exprs(#20420,14,#20418,-1,"b?.().c") -#20421=@"loc,{#10000},11,7,11,13" -locations_default(#20421,#10000,11,7,11,13) -hasLocation(#20420,#20421) -enclosing_stmt(#20420,#20404) -expr_containers(#20420,#20001) -#20422=* -exprs(#20422,13,#20420,0,"b?.()") -#20423=@"loc,{#10000},11,7,11,11" -locations_default(#20423,#10000,11,7,11,11) -hasLocation(#20422,#20423) -enclosing_stmt(#20422,#20404) -expr_containers(#20422,#20001) -#20424=* -exprs(#20424,79,#20422,-1,"b") -hasLocation(#20424,#20189) -enclosing_stmt(#20424,#20404) -expr_containers(#20424,#20001) -literals("b","b",#20424) -bind(#20424,#20399) -isOptionalChaining(#20422) +literals("a","a",#20416) +bind(#20416,#20339) +isOptionalChaining(#20414) +#20417=* +exprs(#20417,14,#20412,1,"b?.().c?.().d") +#20418=@"loc,{#10000},11,7,11,19" +locations_default(#20418,#10000,11,7,11,19) +hasLocation(#20417,#20418) +enclosing_stmt(#20417,#20405) +expr_containers(#20417,#20001) +#20419=* +exprs(#20419,13,#20417,0,"b?.().c?.()") +#20420=@"loc,{#10000},11,7,11,17" +locations_default(#20420,#10000,11,7,11,17) +hasLocation(#20419,#20420) +enclosing_stmt(#20419,#20405) +expr_containers(#20419,#20001) +#20421=* +exprs(#20421,14,#20419,-1,"b?.().c") +#20422=@"loc,{#10000},11,7,11,13" +locations_default(#20422,#10000,11,7,11,13) +hasLocation(#20421,#20422) +enclosing_stmt(#20421,#20405) +expr_containers(#20421,#20001) +#20423=* +exprs(#20423,13,#20421,0,"b?.()") +#20424=@"loc,{#10000},11,7,11,11" +locations_default(#20424,#10000,11,7,11,11) +hasLocation(#20423,#20424) +enclosing_stmt(#20423,#20405) +expr_containers(#20423,#20001) #20425=* -exprs(#20425,0,#20420,1,"c") -hasLocation(#20425,#20199) -enclosing_stmt(#20425,#20404) +exprs(#20425,79,#20423,-1,"b") +hasLocation(#20425,#20189) +enclosing_stmt(#20425,#20405) expr_containers(#20425,#20001) -literals("c","c",#20425) -isOptionalChaining(#20418) +literals("b","b",#20425) +bind(#20425,#20400) +isOptionalChaining(#20423) #20426=* -exprs(#20426,0,#20416,1,"d") -hasLocation(#20426,#20209) -enclosing_stmt(#20426,#20404) +exprs(#20426,0,#20421,1,"c") +hasLocation(#20426,#20199) +enclosing_stmt(#20426,#20405) expr_containers(#20426,#20001) -literals("d","d",#20426) +literals("c","c",#20426) +isOptionalChaining(#20419) #20427=* -exprs(#20427,0,#20409,1,"e") -hasLocation(#20427,#20215) -enclosing_stmt(#20427,#20404) +exprs(#20427,0,#20417,1,"d") +hasLocation(#20427,#20209) +enclosing_stmt(#20427,#20405) expr_containers(#20427,#20001) -literals("e","e",#20427) -isOptionalChaining(#20407) +literals("d","d",#20427) #20428=* -exprs(#20428,0,#20405,1,"f") -hasLocation(#20428,#20225) -enclosing_stmt(#20428,#20404) +exprs(#20428,0,#20410,1,"e") +hasLocation(#20428,#20215) +enclosing_stmt(#20428,#20405) expr_containers(#20428,#20001) -literals("f","f",#20428) +literals("e","e",#20428) +isOptionalChaining(#20408) #20429=* -stmts(#20429,3,#20001,6,"if (a?. ... alse;\n}") -#20430=@"loc,{#10000},13,1,17,1" -locations_default(#20430,#10000,13,1,17,1) -hasLocation(#20429,#20430) -stmt_containers(#20429,#20001) -#20431=* -exprs(#20431,14,#20429,0,"a?.b") -#20432=@"loc,{#10000},13,5,13,8" -locations_default(#20432,#10000,13,5,13,8) -hasLocation(#20431,#20432) -enclosing_stmt(#20431,#20429) -expr_containers(#20431,#20001) -#20433=* -exprs(#20433,79,#20431,0,"a") -hasLocation(#20433,#20233) -enclosing_stmt(#20433,#20429) -expr_containers(#20433,#20001) -literals("a","a",#20433) -bind(#20433,#20338) +exprs(#20429,0,#20406,1,"f") +hasLocation(#20429,#20225) +enclosing_stmt(#20429,#20405) +expr_containers(#20429,#20001) +literals("f","f",#20429) +#20430=* +stmts(#20430,3,#20001,6,"if (a?. ... alse;\n}") +#20431=@"loc,{#10000},13,1,17,1" +locations_default(#20431,#10000,13,1,17,1) +hasLocation(#20430,#20431) +stmt_containers(#20430,#20001) +#20432=* +exprs(#20432,14,#20430,0,"a?.b") +#20433=@"loc,{#10000},13,5,13,8" +locations_default(#20433,#10000,13,5,13,8) +hasLocation(#20432,#20433) +enclosing_stmt(#20432,#20430) +expr_containers(#20432,#20001) #20434=* -exprs(#20434,0,#20431,1,"b") -hasLocation(#20434,#20237) -enclosing_stmt(#20434,#20429) +exprs(#20434,79,#20432,0,"a") +hasLocation(#20434,#20233) +enclosing_stmt(#20434,#20430) expr_containers(#20434,#20001) -literals("b","b",#20434) -isOptionalChaining(#20431) +literals("a","a",#20434) +bind(#20434,#20339) #20435=* -stmts(#20435,1,#20429,1,"{\n true;\n}") -#20436=@"loc,{#10000},13,11,15,1" -locations_default(#20436,#10000,13,11,15,1) -hasLocation(#20435,#20436) -stmt_containers(#20435,#20001) -#20437=* -stmts(#20437,2,#20435,0,"true;") -#20438=@"loc,{#10000},14,5,14,9" -locations_default(#20438,#10000,14,5,14,9) -hasLocation(#20437,#20438) -stmt_containers(#20437,#20001) -#20439=* -exprs(#20439,2,#20437,0,"true") -hasLocation(#20439,#20243) -enclosing_stmt(#20439,#20437) -expr_containers(#20439,#20001) -literals("true","true",#20439) +exprs(#20435,0,#20432,1,"b") +hasLocation(#20435,#20237) +enclosing_stmt(#20435,#20430) +expr_containers(#20435,#20001) +literals("b","b",#20435) +isOptionalChaining(#20432) +#20436=* +stmts(#20436,1,#20430,1,"{\n true;\n}") +#20437=@"loc,{#10000},13,11,15,1" +locations_default(#20437,#10000,13,11,15,1) +hasLocation(#20436,#20437) +stmt_containers(#20436,#20001) +#20438=* +stmts(#20438,2,#20436,0,"true;") +#20439=@"loc,{#10000},14,5,14,9" +locations_default(#20439,#10000,14,5,14,9) +hasLocation(#20438,#20439) +stmt_containers(#20438,#20001) #20440=* -stmts(#20440,1,#20429,2,"{\n false;\n}") -#20441=@"loc,{#10000},15,8,17,1" -locations_default(#20441,#10000,15,8,17,1) -hasLocation(#20440,#20441) -stmt_containers(#20440,#20001) -#20442=* -stmts(#20442,2,#20440,0,"false;") -#20443=@"loc,{#10000},16,5,16,10" -locations_default(#20443,#10000,16,5,16,10) -hasLocation(#20442,#20443) -stmt_containers(#20442,#20001) -#20444=* -exprs(#20444,2,#20442,0,"false") -hasLocation(#20444,#20253) -enclosing_stmt(#20444,#20442) -expr_containers(#20444,#20001) -literals("false","false",#20444) +exprs(#20440,2,#20438,0,"true") +hasLocation(#20440,#20243) +enclosing_stmt(#20440,#20438) +expr_containers(#20440,#20001) +literals("true","true",#20440) +#20441=* +stmts(#20441,1,#20430,2,"{\n false;\n}") +#20442=@"loc,{#10000},15,8,17,1" +locations_default(#20442,#10000,15,8,17,1) +hasLocation(#20441,#20442) +stmt_containers(#20441,#20001) +#20443=* +stmts(#20443,2,#20441,0,"false;") +#20444=@"loc,{#10000},16,5,16,10" +locations_default(#20444,#10000,16,5,16,10) +hasLocation(#20443,#20444) +stmt_containers(#20443,#20001) #20445=* -stmts(#20445,3,#20001,7,"if (!a? ... alse;\n}") -#20446=@"loc,{#10000},19,1,23,1" -locations_default(#20446,#10000,19,1,23,1) -hasLocation(#20445,#20446) -stmt_containers(#20445,#20001) -#20447=* -exprs(#20447,18,#20445,0,"!a?.b") -#20448=@"loc,{#10000},19,5,19,9" -locations_default(#20448,#10000,19,5,19,9) -hasLocation(#20447,#20448) -enclosing_stmt(#20447,#20445) -expr_containers(#20447,#20001) -#20449=* -exprs(#20449,14,#20447,0,"a?.b") -#20450=@"loc,{#10000},19,6,19,9" -locations_default(#20450,#10000,19,6,19,9) -hasLocation(#20449,#20450) -enclosing_stmt(#20449,#20445) -expr_containers(#20449,#20001) -#20451=* -exprs(#20451,79,#20449,0,"a") -hasLocation(#20451,#20264) -enclosing_stmt(#20451,#20445) -expr_containers(#20451,#20001) -literals("a","a",#20451) -bind(#20451,#20338) +exprs(#20445,2,#20443,0,"false") +hasLocation(#20445,#20253) +enclosing_stmt(#20445,#20443) +expr_containers(#20445,#20001) +literals("false","false",#20445) +#20446=* +stmts(#20446,3,#20001,7,"if (!a? ... alse;\n}") +#20447=@"loc,{#10000},19,1,23,1" +locations_default(#20447,#10000,19,1,23,1) +hasLocation(#20446,#20447) +stmt_containers(#20446,#20001) +#20448=* +exprs(#20448,18,#20446,0,"!a?.b") +#20449=@"loc,{#10000},19,5,19,9" +locations_default(#20449,#10000,19,5,19,9) +hasLocation(#20448,#20449) +enclosing_stmt(#20448,#20446) +expr_containers(#20448,#20001) +#20450=* +exprs(#20450,14,#20448,0,"a?.b") +#20451=@"loc,{#10000},19,6,19,9" +locations_default(#20451,#10000,19,6,19,9) +hasLocation(#20450,#20451) +enclosing_stmt(#20450,#20446) +expr_containers(#20450,#20001) #20452=* -exprs(#20452,0,#20449,1,"b") -hasLocation(#20452,#20268) -enclosing_stmt(#20452,#20445) +exprs(#20452,79,#20450,0,"a") +hasLocation(#20452,#20264) +enclosing_stmt(#20452,#20446) expr_containers(#20452,#20001) -literals("b","b",#20452) -isOptionalChaining(#20449) +literals("a","a",#20452) +bind(#20452,#20339) #20453=* -stmts(#20453,1,#20445,1,"{\n true;\n}") -#20454=@"loc,{#10000},19,12,21,1" -locations_default(#20454,#10000,19,12,21,1) -hasLocation(#20453,#20454) -stmt_containers(#20453,#20001) -#20455=* -stmts(#20455,2,#20453,0,"true;") -#20456=@"loc,{#10000},20,5,20,9" -locations_default(#20456,#10000,20,5,20,9) -hasLocation(#20455,#20456) -stmt_containers(#20455,#20001) -#20457=* -exprs(#20457,2,#20455,0,"true") -hasLocation(#20457,#20274) -enclosing_stmt(#20457,#20455) -expr_containers(#20457,#20001) -literals("true","true",#20457) +exprs(#20453,0,#20450,1,"b") +hasLocation(#20453,#20268) +enclosing_stmt(#20453,#20446) +expr_containers(#20453,#20001) +literals("b","b",#20453) +isOptionalChaining(#20450) +#20454=* +stmts(#20454,1,#20446,1,"{\n true;\n}") +#20455=@"loc,{#10000},19,12,21,1" +locations_default(#20455,#10000,19,12,21,1) +hasLocation(#20454,#20455) +stmt_containers(#20454,#20001) +#20456=* +stmts(#20456,2,#20454,0,"true;") +#20457=@"loc,{#10000},20,5,20,9" +locations_default(#20457,#10000,20,5,20,9) +hasLocation(#20456,#20457) +stmt_containers(#20456,#20001) #20458=* -stmts(#20458,1,#20445,2,"{\n false;\n}") -#20459=@"loc,{#10000},21,8,23,1" -locations_default(#20459,#10000,21,8,23,1) -hasLocation(#20458,#20459) -stmt_containers(#20458,#20001) -#20460=* -stmts(#20460,2,#20458,0,"false;") -#20461=@"loc,{#10000},22,5,22,10" -locations_default(#20461,#10000,22,5,22,10) -hasLocation(#20460,#20461) -stmt_containers(#20460,#20001) -#20462=* -exprs(#20462,2,#20460,0,"false") -hasLocation(#20462,#20284) -enclosing_stmt(#20462,#20460) -expr_containers(#20462,#20001) -literals("false","false",#20462) +exprs(#20458,2,#20456,0,"true") +hasLocation(#20458,#20274) +enclosing_stmt(#20458,#20456) +expr_containers(#20458,#20001) +literals("true","true",#20458) +#20459=* +stmts(#20459,1,#20446,2,"{\n false;\n}") +#20460=@"loc,{#10000},21,8,23,1" +locations_default(#20460,#10000,21,8,23,1) +hasLocation(#20459,#20460) +stmt_containers(#20459,#20001) +#20461=* +stmts(#20461,2,#20459,0,"false;") +#20462=@"loc,{#10000},22,5,22,10" +locations_default(#20462,#10000,22,5,22,10) +hasLocation(#20461,#20462) +stmt_containers(#20461,#20001) #20463=* -stmts(#20463,3,#20001,8,"if (a?. ... alse;\n}") -#20464=@"loc,{#10000},25,1,29,1" -locations_default(#20464,#10000,25,1,29,1) -hasLocation(#20463,#20464) -stmt_containers(#20463,#20001) -#20465=* -exprs(#20465,44,#20463,0,"a?.b && c?.d") -#20466=@"loc,{#10000},25,5,25,16" -locations_default(#20466,#10000,25,5,25,16) -hasLocation(#20465,#20466) -enclosing_stmt(#20465,#20463) -expr_containers(#20465,#20001) -#20467=* -exprs(#20467,14,#20465,0,"a?.b") -#20468=@"loc,{#10000},25,5,25,8" -locations_default(#20468,#10000,25,5,25,8) -hasLocation(#20467,#20468) -enclosing_stmt(#20467,#20463) -expr_containers(#20467,#20001) -#20469=* -exprs(#20469,79,#20467,0,"a") -hasLocation(#20469,#20293) -enclosing_stmt(#20469,#20463) -expr_containers(#20469,#20001) -literals("a","a",#20469) -bind(#20469,#20338) +exprs(#20463,2,#20461,0,"false") +hasLocation(#20463,#20284) +enclosing_stmt(#20463,#20461) +expr_containers(#20463,#20001) +literals("false","false",#20463) +#20464=* +stmts(#20464,3,#20001,8,"if (a?. ... alse;\n}") +#20465=@"loc,{#10000},25,1,29,1" +locations_default(#20465,#10000,25,1,29,1) +hasLocation(#20464,#20465) +stmt_containers(#20464,#20001) +#20466=* +exprs(#20466,44,#20464,0,"a?.b && c?.d") +#20467=@"loc,{#10000},25,5,25,16" +locations_default(#20467,#10000,25,5,25,16) +hasLocation(#20466,#20467) +enclosing_stmt(#20466,#20464) +expr_containers(#20466,#20001) +#20468=* +exprs(#20468,14,#20466,0,"a?.b") +#20469=@"loc,{#10000},25,5,25,8" +locations_default(#20469,#10000,25,5,25,8) +hasLocation(#20468,#20469) +enclosing_stmt(#20468,#20464) +expr_containers(#20468,#20001) #20470=* -exprs(#20470,0,#20467,1,"b") -hasLocation(#20470,#20297) -enclosing_stmt(#20470,#20463) +exprs(#20470,79,#20468,0,"a") +hasLocation(#20470,#20293) +enclosing_stmt(#20470,#20464) expr_containers(#20470,#20001) -literals("b","b",#20470) -isOptionalChaining(#20467) +literals("a","a",#20470) +bind(#20470,#20339) #20471=* -exprs(#20471,14,#20465,1,"c?.d") -#20472=@"loc,{#10000},25,13,25,16" -locations_default(#20472,#10000,25,13,25,16) -hasLocation(#20471,#20472) -enclosing_stmt(#20471,#20463) +exprs(#20471,0,#20468,1,"b") +hasLocation(#20471,#20297) +enclosing_stmt(#20471,#20464) expr_containers(#20471,#20001) -#20473=* -exprs(#20473,79,#20471,0,"c") -hasLocation(#20473,#20301) -enclosing_stmt(#20473,#20463) -expr_containers(#20473,#20001) -literals("c","c",#20473) -#20474=@"var;{c};{#20000}" -variables(#20474,"c",#20000) -bind(#20473,#20474) -#20475=* -exprs(#20475,0,#20471,1,"d") -hasLocation(#20475,#20305) -enclosing_stmt(#20475,#20463) -expr_containers(#20475,#20001) -literals("d","d",#20475) -isOptionalChaining(#20471) +literals("b","b",#20471) +isOptionalChaining(#20468) +#20472=* +exprs(#20472,14,#20466,1,"c?.d") +#20473=@"loc,{#10000},25,13,25,16" +locations_default(#20473,#10000,25,13,25,16) +hasLocation(#20472,#20473) +enclosing_stmt(#20472,#20464) +expr_containers(#20472,#20001) +#20474=* +exprs(#20474,79,#20472,0,"c") +hasLocation(#20474,#20301) +enclosing_stmt(#20474,#20464) +expr_containers(#20474,#20001) +literals("c","c",#20474) +#20475=@"var;{c};{#20000}" +variables(#20475,"c",#20000) +bind(#20474,#20475) #20476=* -stmts(#20476,1,#20463,1,"{\n true;\n}") -#20477=@"loc,{#10000},25,19,27,1" -locations_default(#20477,#10000,25,19,27,1) -hasLocation(#20476,#20477) -stmt_containers(#20476,#20001) -#20478=* -stmts(#20478,2,#20476,0,"true;") -#20479=@"loc,{#10000},26,5,26,9" -locations_default(#20479,#10000,26,5,26,9) -hasLocation(#20478,#20479) -stmt_containers(#20478,#20001) -#20480=* -exprs(#20480,2,#20478,0,"true") -hasLocation(#20480,#20311) -enclosing_stmt(#20480,#20478) -expr_containers(#20480,#20001) -literals("true","true",#20480) +exprs(#20476,0,#20472,1,"d") +hasLocation(#20476,#20305) +enclosing_stmt(#20476,#20464) +expr_containers(#20476,#20001) +literals("d","d",#20476) +isOptionalChaining(#20472) +#20477=* +stmts(#20477,1,#20464,1,"{\n true;\n}") +#20478=@"loc,{#10000},25,19,27,1" +locations_default(#20478,#10000,25,19,27,1) +hasLocation(#20477,#20478) +stmt_containers(#20477,#20001) +#20479=* +stmts(#20479,2,#20477,0,"true;") +#20480=@"loc,{#10000},26,5,26,9" +locations_default(#20480,#10000,26,5,26,9) +hasLocation(#20479,#20480) +stmt_containers(#20479,#20001) #20481=* -stmts(#20481,1,#20463,2,"{\n false;\n}") -#20482=@"loc,{#10000},27,8,29,1" -locations_default(#20482,#10000,27,8,29,1) -hasLocation(#20481,#20482) -stmt_containers(#20481,#20001) -#20483=* -stmts(#20483,2,#20481,0,"false;") -#20484=@"loc,{#10000},28,5,28,10" -locations_default(#20484,#10000,28,5,28,10) -hasLocation(#20483,#20484) -stmt_containers(#20483,#20001) -#20485=* -exprs(#20485,2,#20483,0,"false") -hasLocation(#20485,#20321) -enclosing_stmt(#20485,#20483) -expr_containers(#20485,#20001) -literals("false","false",#20485) +exprs(#20481,2,#20479,0,"true") +hasLocation(#20481,#20311) +enclosing_stmt(#20481,#20479) +expr_containers(#20481,#20001) +literals("true","true",#20481) +#20482=* +stmts(#20482,1,#20464,2,"{\n false;\n}") +#20483=@"loc,{#10000},27,8,29,1" +locations_default(#20483,#10000,27,8,29,1) +hasLocation(#20482,#20483) +stmt_containers(#20482,#20001) +#20484=* +stmts(#20484,2,#20482,0,"false;") +#20485=@"loc,{#10000},28,5,28,10" +locations_default(#20485,#10000,28,5,28,10) +hasLocation(#20484,#20485) +stmt_containers(#20484,#20001) #20486=* -entry_cfg_node(#20486,#20001) -#20487=@"loc,{#10000},1,1,1,0" -locations_default(#20487,#10000,1,1,1,0) -hasLocation(#20486,#20487) -#20488=* -exit_cfg_node(#20488,#20001) -hasLocation(#20488,#20326) -successor(#20463,#20465) -successor(#20465,#20469) -successor(#20470,#20467) -successor(#20469,#20470) +exprs(#20486,2,#20484,0,"false") +hasLocation(#20486,#20321) +enclosing_stmt(#20486,#20484) +expr_containers(#20486,#20001) +literals("false","false",#20486) +#20487=* +entry_cfg_node(#20487,#20001) +#20488=@"loc,{#10000},1,1,1,0" +locations_default(#20488,#10000,1,1,1,0) +hasLocation(#20487,#20488) #20489=* -guard_node(#20489,1,#20467) -hasLocation(#20489,#20468) -successor(#20489,#20473) +exit_cfg_node(#20489,#20001) +hasLocation(#20489,#20326) +successor(#20464,#20466) +successor(#20466,#20470) +successor(#20471,#20468) +successor(#20470,#20471) #20490=* -guard_node(#20490,0,#20467) -hasLocation(#20490,#20468) -successor(#20490,#20481) -successor(#20467,#20489) -successor(#20467,#20490) -successor(#20469,#20481) -successor(#20475,#20471) -successor(#20473,#20475) +guard_node(#20490,1,#20468) +hasLocation(#20490,#20469) +successor(#20490,#20474) #20491=* -guard_node(#20491,1,#20471) -hasLocation(#20491,#20472) -successor(#20491,#20476) +guard_node(#20491,0,#20468) +hasLocation(#20491,#20469) +successor(#20491,#20482) +successor(#20468,#20490) +successor(#20468,#20491) +successor(#20470,#20482) +successor(#20476,#20472) +successor(#20474,#20476) #20492=* -guard_node(#20492,0,#20471) -hasLocation(#20492,#20472) -successor(#20492,#20481) -successor(#20471,#20491) -successor(#20471,#20492) -successor(#20473,#20481) -successor(#20478,#20480) -successor(#20480,#20488) -successor(#20476,#20478) -successor(#20483,#20485) -successor(#20485,#20488) -successor(#20481,#20483) -successor(#20445,#20451) -successor(#20452,#20449) -successor(#20451,#20452) -successor(#20449,#20447) -successor(#20451,#20447) +guard_node(#20492,1,#20472) +hasLocation(#20492,#20473) +successor(#20492,#20477) #20493=* -guard_node(#20493,0,#20449) -hasLocation(#20493,#20450) -successor(#20493,#20453) +guard_node(#20493,0,#20472) +hasLocation(#20493,#20473) +successor(#20493,#20482) +successor(#20472,#20492) +successor(#20472,#20493) +successor(#20474,#20482) +successor(#20479,#20481) +successor(#20481,#20489) +successor(#20477,#20479) +successor(#20484,#20486) +successor(#20486,#20489) +successor(#20482,#20484) +successor(#20446,#20452) +successor(#20453,#20450) +successor(#20452,#20453) +successor(#20450,#20448) +successor(#20452,#20448) #20494=* -guard_node(#20494,1,#20449) -hasLocation(#20494,#20450) -successor(#20494,#20458) -successor(#20447,#20493) -successor(#20447,#20494) -successor(#20455,#20457) -successor(#20457,#20463) -successor(#20453,#20455) -successor(#20460,#20462) -successor(#20462,#20463) -successor(#20458,#20460) -successor(#20429,#20433) -successor(#20434,#20431) -successor(#20433,#20434) +guard_node(#20494,0,#20450) +hasLocation(#20494,#20451) +successor(#20494,#20454) #20495=* -guard_node(#20495,1,#20431) -hasLocation(#20495,#20432) -successor(#20495,#20435) +guard_node(#20495,1,#20450) +hasLocation(#20495,#20451) +successor(#20495,#20459) +successor(#20448,#20494) +successor(#20448,#20495) +successor(#20456,#20458) +successor(#20458,#20464) +successor(#20454,#20456) +successor(#20461,#20463) +successor(#20463,#20464) +successor(#20459,#20461) +successor(#20430,#20434) +successor(#20435,#20432) +successor(#20434,#20435) #20496=* -guard_node(#20496,0,#20431) -hasLocation(#20496,#20432) -successor(#20496,#20440) -successor(#20431,#20495) -successor(#20431,#20496) -successor(#20433,#20440) -successor(#20437,#20439) -successor(#20439,#20445) -successor(#20435,#20437) -successor(#20442,#20444) -successor(#20444,#20445) -successor(#20440,#20442) -successor(#20404,#20415) -successor(#20428,#20405) -successor(#20427,#20409) -successor(#20426,#20416) -successor(#20425,#20420) -successor(#20424,#20422) -successor(#20422,#20425) -successor(#20424,#20411) -successor(#20420,#20418) -successor(#20418,#20426) -successor(#20420,#20411) -successor(#20416,#20411) -successor(#20415,#20413) -successor(#20413,#20424) -successor(#20415,#20429) -successor(#20411,#20427) -successor(#20409,#20407) -successor(#20407,#20428) -successor(#20409,#20429) -successor(#20405,#20429) -successor(#20386,#20393) -successor(#20403,#20387) -successor(#20402,#20389) -successor(#20401,#20394) -successor(#20400,#20396) -successor(#20398,#20400) -successor(#20396,#20401) -successor(#20398,#20391) -successor(#20394,#20391) -successor(#20396,#20391) -successor(#20393,#20398) -successor(#20391,#20402) -successor(#20393,#20404) -successor(#20389,#20403) -successor(#20387,#20404) -successor(#20389,#20404) -successor(#20373,#20376) -successor(#20385,#20374) -successor(#20376,#20382) -successor(#20384,#20378) -successor(#20383,#20380) -successor(#20382,#20383) -successor(#20380,#20384) -successor(#20382,#20385) -successor(#20378,#20385) -successor(#20374,#20386) -successor(#20363,#20366) -successor(#20372,#20364) -successor(#20366,#20370) -successor(#20371,#20368) -successor(#20370,#20371) -successor(#20368,#20372) -successor(#20370,#20372) -successor(#20364,#20373) -successor(#20346,#20357) -successor(#20362,#20347) -successor(#20361,#20349) -successor(#20360,#20351) -successor(#20359,#20353) -successor(#20358,#20355) -successor(#20357,#20358) -successor(#20355,#20359) -successor(#20357,#20363) -successor(#20353,#20360) -successor(#20351,#20361) -successor(#20349,#20362) -successor(#20351,#20363) -successor(#20347,#20363) -successor(#20328,#20337) -successor(#20345,#20329) -successor(#20343,#20341) -successor(#20341,#20331) -successor(#20340,#20333) -successor(#20339,#20335) -successor(#20337,#20339) -successor(#20335,#20340) -successor(#20337,#20346) -successor(#20333,#20343) -successor(#20331,#20345) -successor(#20329,#20346) -successor(#20486,#20328) +guard_node(#20496,1,#20432) +hasLocation(#20496,#20433) +successor(#20496,#20436) +#20497=* +guard_node(#20497,0,#20432) +hasLocation(#20497,#20433) +successor(#20497,#20441) +successor(#20432,#20496) +successor(#20432,#20497) +successor(#20434,#20441) +successor(#20438,#20440) +successor(#20440,#20446) +successor(#20436,#20438) +successor(#20443,#20445) +successor(#20445,#20446) +successor(#20441,#20443) +successor(#20405,#20416) +successor(#20429,#20406) +successor(#20428,#20410) +successor(#20427,#20417) +successor(#20426,#20421) +successor(#20425,#20423) +successor(#20423,#20426) +successor(#20425,#20412) +successor(#20421,#20419) +successor(#20419,#20427) +successor(#20421,#20412) +successor(#20417,#20412) +successor(#20416,#20414) +successor(#20414,#20425) +successor(#20416,#20430) +successor(#20412,#20428) +successor(#20410,#20408) +successor(#20408,#20429) +successor(#20410,#20430) +successor(#20406,#20430) +successor(#20387,#20394) +successor(#20404,#20388) +successor(#20403,#20390) +successor(#20402,#20395) +successor(#20401,#20397) +successor(#20399,#20401) +successor(#20397,#20402) +successor(#20399,#20392) +successor(#20395,#20392) +successor(#20397,#20392) +successor(#20394,#20399) +successor(#20392,#20403) +successor(#20394,#20405) +successor(#20390,#20404) +successor(#20388,#20405) +successor(#20390,#20405) +successor(#20374,#20377) +successor(#20386,#20375) +successor(#20377,#20383) +successor(#20385,#20379) +successor(#20384,#20381) +successor(#20383,#20384) +successor(#20381,#20385) +successor(#20383,#20386) +successor(#20379,#20386) +successor(#20375,#20387) +successor(#20364,#20367) +successor(#20373,#20365) +successor(#20367,#20371) +successor(#20372,#20369) +successor(#20371,#20372) +successor(#20369,#20373) +successor(#20371,#20373) +successor(#20365,#20374) +successor(#20347,#20358) +successor(#20363,#20348) +successor(#20362,#20350) +successor(#20361,#20352) +successor(#20360,#20354) +successor(#20359,#20356) +successor(#20358,#20359) +successor(#20356,#20360) +successor(#20358,#20364) +successor(#20354,#20361) +successor(#20352,#20362) +successor(#20350,#20363) +successor(#20352,#20364) +successor(#20348,#20364) +successor(#20329,#20338) +successor(#20346,#20330) +successor(#20344,#20342) +successor(#20342,#20332) +successor(#20341,#20334) +successor(#20340,#20336) +successor(#20338,#20340) +successor(#20336,#20341) +successor(#20338,#20347) +successor(#20334,#20344) +successor(#20332,#20346) +successor(#20330,#20347) +successor(#20487,#20329) numlines(#10000,29,21,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/top-level-await.js.trap b/javascript/extractor/tests/esnext/output/trap/top-level-await.js.trap index 1b436f9a6b8f..f057961bfc7a 100644 --- a/javascript/extractor/tests/esnext/output/trap/top-level-await.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/top-level-await.js.trap @@ -158,112 +158,114 @@ variables(#20054,"language",#20053) variables(#20057,"strings",#20053) local_type_names(#20055,"language",#20053) local_namespace_names(#20056,"language",#20053) -#20058=* -stmts(#20058,27,#20001,0,"import ... tings';") -hasLocation(#20058,#20003) -stmt_containers(#20058,#20001) +#20058=@"var;{this};{#20053}" +variables(#20058,"this",#20053) #20059=* -exprs(#20059,4,#20058,-1,"'settings'") -hasLocation(#20059,#20017) -enclosing_stmt(#20059,#20058) -expr_containers(#20059,#20001) -literals("settings","'settings'",#20059) +stmts(#20059,27,#20001,0,"import ... tings';") +hasLocation(#20059,#20003) +stmt_containers(#20059,#20001) #20060=* -regexpterm(#20060,14,#20059,0,"settings") -#20061=@"loc,{#10000},1,27,1,34" -locations_default(#20061,#10000,1,27,1,34) -hasLocation(#20060,#20061) -regexp_const_value(#20060,"settings") -#20062=* -exprs(#20062,83,#20058,0,"language") -hasLocation(#20062,#20011) -enclosing_stmt(#20062,#20058) -expr_containers(#20062,#20001) +exprs(#20060,4,#20059,-1,"'settings'") +hasLocation(#20060,#20017) +enclosing_stmt(#20060,#20059) +expr_containers(#20060,#20001) +literals("settings","'settings'",#20060) +#20061=* +regexpterm(#20061,14,#20060,0,"settings") +#20062=@"loc,{#10000},1,27,1,34" +locations_default(#20062,#10000,1,27,1,34) +hasLocation(#20061,#20062) +regexp_const_value(#20061,"settings") #20063=* -exprs(#20063,0,#20062,0,"language") +exprs(#20063,83,#20059,0,"language") hasLocation(#20063,#20011) -enclosing_stmt(#20063,#20058) +enclosing_stmt(#20063,#20059) expr_containers(#20063,#20001) -literals("language","language",#20063) #20064=* -exprs(#20064,78,#20062,1,"language") +exprs(#20064,0,#20063,0,"language") hasLocation(#20064,#20011) -enclosing_stmt(#20064,#20058) +enclosing_stmt(#20064,#20059) expr_containers(#20064,#20001) literals("language","language",#20064) -decl(#20064,#20054) -typedecl(#20064,#20055) -namespacedecl(#20064,#20056) #20065=* -stmts(#20065,22,#20001,1,"const s ... age}`);") -hasLocation(#20065,#20005) -stmt_containers(#20065,#20001) +exprs(#20065,78,#20063,1,"language") +hasLocation(#20065,#20011) +enclosing_stmt(#20065,#20059) +expr_containers(#20065,#20001) +literals("language","language",#20065) +decl(#20065,#20054) +typedecl(#20065,#20055) +namespacedecl(#20065,#20056) #20066=* -exprs(#20066,64,#20065,0,"strings ... uage}`)") -#20067=@"loc,{#10000},2,7,2,50" -locations_default(#20067,#10000,2,7,2,50) -hasLocation(#20066,#20067) -enclosing_stmt(#20066,#20065) -expr_containers(#20066,#20001) -#20068=* -exprs(#20068,78,#20066,0,"strings") -hasLocation(#20068,#20023) -enclosing_stmt(#20068,#20065) -expr_containers(#20068,#20001) -literals("strings","strings",#20068) -decl(#20068,#20057) +stmts(#20066,22,#20001,1,"const s ... age}`);") +hasLocation(#20066,#20005) +stmt_containers(#20066,#20001) +#20067=* +exprs(#20067,64,#20066,0,"strings ... uage}`)") +#20068=@"loc,{#10000},2,7,2,50" +locations_default(#20068,#10000,2,7,2,50) +hasLocation(#20067,#20068) +enclosing_stmt(#20067,#20066) +expr_containers(#20067,#20001) #20069=* -exprs(#20069,92,#20066,1,"await i ... uage}`)") -#20070=@"loc,{#10000},2,17,2,50" -locations_default(#20070,#10000,2,17,2,50) -hasLocation(#20069,#20070) -enclosing_stmt(#20069,#20065) +exprs(#20069,78,#20067,0,"strings") +hasLocation(#20069,#20023) +enclosing_stmt(#20069,#20066) expr_containers(#20069,#20001) -#20071=* -exprs(#20071,99,#20069,0,"import( ... uage}`)") -#20072=@"loc,{#10000},2,23,2,50" -locations_default(#20072,#10000,2,23,2,50) -hasLocation(#20071,#20072) -enclosing_stmt(#20071,#20065) -expr_containers(#20071,#20001) -#20073=* -exprs(#20073,71,#20071,0,"`./i18n/${language}`") -#20074=@"loc,{#10000},2,30,2,49" -locations_default(#20074,#10000,2,30,2,49) -hasLocation(#20073,#20074) -enclosing_stmt(#20073,#20065) -expr_containers(#20073,#20001) -#20075=* -exprs(#20075,72,#20073,0,"./i18n/") -hasLocation(#20075,#20035) -enclosing_stmt(#20075,#20065) -expr_containers(#20075,#20001) -literals("./i18n/","./i18n/",#20075) +literals("strings","strings",#20069) +decl(#20069,#20057) +#20070=* +exprs(#20070,92,#20067,1,"await i ... uage}`)") +#20071=@"loc,{#10000},2,17,2,50" +locations_default(#20071,#10000,2,17,2,50) +hasLocation(#20070,#20071) +enclosing_stmt(#20070,#20066) +expr_containers(#20070,#20001) +#20072=* +exprs(#20072,99,#20070,0,"import( ... uage}`)") +#20073=@"loc,{#10000},2,23,2,50" +locations_default(#20073,#10000,2,23,2,50) +hasLocation(#20072,#20073) +enclosing_stmt(#20072,#20066) +expr_containers(#20072,#20001) +#20074=* +exprs(#20074,71,#20072,0,"`./i18n/${language}`") +#20075=@"loc,{#10000},2,30,2,49" +locations_default(#20075,#10000,2,30,2,49) +hasLocation(#20074,#20075) +enclosing_stmt(#20074,#20066) +expr_containers(#20074,#20001) #20076=* -exprs(#20076,79,#20073,1,"language") -hasLocation(#20076,#20039) -enclosing_stmt(#20076,#20065) +exprs(#20076,72,#20074,0,"./i18n/") +hasLocation(#20076,#20035) +enclosing_stmt(#20076,#20066) expr_containers(#20076,#20001) -literals("language","language",#20076) -bind(#20076,#20054) +literals("./i18n/","./i18n/",#20076) #20077=* -entry_cfg_node(#20077,#20001) -#20078=@"loc,{#10000},1,1,1,0" -locations_default(#20078,#10000,1,1,1,0) -hasLocation(#20077,#20078) -#20079=* -exit_cfg_node(#20079,#20001) -hasLocation(#20079,#20051) -successor(#20065,#20068) -successor(#20073,#20075) -successor(#20076,#20071) -successor(#20075,#20076) -successor(#20071,#20069) -successor(#20069,#20066) -successor(#20068,#20073) -successor(#20066,#20079) -successor(#20058,#20065) -successor(#20062,#20058) -successor(#20077,#20062) +exprs(#20077,79,#20074,1,"language") +hasLocation(#20077,#20039) +enclosing_stmt(#20077,#20066) +expr_containers(#20077,#20001) +literals("language","language",#20077) +bind(#20077,#20054) +#20078=* +entry_cfg_node(#20078,#20001) +#20079=@"loc,{#10000},1,1,1,0" +locations_default(#20079,#10000,1,1,1,0) +hasLocation(#20078,#20079) +#20080=* +exit_cfg_node(#20080,#20001) +hasLocation(#20080,#20051) +successor(#20066,#20069) +successor(#20074,#20076) +successor(#20077,#20072) +successor(#20076,#20077) +successor(#20072,#20070) +successor(#20070,#20067) +successor(#20069,#20074) +successor(#20067,#20080) +successor(#20059,#20066) +successor(#20063,#20059) +successor(#20078,#20063) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/esnext/output/trap/yield-import.js.trap b/javascript/extractor/tests/esnext/output/trap/yield-import.js.trap index 8a2a95ffc208..b7ea932ad325 100644 --- a/javascript/extractor/tests/esnext/output/trap/yield-import.js.trap +++ b/javascript/extractor/tests/esnext/output/trap/yield-import.js.trap @@ -98,86 +98,90 @@ locations_default(#20033,#10000,1,1,4,0) hasLocation(#20001,#20033) #20034=@"var;{f};{#20000}" variables(#20034,"f",#20000) -#20035=* -stmts(#20035,17,#20001,0,"functio ... foo"")\n}") -#20036=@"loc,{#10000},1,1,3,1" -locations_default(#20036,#10000,1,1,3,1) -hasLocation(#20035,#20036) -stmt_containers(#20035,#20001) -#20037=* -exprs(#20037,78,#20035,-1,"f") -hasLocation(#20037,#20013) -expr_containers(#20037,#20035) -literals("f","f",#20037) -decl(#20037,#20034) +#20035=@"var;{this};{#20000}" +variables(#20035,"this",#20000) +#20036=* +stmts(#20036,17,#20001,0,"functio ... foo"")\n}") +#20037=@"loc,{#10000},1,1,3,1" +locations_default(#20037,#10000,1,1,3,1) +hasLocation(#20036,#20037) +stmt_containers(#20036,#20001) #20038=* -scopes(#20038,1) -scopenodes(#20035,#20038) -scopenesting(#20038,#20000) -#20039=@"var;{arguments};{#20038}" -variables(#20039,"arguments",#20038) -is_arguments_object(#20039) -is_generator(#20035) -#20040=* -stmts(#20040,1,#20035,-2,"{\n yie ... foo"")\n}") -#20041=@"loc,{#10000},1,15,3,1" -locations_default(#20041,#10000,1,15,3,1) -hasLocation(#20040,#20041) -stmt_containers(#20040,#20035) +exprs(#20038,78,#20036,-1,"f") +hasLocation(#20038,#20013) +expr_containers(#20038,#20036) +literals("f","f",#20038) +decl(#20038,#20034) +#20039=* +scopes(#20039,1) +scopenodes(#20036,#20039) +scopenesting(#20039,#20000) +#20040=@"var;{this};{#20039}" +variables(#20040,"this",#20039) +#20041=@"var;{arguments};{#20039}" +variables(#20041,"arguments",#20039) +is_arguments_object(#20041) +is_generator(#20036) #20042=* -stmts(#20042,2,#20040,0,"yield import(""foo"")") -#20043=@"loc,{#10000},2,3,2,21" -locations_default(#20043,#10000,2,3,2,21) +stmts(#20042,1,#20036,-2,"{\n yie ... foo"")\n}") +#20043=@"loc,{#10000},1,15,3,1" +locations_default(#20043,#10000,1,15,3,1) hasLocation(#20042,#20043) -stmt_containers(#20042,#20035) +stmt_containers(#20042,#20036) #20044=* -exprs(#20044,69,#20042,0,"yield import(""foo"")") -hasLocation(#20044,#20043) -enclosing_stmt(#20044,#20042) -expr_containers(#20044,#20035) -#20045=* -exprs(#20045,99,#20044,0,"import(""foo"")") -#20046=@"loc,{#10000},2,9,2,21" -locations_default(#20046,#10000,2,9,2,21) -hasLocation(#20045,#20046) -enclosing_stmt(#20045,#20042) -expr_containers(#20045,#20035) +stmts(#20044,2,#20042,0,"yield import(""foo"")") +#20045=@"loc,{#10000},2,3,2,21" +locations_default(#20045,#10000,2,3,2,21) +hasLocation(#20044,#20045) +stmt_containers(#20044,#20036) +#20046=* +exprs(#20046,69,#20044,0,"yield import(""foo"")") +hasLocation(#20046,#20045) +enclosing_stmt(#20046,#20044) +expr_containers(#20046,#20036) #20047=* -exprs(#20047,4,#20045,0,"""foo""") -hasLocation(#20047,#20027) -enclosing_stmt(#20047,#20042) -expr_containers(#20047,#20035) -literals("foo","""foo""",#20047) -#20048=* -regexpterm(#20048,14,#20047,0,"foo") -#20049=@"loc,{#10000},2,17,2,19" -locations_default(#20049,#10000,2,17,2,19) -hasLocation(#20048,#20049) -regexp_const_value(#20048,"foo") +exprs(#20047,99,#20046,0,"import(""foo"")") +#20048=@"loc,{#10000},2,9,2,21" +locations_default(#20048,#10000,2,9,2,21) +hasLocation(#20047,#20048) +enclosing_stmt(#20047,#20044) +expr_containers(#20047,#20036) +#20049=* +exprs(#20049,4,#20047,0,"""foo""") +hasLocation(#20049,#20027) +enclosing_stmt(#20049,#20044) +expr_containers(#20049,#20036) +literals("foo","""foo""",#20049) #20050=* -entry_cfg_node(#20050,#20001) -#20051=@"loc,{#10000},1,1,1,0" -locations_default(#20051,#10000,1,1,1,0) +regexpterm(#20050,14,#20049,0,"foo") +#20051=@"loc,{#10000},2,17,2,19" +locations_default(#20051,#10000,2,17,2,19) hasLocation(#20050,#20051) +regexp_const_value(#20050,"foo") #20052=* -exit_cfg_node(#20052,#20001) -hasLocation(#20052,#20032) -successor(#20035,#20052) -#20053=* -entry_cfg_node(#20053,#20035) -hasLocation(#20053,#20051) +entry_cfg_node(#20052,#20001) +#20053=@"loc,{#10000},1,1,1,0" +locations_default(#20053,#10000,1,1,1,0) +hasLocation(#20052,#20053) #20054=* -exit_cfg_node(#20054,#20035) -#20055=@"loc,{#10000},3,2,3,1" -locations_default(#20055,#10000,3,2,3,1) -hasLocation(#20054,#20055) -successor(#20042,#20047) -successor(#20047,#20045) -successor(#20045,#20044) -successor(#20044,#20054) -successor(#20040,#20042) -successor(#20053,#20040) -successor(#20037,#20035) -successor(#20050,#20037) +exit_cfg_node(#20054,#20001) +hasLocation(#20054,#20032) +successor(#20036,#20054) +#20055=* +entry_cfg_node(#20055,#20036) +hasLocation(#20055,#20053) +#20056=* +exit_cfg_node(#20056,#20036) +#20057=@"loc,{#10000},3,2,3,1" +locations_default(#20057,#10000,3,2,3,1) +hasLocation(#20056,#20057) +successor(#20044,#20049) +successor(#20049,#20047) +successor(#20047,#20046) +successor(#20046,#20056) +successor(#20042,#20044) +successor(#20055,#20042) +successor(#20038,#20036) +successor(#20052,#20038) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/assignment.js.trap b/javascript/extractor/tests/exprs/output/trap/assignment.js.trap index 42df8f6fe5b4..307ba799b5dd 100644 --- a/javascript/extractor/tests/exprs/output/trap/assignment.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/assignment.js.trap @@ -330,355 +330,357 @@ toplevels(#20001,0) #20124=@"loc,{#10000},1,1,12,7" locations_default(#20124,#10000,1,1,12,7) hasLocation(#20001,#20124) -#20125=* -stmts(#20125,2,#20001,0,"a = 23;") -hasLocation(#20125,#20003) -stmt_containers(#20125,#20001) +#20125=@"var;{this};{#20000}" +variables(#20125,"this",#20000) #20126=* -exprs(#20126,47,#20125,0,"a = 23") -#20127=@"loc,{#10000},1,1,1,6" -locations_default(#20127,#10000,1,1,1,6) -hasLocation(#20126,#20127) -enclosing_stmt(#20126,#20125) -expr_containers(#20126,#20001) -#20128=* -exprs(#20128,79,#20126,0,"a") -hasLocation(#20128,#20027) -enclosing_stmt(#20128,#20125) -expr_containers(#20128,#20001) -literals("a","a",#20128) -#20129=@"var;{a};{#20000}" -variables(#20129,"a",#20000) -bind(#20128,#20129) -#20130=* -exprs(#20130,3,#20126,1,"23") -hasLocation(#20130,#20031) -enclosing_stmt(#20130,#20125) -expr_containers(#20130,#20001) -literals("23","23",#20130) +stmts(#20126,2,#20001,0,"a = 23;") +hasLocation(#20126,#20003) +stmt_containers(#20126,#20001) +#20127=* +exprs(#20127,47,#20126,0,"a = 23") +#20128=@"loc,{#10000},1,1,1,6" +locations_default(#20128,#10000,1,1,1,6) +hasLocation(#20127,#20128) +enclosing_stmt(#20127,#20126) +expr_containers(#20127,#20001) +#20129=* +exprs(#20129,79,#20127,0,"a") +hasLocation(#20129,#20027) +enclosing_stmt(#20129,#20126) +expr_containers(#20129,#20001) +literals("a","a",#20129) +#20130=@"var;{a};{#20000}" +variables(#20130,"a",#20000) +bind(#20129,#20130) #20131=* -stmts(#20131,2,#20001,1,"a += 19;") -hasLocation(#20131,#20005) -stmt_containers(#20131,#20001) +exprs(#20131,3,#20127,1,"23") +hasLocation(#20131,#20031) +enclosing_stmt(#20131,#20126) +expr_containers(#20131,#20001) +literals("23","23",#20131) #20132=* -exprs(#20132,48,#20131,0,"a += 19") -#20133=@"loc,{#10000},2,1,2,7" -locations_default(#20133,#10000,2,1,2,7) -hasLocation(#20132,#20133) -enclosing_stmt(#20132,#20131) -expr_containers(#20132,#20001) -#20134=* -exprs(#20134,79,#20132,0,"a") -hasLocation(#20134,#20035) -enclosing_stmt(#20134,#20131) -expr_containers(#20134,#20001) -literals("a","a",#20134) -bind(#20134,#20129) +stmts(#20132,2,#20001,1,"a += 19;") +hasLocation(#20132,#20005) +stmt_containers(#20132,#20001) +#20133=* +exprs(#20133,48,#20132,0,"a += 19") +#20134=@"loc,{#10000},2,1,2,7" +locations_default(#20134,#10000,2,1,2,7) +hasLocation(#20133,#20134) +enclosing_stmt(#20133,#20132) +expr_containers(#20133,#20001) #20135=* -exprs(#20135,3,#20132,1,"19") -hasLocation(#20135,#20039) -enclosing_stmt(#20135,#20131) +exprs(#20135,79,#20133,0,"a") +hasLocation(#20135,#20035) +enclosing_stmt(#20135,#20132) expr_containers(#20135,#20001) -literals("19","19",#20135) +literals("a","a",#20135) +bind(#20135,#20130) #20136=* -stmts(#20136,2,#20001,2,"a -= 9;") -hasLocation(#20136,#20007) -stmt_containers(#20136,#20001) +exprs(#20136,3,#20133,1,"19") +hasLocation(#20136,#20039) +enclosing_stmt(#20136,#20132) +expr_containers(#20136,#20001) +literals("19","19",#20136) #20137=* -exprs(#20137,49,#20136,0,"a -= 9") -#20138=@"loc,{#10000},3,1,3,6" -locations_default(#20138,#10000,3,1,3,6) -hasLocation(#20137,#20138) -enclosing_stmt(#20137,#20136) -expr_containers(#20137,#20001) -#20139=* -exprs(#20139,79,#20137,0,"a") -hasLocation(#20139,#20043) -enclosing_stmt(#20139,#20136) -expr_containers(#20139,#20001) -literals("a","a",#20139) -bind(#20139,#20129) +stmts(#20137,2,#20001,2,"a -= 9;") +hasLocation(#20137,#20007) +stmt_containers(#20137,#20001) +#20138=* +exprs(#20138,49,#20137,0,"a -= 9") +#20139=@"loc,{#10000},3,1,3,6" +locations_default(#20139,#10000,3,1,3,6) +hasLocation(#20138,#20139) +enclosing_stmt(#20138,#20137) +expr_containers(#20138,#20001) #20140=* -exprs(#20140,3,#20137,1,"9") -hasLocation(#20140,#20047) -enclosing_stmt(#20140,#20136) +exprs(#20140,79,#20138,0,"a") +hasLocation(#20140,#20043) +enclosing_stmt(#20140,#20137) expr_containers(#20140,#20001) -literals("9","9",#20140) +literals("a","a",#20140) +bind(#20140,#20130) #20141=* -stmts(#20141,2,#20001,3,"a *= b;") -hasLocation(#20141,#20009) -stmt_containers(#20141,#20001) +exprs(#20141,3,#20138,1,"9") +hasLocation(#20141,#20047) +enclosing_stmt(#20141,#20137) +expr_containers(#20141,#20001) +literals("9","9",#20141) #20142=* -exprs(#20142,50,#20141,0,"a *= b") -#20143=@"loc,{#10000},4,1,4,6" -locations_default(#20143,#10000,4,1,4,6) -hasLocation(#20142,#20143) -enclosing_stmt(#20142,#20141) -expr_containers(#20142,#20001) -#20144=* -exprs(#20144,79,#20142,0,"a") -hasLocation(#20144,#20051) -enclosing_stmt(#20144,#20141) -expr_containers(#20144,#20001) -literals("a","a",#20144) -bind(#20144,#20129) +stmts(#20142,2,#20001,3,"a *= b;") +hasLocation(#20142,#20009) +stmt_containers(#20142,#20001) +#20143=* +exprs(#20143,50,#20142,0,"a *= b") +#20144=@"loc,{#10000},4,1,4,6" +locations_default(#20144,#10000,4,1,4,6) +hasLocation(#20143,#20144) +enclosing_stmt(#20143,#20142) +expr_containers(#20143,#20001) #20145=* -exprs(#20145,79,#20142,1,"b") -hasLocation(#20145,#20055) -enclosing_stmt(#20145,#20141) +exprs(#20145,79,#20143,0,"a") +hasLocation(#20145,#20051) +enclosing_stmt(#20145,#20142) expr_containers(#20145,#20001) -literals("b","b",#20145) -#20146=@"var;{b};{#20000}" -variables(#20146,"b",#20000) -bind(#20145,#20146) -#20147=* -stmts(#20147,2,#20001,4,"a /= 2;") -hasLocation(#20147,#20011) -stmt_containers(#20147,#20001) +literals("a","a",#20145) +bind(#20145,#20130) +#20146=* +exprs(#20146,79,#20143,1,"b") +hasLocation(#20146,#20055) +enclosing_stmt(#20146,#20142) +expr_containers(#20146,#20001) +literals("b","b",#20146) +#20147=@"var;{b};{#20000}" +variables(#20147,"b",#20000) +bind(#20146,#20147) #20148=* -exprs(#20148,51,#20147,0,"a /= 2") -#20149=@"loc,{#10000},5,1,5,6" -locations_default(#20149,#10000,5,1,5,6) -hasLocation(#20148,#20149) -enclosing_stmt(#20148,#20147) -expr_containers(#20148,#20001) -#20150=* -exprs(#20150,79,#20148,0,"a") -hasLocation(#20150,#20059) -enclosing_stmt(#20150,#20147) -expr_containers(#20150,#20001) -literals("a","a",#20150) -bind(#20150,#20129) +stmts(#20148,2,#20001,4,"a /= 2;") +hasLocation(#20148,#20011) +stmt_containers(#20148,#20001) +#20149=* +exprs(#20149,51,#20148,0,"a /= 2") +#20150=@"loc,{#10000},5,1,5,6" +locations_default(#20150,#10000,5,1,5,6) +hasLocation(#20149,#20150) +enclosing_stmt(#20149,#20148) +expr_containers(#20149,#20001) #20151=* -exprs(#20151,3,#20148,1,"2") -hasLocation(#20151,#20063) -enclosing_stmt(#20151,#20147) +exprs(#20151,79,#20149,0,"a") +hasLocation(#20151,#20059) +enclosing_stmt(#20151,#20148) expr_containers(#20151,#20001) -literals("2","2",#20151) +literals("a","a",#20151) +bind(#20151,#20130) #20152=* -stmts(#20152,2,#20001,5,"a %= 2;") -hasLocation(#20152,#20013) -stmt_containers(#20152,#20001) +exprs(#20152,3,#20149,1,"2") +hasLocation(#20152,#20063) +enclosing_stmt(#20152,#20148) +expr_containers(#20152,#20001) +literals("2","2",#20152) #20153=* -exprs(#20153,52,#20152,0,"a %= 2") -#20154=@"loc,{#10000},6,1,6,6" -locations_default(#20154,#10000,6,1,6,6) -hasLocation(#20153,#20154) -enclosing_stmt(#20153,#20152) -expr_containers(#20153,#20001) -#20155=* -exprs(#20155,79,#20153,0,"a") -hasLocation(#20155,#20067) -enclosing_stmt(#20155,#20152) -expr_containers(#20155,#20001) -literals("a","a",#20155) -bind(#20155,#20129) +stmts(#20153,2,#20001,5,"a %= 2;") +hasLocation(#20153,#20013) +stmt_containers(#20153,#20001) +#20154=* +exprs(#20154,52,#20153,0,"a %= 2") +#20155=@"loc,{#10000},6,1,6,6" +locations_default(#20155,#10000,6,1,6,6) +hasLocation(#20154,#20155) +enclosing_stmt(#20154,#20153) +expr_containers(#20154,#20001) #20156=* -exprs(#20156,3,#20153,1,"2") -hasLocation(#20156,#20071) -enclosing_stmt(#20156,#20152) +exprs(#20156,79,#20154,0,"a") +hasLocation(#20156,#20067) +enclosing_stmt(#20156,#20153) expr_containers(#20156,#20001) -literals("2","2",#20156) +literals("a","a",#20156) +bind(#20156,#20130) #20157=* -stmts(#20157,2,#20001,6,"a <<= 8;") -hasLocation(#20157,#20015) -stmt_containers(#20157,#20001) +exprs(#20157,3,#20154,1,"2") +hasLocation(#20157,#20071) +enclosing_stmt(#20157,#20153) +expr_containers(#20157,#20001) +literals("2","2",#20157) #20158=* -exprs(#20158,53,#20157,0,"a <<= 8") -#20159=@"loc,{#10000},7,1,7,7" -locations_default(#20159,#10000,7,1,7,7) -hasLocation(#20158,#20159) -enclosing_stmt(#20158,#20157) -expr_containers(#20158,#20001) -#20160=* -exprs(#20160,79,#20158,0,"a") -hasLocation(#20160,#20075) -enclosing_stmt(#20160,#20157) -expr_containers(#20160,#20001) -literals("a","a",#20160) -bind(#20160,#20129) +stmts(#20158,2,#20001,6,"a <<= 8;") +hasLocation(#20158,#20015) +stmt_containers(#20158,#20001) +#20159=* +exprs(#20159,53,#20158,0,"a <<= 8") +#20160=@"loc,{#10000},7,1,7,7" +locations_default(#20160,#10000,7,1,7,7) +hasLocation(#20159,#20160) +enclosing_stmt(#20159,#20158) +expr_containers(#20159,#20001) #20161=* -exprs(#20161,3,#20158,1,"8") -hasLocation(#20161,#20079) -enclosing_stmt(#20161,#20157) +exprs(#20161,79,#20159,0,"a") +hasLocation(#20161,#20075) +enclosing_stmt(#20161,#20158) expr_containers(#20161,#20001) -literals("8","8",#20161) +literals("a","a",#20161) +bind(#20161,#20130) #20162=* -stmts(#20162,2,#20001,7,"a >>= 7;") -hasLocation(#20162,#20017) -stmt_containers(#20162,#20001) +exprs(#20162,3,#20159,1,"8") +hasLocation(#20162,#20079) +enclosing_stmt(#20162,#20158) +expr_containers(#20162,#20001) +literals("8","8",#20162) #20163=* -exprs(#20163,54,#20162,0,"a >>= 7") -#20164=@"loc,{#10000},8,1,8,7" -locations_default(#20164,#10000,8,1,8,7) -hasLocation(#20163,#20164) -enclosing_stmt(#20163,#20162) -expr_containers(#20163,#20001) -#20165=* -exprs(#20165,79,#20163,0,"a") -hasLocation(#20165,#20083) -enclosing_stmt(#20165,#20162) -expr_containers(#20165,#20001) -literals("a","a",#20165) -bind(#20165,#20129) +stmts(#20163,2,#20001,7,"a >>= 7;") +hasLocation(#20163,#20017) +stmt_containers(#20163,#20001) +#20164=* +exprs(#20164,54,#20163,0,"a >>= 7") +#20165=@"loc,{#10000},8,1,8,7" +locations_default(#20165,#10000,8,1,8,7) +hasLocation(#20164,#20165) +enclosing_stmt(#20164,#20163) +expr_containers(#20164,#20001) #20166=* -exprs(#20166,3,#20163,1,"7") -hasLocation(#20166,#20087) -enclosing_stmt(#20166,#20162) +exprs(#20166,79,#20164,0,"a") +hasLocation(#20166,#20083) +enclosing_stmt(#20166,#20163) expr_containers(#20166,#20001) -literals("7","7",#20166) +literals("a","a",#20166) +bind(#20166,#20130) #20167=* -stmts(#20167,2,#20001,8,"a >>>= 2;") -hasLocation(#20167,#20019) -stmt_containers(#20167,#20001) +exprs(#20167,3,#20164,1,"7") +hasLocation(#20167,#20087) +enclosing_stmt(#20167,#20163) +expr_containers(#20167,#20001) +literals("7","7",#20167) #20168=* -exprs(#20168,55,#20167,0,"a >>>= 2") -#20169=@"loc,{#10000},9,1,9,8" -locations_default(#20169,#10000,9,1,9,8) -hasLocation(#20168,#20169) -enclosing_stmt(#20168,#20167) -expr_containers(#20168,#20001) -#20170=* -exprs(#20170,79,#20168,0,"a") -hasLocation(#20170,#20091) -enclosing_stmt(#20170,#20167) -expr_containers(#20170,#20001) -literals("a","a",#20170) -bind(#20170,#20129) +stmts(#20168,2,#20001,8,"a >>>= 2;") +hasLocation(#20168,#20019) +stmt_containers(#20168,#20001) +#20169=* +exprs(#20169,55,#20168,0,"a >>>= 2") +#20170=@"loc,{#10000},9,1,9,8" +locations_default(#20170,#10000,9,1,9,8) +hasLocation(#20169,#20170) +enclosing_stmt(#20169,#20168) +expr_containers(#20169,#20001) #20171=* -exprs(#20171,3,#20168,1,"2") -hasLocation(#20171,#20095) -enclosing_stmt(#20171,#20167) +exprs(#20171,79,#20169,0,"a") +hasLocation(#20171,#20091) +enclosing_stmt(#20171,#20168) expr_containers(#20171,#20001) -literals("2","2",#20171) +literals("a","a",#20171) +bind(#20171,#20130) #20172=* -stmts(#20172,2,#20001,9,"a |= 2;") -hasLocation(#20172,#20021) -stmt_containers(#20172,#20001) +exprs(#20172,3,#20169,1,"2") +hasLocation(#20172,#20095) +enclosing_stmt(#20172,#20168) +expr_containers(#20172,#20001) +literals("2","2",#20172) #20173=* -exprs(#20173,56,#20172,0,"a |= 2") -#20174=@"loc,{#10000},10,1,10,6" -locations_default(#20174,#10000,10,1,10,6) -hasLocation(#20173,#20174) -enclosing_stmt(#20173,#20172) -expr_containers(#20173,#20001) -#20175=* -exprs(#20175,79,#20173,0,"a") -hasLocation(#20175,#20099) -enclosing_stmt(#20175,#20172) -expr_containers(#20175,#20001) -literals("a","a",#20175) -bind(#20175,#20129) +stmts(#20173,2,#20001,9,"a |= 2;") +hasLocation(#20173,#20021) +stmt_containers(#20173,#20001) +#20174=* +exprs(#20174,56,#20173,0,"a |= 2") +#20175=@"loc,{#10000},10,1,10,6" +locations_default(#20175,#10000,10,1,10,6) +hasLocation(#20174,#20175) +enclosing_stmt(#20174,#20173) +expr_containers(#20174,#20001) #20176=* -exprs(#20176,3,#20173,1,"2") -hasLocation(#20176,#20103) -enclosing_stmt(#20176,#20172) +exprs(#20176,79,#20174,0,"a") +hasLocation(#20176,#20099) +enclosing_stmt(#20176,#20173) expr_containers(#20176,#20001) -literals("2","2",#20176) +literals("a","a",#20176) +bind(#20176,#20130) #20177=* -stmts(#20177,2,#20001,10,"a ^= 1;") -hasLocation(#20177,#20023) -stmt_containers(#20177,#20001) +exprs(#20177,3,#20174,1,"2") +hasLocation(#20177,#20103) +enclosing_stmt(#20177,#20173) +expr_containers(#20177,#20001) +literals("2","2",#20177) #20178=* -exprs(#20178,57,#20177,0,"a ^= 1") -#20179=@"loc,{#10000},11,1,11,6" -locations_default(#20179,#10000,11,1,11,6) -hasLocation(#20178,#20179) -enclosing_stmt(#20178,#20177) -expr_containers(#20178,#20001) -#20180=* -exprs(#20180,79,#20178,0,"a") -hasLocation(#20180,#20107) -enclosing_stmt(#20180,#20177) -expr_containers(#20180,#20001) -literals("a","a",#20180) -bind(#20180,#20129) +stmts(#20178,2,#20001,10,"a ^= 1;") +hasLocation(#20178,#20023) +stmt_containers(#20178,#20001) +#20179=* +exprs(#20179,57,#20178,0,"a ^= 1") +#20180=@"loc,{#10000},11,1,11,6" +locations_default(#20180,#10000,11,1,11,6) +hasLocation(#20179,#20180) +enclosing_stmt(#20179,#20178) +expr_containers(#20179,#20001) #20181=* -exprs(#20181,3,#20178,1,"1") -hasLocation(#20181,#20111) -enclosing_stmt(#20181,#20177) +exprs(#20181,79,#20179,0,"a") +hasLocation(#20181,#20107) +enclosing_stmt(#20181,#20178) expr_containers(#20181,#20001) -literals("1","1",#20181) +literals("a","a",#20181) +bind(#20181,#20130) #20182=* -stmts(#20182,2,#20001,11,"a &= 3;") -hasLocation(#20182,#20025) -stmt_containers(#20182,#20001) +exprs(#20182,3,#20179,1,"1") +hasLocation(#20182,#20111) +enclosing_stmt(#20182,#20178) +expr_containers(#20182,#20001) +literals("1","1",#20182) #20183=* -exprs(#20183,58,#20182,0,"a &= 3") -#20184=@"loc,{#10000},12,1,12,6" -locations_default(#20184,#10000,12,1,12,6) -hasLocation(#20183,#20184) -enclosing_stmt(#20183,#20182) -expr_containers(#20183,#20001) -#20185=* -exprs(#20185,79,#20183,0,"a") -hasLocation(#20185,#20115) -enclosing_stmt(#20185,#20182) -expr_containers(#20185,#20001) -literals("a","a",#20185) -bind(#20185,#20129) +stmts(#20183,2,#20001,11,"a &= 3;") +hasLocation(#20183,#20025) +stmt_containers(#20183,#20001) +#20184=* +exprs(#20184,58,#20183,0,"a &= 3") +#20185=@"loc,{#10000},12,1,12,6" +locations_default(#20185,#10000,12,1,12,6) +hasLocation(#20184,#20185) +enclosing_stmt(#20184,#20183) +expr_containers(#20184,#20001) #20186=* -exprs(#20186,3,#20183,1,"3") -hasLocation(#20186,#20119) -enclosing_stmt(#20186,#20182) +exprs(#20186,79,#20184,0,"a") +hasLocation(#20186,#20115) +enclosing_stmt(#20186,#20183) expr_containers(#20186,#20001) -literals("3","3",#20186) +literals("a","a",#20186) +bind(#20186,#20130) #20187=* -entry_cfg_node(#20187,#20001) -#20188=@"loc,{#10000},1,1,1,0" -locations_default(#20188,#10000,1,1,1,0) -hasLocation(#20187,#20188) -#20189=* -exit_cfg_node(#20189,#20001) -hasLocation(#20189,#20123) -successor(#20182,#20185) -successor(#20186,#20183) -successor(#20185,#20186) -successor(#20183,#20189) -successor(#20177,#20180) -successor(#20181,#20178) -successor(#20180,#20181) -successor(#20178,#20182) -successor(#20172,#20175) -successor(#20176,#20173) -successor(#20175,#20176) -successor(#20173,#20177) -successor(#20167,#20170) -successor(#20171,#20168) -successor(#20170,#20171) -successor(#20168,#20172) -successor(#20162,#20165) -successor(#20166,#20163) -successor(#20165,#20166) -successor(#20163,#20167) -successor(#20157,#20160) -successor(#20161,#20158) -successor(#20160,#20161) -successor(#20158,#20162) -successor(#20152,#20155) -successor(#20156,#20153) -successor(#20155,#20156) -successor(#20153,#20157) -successor(#20147,#20150) -successor(#20151,#20148) -successor(#20150,#20151) -successor(#20148,#20152) -successor(#20141,#20144) -successor(#20145,#20142) -successor(#20144,#20145) -successor(#20142,#20147) -successor(#20136,#20139) -successor(#20140,#20137) -successor(#20139,#20140) -successor(#20137,#20141) -successor(#20131,#20134) -successor(#20135,#20132) -successor(#20134,#20135) -successor(#20132,#20136) -successor(#20125,#20128) -successor(#20130,#20126) -successor(#20128,#20130) -successor(#20126,#20131) -successor(#20187,#20125) +exprs(#20187,3,#20184,1,"3") +hasLocation(#20187,#20119) +enclosing_stmt(#20187,#20183) +expr_containers(#20187,#20001) +literals("3","3",#20187) +#20188=* +entry_cfg_node(#20188,#20001) +#20189=@"loc,{#10000},1,1,1,0" +locations_default(#20189,#10000,1,1,1,0) +hasLocation(#20188,#20189) +#20190=* +exit_cfg_node(#20190,#20001) +hasLocation(#20190,#20123) +successor(#20183,#20186) +successor(#20187,#20184) +successor(#20186,#20187) +successor(#20184,#20190) +successor(#20178,#20181) +successor(#20182,#20179) +successor(#20181,#20182) +successor(#20179,#20183) +successor(#20173,#20176) +successor(#20177,#20174) +successor(#20176,#20177) +successor(#20174,#20178) +successor(#20168,#20171) +successor(#20172,#20169) +successor(#20171,#20172) +successor(#20169,#20173) +successor(#20163,#20166) +successor(#20167,#20164) +successor(#20166,#20167) +successor(#20164,#20168) +successor(#20158,#20161) +successor(#20162,#20159) +successor(#20161,#20162) +successor(#20159,#20163) +successor(#20153,#20156) +successor(#20157,#20154) +successor(#20156,#20157) +successor(#20154,#20158) +successor(#20148,#20151) +successor(#20152,#20149) +successor(#20151,#20152) +successor(#20149,#20153) +successor(#20142,#20145) +successor(#20146,#20143) +successor(#20145,#20146) +successor(#20143,#20148) +successor(#20137,#20140) +successor(#20141,#20138) +successor(#20140,#20141) +successor(#20138,#20142) +successor(#20132,#20135) +successor(#20136,#20133) +successor(#20135,#20136) +successor(#20133,#20137) +successor(#20126,#20129) +successor(#20131,#20127) +successor(#20129,#20131) +successor(#20127,#20132) +successor(#20188,#20126) numlines(#10000,12,12,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/binary.js.trap b/javascript/extractor/tests/exprs/output/trap/binary.js.trap index ef7f0d95e512..ec19934cd501 100644 --- a/javascript/extractor/tests/exprs/output/trap/binary.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/binary.js.trap @@ -414,427 +414,429 @@ toplevels(#20001,0) #20156=@"loc,{#10000},1,1,16,0" locations_default(#20156,#10000,1,1,16,0) hasLocation(#20001,#20156) -#20157=* -stmts(#20157,2,#20001,0,"1 << 2;") -hasLocation(#20157,#20003) -stmt_containers(#20157,#20001) +#20157=@"var;{this};{#20000}" +variables(#20157,"this",#20000) #20158=* -exprs(#20158,31,#20157,0,"1 << 2") -#20159=@"loc,{#10000},1,1,1,6" -locations_default(#20159,#10000,1,1,1,6) -hasLocation(#20158,#20159) -enclosing_stmt(#20158,#20157) -expr_containers(#20158,#20001) -#20160=* -exprs(#20160,3,#20158,0,"1") -hasLocation(#20160,#20033) -enclosing_stmt(#20160,#20157) -expr_containers(#20160,#20001) -literals("1","1",#20160) +stmts(#20158,2,#20001,0,"1 << 2;") +hasLocation(#20158,#20003) +stmt_containers(#20158,#20001) +#20159=* +exprs(#20159,31,#20158,0,"1 << 2") +#20160=@"loc,{#10000},1,1,1,6" +locations_default(#20160,#10000,1,1,1,6) +hasLocation(#20159,#20160) +enclosing_stmt(#20159,#20158) +expr_containers(#20159,#20001) #20161=* -exprs(#20161,3,#20158,1,"2") -hasLocation(#20161,#20037) -enclosing_stmt(#20161,#20157) +exprs(#20161,3,#20159,0,"1") +hasLocation(#20161,#20033) +enclosing_stmt(#20161,#20158) expr_containers(#20161,#20001) -literals("2","2",#20161) +literals("1","1",#20161) #20162=* -stmts(#20162,2,#20001,1,"2 >> 1;") -hasLocation(#20162,#20005) -stmt_containers(#20162,#20001) +exprs(#20162,3,#20159,1,"2") +hasLocation(#20162,#20037) +enclosing_stmt(#20162,#20158) +expr_containers(#20162,#20001) +literals("2","2",#20162) #20163=* -exprs(#20163,32,#20162,0,"2 >> 1") -#20164=@"loc,{#10000},2,1,2,6" -locations_default(#20164,#10000,2,1,2,6) -hasLocation(#20163,#20164) -enclosing_stmt(#20163,#20162) -expr_containers(#20163,#20001) -#20165=* -exprs(#20165,3,#20163,0,"2") -hasLocation(#20165,#20041) -enclosing_stmt(#20165,#20162) -expr_containers(#20165,#20001) -literals("2","2",#20165) +stmts(#20163,2,#20001,1,"2 >> 1;") +hasLocation(#20163,#20005) +stmt_containers(#20163,#20001) +#20164=* +exprs(#20164,32,#20163,0,"2 >> 1") +#20165=@"loc,{#10000},2,1,2,6" +locations_default(#20165,#10000,2,1,2,6) +hasLocation(#20164,#20165) +enclosing_stmt(#20164,#20163) +expr_containers(#20164,#20001) #20166=* -exprs(#20166,3,#20163,1,"1") -hasLocation(#20166,#20045) -enclosing_stmt(#20166,#20162) +exprs(#20166,3,#20164,0,"2") +hasLocation(#20166,#20041) +enclosing_stmt(#20166,#20163) expr_containers(#20166,#20001) -literals("1","1",#20166) +literals("2","2",#20166) #20167=* -stmts(#20167,2,#20001,2,"2 >>> 1;") -hasLocation(#20167,#20007) -stmt_containers(#20167,#20001) +exprs(#20167,3,#20164,1,"1") +hasLocation(#20167,#20045) +enclosing_stmt(#20167,#20163) +expr_containers(#20167,#20001) +literals("1","1",#20167) #20168=* -exprs(#20168,33,#20167,0,"2 >>> 1") -#20169=@"loc,{#10000},3,1,3,7" -locations_default(#20169,#10000,3,1,3,7) -hasLocation(#20168,#20169) -enclosing_stmt(#20168,#20167) -expr_containers(#20168,#20001) -#20170=* -exprs(#20170,3,#20168,0,"2") -hasLocation(#20170,#20049) -enclosing_stmt(#20170,#20167) -expr_containers(#20170,#20001) -literals("2","2",#20170) +stmts(#20168,2,#20001,2,"2 >>> 1;") +hasLocation(#20168,#20007) +stmt_containers(#20168,#20001) +#20169=* +exprs(#20169,33,#20168,0,"2 >>> 1") +#20170=@"loc,{#10000},3,1,3,7" +locations_default(#20170,#10000,3,1,3,7) +hasLocation(#20169,#20170) +enclosing_stmt(#20169,#20168) +expr_containers(#20169,#20001) #20171=* -exprs(#20171,3,#20168,1,"1") -hasLocation(#20171,#20053) -enclosing_stmt(#20171,#20167) +exprs(#20171,3,#20169,0,"2") +hasLocation(#20171,#20049) +enclosing_stmt(#20171,#20168) expr_containers(#20171,#20001) -literals("1","1",#20171) +literals("2","2",#20171) #20172=* -stmts(#20172,2,#20001,3,"23 + 19;") -hasLocation(#20172,#20009) -stmt_containers(#20172,#20001) +exprs(#20172,3,#20169,1,"1") +hasLocation(#20172,#20053) +enclosing_stmt(#20172,#20168) +expr_containers(#20172,#20001) +literals("1","1",#20172) #20173=* -exprs(#20173,34,#20172,0,"23 + 19") -#20174=@"loc,{#10000},4,1,4,7" -locations_default(#20174,#10000,4,1,4,7) -hasLocation(#20173,#20174) -enclosing_stmt(#20173,#20172) -expr_containers(#20173,#20001) -#20175=* -exprs(#20175,3,#20173,0,"23") -hasLocation(#20175,#20057) -enclosing_stmt(#20175,#20172) -expr_containers(#20175,#20001) -literals("23","23",#20175) +stmts(#20173,2,#20001,3,"23 + 19;") +hasLocation(#20173,#20009) +stmt_containers(#20173,#20001) +#20174=* +exprs(#20174,34,#20173,0,"23 + 19") +#20175=@"loc,{#10000},4,1,4,7" +locations_default(#20175,#10000,4,1,4,7) +hasLocation(#20174,#20175) +enclosing_stmt(#20174,#20173) +expr_containers(#20174,#20001) #20176=* -exprs(#20176,3,#20173,1,"19") -hasLocation(#20176,#20061) -enclosing_stmt(#20176,#20172) +exprs(#20176,3,#20174,0,"23") +hasLocation(#20176,#20057) +enclosing_stmt(#20176,#20173) expr_containers(#20176,#20001) -literals("19","19",#20176) +literals("23","23",#20176) #20177=* -stmts(#20177,2,#20001,4,"42 - 19;") -hasLocation(#20177,#20011) -stmt_containers(#20177,#20001) +exprs(#20177,3,#20174,1,"19") +hasLocation(#20177,#20061) +enclosing_stmt(#20177,#20173) +expr_containers(#20177,#20001) +literals("19","19",#20177) #20178=* -exprs(#20178,35,#20177,0,"42 - 19") -#20179=@"loc,{#10000},5,1,5,7" -locations_default(#20179,#10000,5,1,5,7) -hasLocation(#20178,#20179) -enclosing_stmt(#20178,#20177) -expr_containers(#20178,#20001) -#20180=* -exprs(#20180,3,#20178,0,"42") -hasLocation(#20180,#20065) -enclosing_stmt(#20180,#20177) -expr_containers(#20180,#20001) -literals("42","42",#20180) +stmts(#20178,2,#20001,4,"42 - 19;") +hasLocation(#20178,#20011) +stmt_containers(#20178,#20001) +#20179=* +exprs(#20179,35,#20178,0,"42 - 19") +#20180=@"loc,{#10000},5,1,5,7" +locations_default(#20180,#10000,5,1,5,7) +hasLocation(#20179,#20180) +enclosing_stmt(#20179,#20178) +expr_containers(#20179,#20001) #20181=* -exprs(#20181,3,#20178,1,"19") -hasLocation(#20181,#20069) -enclosing_stmt(#20181,#20177) +exprs(#20181,3,#20179,0,"42") +hasLocation(#20181,#20065) +enclosing_stmt(#20181,#20178) expr_containers(#20181,#20001) -literals("19","19",#20181) +literals("42","42",#20181) #20182=* -stmts(#20182,2,#20001,5,"2 * 3;") -hasLocation(#20182,#20013) -stmt_containers(#20182,#20001) +exprs(#20182,3,#20179,1,"19") +hasLocation(#20182,#20069) +enclosing_stmt(#20182,#20178) +expr_containers(#20182,#20001) +literals("19","19",#20182) #20183=* -exprs(#20183,36,#20182,0,"2 * 3") -#20184=@"loc,{#10000},6,1,6,5" -locations_default(#20184,#10000,6,1,6,5) -hasLocation(#20183,#20184) -enclosing_stmt(#20183,#20182) -expr_containers(#20183,#20001) -#20185=* -exprs(#20185,3,#20183,0,"2") -hasLocation(#20185,#20073) -enclosing_stmt(#20185,#20182) -expr_containers(#20185,#20001) -literals("2","2",#20185) +stmts(#20183,2,#20001,5,"2 * 3;") +hasLocation(#20183,#20013) +stmt_containers(#20183,#20001) +#20184=* +exprs(#20184,36,#20183,0,"2 * 3") +#20185=@"loc,{#10000},6,1,6,5" +locations_default(#20185,#10000,6,1,6,5) +hasLocation(#20184,#20185) +enclosing_stmt(#20184,#20183) +expr_containers(#20184,#20001) #20186=* -exprs(#20186,3,#20183,1,"3") -hasLocation(#20186,#20077) -enclosing_stmt(#20186,#20182) +exprs(#20186,3,#20184,0,"2") +hasLocation(#20186,#20073) +enclosing_stmt(#20186,#20183) expr_containers(#20186,#20001) -literals("3","3",#20186) +literals("2","2",#20186) #20187=* -stmts(#20187,2,#20001,6,"8 / 5;") -hasLocation(#20187,#20015) -stmt_containers(#20187,#20001) +exprs(#20187,3,#20184,1,"3") +hasLocation(#20187,#20077) +enclosing_stmt(#20187,#20183) +expr_containers(#20187,#20001) +literals("3","3",#20187) #20188=* -exprs(#20188,37,#20187,0,"8 / 5") -#20189=@"loc,{#10000},7,1,7,5" -locations_default(#20189,#10000,7,1,7,5) -hasLocation(#20188,#20189) -enclosing_stmt(#20188,#20187) -expr_containers(#20188,#20001) -#20190=* -exprs(#20190,3,#20188,0,"8") -hasLocation(#20190,#20081) -enclosing_stmt(#20190,#20187) -expr_containers(#20190,#20001) -literals("8","8",#20190) +stmts(#20188,2,#20001,6,"8 / 5;") +hasLocation(#20188,#20015) +stmt_containers(#20188,#20001) +#20189=* +exprs(#20189,37,#20188,0,"8 / 5") +#20190=@"loc,{#10000},7,1,7,5" +locations_default(#20190,#10000,7,1,7,5) +hasLocation(#20189,#20190) +enclosing_stmt(#20189,#20188) +expr_containers(#20189,#20001) #20191=* -exprs(#20191,3,#20188,1,"5") -hasLocation(#20191,#20085) -enclosing_stmt(#20191,#20187) +exprs(#20191,3,#20189,0,"8") +hasLocation(#20191,#20081) +enclosing_stmt(#20191,#20188) expr_containers(#20191,#20001) -literals("5","5",#20191) +literals("8","8",#20191) #20192=* -stmts(#20192,2,#20001,7,"2 % 1;") -hasLocation(#20192,#20017) -stmt_containers(#20192,#20001) +exprs(#20192,3,#20189,1,"5") +hasLocation(#20192,#20085) +enclosing_stmt(#20192,#20188) +expr_containers(#20192,#20001) +literals("5","5",#20192) #20193=* -exprs(#20193,38,#20192,0,"2 % 1") -#20194=@"loc,{#10000},8,1,8,5" -locations_default(#20194,#10000,8,1,8,5) -hasLocation(#20193,#20194) -enclosing_stmt(#20193,#20192) -expr_containers(#20193,#20001) -#20195=* -exprs(#20195,3,#20193,0,"2") -hasLocation(#20195,#20089) -enclosing_stmt(#20195,#20192) -expr_containers(#20195,#20001) -literals("2","2",#20195) +stmts(#20193,2,#20001,7,"2 % 1;") +hasLocation(#20193,#20017) +stmt_containers(#20193,#20001) +#20194=* +exprs(#20194,38,#20193,0,"2 % 1") +#20195=@"loc,{#10000},8,1,8,5" +locations_default(#20195,#10000,8,1,8,5) +hasLocation(#20194,#20195) +enclosing_stmt(#20194,#20193) +expr_containers(#20194,#20001) #20196=* -exprs(#20196,3,#20193,1,"1") -hasLocation(#20196,#20093) -enclosing_stmt(#20196,#20192) +exprs(#20196,3,#20194,0,"2") +hasLocation(#20196,#20089) +enclosing_stmt(#20196,#20193) expr_containers(#20196,#20001) -literals("1","1",#20196) +literals("2","2",#20196) #20197=* -stmts(#20197,2,#20001,8,"2 | 3;") -hasLocation(#20197,#20019) -stmt_containers(#20197,#20001) +exprs(#20197,3,#20194,1,"1") +hasLocation(#20197,#20093) +enclosing_stmt(#20197,#20193) +expr_containers(#20197,#20001) +literals("1","1",#20197) #20198=* -exprs(#20198,39,#20197,0,"2 | 3") -#20199=@"loc,{#10000},9,1,9,5" -locations_default(#20199,#10000,9,1,9,5) -hasLocation(#20198,#20199) -enclosing_stmt(#20198,#20197) -expr_containers(#20198,#20001) -#20200=* -exprs(#20200,3,#20198,0,"2") -hasLocation(#20200,#20097) -enclosing_stmt(#20200,#20197) -expr_containers(#20200,#20001) -literals("2","2",#20200) +stmts(#20198,2,#20001,8,"2 | 3;") +hasLocation(#20198,#20019) +stmt_containers(#20198,#20001) +#20199=* +exprs(#20199,39,#20198,0,"2 | 3") +#20200=@"loc,{#10000},9,1,9,5" +locations_default(#20200,#10000,9,1,9,5) +hasLocation(#20199,#20200) +enclosing_stmt(#20199,#20198) +expr_containers(#20199,#20001) #20201=* -exprs(#20201,3,#20198,1,"3") -hasLocation(#20201,#20101) -enclosing_stmt(#20201,#20197) +exprs(#20201,3,#20199,0,"2") +hasLocation(#20201,#20097) +enclosing_stmt(#20201,#20198) expr_containers(#20201,#20001) -literals("3","3",#20201) +literals("2","2",#20201) #20202=* -stmts(#20202,2,#20001,9,"2 ^ 3;") -hasLocation(#20202,#20021) -stmt_containers(#20202,#20001) +exprs(#20202,3,#20199,1,"3") +hasLocation(#20202,#20101) +enclosing_stmt(#20202,#20198) +expr_containers(#20202,#20001) +literals("3","3",#20202) #20203=* -exprs(#20203,40,#20202,0,"2 ^ 3") -#20204=@"loc,{#10000},10,1,10,5" -locations_default(#20204,#10000,10,1,10,5) -hasLocation(#20203,#20204) -enclosing_stmt(#20203,#20202) -expr_containers(#20203,#20001) -#20205=* -exprs(#20205,3,#20203,0,"2") -hasLocation(#20205,#20105) -enclosing_stmt(#20205,#20202) -expr_containers(#20205,#20001) -literals("2","2",#20205) +stmts(#20203,2,#20001,9,"2 ^ 3;") +hasLocation(#20203,#20021) +stmt_containers(#20203,#20001) +#20204=* +exprs(#20204,40,#20203,0,"2 ^ 3") +#20205=@"loc,{#10000},10,1,10,5" +locations_default(#20205,#10000,10,1,10,5) +hasLocation(#20204,#20205) +enclosing_stmt(#20204,#20203) +expr_containers(#20204,#20001) #20206=* -exprs(#20206,3,#20203,1,"3") -hasLocation(#20206,#20109) -enclosing_stmt(#20206,#20202) +exprs(#20206,3,#20204,0,"2") +hasLocation(#20206,#20105) +enclosing_stmt(#20206,#20203) expr_containers(#20206,#20001) -literals("3","3",#20206) +literals("2","2",#20206) #20207=* -stmts(#20207,2,#20001,10,"2 & 3;") -hasLocation(#20207,#20023) -stmt_containers(#20207,#20001) +exprs(#20207,3,#20204,1,"3") +hasLocation(#20207,#20109) +enclosing_stmt(#20207,#20203) +expr_containers(#20207,#20001) +literals("3","3",#20207) #20208=* -exprs(#20208,41,#20207,0,"2 & 3") -#20209=@"loc,{#10000},11,1,11,5" -locations_default(#20209,#10000,11,1,11,5) -hasLocation(#20208,#20209) -enclosing_stmt(#20208,#20207) -expr_containers(#20208,#20001) -#20210=* -exprs(#20210,3,#20208,0,"2") -hasLocation(#20210,#20113) -enclosing_stmt(#20210,#20207) -expr_containers(#20210,#20001) -literals("2","2",#20210) +stmts(#20208,2,#20001,10,"2 & 3;") +hasLocation(#20208,#20023) +stmt_containers(#20208,#20001) +#20209=* +exprs(#20209,41,#20208,0,"2 & 3") +#20210=@"loc,{#10000},11,1,11,5" +locations_default(#20210,#10000,11,1,11,5) +hasLocation(#20209,#20210) +enclosing_stmt(#20209,#20208) +expr_containers(#20209,#20001) #20211=* -exprs(#20211,3,#20208,1,"3") -hasLocation(#20211,#20117) -enclosing_stmt(#20211,#20207) +exprs(#20211,3,#20209,0,"2") +hasLocation(#20211,#20113) +enclosing_stmt(#20211,#20208) expr_containers(#20211,#20001) -literals("3","3",#20211) +literals("2","2",#20211) #20212=* -stmts(#20212,2,#20001,11,"'protot ... Object;") -hasLocation(#20212,#20025) -stmt_containers(#20212,#20001) +exprs(#20212,3,#20209,1,"3") +hasLocation(#20212,#20117) +enclosing_stmt(#20212,#20208) +expr_containers(#20212,#20001) +literals("3","3",#20212) #20213=* -exprs(#20213,42,#20212,0,"'protot ... Object") -#20214=@"loc,{#10000},12,1,12,21" -locations_default(#20214,#10000,12,1,12,21) -hasLocation(#20213,#20214) -enclosing_stmt(#20213,#20212) -expr_containers(#20213,#20001) -#20215=* -exprs(#20215,4,#20213,0,"'prototype'") -hasLocation(#20215,#20121) -enclosing_stmt(#20215,#20212) -expr_containers(#20215,#20001) -literals("prototype","'prototype'",#20215) +stmts(#20213,2,#20001,11,"'protot ... Object;") +hasLocation(#20213,#20025) +stmt_containers(#20213,#20001) +#20214=* +exprs(#20214,42,#20213,0,"'protot ... Object") +#20215=@"loc,{#10000},12,1,12,21" +locations_default(#20215,#10000,12,1,12,21) +hasLocation(#20214,#20215) +enclosing_stmt(#20214,#20213) +expr_containers(#20214,#20001) #20216=* -exprs(#20216,79,#20213,1,"Object") -hasLocation(#20216,#20125) -enclosing_stmt(#20216,#20212) +exprs(#20216,4,#20214,0,"'prototype'") +hasLocation(#20216,#20121) +enclosing_stmt(#20216,#20213) expr_containers(#20216,#20001) -literals("Object","Object",#20216) -#20217=@"var;{Object};{#20000}" -variables(#20217,"Object",#20000) -bind(#20216,#20217) -#20218=* -stmts(#20218,2,#20001,12,"[] instanceof Array;") -hasLocation(#20218,#20027) -stmt_containers(#20218,#20001) +literals("prototype","'prototype'",#20216) +#20217=* +exprs(#20217,79,#20214,1,"Object") +hasLocation(#20217,#20125) +enclosing_stmt(#20217,#20213) +expr_containers(#20217,#20001) +literals("Object","Object",#20217) +#20218=@"var;{Object};{#20000}" +variables(#20218,"Object",#20000) +bind(#20217,#20218) #20219=* -exprs(#20219,43,#20218,0,"[] instanceof Array") -#20220=@"loc,{#10000},13,1,13,19" -locations_default(#20220,#10000,13,1,13,19) -hasLocation(#20219,#20220) -enclosing_stmt(#20219,#20218) -expr_containers(#20219,#20001) -#20221=* -exprs(#20221,7,#20219,0,"[]") -#20222=@"loc,{#10000},13,1,13,2" -locations_default(#20222,#10000,13,1,13,2) -hasLocation(#20221,#20222) -enclosing_stmt(#20221,#20218) -expr_containers(#20221,#20001) -array_size(#20221,0) -#20223=* -exprs(#20223,79,#20219,1,"Array") -hasLocation(#20223,#20135) -enclosing_stmt(#20223,#20218) -expr_containers(#20223,#20001) -literals("Array","Array",#20223) -#20224=@"var;{Array};{#20000}" -variables(#20224,"Array",#20000) -bind(#20223,#20224) -#20225=* -stmts(#20225,2,#20001,13,"1 && 2;") -hasLocation(#20225,#20029) -stmt_containers(#20225,#20001) +stmts(#20219,2,#20001,12,"[] instanceof Array;") +hasLocation(#20219,#20027) +stmt_containers(#20219,#20001) +#20220=* +exprs(#20220,43,#20219,0,"[] instanceof Array") +#20221=@"loc,{#10000},13,1,13,19" +locations_default(#20221,#10000,13,1,13,19) +hasLocation(#20220,#20221) +enclosing_stmt(#20220,#20219) +expr_containers(#20220,#20001) +#20222=* +exprs(#20222,7,#20220,0,"[]") +#20223=@"loc,{#10000},13,1,13,2" +locations_default(#20223,#10000,13,1,13,2) +hasLocation(#20222,#20223) +enclosing_stmt(#20222,#20219) +expr_containers(#20222,#20001) +array_size(#20222,0) +#20224=* +exprs(#20224,79,#20220,1,"Array") +hasLocation(#20224,#20135) +enclosing_stmt(#20224,#20219) +expr_containers(#20224,#20001) +literals("Array","Array",#20224) +#20225=@"var;{Array};{#20000}" +variables(#20225,"Array",#20000) +bind(#20224,#20225) #20226=* -exprs(#20226,44,#20225,0,"1 && 2") -#20227=@"loc,{#10000},14,1,14,6" -locations_default(#20227,#10000,14,1,14,6) -hasLocation(#20226,#20227) -enclosing_stmt(#20226,#20225) -expr_containers(#20226,#20001) -#20228=* -exprs(#20228,3,#20226,0,"1") -hasLocation(#20228,#20139) -enclosing_stmt(#20228,#20225) -expr_containers(#20228,#20001) -literals("1","1",#20228) +stmts(#20226,2,#20001,13,"1 && 2;") +hasLocation(#20226,#20029) +stmt_containers(#20226,#20001) +#20227=* +exprs(#20227,44,#20226,0,"1 && 2") +#20228=@"loc,{#10000},14,1,14,6" +locations_default(#20228,#10000,14,1,14,6) +hasLocation(#20227,#20228) +enclosing_stmt(#20227,#20226) +expr_containers(#20227,#20001) #20229=* -exprs(#20229,3,#20226,1,"2") -hasLocation(#20229,#20143) -enclosing_stmt(#20229,#20225) +exprs(#20229,3,#20227,0,"1") +hasLocation(#20229,#20139) +enclosing_stmt(#20229,#20226) expr_containers(#20229,#20001) -literals("2","2",#20229) +literals("1","1",#20229) #20230=* -stmts(#20230,2,#20001,14,"1 || 2;") -hasLocation(#20230,#20031) -stmt_containers(#20230,#20001) +exprs(#20230,3,#20227,1,"2") +hasLocation(#20230,#20143) +enclosing_stmt(#20230,#20226) +expr_containers(#20230,#20001) +literals("2","2",#20230) #20231=* -exprs(#20231,45,#20230,0,"1 || 2") -#20232=@"loc,{#10000},15,1,15,6" -locations_default(#20232,#10000,15,1,15,6) -hasLocation(#20231,#20232) -enclosing_stmt(#20231,#20230) -expr_containers(#20231,#20001) -#20233=* -exprs(#20233,3,#20231,0,"1") -hasLocation(#20233,#20147) -enclosing_stmt(#20233,#20230) -expr_containers(#20233,#20001) -literals("1","1",#20233) +stmts(#20231,2,#20001,14,"1 || 2;") +hasLocation(#20231,#20031) +stmt_containers(#20231,#20001) +#20232=* +exprs(#20232,45,#20231,0,"1 || 2") +#20233=@"loc,{#10000},15,1,15,6" +locations_default(#20233,#10000,15,1,15,6) +hasLocation(#20232,#20233) +enclosing_stmt(#20232,#20231) +expr_containers(#20232,#20001) #20234=* -exprs(#20234,3,#20231,1,"2") -hasLocation(#20234,#20151) -enclosing_stmt(#20234,#20230) +exprs(#20234,3,#20232,0,"1") +hasLocation(#20234,#20147) +enclosing_stmt(#20234,#20231) expr_containers(#20234,#20001) -literals("2","2",#20234) +literals("1","1",#20234) #20235=* -entry_cfg_node(#20235,#20001) -#20236=@"loc,{#10000},1,1,1,0" -locations_default(#20236,#10000,1,1,1,0) -hasLocation(#20235,#20236) -#20237=* -exit_cfg_node(#20237,#20001) -hasLocation(#20237,#20155) -successor(#20230,#20231) -successor(#20231,#20233) -successor(#20233,#20237) -successor(#20234,#20237) -successor(#20225,#20226) -successor(#20226,#20228) -successor(#20228,#20229) +exprs(#20235,3,#20232,1,"2") +hasLocation(#20235,#20151) +enclosing_stmt(#20235,#20231) +expr_containers(#20235,#20001) +literals("2","2",#20235) +#20236=* +entry_cfg_node(#20236,#20001) +#20237=@"loc,{#10000},1,1,1,0" +locations_default(#20237,#10000,1,1,1,0) +hasLocation(#20236,#20237) +#20238=* +exit_cfg_node(#20238,#20001) +hasLocation(#20238,#20155) +successor(#20231,#20232) +successor(#20232,#20234) +successor(#20234,#20238) +successor(#20235,#20238) +successor(#20226,#20227) +successor(#20227,#20229) successor(#20229,#20230) -successor(#20218,#20221) -successor(#20223,#20219) -successor(#20221,#20223) -successor(#20219,#20225) -successor(#20212,#20215) -successor(#20216,#20213) -successor(#20215,#20216) -successor(#20213,#20218) -successor(#20207,#20210) -successor(#20211,#20208) -successor(#20210,#20211) -successor(#20208,#20212) -successor(#20202,#20205) -successor(#20206,#20203) -successor(#20205,#20206) -successor(#20203,#20207) -successor(#20197,#20200) -successor(#20201,#20198) -successor(#20200,#20201) -successor(#20198,#20202) -successor(#20192,#20195) -successor(#20196,#20193) -successor(#20195,#20196) -successor(#20193,#20197) -successor(#20187,#20190) -successor(#20191,#20188) -successor(#20190,#20191) -successor(#20188,#20192) -successor(#20182,#20185) -successor(#20186,#20183) -successor(#20185,#20186) -successor(#20183,#20187) -successor(#20177,#20180) -successor(#20181,#20178) -successor(#20180,#20181) -successor(#20178,#20182) -successor(#20172,#20175) -successor(#20176,#20173) -successor(#20175,#20176) -successor(#20173,#20177) -successor(#20167,#20170) -successor(#20171,#20168) -successor(#20170,#20171) -successor(#20168,#20172) -successor(#20162,#20165) -successor(#20166,#20163) -successor(#20165,#20166) -successor(#20163,#20167) -successor(#20157,#20160) -successor(#20161,#20158) -successor(#20160,#20161) -successor(#20158,#20162) -successor(#20235,#20157) +successor(#20230,#20231) +successor(#20219,#20222) +successor(#20224,#20220) +successor(#20222,#20224) +successor(#20220,#20226) +successor(#20213,#20216) +successor(#20217,#20214) +successor(#20216,#20217) +successor(#20214,#20219) +successor(#20208,#20211) +successor(#20212,#20209) +successor(#20211,#20212) +successor(#20209,#20213) +successor(#20203,#20206) +successor(#20207,#20204) +successor(#20206,#20207) +successor(#20204,#20208) +successor(#20198,#20201) +successor(#20202,#20199) +successor(#20201,#20202) +successor(#20199,#20203) +successor(#20193,#20196) +successor(#20197,#20194) +successor(#20196,#20197) +successor(#20194,#20198) +successor(#20188,#20191) +successor(#20192,#20189) +successor(#20191,#20192) +successor(#20189,#20193) +successor(#20183,#20186) +successor(#20187,#20184) +successor(#20186,#20187) +successor(#20184,#20188) +successor(#20178,#20181) +successor(#20182,#20179) +successor(#20181,#20182) +successor(#20179,#20183) +successor(#20173,#20176) +successor(#20177,#20174) +successor(#20176,#20177) +successor(#20174,#20178) +successor(#20168,#20171) +successor(#20172,#20169) +successor(#20171,#20172) +successor(#20169,#20173) +successor(#20163,#20166) +successor(#20167,#20164) +successor(#20166,#20167) +successor(#20164,#20168) +successor(#20158,#20161) +successor(#20162,#20159) +successor(#20161,#20162) +successor(#20159,#20163) +successor(#20236,#20158) numlines(#10000,15,15,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/comparison.js.trap b/javascript/extractor/tests/exprs/output/trap/comparison.js.trap index 40cd1291c1df..3ed0becc4195 100644 --- a/javascript/extractor/tests/exprs/output/trap/comparison.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/comparison.js.trap @@ -227,230 +227,232 @@ toplevels(#20001,0) #20084=@"loc,{#10000},1,1,9,0" locations_default(#20084,#10000,1,1,9,0) hasLocation(#20001,#20084) -#20085=* -stmts(#20085,2,#20001,0,"1 == 1;") -hasLocation(#20085,#20003) -stmt_containers(#20085,#20001) +#20085=@"var;{this};{#20000}" +variables(#20085,"this",#20000) #20086=* -exprs(#20086,23,#20085,0,"1 == 1") -#20087=@"loc,{#10000},1,1,1,6" -locations_default(#20087,#10000,1,1,1,6) -hasLocation(#20086,#20087) -enclosing_stmt(#20086,#20085) -expr_containers(#20086,#20001) -#20088=* -exprs(#20088,3,#20086,0,"1") -hasLocation(#20088,#20019) -enclosing_stmt(#20088,#20085) -expr_containers(#20088,#20001) -literals("1","1",#20088) +stmts(#20086,2,#20001,0,"1 == 1;") +hasLocation(#20086,#20003) +stmt_containers(#20086,#20001) +#20087=* +exprs(#20087,23,#20086,0,"1 == 1") +#20088=@"loc,{#10000},1,1,1,6" +locations_default(#20088,#10000,1,1,1,6) +hasLocation(#20087,#20088) +enclosing_stmt(#20087,#20086) +expr_containers(#20087,#20001) #20089=* -exprs(#20089,3,#20086,1,"1") -hasLocation(#20089,#20023) -enclosing_stmt(#20089,#20085) +exprs(#20089,3,#20087,0,"1") +hasLocation(#20089,#20019) +enclosing_stmt(#20089,#20086) expr_containers(#20089,#20001) literals("1","1",#20089) #20090=* -stmts(#20090,2,#20001,1,"1 != 2;") -hasLocation(#20090,#20005) -stmt_containers(#20090,#20001) +exprs(#20090,3,#20087,1,"1") +hasLocation(#20090,#20023) +enclosing_stmt(#20090,#20086) +expr_containers(#20090,#20001) +literals("1","1",#20090) #20091=* -exprs(#20091,24,#20090,0,"1 != 2") -#20092=@"loc,{#10000},2,1,2,6" -locations_default(#20092,#10000,2,1,2,6) -hasLocation(#20091,#20092) -enclosing_stmt(#20091,#20090) -expr_containers(#20091,#20001) -#20093=* -exprs(#20093,3,#20091,0,"1") -hasLocation(#20093,#20027) -enclosing_stmt(#20093,#20090) -expr_containers(#20093,#20001) -literals("1","1",#20093) +stmts(#20091,2,#20001,1,"1 != 2;") +hasLocation(#20091,#20005) +stmt_containers(#20091,#20001) +#20092=* +exprs(#20092,24,#20091,0,"1 != 2") +#20093=@"loc,{#10000},2,1,2,6" +locations_default(#20093,#10000,2,1,2,6) +hasLocation(#20092,#20093) +enclosing_stmt(#20092,#20091) +expr_containers(#20092,#20001) #20094=* -exprs(#20094,3,#20091,1,"2") -hasLocation(#20094,#20031) -enclosing_stmt(#20094,#20090) +exprs(#20094,3,#20092,0,"1") +hasLocation(#20094,#20027) +enclosing_stmt(#20094,#20091) expr_containers(#20094,#20001) -literals("2","2",#20094) +literals("1","1",#20094) #20095=* -stmts(#20095,2,#20001,2,"1 === 1;") -hasLocation(#20095,#20007) -stmt_containers(#20095,#20001) +exprs(#20095,3,#20092,1,"2") +hasLocation(#20095,#20031) +enclosing_stmt(#20095,#20091) +expr_containers(#20095,#20001) +literals("2","2",#20095) #20096=* -exprs(#20096,25,#20095,0,"1 === 1") -#20097=@"loc,{#10000},3,1,3,7" -locations_default(#20097,#10000,3,1,3,7) -hasLocation(#20096,#20097) -enclosing_stmt(#20096,#20095) -expr_containers(#20096,#20001) -#20098=* -exprs(#20098,3,#20096,0,"1") -hasLocation(#20098,#20035) -enclosing_stmt(#20098,#20095) -expr_containers(#20098,#20001) -literals("1","1",#20098) +stmts(#20096,2,#20001,2,"1 === 1;") +hasLocation(#20096,#20007) +stmt_containers(#20096,#20001) +#20097=* +exprs(#20097,25,#20096,0,"1 === 1") +#20098=@"loc,{#10000},3,1,3,7" +locations_default(#20098,#10000,3,1,3,7) +hasLocation(#20097,#20098) +enclosing_stmt(#20097,#20096) +expr_containers(#20097,#20001) #20099=* -exprs(#20099,3,#20096,1,"1") -hasLocation(#20099,#20039) -enclosing_stmt(#20099,#20095) +exprs(#20099,3,#20097,0,"1") +hasLocation(#20099,#20035) +enclosing_stmt(#20099,#20096) expr_containers(#20099,#20001) literals("1","1",#20099) #20100=* -stmts(#20100,2,#20001,3,"1 !== 2;") -hasLocation(#20100,#20009) -stmt_containers(#20100,#20001) +exprs(#20100,3,#20097,1,"1") +hasLocation(#20100,#20039) +enclosing_stmt(#20100,#20096) +expr_containers(#20100,#20001) +literals("1","1",#20100) #20101=* -exprs(#20101,26,#20100,0,"1 !== 2") -#20102=@"loc,{#10000},4,1,4,7" -locations_default(#20102,#10000,4,1,4,7) -hasLocation(#20101,#20102) -enclosing_stmt(#20101,#20100) -expr_containers(#20101,#20001) -#20103=* -exprs(#20103,3,#20101,0,"1") -hasLocation(#20103,#20043) -enclosing_stmt(#20103,#20100) -expr_containers(#20103,#20001) -literals("1","1",#20103) +stmts(#20101,2,#20001,3,"1 !== 2;") +hasLocation(#20101,#20009) +stmt_containers(#20101,#20001) +#20102=* +exprs(#20102,26,#20101,0,"1 !== 2") +#20103=@"loc,{#10000},4,1,4,7" +locations_default(#20103,#10000,4,1,4,7) +hasLocation(#20102,#20103) +enclosing_stmt(#20102,#20101) +expr_containers(#20102,#20001) #20104=* -exprs(#20104,3,#20101,1,"2") -hasLocation(#20104,#20047) -enclosing_stmt(#20104,#20100) +exprs(#20104,3,#20102,0,"1") +hasLocation(#20104,#20043) +enclosing_stmt(#20104,#20101) expr_containers(#20104,#20001) -literals("2","2",#20104) +literals("1","1",#20104) #20105=* -stmts(#20105,2,#20001,4,"1 < 2;") -hasLocation(#20105,#20011) -stmt_containers(#20105,#20001) +exprs(#20105,3,#20102,1,"2") +hasLocation(#20105,#20047) +enclosing_stmt(#20105,#20101) +expr_containers(#20105,#20001) +literals("2","2",#20105) #20106=* -exprs(#20106,27,#20105,0,"1 < 2") -#20107=@"loc,{#10000},5,1,5,5" -locations_default(#20107,#10000,5,1,5,5) -hasLocation(#20106,#20107) -enclosing_stmt(#20106,#20105) -expr_containers(#20106,#20001) -#20108=* -exprs(#20108,3,#20106,0,"1") -hasLocation(#20108,#20051) -enclosing_stmt(#20108,#20105) -expr_containers(#20108,#20001) -literals("1","1",#20108) +stmts(#20106,2,#20001,4,"1 < 2;") +hasLocation(#20106,#20011) +stmt_containers(#20106,#20001) +#20107=* +exprs(#20107,27,#20106,0,"1 < 2") +#20108=@"loc,{#10000},5,1,5,5" +locations_default(#20108,#10000,5,1,5,5) +hasLocation(#20107,#20108) +enclosing_stmt(#20107,#20106) +expr_containers(#20107,#20001) #20109=* -exprs(#20109,3,#20106,1,"2") -hasLocation(#20109,#20055) -enclosing_stmt(#20109,#20105) +exprs(#20109,3,#20107,0,"1") +hasLocation(#20109,#20051) +enclosing_stmt(#20109,#20106) expr_containers(#20109,#20001) -literals("2","2",#20109) +literals("1","1",#20109) #20110=* -stmts(#20110,2,#20001,5,"1 <= 2;") -hasLocation(#20110,#20013) -stmt_containers(#20110,#20001) +exprs(#20110,3,#20107,1,"2") +hasLocation(#20110,#20055) +enclosing_stmt(#20110,#20106) +expr_containers(#20110,#20001) +literals("2","2",#20110) #20111=* -exprs(#20111,28,#20110,0,"1 <= 2") -#20112=@"loc,{#10000},6,1,6,6" -locations_default(#20112,#10000,6,1,6,6) -hasLocation(#20111,#20112) -enclosing_stmt(#20111,#20110) -expr_containers(#20111,#20001) -#20113=* -exprs(#20113,3,#20111,0,"1") -hasLocation(#20113,#20059) -enclosing_stmt(#20113,#20110) -expr_containers(#20113,#20001) -literals("1","1",#20113) +stmts(#20111,2,#20001,5,"1 <= 2;") +hasLocation(#20111,#20013) +stmt_containers(#20111,#20001) +#20112=* +exprs(#20112,28,#20111,0,"1 <= 2") +#20113=@"loc,{#10000},6,1,6,6" +locations_default(#20113,#10000,6,1,6,6) +hasLocation(#20112,#20113) +enclosing_stmt(#20112,#20111) +expr_containers(#20112,#20001) #20114=* -exprs(#20114,3,#20111,1,"2") -hasLocation(#20114,#20063) -enclosing_stmt(#20114,#20110) +exprs(#20114,3,#20112,0,"1") +hasLocation(#20114,#20059) +enclosing_stmt(#20114,#20111) expr_containers(#20114,#20001) -literals("2","2",#20114) +literals("1","1",#20114) #20115=* -stmts(#20115,2,#20001,6,"2 > 1;") -hasLocation(#20115,#20015) -stmt_containers(#20115,#20001) +exprs(#20115,3,#20112,1,"2") +hasLocation(#20115,#20063) +enclosing_stmt(#20115,#20111) +expr_containers(#20115,#20001) +literals("2","2",#20115) #20116=* -exprs(#20116,29,#20115,0,"2 > 1") -#20117=@"loc,{#10000},7,1,7,5" -locations_default(#20117,#10000,7,1,7,5) -hasLocation(#20116,#20117) -enclosing_stmt(#20116,#20115) -expr_containers(#20116,#20001) -#20118=* -exprs(#20118,3,#20116,0,"2") -hasLocation(#20118,#20067) -enclosing_stmt(#20118,#20115) -expr_containers(#20118,#20001) -literals("2","2",#20118) +stmts(#20116,2,#20001,6,"2 > 1;") +hasLocation(#20116,#20015) +stmt_containers(#20116,#20001) +#20117=* +exprs(#20117,29,#20116,0,"2 > 1") +#20118=@"loc,{#10000},7,1,7,5" +locations_default(#20118,#10000,7,1,7,5) +hasLocation(#20117,#20118) +enclosing_stmt(#20117,#20116) +expr_containers(#20117,#20001) #20119=* -exprs(#20119,3,#20116,1,"1") -hasLocation(#20119,#20071) -enclosing_stmt(#20119,#20115) +exprs(#20119,3,#20117,0,"2") +hasLocation(#20119,#20067) +enclosing_stmt(#20119,#20116) expr_containers(#20119,#20001) -literals("1","1",#20119) +literals("2","2",#20119) #20120=* -stmts(#20120,2,#20001,7,"2 >= 1;") -hasLocation(#20120,#20017) -stmt_containers(#20120,#20001) +exprs(#20120,3,#20117,1,"1") +hasLocation(#20120,#20071) +enclosing_stmt(#20120,#20116) +expr_containers(#20120,#20001) +literals("1","1",#20120) #20121=* -exprs(#20121,30,#20120,0,"2 >= 1") -#20122=@"loc,{#10000},8,1,8,6" -locations_default(#20122,#10000,8,1,8,6) -hasLocation(#20121,#20122) -enclosing_stmt(#20121,#20120) -expr_containers(#20121,#20001) -#20123=* -exprs(#20123,3,#20121,0,"2") -hasLocation(#20123,#20075) -enclosing_stmt(#20123,#20120) -expr_containers(#20123,#20001) -literals("2","2",#20123) +stmts(#20121,2,#20001,7,"2 >= 1;") +hasLocation(#20121,#20017) +stmt_containers(#20121,#20001) +#20122=* +exprs(#20122,30,#20121,0,"2 >= 1") +#20123=@"loc,{#10000},8,1,8,6" +locations_default(#20123,#10000,8,1,8,6) +hasLocation(#20122,#20123) +enclosing_stmt(#20122,#20121) +expr_containers(#20122,#20001) #20124=* -exprs(#20124,3,#20121,1,"1") -hasLocation(#20124,#20079) -enclosing_stmt(#20124,#20120) +exprs(#20124,3,#20122,0,"2") +hasLocation(#20124,#20075) +enclosing_stmt(#20124,#20121) expr_containers(#20124,#20001) -literals("1","1",#20124) +literals("2","2",#20124) #20125=* -entry_cfg_node(#20125,#20001) -#20126=@"loc,{#10000},1,1,1,0" -locations_default(#20126,#10000,1,1,1,0) -hasLocation(#20125,#20126) -#20127=* -exit_cfg_node(#20127,#20001) -hasLocation(#20127,#20083) -successor(#20120,#20123) -successor(#20124,#20121) -successor(#20123,#20124) -successor(#20121,#20127) -successor(#20115,#20118) -successor(#20119,#20116) -successor(#20118,#20119) -successor(#20116,#20120) -successor(#20110,#20113) -successor(#20114,#20111) -successor(#20113,#20114) -successor(#20111,#20115) -successor(#20105,#20108) -successor(#20109,#20106) -successor(#20108,#20109) -successor(#20106,#20110) -successor(#20100,#20103) -successor(#20104,#20101) -successor(#20103,#20104) -successor(#20101,#20105) -successor(#20095,#20098) -successor(#20099,#20096) -successor(#20098,#20099) -successor(#20096,#20100) -successor(#20090,#20093) -successor(#20094,#20091) -successor(#20093,#20094) -successor(#20091,#20095) -successor(#20085,#20088) -successor(#20089,#20086) -successor(#20088,#20089) -successor(#20086,#20090) -successor(#20125,#20085) +exprs(#20125,3,#20122,1,"1") +hasLocation(#20125,#20079) +enclosing_stmt(#20125,#20121) +expr_containers(#20125,#20001) +literals("1","1",#20125) +#20126=* +entry_cfg_node(#20126,#20001) +#20127=@"loc,{#10000},1,1,1,0" +locations_default(#20127,#10000,1,1,1,0) +hasLocation(#20126,#20127) +#20128=* +exit_cfg_node(#20128,#20001) +hasLocation(#20128,#20083) +successor(#20121,#20124) +successor(#20125,#20122) +successor(#20124,#20125) +successor(#20122,#20128) +successor(#20116,#20119) +successor(#20120,#20117) +successor(#20119,#20120) +successor(#20117,#20121) +successor(#20111,#20114) +successor(#20115,#20112) +successor(#20114,#20115) +successor(#20112,#20116) +successor(#20106,#20109) +successor(#20110,#20107) +successor(#20109,#20110) +successor(#20107,#20111) +successor(#20101,#20104) +successor(#20105,#20102) +successor(#20104,#20105) +successor(#20102,#20106) +successor(#20096,#20099) +successor(#20100,#20097) +successor(#20099,#20100) +successor(#20097,#20101) +successor(#20091,#20094) +successor(#20095,#20092) +successor(#20094,#20095) +successor(#20092,#20096) +successor(#20086,#20089) +successor(#20090,#20087) +successor(#20089,#20090) +successor(#20087,#20091) +successor(#20126,#20086) numlines(#10000,8,8,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/fnnesting.js.trap b/javascript/extractor/tests/exprs/output/trap/fnnesting.js.trap index c2b52eb4df89..c05fbeb42555 100644 --- a/javascript/extractor/tests/exprs/output/trap/fnnesting.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/fnnesting.js.trap @@ -77,77 +77,81 @@ locations_default(#20027,#10000,1,21,1,20) hasLocation(#20026,#20027) toplevels(#20001,0) hasLocation(#20001,#20003) -#20028=* -stmts(#20028,2,#20001,0,"f(function(){}, 23);") -hasLocation(#20028,#20003) -stmt_containers(#20028,#20001) +#20028=@"var;{this};{#20000}" +variables(#20028,"this",#20000) #20029=* -exprs(#20029,13,#20028,0,"f(function(){}, 23)") -#20030=@"loc,{#10000},1,1,1,19" -locations_default(#20030,#10000,1,1,1,19) -hasLocation(#20029,#20030) -enclosing_stmt(#20029,#20028) -expr_containers(#20029,#20001) -#20031=* -exprs(#20031,79,#20029,-1,"f") -hasLocation(#20031,#20005) -enclosing_stmt(#20031,#20028) -expr_containers(#20031,#20001) -literals("f","f",#20031) -#20032=@"var;{f};{#20000}" -variables(#20032,"f",#20000) -bind(#20031,#20032) -#20033=* -exprs(#20033,9,#20029,0,"function(){}") -#20034=@"loc,{#10000},1,3,1,14" -locations_default(#20034,#10000,1,3,1,14) -hasLocation(#20033,#20034) -enclosing_stmt(#20033,#20028) -expr_containers(#20033,#20001) -#20035=* -scopes(#20035,1) -scopenodes(#20033,#20035) -scopenesting(#20035,#20000) -#20036=@"var;{arguments};{#20035}" -variables(#20036,"arguments",#20035) -is_arguments_object(#20036) -#20037=* -stmts(#20037,1,#20033,-2,"{}") -#20038=@"loc,{#10000},1,13,1,14" -locations_default(#20038,#10000,1,13,1,14) -hasLocation(#20037,#20038) -stmt_containers(#20037,#20033) +stmts(#20029,2,#20001,0,"f(function(){}, 23);") +hasLocation(#20029,#20003) +stmt_containers(#20029,#20001) +#20030=* +exprs(#20030,13,#20029,0,"f(function(){}, 23)") +#20031=@"loc,{#10000},1,1,1,19" +locations_default(#20031,#10000,1,1,1,19) +hasLocation(#20030,#20031) +enclosing_stmt(#20030,#20029) +expr_containers(#20030,#20001) +#20032=* +exprs(#20032,79,#20030,-1,"f") +hasLocation(#20032,#20005) +enclosing_stmt(#20032,#20029) +expr_containers(#20032,#20001) +literals("f","f",#20032) +#20033=@"var;{f};{#20000}" +variables(#20033,"f",#20000) +bind(#20032,#20033) +#20034=* +exprs(#20034,9,#20030,0,"function(){}") +#20035=@"loc,{#10000},1,3,1,14" +locations_default(#20035,#10000,1,3,1,14) +hasLocation(#20034,#20035) +enclosing_stmt(#20034,#20029) +expr_containers(#20034,#20001) +#20036=* +scopes(#20036,1) +scopenodes(#20034,#20036) +scopenesting(#20036,#20000) +#20037=@"var;{this};{#20036}" +variables(#20037,"this",#20036) +#20038=@"var;{arguments};{#20036}" +variables(#20038,"arguments",#20036) +is_arguments_object(#20038) #20039=* -exprs(#20039,3,#20029,1,"23") -hasLocation(#20039,#20021) -enclosing_stmt(#20039,#20028) -expr_containers(#20039,#20001) -literals("23","23",#20039) -#20040=* -entry_cfg_node(#20040,#20001) -#20041=@"loc,{#10000},1,1,1,0" -locations_default(#20041,#10000,1,1,1,0) -hasLocation(#20040,#20041) +stmts(#20039,1,#20034,-2,"{}") +#20040=@"loc,{#10000},1,13,1,14" +locations_default(#20040,#10000,1,13,1,14) +hasLocation(#20039,#20040) +stmt_containers(#20039,#20034) +#20041=* +exprs(#20041,3,#20030,1,"23") +hasLocation(#20041,#20021) +enclosing_stmt(#20041,#20029) +expr_containers(#20041,#20001) +literals("23","23",#20041) #20042=* -exit_cfg_node(#20042,#20001) -hasLocation(#20042,#20027) -successor(#20028,#20031) -successor(#20039,#20029) -successor(#20033,#20039) -#20043=* -entry_cfg_node(#20043,#20033) -#20044=@"loc,{#10000},1,3,1,2" -locations_default(#20044,#10000,1,3,1,2) -hasLocation(#20043,#20044) +entry_cfg_node(#20042,#20001) +#20043=@"loc,{#10000},1,1,1,0" +locations_default(#20043,#10000,1,1,1,0) +hasLocation(#20042,#20043) +#20044=* +exit_cfg_node(#20044,#20001) +hasLocation(#20044,#20027) +successor(#20029,#20032) +successor(#20041,#20030) +successor(#20034,#20041) #20045=* -exit_cfg_node(#20045,#20033) -#20046=@"loc,{#10000},1,15,1,14" -locations_default(#20046,#10000,1,15,1,14) +entry_cfg_node(#20045,#20034) +#20046=@"loc,{#10000},1,3,1,2" +locations_default(#20046,#10000,1,3,1,2) hasLocation(#20045,#20046) -successor(#20037,#20045) -successor(#20043,#20037) -successor(#20031,#20033) -successor(#20029,#20042) -successor(#20040,#20028) +#20047=* +exit_cfg_node(#20047,#20034) +#20048=@"loc,{#10000},1,15,1,14" +locations_default(#20048,#10000,1,15,1,14) +hasLocation(#20047,#20048) +successor(#20039,#20047) +successor(#20045,#20039) +successor(#20032,#20034) +successor(#20030,#20044) +successor(#20042,#20029) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/others.js.trap b/javascript/extractor/tests/exprs/output/trap/others.js.trap index 5fc397235e85..1983b9ce74fe 100644 --- a/javascript/extractor/tests/exprs/output/trap/others.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/others.js.trap @@ -117,109 +117,111 @@ toplevels(#20001,0) #20042=@"loc,{#10000},1,1,4,0" locations_default(#20042,#10000,1,1,4,0) hasLocation(#20001,#20042) -#20043=* -stmts(#20043,2,#20001,0,"23, 42;") -hasLocation(#20043,#20003) -stmt_containers(#20043,#20001) +#20043=@"var;{this};{#20000}" +variables(#20043,"this",#20000) #20044=* -exprs(#20044,10,#20043,0,"23, 42") -#20045=@"loc,{#10000},1,1,1,6" -locations_default(#20045,#10000,1,1,1,6) -hasLocation(#20044,#20045) -enclosing_stmt(#20044,#20043) -expr_containers(#20044,#20001) -#20046=* -exprs(#20046,3,#20044,0,"23") -hasLocation(#20046,#20009) -enclosing_stmt(#20046,#20043) -expr_containers(#20046,#20001) -literals("23","23",#20046) +stmts(#20044,2,#20001,0,"23, 42;") +hasLocation(#20044,#20003) +stmt_containers(#20044,#20001) +#20045=* +exprs(#20045,10,#20044,0,"23, 42") +#20046=@"loc,{#10000},1,1,1,6" +locations_default(#20046,#10000,1,1,1,6) +hasLocation(#20045,#20046) +enclosing_stmt(#20045,#20044) +expr_containers(#20045,#20001) #20047=* -exprs(#20047,3,#20044,1,"42") -hasLocation(#20047,#20013) -enclosing_stmt(#20047,#20043) +exprs(#20047,3,#20045,0,"23") +hasLocation(#20047,#20009) +enclosing_stmt(#20047,#20044) expr_containers(#20047,#20001) -literals("42","42",#20047) +literals("23","23",#20047) #20048=* -stmts(#20048,2,#20001,1,"23, 42, 56;") -hasLocation(#20048,#20005) -stmt_containers(#20048,#20001) +exprs(#20048,3,#20045,1,"42") +hasLocation(#20048,#20013) +enclosing_stmt(#20048,#20044) +expr_containers(#20048,#20001) +literals("42","42",#20048) #20049=* -exprs(#20049,10,#20048,0,"23, 42, 56") -#20050=@"loc,{#10000},2,1,2,10" -locations_default(#20050,#10000,2,1,2,10) -hasLocation(#20049,#20050) -enclosing_stmt(#20049,#20048) -expr_containers(#20049,#20001) -#20051=* -exprs(#20051,3,#20049,0,"23") -hasLocation(#20051,#20017) -enclosing_stmt(#20051,#20048) -expr_containers(#20051,#20001) -literals("23","23",#20051) +stmts(#20049,2,#20001,1,"23, 42, 56;") +hasLocation(#20049,#20005) +stmt_containers(#20049,#20001) +#20050=* +exprs(#20050,10,#20049,0,"23, 42, 56") +#20051=@"loc,{#10000},2,1,2,10" +locations_default(#20051,#10000,2,1,2,10) +hasLocation(#20050,#20051) +enclosing_stmt(#20050,#20049) +expr_containers(#20050,#20001) #20052=* -exprs(#20052,3,#20049,1,"42") -hasLocation(#20052,#20021) -enclosing_stmt(#20052,#20048) +exprs(#20052,3,#20050,0,"23") +hasLocation(#20052,#20017) +enclosing_stmt(#20052,#20049) expr_containers(#20052,#20001) -literals("42","42",#20052) +literals("23","23",#20052) #20053=* -exprs(#20053,3,#20049,2,"56") -hasLocation(#20053,#20025) -enclosing_stmt(#20053,#20048) +exprs(#20053,3,#20050,1,"42") +hasLocation(#20053,#20021) +enclosing_stmt(#20053,#20049) expr_containers(#20053,#20001) -literals("56","56",#20053) +literals("42","42",#20053) #20054=* -stmts(#20054,2,#20001,2,"true ? 0 : 1;") -hasLocation(#20054,#20007) -stmt_containers(#20054,#20001) +exprs(#20054,3,#20050,2,"56") +hasLocation(#20054,#20025) +enclosing_stmt(#20054,#20049) +expr_containers(#20054,#20001) +literals("56","56",#20054) #20055=* -exprs(#20055,11,#20054,0,"true ? 0 : 1") -#20056=@"loc,{#10000},3,1,3,12" -locations_default(#20056,#10000,3,1,3,12) -hasLocation(#20055,#20056) -enclosing_stmt(#20055,#20054) -expr_containers(#20055,#20001) -#20057=* -exprs(#20057,2,#20055,0,"true") -hasLocation(#20057,#20029) -enclosing_stmt(#20057,#20054) -expr_containers(#20057,#20001) -literals("true","true",#20057) +stmts(#20055,2,#20001,2,"true ? 0 : 1;") +hasLocation(#20055,#20007) +stmt_containers(#20055,#20001) +#20056=* +exprs(#20056,11,#20055,0,"true ? 0 : 1") +#20057=@"loc,{#10000},3,1,3,12" +locations_default(#20057,#10000,3,1,3,12) +hasLocation(#20056,#20057) +enclosing_stmt(#20056,#20055) +expr_containers(#20056,#20001) #20058=* -exprs(#20058,3,#20055,1,"0") -hasLocation(#20058,#20033) -enclosing_stmt(#20058,#20054) +exprs(#20058,2,#20056,0,"true") +hasLocation(#20058,#20029) +enclosing_stmt(#20058,#20055) expr_containers(#20058,#20001) -literals("0","0",#20058) +literals("true","true",#20058) #20059=* -exprs(#20059,3,#20055,2,"1") -hasLocation(#20059,#20037) -enclosing_stmt(#20059,#20054) +exprs(#20059,3,#20056,1,"0") +hasLocation(#20059,#20033) +enclosing_stmt(#20059,#20055) expr_containers(#20059,#20001) -literals("1","1",#20059) +literals("0","0",#20059) #20060=* -entry_cfg_node(#20060,#20001) -#20061=@"loc,{#10000},1,1,1,0" -locations_default(#20061,#10000,1,1,1,0) -hasLocation(#20060,#20061) -#20062=* -exit_cfg_node(#20062,#20001) -hasLocation(#20062,#20041) +exprs(#20060,3,#20056,2,"1") +hasLocation(#20060,#20037) +enclosing_stmt(#20060,#20055) +expr_containers(#20060,#20001) +literals("1","1",#20060) +#20061=* +entry_cfg_node(#20061,#20001) +#20062=@"loc,{#10000},1,1,1,0" +locations_default(#20062,#10000,1,1,1,0) +hasLocation(#20061,#20062) +#20063=* +exit_cfg_node(#20063,#20001) +hasLocation(#20063,#20041) +successor(#20055,#20056) +successor(#20056,#20058) +successor(#20058,#20059) +successor(#20059,#20063) +successor(#20060,#20063) +successor(#20049,#20050) +successor(#20050,#20052) successor(#20054,#20055) -successor(#20055,#20057) -successor(#20057,#20058) -successor(#20058,#20062) -successor(#20059,#20062) -successor(#20048,#20049) -successor(#20049,#20051) successor(#20053,#20054) successor(#20052,#20053) -successor(#20051,#20052) -successor(#20043,#20044) -successor(#20044,#20046) +successor(#20044,#20045) +successor(#20045,#20047) +successor(#20048,#20049) successor(#20047,#20048) -successor(#20046,#20047) -successor(#20060,#20043) +successor(#20061,#20044) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/parens.js.trap b/javascript/extractor/tests/exprs/output/trap/parens.js.trap index 8b8d9b592ba9..e924f9b5ee02 100644 --- a/javascript/extractor/tests/exprs/output/trap/parens.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/parens.js.trap @@ -47,45 +47,47 @@ locations_default(#20015,#10000,1,9,1,8) hasLocation(#20014,#20015) toplevels(#20001,0) hasLocation(#20001,#20003) -#20016=* -stmts(#20016,2,#20001,0,"--(NaN);") -hasLocation(#20016,#20003) -stmt_containers(#20016,#20001) +#20016=@"var;{this};{#20000}" +variables(#20016,"this",#20000) #20017=* -exprs(#20017,61,#20016,0,"--(NaN)") -#20018=@"loc,{#10000},1,1,1,7" -locations_default(#20018,#10000,1,1,1,7) -hasLocation(#20017,#20018) -enclosing_stmt(#20017,#20016) -expr_containers(#20017,#20001) -#20019=* -exprs(#20019,63,#20017,0,"(NaN)") -#20020=@"loc,{#10000},1,3,1,7" -locations_default(#20020,#10000,1,3,1,7) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20016) -expr_containers(#20019,#20001) -#20021=* -exprs(#20021,79,#20019,0,"NaN") -hasLocation(#20021,#20009) -enclosing_stmt(#20021,#20016) -expr_containers(#20021,#20001) -literals("NaN","NaN",#20021) -#20022=@"var;{NaN};{#20000}" -variables(#20022,"NaN",#20000) -bind(#20021,#20022) -#20023=* -entry_cfg_node(#20023,#20001) -#20024=@"loc,{#10000},1,1,1,0" -locations_default(#20024,#10000,1,1,1,0) -hasLocation(#20023,#20024) -#20025=* -exit_cfg_node(#20025,#20001) -hasLocation(#20025,#20015) -successor(#20016,#20019) -successor(#20019,#20021) -successor(#20021,#20017) -successor(#20017,#20025) -successor(#20023,#20016) +stmts(#20017,2,#20001,0,"--(NaN);") +hasLocation(#20017,#20003) +stmt_containers(#20017,#20001) +#20018=* +exprs(#20018,61,#20017,0,"--(NaN)") +#20019=@"loc,{#10000},1,1,1,7" +locations_default(#20019,#10000,1,1,1,7) +hasLocation(#20018,#20019) +enclosing_stmt(#20018,#20017) +expr_containers(#20018,#20001) +#20020=* +exprs(#20020,63,#20018,0,"(NaN)") +#20021=@"loc,{#10000},1,3,1,7" +locations_default(#20021,#10000,1,3,1,7) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20017) +expr_containers(#20020,#20001) +#20022=* +exprs(#20022,79,#20020,0,"NaN") +hasLocation(#20022,#20009) +enclosing_stmt(#20022,#20017) +expr_containers(#20022,#20001) +literals("NaN","NaN",#20022) +#20023=@"var;{NaN};{#20000}" +variables(#20023,"NaN",#20000) +bind(#20022,#20023) +#20024=* +entry_cfg_node(#20024,#20001) +#20025=@"loc,{#10000},1,1,1,0" +locations_default(#20025,#10000,1,1,1,0) +hasLocation(#20024,#20025) +#20026=* +exit_cfg_node(#20026,#20001) +hasLocation(#20026,#20015) +successor(#20017,#20020) +successor(#20020,#20022) +successor(#20022,#20018) +successor(#20018,#20026) +successor(#20024,#20017) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/patterns.js.trap b/javascript/extractor/tests/exprs/output/trap/patterns.js.trap index 18c8b4851edf..9bc25db30a36 100644 --- a/javascript/extractor/tests/exprs/output/trap/patterns.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/patterns.js.trap @@ -247,282 +247,284 @@ hasLocation(#20001,#20092) variables(#20093,"get",#20000) #20094=@"var;{set};{#20000}" variables(#20094,"set",#20000) -#20095=* -stmts(#20095,18,#20001,0,"var { g ... } = x;") -hasLocation(#20095,#20003) -stmt_containers(#20095,#20001) +#20095=@"var;{this};{#20000}" +variables(#20095,"this",#20000) #20096=* -exprs(#20096,64,#20095,0,"{ get, set } = x") -#20097=@"loc,{#10000},1,5,1,20" -locations_default(#20097,#10000,1,5,1,20) -hasLocation(#20096,#20097) -enclosing_stmt(#20096,#20095) -expr_containers(#20096,#20001) -#20098=* -exprs(#20098,68,#20096,0,"{ get, set }") -#20099=@"loc,{#10000},1,5,1,16" -locations_default(#20099,#10000,1,5,1,16) -hasLocation(#20098,#20099) -enclosing_stmt(#20098,#20095) -expr_containers(#20098,#20001) -#20100=* -properties(#20100,#20098,0,0,"get") -hasLocation(#20100,#20015) +stmts(#20096,18,#20001,0,"var { g ... } = x;") +hasLocation(#20096,#20003) +stmt_containers(#20096,#20001) +#20097=* +exprs(#20097,64,#20096,0,"{ get, set } = x") +#20098=@"loc,{#10000},1,5,1,20" +locations_default(#20098,#10000,1,5,1,20) +hasLocation(#20097,#20098) +enclosing_stmt(#20097,#20096) +expr_containers(#20097,#20001) +#20099=* +exprs(#20099,68,#20097,0,"{ get, set }") +#20100=@"loc,{#10000},1,5,1,16" +locations_default(#20100,#10000,1,5,1,16) +hasLocation(#20099,#20100) +enclosing_stmt(#20099,#20096) +expr_containers(#20099,#20001) #20101=* -exprs(#20101,0,#20100,0,"get") +properties(#20101,#20099,0,0,"get") hasLocation(#20101,#20015) -enclosing_stmt(#20101,#20095) -expr_containers(#20101,#20001) -literals("get","get",#20101) #20102=* -exprs(#20102,78,#20100,1,"get") +exprs(#20102,0,#20101,0,"get") hasLocation(#20102,#20015) -enclosing_stmt(#20102,#20095) +enclosing_stmt(#20102,#20096) expr_containers(#20102,#20001) literals("get","get",#20102) -decl(#20102,#20093) #20103=* -properties(#20103,#20098,1,0,"set") -hasLocation(#20103,#20019) +exprs(#20103,78,#20101,1,"get") +hasLocation(#20103,#20015) +enclosing_stmt(#20103,#20096) +expr_containers(#20103,#20001) +literals("get","get",#20103) +decl(#20103,#20093) #20104=* -exprs(#20104,0,#20103,0,"set") +properties(#20104,#20099,1,0,"set") hasLocation(#20104,#20019) -enclosing_stmt(#20104,#20095) -expr_containers(#20104,#20001) -literals("set","set",#20104) #20105=* -exprs(#20105,78,#20103,1,"set") +exprs(#20105,0,#20104,0,"set") hasLocation(#20105,#20019) -enclosing_stmt(#20105,#20095) +enclosing_stmt(#20105,#20096) expr_containers(#20105,#20001) literals("set","set",#20105) -decl(#20105,#20094) #20106=* -exprs(#20106,79,#20096,1,"x") -hasLocation(#20106,#20025) -enclosing_stmt(#20106,#20095) +exprs(#20106,78,#20104,1,"set") +hasLocation(#20106,#20019) +enclosing_stmt(#20106,#20096) expr_containers(#20106,#20001) -literals("x","x",#20106) -#20107=@"var;{x};{#20000}" -variables(#20107,"x",#20000) -bind(#20106,#20107) -#20108=* -stmts(#20108,18,#20001,1,"var { get = 1 } = x;") -hasLocation(#20108,#20005) -stmt_containers(#20108,#20001) +literals("set","set",#20106) +decl(#20106,#20094) +#20107=* +exprs(#20107,79,#20097,1,"x") +hasLocation(#20107,#20025) +enclosing_stmt(#20107,#20096) +expr_containers(#20107,#20001) +literals("x","x",#20107) +#20108=@"var;{x};{#20000}" +variables(#20108,"x",#20000) +bind(#20107,#20108) #20109=* -exprs(#20109,64,#20108,0,"{ get = 1 } = x") -#20110=@"loc,{#10000},2,5,2,19" -locations_default(#20110,#10000,2,5,2,19) -hasLocation(#20109,#20110) -enclosing_stmt(#20109,#20108) -expr_containers(#20109,#20001) -#20111=* -exprs(#20111,68,#20109,0,"{ get = 1 }") -#20112=@"loc,{#10000},2,5,2,15" -locations_default(#20112,#10000,2,5,2,15) -hasLocation(#20111,#20112) -enclosing_stmt(#20111,#20108) -expr_containers(#20111,#20001) -#20113=* -properties(#20113,#20111,0,0,"get = 1") -#20114=@"loc,{#10000},2,7,2,13" -locations_default(#20114,#10000,2,7,2,13) -hasLocation(#20113,#20114) -#20115=* -exprs(#20115,0,#20113,0,"get") -hasLocation(#20115,#20033) -enclosing_stmt(#20115,#20108) -expr_containers(#20115,#20001) -literals("get","get",#20115) +stmts(#20109,18,#20001,1,"var { get = 1 } = x;") +hasLocation(#20109,#20005) +stmt_containers(#20109,#20001) +#20110=* +exprs(#20110,64,#20109,0,"{ get = 1 } = x") +#20111=@"loc,{#10000},2,5,2,19" +locations_default(#20111,#10000,2,5,2,19) +hasLocation(#20110,#20111) +enclosing_stmt(#20110,#20109) +expr_containers(#20110,#20001) +#20112=* +exprs(#20112,68,#20110,0,"{ get = 1 }") +#20113=@"loc,{#10000},2,5,2,15" +locations_default(#20113,#10000,2,5,2,15) +hasLocation(#20112,#20113) +enclosing_stmt(#20112,#20109) +expr_containers(#20112,#20001) +#20114=* +properties(#20114,#20112,0,0,"get = 1") +#20115=@"loc,{#10000},2,7,2,13" +locations_default(#20115,#10000,2,7,2,13) +hasLocation(#20114,#20115) #20116=* -exprs(#20116,78,#20113,1,"get") +exprs(#20116,0,#20114,0,"get") hasLocation(#20116,#20033) -enclosing_stmt(#20116,#20108) +enclosing_stmt(#20116,#20109) expr_containers(#20116,#20001) literals("get","get",#20116) -decl(#20116,#20093) #20117=* -exprs(#20117,3,#20113,2,"1") -hasLocation(#20117,#20037) -enclosing_stmt(#20117,#20108) +exprs(#20117,78,#20114,1,"get") +hasLocation(#20117,#20033) +enclosing_stmt(#20117,#20109) expr_containers(#20117,#20001) -literals("1","1",#20117) +literals("get","get",#20117) +decl(#20117,#20093) #20118=* -exprs(#20118,79,#20109,1,"x") -hasLocation(#20118,#20043) -enclosing_stmt(#20118,#20108) +exprs(#20118,3,#20114,2,"1") +hasLocation(#20118,#20037) +enclosing_stmt(#20118,#20109) expr_containers(#20118,#20001) -literals("x","x",#20118) -bind(#20118,#20107) +literals("1","1",#20118) #20119=* -stmts(#20119,18,#20001,2,"var { set = 1 } = x;") -hasLocation(#20119,#20007) -stmt_containers(#20119,#20001) +exprs(#20119,79,#20110,1,"x") +hasLocation(#20119,#20043) +enclosing_stmt(#20119,#20109) +expr_containers(#20119,#20001) +literals("x","x",#20119) +bind(#20119,#20108) #20120=* -exprs(#20120,64,#20119,0,"{ set = 1 } = x") -#20121=@"loc,{#10000},3,5,3,19" -locations_default(#20121,#10000,3,5,3,19) -hasLocation(#20120,#20121) -enclosing_stmt(#20120,#20119) -expr_containers(#20120,#20001) -#20122=* -exprs(#20122,68,#20120,0,"{ set = 1 }") -#20123=@"loc,{#10000},3,5,3,15" -locations_default(#20123,#10000,3,5,3,15) -hasLocation(#20122,#20123) -enclosing_stmt(#20122,#20119) -expr_containers(#20122,#20001) -#20124=* -properties(#20124,#20122,0,0,"set = 1") -#20125=@"loc,{#10000},3,7,3,13" -locations_default(#20125,#10000,3,7,3,13) -hasLocation(#20124,#20125) -#20126=* -exprs(#20126,0,#20124,0,"set") -hasLocation(#20126,#20051) -enclosing_stmt(#20126,#20119) -expr_containers(#20126,#20001) -literals("set","set",#20126) +stmts(#20120,18,#20001,2,"var { set = 1 } = x;") +hasLocation(#20120,#20007) +stmt_containers(#20120,#20001) +#20121=* +exprs(#20121,64,#20120,0,"{ set = 1 } = x") +#20122=@"loc,{#10000},3,5,3,19" +locations_default(#20122,#10000,3,5,3,19) +hasLocation(#20121,#20122) +enclosing_stmt(#20121,#20120) +expr_containers(#20121,#20001) +#20123=* +exprs(#20123,68,#20121,0,"{ set = 1 }") +#20124=@"loc,{#10000},3,5,3,15" +locations_default(#20124,#10000,3,5,3,15) +hasLocation(#20123,#20124) +enclosing_stmt(#20123,#20120) +expr_containers(#20123,#20001) +#20125=* +properties(#20125,#20123,0,0,"set = 1") +#20126=@"loc,{#10000},3,7,3,13" +locations_default(#20126,#10000,3,7,3,13) +hasLocation(#20125,#20126) #20127=* -exprs(#20127,78,#20124,1,"set") +exprs(#20127,0,#20125,0,"set") hasLocation(#20127,#20051) -enclosing_stmt(#20127,#20119) +enclosing_stmt(#20127,#20120) expr_containers(#20127,#20001) literals("set","set",#20127) -decl(#20127,#20094) #20128=* -exprs(#20128,3,#20124,2,"1") -hasLocation(#20128,#20055) -enclosing_stmt(#20128,#20119) +exprs(#20128,78,#20125,1,"set") +hasLocation(#20128,#20051) +enclosing_stmt(#20128,#20120) expr_containers(#20128,#20001) -literals("1","1",#20128) +literals("set","set",#20128) +decl(#20128,#20094) #20129=* -exprs(#20129,79,#20120,1,"x") -hasLocation(#20129,#20061) -enclosing_stmt(#20129,#20119) +exprs(#20129,3,#20125,2,"1") +hasLocation(#20129,#20055) +enclosing_stmt(#20129,#20120) expr_containers(#20129,#20001) -literals("x","x",#20129) -bind(#20129,#20107) +literals("1","1",#20129) #20130=* -stmts(#20130,18,#20001,3,"var { g ... } = x;") -hasLocation(#20130,#20009) -stmt_containers(#20130,#20001) +exprs(#20130,79,#20121,1,"x") +hasLocation(#20130,#20061) +enclosing_stmt(#20130,#20120) +expr_containers(#20130,#20001) +literals("x","x",#20130) +bind(#20130,#20108) #20131=* -exprs(#20131,64,#20130,0,"{ get = ... 1 } = x") -#20132=@"loc,{#10000},4,5,4,28" -locations_default(#20132,#10000,4,5,4,28) -hasLocation(#20131,#20132) -enclosing_stmt(#20131,#20130) -expr_containers(#20131,#20001) -#20133=* -exprs(#20133,68,#20131,0,"{ get = 1, set = 1 }") -#20134=@"loc,{#10000},4,5,4,24" -locations_default(#20134,#10000,4,5,4,24) -hasLocation(#20133,#20134) -enclosing_stmt(#20133,#20130) -expr_containers(#20133,#20001) -#20135=* -properties(#20135,#20133,0,0,"get = 1") -#20136=@"loc,{#10000},4,7,4,13" -locations_default(#20136,#10000,4,7,4,13) -hasLocation(#20135,#20136) -#20137=* -exprs(#20137,0,#20135,0,"get") -hasLocation(#20137,#20069) -enclosing_stmt(#20137,#20130) -expr_containers(#20137,#20001) -literals("get","get",#20137) +stmts(#20131,18,#20001,3,"var { g ... } = x;") +hasLocation(#20131,#20009) +stmt_containers(#20131,#20001) +#20132=* +exprs(#20132,64,#20131,0,"{ get = ... 1 } = x") +#20133=@"loc,{#10000},4,5,4,28" +locations_default(#20133,#10000,4,5,4,28) +hasLocation(#20132,#20133) +enclosing_stmt(#20132,#20131) +expr_containers(#20132,#20001) +#20134=* +exprs(#20134,68,#20132,0,"{ get = 1, set = 1 }") +#20135=@"loc,{#10000},4,5,4,24" +locations_default(#20135,#10000,4,5,4,24) +hasLocation(#20134,#20135) +enclosing_stmt(#20134,#20131) +expr_containers(#20134,#20001) +#20136=* +properties(#20136,#20134,0,0,"get = 1") +#20137=@"loc,{#10000},4,7,4,13" +locations_default(#20137,#10000,4,7,4,13) +hasLocation(#20136,#20137) #20138=* -exprs(#20138,78,#20135,1,"get") +exprs(#20138,0,#20136,0,"get") hasLocation(#20138,#20069) -enclosing_stmt(#20138,#20130) +enclosing_stmt(#20138,#20131) expr_containers(#20138,#20001) literals("get","get",#20138) -decl(#20138,#20093) #20139=* -exprs(#20139,3,#20135,2,"1") -hasLocation(#20139,#20073) -enclosing_stmt(#20139,#20130) +exprs(#20139,78,#20136,1,"get") +hasLocation(#20139,#20069) +enclosing_stmt(#20139,#20131) expr_containers(#20139,#20001) -literals("1","1",#20139) +literals("get","get",#20139) +decl(#20139,#20093) #20140=* -properties(#20140,#20133,1,0,"set = 1") -#20141=@"loc,{#10000},4,16,4,22" -locations_default(#20141,#10000,4,16,4,22) -hasLocation(#20140,#20141) -#20142=* -exprs(#20142,0,#20140,0,"set") -hasLocation(#20142,#20077) -enclosing_stmt(#20142,#20130) -expr_containers(#20142,#20001) -literals("set","set",#20142) +exprs(#20140,3,#20136,2,"1") +hasLocation(#20140,#20073) +enclosing_stmt(#20140,#20131) +expr_containers(#20140,#20001) +literals("1","1",#20140) +#20141=* +properties(#20141,#20134,1,0,"set = 1") +#20142=@"loc,{#10000},4,16,4,22" +locations_default(#20142,#10000,4,16,4,22) +hasLocation(#20141,#20142) #20143=* -exprs(#20143,78,#20140,1,"set") +exprs(#20143,0,#20141,0,"set") hasLocation(#20143,#20077) -enclosing_stmt(#20143,#20130) +enclosing_stmt(#20143,#20131) expr_containers(#20143,#20001) literals("set","set",#20143) -decl(#20143,#20094) #20144=* -exprs(#20144,3,#20140,2,"1") -hasLocation(#20144,#20081) -enclosing_stmt(#20144,#20130) +exprs(#20144,78,#20141,1,"set") +hasLocation(#20144,#20077) +enclosing_stmt(#20144,#20131) expr_containers(#20144,#20001) -literals("1","1",#20144) +literals("set","set",#20144) +decl(#20144,#20094) #20145=* -exprs(#20145,79,#20131,1,"x") -hasLocation(#20145,#20087) -enclosing_stmt(#20145,#20130) +exprs(#20145,3,#20141,2,"1") +hasLocation(#20145,#20081) +enclosing_stmt(#20145,#20131) expr_containers(#20145,#20001) -literals("x","x",#20145) -bind(#20145,#20107) +literals("1","1",#20145) #20146=* -entry_cfg_node(#20146,#20001) -#20147=@"loc,{#10000},1,1,1,0" -locations_default(#20147,#10000,1,1,1,0) -hasLocation(#20146,#20147) -#20148=* -exit_cfg_node(#20148,#20001) -hasLocation(#20148,#20091) -successor(#20130,#20145) -successor(#20133,#20137) -successor(#20144,#20140) +exprs(#20146,79,#20132,1,"x") +hasLocation(#20146,#20087) +enclosing_stmt(#20146,#20131) +expr_containers(#20146,#20001) +literals("x","x",#20146) +bind(#20146,#20108) +#20147=* +entry_cfg_node(#20147,#20001) +#20148=@"loc,{#10000},1,1,1,0" +locations_default(#20148,#10000,1,1,1,0) +hasLocation(#20147,#20148) +#20149=* +exit_cfg_node(#20149,#20001) +hasLocation(#20149,#20091) +successor(#20131,#20146) +successor(#20134,#20138) +successor(#20145,#20141) +successor(#20144,#20145) successor(#20143,#20144) -successor(#20142,#20143) -successor(#20140,#20131) -successor(#20139,#20135) +successor(#20141,#20132) +successor(#20140,#20136) +successor(#20139,#20140) successor(#20138,#20139) -successor(#20137,#20138) -successor(#20135,#20142) -successor(#20145,#20133) -successor(#20131,#20148) -successor(#20119,#20129) -successor(#20122,#20126) -successor(#20128,#20124) -successor(#20127,#20128) -successor(#20126,#20127) -successor(#20124,#20120) -successor(#20129,#20122) +successor(#20136,#20143) +successor(#20146,#20134) +successor(#20132,#20149) successor(#20120,#20130) -successor(#20108,#20118) -successor(#20111,#20115) -successor(#20117,#20113) -successor(#20116,#20117) -successor(#20115,#20116) -successor(#20113,#20109) -successor(#20118,#20111) +successor(#20123,#20127) +successor(#20129,#20125) +successor(#20128,#20129) +successor(#20127,#20128) +successor(#20125,#20121) +successor(#20130,#20123) +successor(#20121,#20131) successor(#20109,#20119) -successor(#20095,#20106) -successor(#20098,#20101) -successor(#20105,#20103) -successor(#20104,#20105) -successor(#20103,#20096) -successor(#20102,#20100) -successor(#20101,#20102) -successor(#20100,#20104) -successor(#20106,#20098) -successor(#20096,#20108) -successor(#20146,#20095) +successor(#20112,#20116) +successor(#20118,#20114) +successor(#20117,#20118) +successor(#20116,#20117) +successor(#20114,#20110) +successor(#20119,#20112) +successor(#20110,#20120) +successor(#20096,#20107) +successor(#20099,#20102) +successor(#20106,#20104) +successor(#20105,#20106) +successor(#20104,#20097) +successor(#20103,#20101) +successor(#20102,#20103) +successor(#20101,#20105) +successor(#20107,#20099) +successor(#20097,#20109) +successor(#20147,#20096) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/primaries.js.trap b/javascript/extractor/tests/exprs/output/trap/primaries.js.trap index 034ff1c98c07..f8625fd5cc7e 100644 --- a/javascript/extractor/tests/exprs/output/trap/primaries.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/primaries.js.trap @@ -852,873 +852,882 @@ toplevels(#20001,0) #20324=@"loc,{#10000},1,1,30,13" locations_default(#20324,#10000,1,1,30,13) hasLocation(#20001,#20324) -#20325=* -stmts(#20325,2,#20001,0,"null;") -hasLocation(#20325,#20003) -stmt_containers(#20325,#20001) +#20325=@"var;{this};{#20000}" +variables(#20325,"this",#20000) #20326=* -exprs(#20326,1,#20325,0,"null") -hasLocation(#20326,#20063) -enclosing_stmt(#20326,#20325) -expr_containers(#20326,#20001) -literals("null","null",#20326) +stmts(#20326,2,#20001,0,"null;") +hasLocation(#20326,#20003) +stmt_containers(#20326,#20001) #20327=* -stmts(#20327,2,#20001,1,"true;") -hasLocation(#20327,#20005) -stmt_containers(#20327,#20001) +exprs(#20327,1,#20326,0,"null") +hasLocation(#20327,#20063) +enclosing_stmt(#20327,#20326) +expr_containers(#20327,#20001) +literals("null","null",#20327) #20328=* -exprs(#20328,2,#20327,0,"true") -hasLocation(#20328,#20067) -enclosing_stmt(#20328,#20327) -expr_containers(#20328,#20001) -literals("true","true",#20328) +stmts(#20328,2,#20001,1,"true;") +hasLocation(#20328,#20005) +stmt_containers(#20328,#20001) #20329=* -stmts(#20329,2,#20001,2,"false;") -hasLocation(#20329,#20007) -stmt_containers(#20329,#20001) +exprs(#20329,2,#20328,0,"true") +hasLocation(#20329,#20067) +enclosing_stmt(#20329,#20328) +expr_containers(#20329,#20001) +literals("true","true",#20329) #20330=* -exprs(#20330,2,#20329,0,"false") -hasLocation(#20330,#20071) -enclosing_stmt(#20330,#20329) -expr_containers(#20330,#20001) -literals("false","false",#20330) +stmts(#20330,2,#20001,2,"false;") +hasLocation(#20330,#20007) +stmt_containers(#20330,#20001) #20331=* -stmts(#20331,2,#20001,3,"23;") -hasLocation(#20331,#20009) -stmt_containers(#20331,#20001) +exprs(#20331,2,#20330,0,"false") +hasLocation(#20331,#20071) +enclosing_stmt(#20331,#20330) +expr_containers(#20331,#20001) +literals("false","false",#20331) #20332=* -exprs(#20332,3,#20331,0,"23") -hasLocation(#20332,#20075) -enclosing_stmt(#20332,#20331) -expr_containers(#20332,#20001) -literals("23","23",#20332) +stmts(#20332,2,#20001,3,"23;") +hasLocation(#20332,#20009) +stmt_containers(#20332,#20001) #20333=* -stmts(#20333,2,#20001,4,"2.3;") -hasLocation(#20333,#20011) -stmt_containers(#20333,#20001) +exprs(#20333,3,#20332,0,"23") +hasLocation(#20333,#20075) +enclosing_stmt(#20333,#20332) +expr_containers(#20333,#20001) +literals("23","23",#20333) #20334=* -exprs(#20334,3,#20333,0,"2.3") -hasLocation(#20334,#20079) -enclosing_stmt(#20334,#20333) -expr_containers(#20334,#20001) -literals("2.3","2.3",#20334) +stmts(#20334,2,#20001,4,"2.3;") +hasLocation(#20334,#20011) +stmt_containers(#20334,#20001) #20335=* -stmts(#20335,2,#20001,5,".42;") -hasLocation(#20335,#20013) -stmt_containers(#20335,#20001) +exprs(#20335,3,#20334,0,"2.3") +hasLocation(#20335,#20079) +enclosing_stmt(#20335,#20334) +expr_containers(#20335,#20001) +literals("2.3","2.3",#20335) #20336=* -exprs(#20336,3,#20335,0,".42") -hasLocation(#20336,#20083) -enclosing_stmt(#20336,#20335) -expr_containers(#20336,#20001) -literals("0.42",".42",#20336) +stmts(#20336,2,#20001,5,".42;") +hasLocation(#20336,#20013) +stmt_containers(#20336,#20001) #20337=* -stmts(#20337,2,#20001,6,"7.6e23;") -hasLocation(#20337,#20015) -stmt_containers(#20337,#20001) +exprs(#20337,3,#20336,0,".42") +hasLocation(#20337,#20083) +enclosing_stmt(#20337,#20336) +expr_containers(#20337,#20001) +literals("0.42",".42",#20337) #20338=* -exprs(#20338,3,#20337,0,"7.6e23") -hasLocation(#20338,#20087) -enclosing_stmt(#20338,#20337) -expr_containers(#20338,#20001) -literals("7.6E23","7.6e23",#20338) +stmts(#20338,2,#20001,6,"7.6e23;") +hasLocation(#20338,#20015) +stmt_containers(#20338,#20001) #20339=* -stmts(#20339,2,#20001,7,"1E-42;") -hasLocation(#20339,#20017) -stmt_containers(#20339,#20001) +exprs(#20339,3,#20338,0,"7.6e23") +hasLocation(#20339,#20087) +enclosing_stmt(#20339,#20338) +expr_containers(#20339,#20001) +literals("7.6E23","7.6e23",#20339) #20340=* -exprs(#20340,3,#20339,0,"1E-42") -hasLocation(#20340,#20091) -enclosing_stmt(#20340,#20339) -expr_containers(#20340,#20001) -literals("1.0E-42","1E-42",#20340) +stmts(#20340,2,#20001,7,"1E-42;") +hasLocation(#20340,#20017) +stmt_containers(#20340,#20001) #20341=* -stmts(#20341,2,#20001,8,"0xdeadbeef;") -hasLocation(#20341,#20019) -stmt_containers(#20341,#20001) +exprs(#20341,3,#20340,0,"1E-42") +hasLocation(#20341,#20091) +enclosing_stmt(#20341,#20340) +expr_containers(#20341,#20001) +literals("1.0E-42","1E-42",#20341) #20342=* -exprs(#20342,3,#20341,0,"0xdeadbeef") -hasLocation(#20342,#20095) -enclosing_stmt(#20342,#20341) -expr_containers(#20342,#20001) -literals("3735928559","0xdeadbeef",#20342) +stmts(#20342,2,#20001,8,"0xdeadbeef;") +hasLocation(#20342,#20019) +stmt_containers(#20342,#20001) #20343=* -stmts(#20343,2,#20001,9,"""Hello"";") -hasLocation(#20343,#20021) -stmt_containers(#20343,#20001) +exprs(#20343,3,#20342,0,"0xdeadbeef") +hasLocation(#20343,#20095) +enclosing_stmt(#20343,#20342) +expr_containers(#20343,#20001) +literals("3735928559","0xdeadbeef",#20343) #20344=* -exprs(#20344,4,#20343,0,"""Hello""") -hasLocation(#20344,#20099) -enclosing_stmt(#20344,#20343) -expr_containers(#20344,#20001) -literals("Hello","""Hello""",#20344) +stmts(#20344,2,#20001,9,"""Hello"";") +hasLocation(#20344,#20021) +stmt_containers(#20344,#20001) #20345=* -regexpterm(#20345,14,#20344,0,"Hello") -#20346=@"loc,{#10000},10,2,10,6" -locations_default(#20346,#10000,10,2,10,6) -hasLocation(#20345,#20346) -regexp_const_value(#20345,"Hello") -#20347=* -stmts(#20347,2,#20001,10,"'world';") -hasLocation(#20347,#20023) -stmt_containers(#20347,#20001) +exprs(#20345,4,#20344,0,"""Hello""") +hasLocation(#20345,#20099) +enclosing_stmt(#20345,#20344) +expr_containers(#20345,#20001) +literals("Hello","""Hello""",#20345) +#20346=* +regexpterm(#20346,14,#20345,0,"Hello") +#20347=@"loc,{#10000},10,2,10,6" +locations_default(#20347,#10000,10,2,10,6) +hasLocation(#20346,#20347) +regexp_const_value(#20346,"Hello") #20348=* -exprs(#20348,4,#20347,0,"'world'") -hasLocation(#20348,#20103) -enclosing_stmt(#20348,#20347) -expr_containers(#20348,#20001) -literals("world","'world'",#20348) +stmts(#20348,2,#20001,10,"'world';") +hasLocation(#20348,#20023) +stmt_containers(#20348,#20001) #20349=* -regexpterm(#20349,14,#20348,0,"world") -#20350=@"loc,{#10000},11,2,11,6" -locations_default(#20350,#10000,11,2,11,6) -hasLocation(#20349,#20350) -regexp_const_value(#20349,"world") -#20351=* -stmts(#20351,2,#20001,11,"""'what?'\x0a"";") -hasLocation(#20351,#20025) -stmt_containers(#20351,#20001) +exprs(#20349,4,#20348,0,"'world'") +hasLocation(#20349,#20103) +enclosing_stmt(#20349,#20348) +expr_containers(#20349,#20001) +literals("world","'world'",#20349) +#20350=* +regexpterm(#20350,14,#20349,0,"world") +#20351=@"loc,{#10000},11,2,11,6" +locations_default(#20351,#10000,11,2,11,6) +hasLocation(#20350,#20351) +regexp_const_value(#20350,"world") #20352=* -exprs(#20352,4,#20351,0,"""'what?'\x0a""") -hasLocation(#20352,#20107) -enclosing_stmt(#20352,#20351) -expr_containers(#20352,#20001) -literals("'what?' -","""'what?'\x0a""",#20352) +stmts(#20352,2,#20001,11,"""'what?'\x0a"";") +hasLocation(#20352,#20025) +stmt_containers(#20352,#20001) #20353=* -regexpterm(#20353,1,#20352,0,"'what?' +exprs(#20353,4,#20352,0,"""'what?'\x0a""") +hasLocation(#20353,#20107) +enclosing_stmt(#20353,#20352) +expr_containers(#20353,#20001) +literals("'what?' +","""'what?'\x0a""",#20353) +#20354=* +regexpterm(#20354,1,#20353,0,"'what?' ") -#20354=@"loc,{#10000},12,2,12,12" -locations_default(#20354,#10000,12,2,12,12) -hasLocation(#20353,#20354) -#20355=* -regexpterm(#20355,14,#20353,0,"'wha") -#20356=@"loc,{#10000},12,2,12,5" -locations_default(#20356,#10000,12,2,12,5) -hasLocation(#20355,#20356) -regexp_const_value(#20355,"'wha") -#20357=* -regexpterm(#20357,10,#20353,1,"t?") -#20358=@"loc,{#10000},12,6,12,7" -locations_default(#20358,#10000,12,6,12,7) -hasLocation(#20357,#20358) -is_greedy(#20357) -#20359=* -regexpterm(#20359,14,#20357,0,"t") -#20360=@"loc,{#10000},12,6,12,6" -locations_default(#20360,#10000,12,6,12,6) -hasLocation(#20359,#20360) -regexp_const_value(#20359,"t") -#20361=* -regexpterm(#20361,14,#20353,2,"' +#20355=@"loc,{#10000},12,2,12,12" +locations_default(#20355,#10000,12,2,12,12) +hasLocation(#20354,#20355) +#20356=* +regexpterm(#20356,14,#20354,0,"'wha") +#20357=@"loc,{#10000},12,2,12,5" +locations_default(#20357,#10000,12,2,12,5) +hasLocation(#20356,#20357) +regexp_const_value(#20356,"'wha") +#20358=* +regexpterm(#20358,10,#20354,1,"t?") +#20359=@"loc,{#10000},12,6,12,7" +locations_default(#20359,#10000,12,6,12,7) +hasLocation(#20358,#20359) +is_greedy(#20358) +#20360=* +regexpterm(#20360,14,#20358,0,"t") +#20361=@"loc,{#10000},12,6,12,6" +locations_default(#20361,#10000,12,6,12,6) +hasLocation(#20360,#20361) +regexp_const_value(#20360,"t") +#20362=* +regexpterm(#20362,14,#20354,2,"' ") -#20362=@"loc,{#10000},12,8,12,12" -locations_default(#20362,#10000,12,8,12,12) -hasLocation(#20361,#20362) -regexp_const_value(#20361,"' +#20363=@"loc,{#10000},12,8,12,12" +locations_default(#20363,#10000,12,8,12,12) +hasLocation(#20362,#20363) +regexp_const_value(#20362,"' ") -#20363=* -stmts(#20363,2,#20001,12,"'""why?""\n';") -hasLocation(#20363,#20027) -stmt_containers(#20363,#20001) #20364=* -exprs(#20364,4,#20363,0,"'""why?""\n'") -hasLocation(#20364,#20111) -enclosing_stmt(#20364,#20363) -expr_containers(#20364,#20001) -literals("""why?"" -","'""why?""\n'",#20364) +stmts(#20364,2,#20001,12,"'""why?""\n';") +hasLocation(#20364,#20027) +stmt_containers(#20364,#20001) #20365=* -regexpterm(#20365,1,#20364,0,"""why?"" +exprs(#20365,4,#20364,0,"'""why?""\n'") +hasLocation(#20365,#20111) +enclosing_stmt(#20365,#20364) +expr_containers(#20365,#20001) +literals("""why?"" +","'""why?""\n'",#20365) +#20366=* +regexpterm(#20366,1,#20365,0,"""why?"" ") -#20366=@"loc,{#10000},13,2,13,9" -locations_default(#20366,#10000,13,2,13,9) -hasLocation(#20365,#20366) -#20367=* -regexpterm(#20367,14,#20365,0,"""wh") -#20368=@"loc,{#10000},13,2,13,4" -locations_default(#20368,#10000,13,2,13,4) -hasLocation(#20367,#20368) -regexp_const_value(#20367,"""wh") -#20369=* -regexpterm(#20369,10,#20365,1,"y?") -#20370=@"loc,{#10000},13,5,13,6" -locations_default(#20370,#10000,13,5,13,6) -hasLocation(#20369,#20370) -is_greedy(#20369) -#20371=* -regexpterm(#20371,14,#20369,0,"y") -#20372=@"loc,{#10000},13,5,13,5" -locations_default(#20372,#10000,13,5,13,5) -hasLocation(#20371,#20372) -regexp_const_value(#20371,"y") -#20373=* -regexpterm(#20373,14,#20365,2,""" +#20367=@"loc,{#10000},13,2,13,9" +locations_default(#20367,#10000,13,2,13,9) +hasLocation(#20366,#20367) +#20368=* +regexpterm(#20368,14,#20366,0,"""wh") +#20369=@"loc,{#10000},13,2,13,4" +locations_default(#20369,#10000,13,2,13,4) +hasLocation(#20368,#20369) +regexp_const_value(#20368,"""wh") +#20370=* +regexpterm(#20370,10,#20366,1,"y?") +#20371=@"loc,{#10000},13,5,13,6" +locations_default(#20371,#10000,13,5,13,6) +hasLocation(#20370,#20371) +is_greedy(#20370) +#20372=* +regexpterm(#20372,14,#20370,0,"y") +#20373=@"loc,{#10000},13,5,13,5" +locations_default(#20373,#10000,13,5,13,5) +hasLocation(#20372,#20373) +regexp_const_value(#20372,"y") +#20374=* +regexpterm(#20374,14,#20366,2,""" ") -#20374=@"loc,{#10000},13,7,13,9" -locations_default(#20374,#10000,13,7,13,9) -hasLocation(#20373,#20374) -regexp_const_value(#20373,""" +#20375=@"loc,{#10000},13,7,13,9" +locations_default(#20375,#10000,13,7,13,9) +hasLocation(#20374,#20375) +regexp_const_value(#20374,""" ") -#20375=* -stmts(#20375,2,#20001,13,"/^(need?le)+/gi;") -hasLocation(#20375,#20029) -stmt_containers(#20375,#20001) #20376=* -exprs(#20376,5,#20375,0,"/^(need?le)+/gi") -hasLocation(#20376,#20115) -enclosing_stmt(#20376,#20375) -expr_containers(#20376,#20001) -literals("/^(need?le)+/gi","/^(need?le)+/gi",#20376) +stmts(#20376,2,#20001,13,"/^(need?le)+/gi;") +hasLocation(#20376,#20029) +stmt_containers(#20376,#20001) #20377=* -regexpterm(#20377,1,#20376,0,"^(need?le)+") -#20378=@"loc,{#10000},14,2,14,12" -locations_default(#20378,#10000,14,2,14,12) -hasLocation(#20377,#20378) -#20379=* -regexpterm(#20379,2,#20377,0,"^") -#20380=@"loc,{#10000},14,2,14,2" -locations_default(#20380,#10000,14,2,14,2) -hasLocation(#20379,#20380) -#20381=* -regexpterm(#20381,9,#20377,1,"(need?le)+") -#20382=@"loc,{#10000},14,3,14,12" -locations_default(#20382,#10000,14,3,14,12) -hasLocation(#20381,#20382) -is_greedy(#20381) -#20383=* -regexpterm(#20383,13,#20381,0,"(need?le)") -#20384=@"loc,{#10000},14,3,14,11" -locations_default(#20384,#10000,14,3,14,11) -hasLocation(#20383,#20384) -is_capture(#20383,1) -#20385=* -regexpterm(#20385,1,#20383,0,"need?le") -#20386=@"loc,{#10000},14,4,14,10" -locations_default(#20386,#10000,14,4,14,10) -hasLocation(#20385,#20386) -#20387=* -regexpterm(#20387,14,#20385,0,"nee") -#20388=@"loc,{#10000},14,4,14,6" -locations_default(#20388,#10000,14,4,14,6) -hasLocation(#20387,#20388) -regexp_const_value(#20387,"nee") -#20389=* -regexpterm(#20389,10,#20385,1,"d?") -#20390=@"loc,{#10000},14,7,14,8" -locations_default(#20390,#10000,14,7,14,8) -hasLocation(#20389,#20390) -is_greedy(#20389) -#20391=* -regexpterm(#20391,14,#20389,0,"d") -#20392=@"loc,{#10000},14,7,14,7" -locations_default(#20392,#10000,14,7,14,7) -hasLocation(#20391,#20392) -regexp_const_value(#20391,"d") -#20393=* -regexpterm(#20393,14,#20385,2,"le") -#20394=@"loc,{#10000},14,9,14,10" -locations_default(#20394,#10000,14,9,14,10) -hasLocation(#20393,#20394) -regexp_const_value(#20393,"le") -#20395=* -stmts(#20395,2,#20001,14,"(23);") -hasLocation(#20395,#20031) -stmt_containers(#20395,#20001) +exprs(#20377,5,#20376,0,"/^(need?le)+/gi") +hasLocation(#20377,#20115) +enclosing_stmt(#20377,#20376) +expr_containers(#20377,#20001) +literals("/^(need?le)+/gi","/^(need?le)+/gi",#20377) +#20378=* +regexpterm(#20378,1,#20377,0,"^(need?le)+") +#20379=@"loc,{#10000},14,2,14,12" +locations_default(#20379,#10000,14,2,14,12) +hasLocation(#20378,#20379) +#20380=* +regexpterm(#20380,2,#20378,0,"^") +#20381=@"loc,{#10000},14,2,14,2" +locations_default(#20381,#10000,14,2,14,2) +hasLocation(#20380,#20381) +#20382=* +regexpterm(#20382,9,#20378,1,"(need?le)+") +#20383=@"loc,{#10000},14,3,14,12" +locations_default(#20383,#10000,14,3,14,12) +hasLocation(#20382,#20383) +is_greedy(#20382) +#20384=* +regexpterm(#20384,13,#20382,0,"(need?le)") +#20385=@"loc,{#10000},14,3,14,11" +locations_default(#20385,#10000,14,3,14,11) +hasLocation(#20384,#20385) +is_capture(#20384,1) +#20386=* +regexpterm(#20386,1,#20384,0,"need?le") +#20387=@"loc,{#10000},14,4,14,10" +locations_default(#20387,#10000,14,4,14,10) +hasLocation(#20386,#20387) +#20388=* +regexpterm(#20388,14,#20386,0,"nee") +#20389=@"loc,{#10000},14,4,14,6" +locations_default(#20389,#10000,14,4,14,6) +hasLocation(#20388,#20389) +regexp_const_value(#20388,"nee") +#20390=* +regexpterm(#20390,10,#20386,1,"d?") +#20391=@"loc,{#10000},14,7,14,8" +locations_default(#20391,#10000,14,7,14,8) +hasLocation(#20390,#20391) +is_greedy(#20390) +#20392=* +regexpterm(#20392,14,#20390,0,"d") +#20393=@"loc,{#10000},14,7,14,7" +locations_default(#20393,#10000,14,7,14,7) +hasLocation(#20392,#20393) +regexp_const_value(#20392,"d") +#20394=* +regexpterm(#20394,14,#20386,2,"le") +#20395=@"loc,{#10000},14,9,14,10" +locations_default(#20395,#10000,14,9,14,10) +hasLocation(#20394,#20395) +regexp_const_value(#20394,"le") #20396=* -exprs(#20396,63,#20395,0,"(23)") -#20397=@"loc,{#10000},15,1,15,4" -locations_default(#20397,#10000,15,1,15,4) -hasLocation(#20396,#20397) -enclosing_stmt(#20396,#20395) -expr_containers(#20396,#20001) -#20398=* -exprs(#20398,3,#20396,0,"23") -hasLocation(#20398,#20121) -enclosing_stmt(#20398,#20395) -expr_containers(#20398,#20001) -literals("23","23",#20398) +stmts(#20396,2,#20001,14,"(23);") +hasLocation(#20396,#20031) +stmt_containers(#20396,#20001) +#20397=* +exprs(#20397,63,#20396,0,"(23)") +#20398=@"loc,{#10000},15,1,15,4" +locations_default(#20398,#10000,15,1,15,4) +hasLocation(#20397,#20398) +enclosing_stmt(#20397,#20396) +expr_containers(#20397,#20001) #20399=* -stmts(#20399,2,#20001,15,"[23, 42, , ""hi"" ];") -hasLocation(#20399,#20033) -stmt_containers(#20399,#20001) +exprs(#20399,3,#20397,0,"23") +hasLocation(#20399,#20121) +enclosing_stmt(#20399,#20396) +expr_containers(#20399,#20001) +literals("23","23",#20399) #20400=* -exprs(#20400,7,#20399,0,"[23, 42, , ""hi"" ]") -#20401=@"loc,{#10000},16,1,16,17" -locations_default(#20401,#10000,16,1,16,17) -hasLocation(#20400,#20401) -enclosing_stmt(#20400,#20399) -expr_containers(#20400,#20001) -#20402=* -exprs(#20402,3,#20400,0,"23") -hasLocation(#20402,#20129) -enclosing_stmt(#20402,#20399) -expr_containers(#20402,#20001) -literals("23","23",#20402) +stmts(#20400,2,#20001,15,"[23, 42, , ""hi"" ];") +hasLocation(#20400,#20033) +stmt_containers(#20400,#20001) +#20401=* +exprs(#20401,7,#20400,0,"[23, 42, , ""hi"" ]") +#20402=@"loc,{#10000},16,1,16,17" +locations_default(#20402,#10000,16,1,16,17) +hasLocation(#20401,#20402) +enclosing_stmt(#20401,#20400) +expr_containers(#20401,#20001) #20403=* -exprs(#20403,3,#20400,1,"42") -hasLocation(#20403,#20133) -enclosing_stmt(#20403,#20399) +exprs(#20403,3,#20401,0,"23") +hasLocation(#20403,#20129) +enclosing_stmt(#20403,#20400) expr_containers(#20403,#20001) -literals("42","42",#20403) +literals("23","23",#20403) #20404=* -exprs(#20404,4,#20400,3,"""hi""") -hasLocation(#20404,#20139) -enclosing_stmt(#20404,#20399) +exprs(#20404,3,#20401,1,"42") +hasLocation(#20404,#20133) +enclosing_stmt(#20404,#20400) expr_containers(#20404,#20001) -literals("hi","""hi""",#20404) +literals("42","42",#20404) #20405=* -regexpterm(#20405,14,#20404,0,"hi") -#20406=@"loc,{#10000},16,13,16,14" -locations_default(#20406,#10000,16,13,16,14) -hasLocation(#20405,#20406) -regexp_const_value(#20405,"hi") -array_size(#20400,4) -#20407=* -stmts(#20407,2,#20001,16,"({ x: 2 ... ) {}});") -#20408=@"loc,{#10000},17,1,21,17" -locations_default(#20408,#10000,17,1,21,17) -hasLocation(#20407,#20408) -stmt_containers(#20407,#20001) -#20409=* -exprs(#20409,63,#20407,0,"({ x: 2 ... v) {}})") -#20410=@"loc,{#10000},17,1,21,16" -locations_default(#20410,#10000,17,1,21,16) -hasLocation(#20409,#20410) -enclosing_stmt(#20409,#20407) -expr_containers(#20409,#20001) -#20411=* -exprs(#20411,8,#20409,0,"{ x: 23 ... (v) {}}") -#20412=@"loc,{#10000},17,2,21,15" -locations_default(#20412,#10000,17,2,21,15) -hasLocation(#20411,#20412) -enclosing_stmt(#20411,#20407) -expr_containers(#20411,#20001) -#20413=* -properties(#20413,#20411,0,0,"x: 23") -#20414=@"loc,{#10000},17,4,17,8" -locations_default(#20414,#10000,17,4,17,8) -hasLocation(#20413,#20414) -#20415=* -exprs(#20415,0,#20413,0,"x") -hasLocation(#20415,#20149) -enclosing_stmt(#20415,#20407) -expr_containers(#20415,#20001) -literals("x","x",#20415) +exprs(#20405,4,#20401,3,"""hi""") +hasLocation(#20405,#20139) +enclosing_stmt(#20405,#20400) +expr_containers(#20405,#20001) +literals("hi","""hi""",#20405) +#20406=* +regexpterm(#20406,14,#20405,0,"hi") +#20407=@"loc,{#10000},16,13,16,14" +locations_default(#20407,#10000,16,13,16,14) +hasLocation(#20406,#20407) +regexp_const_value(#20406,"hi") +array_size(#20401,4) +#20408=* +stmts(#20408,2,#20001,16,"({ x: 2 ... ) {}});") +#20409=@"loc,{#10000},17,1,21,17" +locations_default(#20409,#10000,17,1,21,17) +hasLocation(#20408,#20409) +stmt_containers(#20408,#20001) +#20410=* +exprs(#20410,63,#20408,0,"({ x: 2 ... v) {}})") +#20411=@"loc,{#10000},17,1,21,16" +locations_default(#20411,#10000,17,1,21,16) +hasLocation(#20410,#20411) +enclosing_stmt(#20410,#20408) +expr_containers(#20410,#20001) +#20412=* +exprs(#20412,8,#20410,0,"{ x: 23 ... (v) {}}") +#20413=@"loc,{#10000},17,2,21,15" +locations_default(#20413,#10000,17,2,21,15) +hasLocation(#20412,#20413) +enclosing_stmt(#20412,#20408) +expr_containers(#20412,#20001) +#20414=* +properties(#20414,#20412,0,0,"x: 23") +#20415=@"loc,{#10000},17,4,17,8" +locations_default(#20415,#10000,17,4,17,8) +hasLocation(#20414,#20415) #20416=* -exprs(#20416,3,#20413,1,"23") -hasLocation(#20416,#20153) -enclosing_stmt(#20416,#20407) +exprs(#20416,0,#20414,0,"x") +hasLocation(#20416,#20149) +enclosing_stmt(#20416,#20408) expr_containers(#20416,#20001) -literals("23","23",#20416) +literals("x","x",#20416) #20417=* -properties(#20417,#20411,1,0,"y: this") -#20418=@"loc,{#10000},18,4,18,10" -locations_default(#20418,#10000,18,4,18,10) -hasLocation(#20417,#20418) -#20419=* -exprs(#20419,0,#20417,0,"y") -hasLocation(#20419,#20157) -enclosing_stmt(#20419,#20407) -expr_containers(#20419,#20001) -literals("y","y",#20419) +exprs(#20417,3,#20414,1,"23") +hasLocation(#20417,#20153) +enclosing_stmt(#20417,#20408) +expr_containers(#20417,#20001) +literals("23","23",#20417) +#20418=* +properties(#20418,#20412,1,0,"y: this") +#20419=@"loc,{#10000},18,4,18,10" +locations_default(#20419,#10000,18,4,18,10) +hasLocation(#20418,#20419) #20420=* -exprs(#20420,6,#20417,1,"this") -hasLocation(#20420,#20161) -enclosing_stmt(#20420,#20407) +exprs(#20420,0,#20418,0,"y") +hasLocation(#20420,#20157) +enclosing_stmt(#20420,#20408) expr_containers(#20420,#20001) +literals("y","y",#20420) #20421=* -properties(#20421,#20411,2,1,"get o() {}") -#20422=@"loc,{#10000},19,4,19,13" -locations_default(#20422,#10000,19,4,19,13) -hasLocation(#20421,#20422) -#20423=* -exprs(#20423,0,#20421,0,"o") -hasLocation(#20423,#20167) -enclosing_stmt(#20423,#20407) -expr_containers(#20423,#20001) -literals("o","o",#20423) +exprs(#20421,6,#20418,1,"this") +hasLocation(#20421,#20161) +enclosing_stmt(#20421,#20408) +expr_containers(#20421,#20001) +bind(#20421,#20325) +#20422=* +properties(#20422,#20412,2,1,"get o() {}") +#20423=@"loc,{#10000},19,4,19,13" +locations_default(#20423,#10000,19,4,19,13) +hasLocation(#20422,#20423) #20424=* -exprs(#20424,9,#20421,1,"() {}") -#20425=@"loc,{#10000},19,9,19,13" -locations_default(#20425,#10000,19,9,19,13) -hasLocation(#20424,#20425) -enclosing_stmt(#20424,#20407) +exprs(#20424,0,#20422,0,"o") +hasLocation(#20424,#20167) +enclosing_stmt(#20424,#20408) expr_containers(#20424,#20001) -#20426=* -scopes(#20426,1) -scopenodes(#20424,#20426) -scopenesting(#20426,#20000) -#20427=@"var;{arguments};{#20426}" -variables(#20427,"arguments",#20426) -is_arguments_object(#20427) -#20428=* -stmts(#20428,1,#20424,-2,"{}") -#20429=@"loc,{#10000},19,12,19,13" -locations_default(#20429,#10000,19,12,19,13) -hasLocation(#20428,#20429) -stmt_containers(#20428,#20424) +literals("o","o",#20424) +#20425=* +exprs(#20425,9,#20422,1,"() {}") +#20426=@"loc,{#10000},19,9,19,13" +locations_default(#20426,#10000,19,9,19,13) +hasLocation(#20425,#20426) +enclosing_stmt(#20425,#20408) +expr_containers(#20425,#20001) +#20427=* +scopes(#20427,1) +scopenodes(#20425,#20427) +scopenesting(#20427,#20000) +#20428=@"var;{this};{#20427}" +variables(#20428,"this",#20427) +#20429=@"var;{arguments};{#20427}" +variables(#20429,"arguments",#20427) +is_arguments_object(#20429) #20430=* -properties(#20430,#20411,3,1,"get p() {}") -#20431=@"loc,{#10000},20,4,20,13" -locations_default(#20431,#10000,20,4,20,13) +stmts(#20430,1,#20425,-2,"{}") +#20431=@"loc,{#10000},19,12,19,13" +locations_default(#20431,#10000,19,12,19,13) hasLocation(#20430,#20431) +stmt_containers(#20430,#20425) #20432=* -exprs(#20432,0,#20430,0,"p") -hasLocation(#20432,#20181) -enclosing_stmt(#20432,#20407) -expr_containers(#20432,#20001) -literals("p","p",#20432) -#20433=* -exprs(#20433,9,#20430,1,"() {}") -#20434=@"loc,{#10000},20,9,20,13" -locations_default(#20434,#10000,20,9,20,13) -hasLocation(#20433,#20434) -enclosing_stmt(#20433,#20407) -expr_containers(#20433,#20001) +properties(#20432,#20412,3,1,"get p() {}") +#20433=@"loc,{#10000},20,4,20,13" +locations_default(#20433,#10000,20,4,20,13) +hasLocation(#20432,#20433) +#20434=* +exprs(#20434,0,#20432,0,"p") +hasLocation(#20434,#20181) +enclosing_stmt(#20434,#20408) +expr_containers(#20434,#20001) +literals("p","p",#20434) #20435=* -scopes(#20435,1) -scopenodes(#20433,#20435) -scopenesting(#20435,#20000) -#20436=@"var;{arguments};{#20435}" -variables(#20436,"arguments",#20435) -is_arguments_object(#20436) +exprs(#20435,9,#20432,1,"() {}") +#20436=@"loc,{#10000},20,9,20,13" +locations_default(#20436,#10000,20,9,20,13) +hasLocation(#20435,#20436) +enclosing_stmt(#20435,#20408) +expr_containers(#20435,#20001) #20437=* -stmts(#20437,1,#20433,-2,"{}") -#20438=@"loc,{#10000},20,12,20,13" -locations_default(#20438,#10000,20,12,20,13) -hasLocation(#20437,#20438) -stmt_containers(#20437,#20433) -#20439=* -properties(#20439,#20411,4,2,"set p(v) {}") -#20440=@"loc,{#10000},21,4,21,14" -locations_default(#20440,#10000,21,4,21,14) -hasLocation(#20439,#20440) -#20441=* -exprs(#20441,0,#20439,0,"p") -hasLocation(#20441,#20195) -enclosing_stmt(#20441,#20407) -expr_containers(#20441,#20001) -literals("p","p",#20441) +scopes(#20437,1) +scopenodes(#20435,#20437) +scopenesting(#20437,#20000) +#20438=@"var;{this};{#20437}" +variables(#20438,"this",#20437) +#20439=@"var;{arguments};{#20437}" +variables(#20439,"arguments",#20437) +is_arguments_object(#20439) +#20440=* +stmts(#20440,1,#20435,-2,"{}") +#20441=@"loc,{#10000},20,12,20,13" +locations_default(#20441,#10000,20,12,20,13) +hasLocation(#20440,#20441) +stmt_containers(#20440,#20435) #20442=* -exprs(#20442,9,#20439,1,"(v) {}") -#20443=@"loc,{#10000},21,9,21,14" -locations_default(#20443,#10000,21,9,21,14) +properties(#20442,#20412,4,2,"set p(v) {}") +#20443=@"loc,{#10000},21,4,21,14" +locations_default(#20443,#10000,21,4,21,14) hasLocation(#20442,#20443) -enclosing_stmt(#20442,#20407) -expr_containers(#20442,#20001) #20444=* -scopes(#20444,1) -scopenodes(#20442,#20444) -scopenesting(#20444,#20000) -#20445=@"var;{v};{#20444}" -variables(#20445,"v",#20444) -#20446=* -exprs(#20446,78,#20442,0,"v") -hasLocation(#20446,#20199) -expr_containers(#20446,#20442) -literals("v","v",#20446) -decl(#20446,#20445) -#20447=@"var;{arguments};{#20444}" -variables(#20447,"arguments",#20444) -is_arguments_object(#20447) -#20448=* -stmts(#20448,1,#20442,-2,"{}") -#20449=@"loc,{#10000},21,13,21,14" -locations_default(#20449,#10000,21,13,21,14) -hasLocation(#20448,#20449) -stmt_containers(#20448,#20442) +exprs(#20444,0,#20442,0,"p") +hasLocation(#20444,#20195) +enclosing_stmt(#20444,#20408) +expr_containers(#20444,#20001) +literals("p","p",#20444) +#20445=* +exprs(#20445,9,#20442,1,"(v) {}") +#20446=@"loc,{#10000},21,9,21,14" +locations_default(#20446,#10000,21,9,21,14) +hasLocation(#20445,#20446) +enclosing_stmt(#20445,#20408) +expr_containers(#20445,#20001) +#20447=* +scopes(#20447,1) +scopenodes(#20445,#20447) +scopenesting(#20447,#20000) +#20448=@"var;{this};{#20447}" +variables(#20448,"this",#20447) +#20449=@"var;{v};{#20447}" +variables(#20449,"v",#20447) #20450=* -stmts(#20450,2,#20001,17,"new Array;") -hasLocation(#20450,#20045) -stmt_containers(#20450,#20001) -#20451=* -exprs(#20451,12,#20450,0,"new Array") -#20452=@"loc,{#10000},22,1,22,9" -locations_default(#20452,#10000,22,1,22,9) -hasLocation(#20451,#20452) -enclosing_stmt(#20451,#20450) -expr_containers(#20451,#20001) -#20453=* -exprs(#20453,79,#20451,-1,"Array") -hasLocation(#20453,#20215) -enclosing_stmt(#20453,#20450) -expr_containers(#20453,#20001) -literals("Array","Array",#20453) -#20454=@"var;{Array};{#20000}" -variables(#20454,"Array",#20000) -bind(#20453,#20454) +exprs(#20450,78,#20445,0,"v") +hasLocation(#20450,#20199) +expr_containers(#20450,#20445) +literals("v","v",#20450) +decl(#20450,#20449) +#20451=@"var;{arguments};{#20447}" +variables(#20451,"arguments",#20447) +is_arguments_object(#20451) +#20452=* +stmts(#20452,1,#20445,-2,"{}") +#20453=@"loc,{#10000},21,13,21,14" +locations_default(#20453,#10000,21,13,21,14) +hasLocation(#20452,#20453) +stmt_containers(#20452,#20445) +#20454=* +stmts(#20454,2,#20001,17,"new Array;") +hasLocation(#20454,#20045) +stmt_containers(#20454,#20001) #20455=* -stmts(#20455,2,#20001,18,"new Object();") -hasLocation(#20455,#20047) -stmt_containers(#20455,#20001) -#20456=* -exprs(#20456,12,#20455,0,"new Object()") -#20457=@"loc,{#10000},23,1,23,12" -locations_default(#20457,#10000,23,1,23,12) -hasLocation(#20456,#20457) -enclosing_stmt(#20456,#20455) -expr_containers(#20456,#20001) -#20458=* -exprs(#20458,79,#20456,-1,"Object") -hasLocation(#20458,#20221) -enclosing_stmt(#20458,#20455) -expr_containers(#20458,#20001) -literals("Object","Object",#20458) -#20459=@"var;{Object};{#20000}" -variables(#20459,"Object",#20000) -bind(#20458,#20459) +exprs(#20455,12,#20454,0,"new Array") +#20456=@"loc,{#10000},22,1,22,9" +locations_default(#20456,#10000,22,1,22,9) +hasLocation(#20455,#20456) +enclosing_stmt(#20455,#20454) +expr_containers(#20455,#20001) +#20457=* +exprs(#20457,79,#20455,-1,"Array") +hasLocation(#20457,#20215) +enclosing_stmt(#20457,#20454) +expr_containers(#20457,#20001) +literals("Array","Array",#20457) +#20458=@"var;{Array};{#20000}" +variables(#20458,"Array",#20000) +bind(#20457,#20458) +#20459=* +stmts(#20459,2,#20001,18,"new Object();") +hasLocation(#20459,#20047) +stmt_containers(#20459,#20001) #20460=* -stmts(#20460,2,#20001,19,"new String(""hi"");") -hasLocation(#20460,#20049) -stmt_containers(#20460,#20001) -#20461=* -exprs(#20461,12,#20460,0,"new String(""hi"")") -#20462=@"loc,{#10000},24,1,24,16" -locations_default(#20462,#10000,24,1,24,16) -hasLocation(#20461,#20462) -enclosing_stmt(#20461,#20460) -expr_containers(#20461,#20001) -#20463=* -exprs(#20463,79,#20461,-1,"String") -hasLocation(#20463,#20231) -enclosing_stmt(#20463,#20460) -expr_containers(#20463,#20001) -literals("String","String",#20463) -#20464=@"var;{String};{#20000}" -variables(#20464,"String",#20000) -bind(#20463,#20464) +exprs(#20460,12,#20459,0,"new Object()") +#20461=@"loc,{#10000},23,1,23,12" +locations_default(#20461,#10000,23,1,23,12) +hasLocation(#20460,#20461) +enclosing_stmt(#20460,#20459) +expr_containers(#20460,#20001) +#20462=* +exprs(#20462,79,#20460,-1,"Object") +hasLocation(#20462,#20221) +enclosing_stmt(#20462,#20459) +expr_containers(#20462,#20001) +literals("Object","Object",#20462) +#20463=@"var;{Object};{#20000}" +variables(#20463,"Object",#20000) +bind(#20462,#20463) +#20464=* +stmts(#20464,2,#20001,19,"new String(""hi"");") +hasLocation(#20464,#20049) +stmt_containers(#20464,#20001) #20465=* -exprs(#20465,4,#20461,0,"""hi""") -hasLocation(#20465,#20235) -enclosing_stmt(#20465,#20460) +exprs(#20465,12,#20464,0,"new String(""hi"")") +#20466=@"loc,{#10000},24,1,24,16" +locations_default(#20466,#10000,24,1,24,16) +hasLocation(#20465,#20466) +enclosing_stmt(#20465,#20464) expr_containers(#20465,#20001) -literals("hi","""hi""",#20465) -#20466=* -regexpterm(#20466,14,#20465,0,"hi") -#20467=@"loc,{#10000},24,13,24,14" -locations_default(#20467,#10000,24,13,24,14) -hasLocation(#20466,#20467) -regexp_const_value(#20466,"hi") -#20468=* -stmts(#20468,2,#20001,20,"String("""");") -hasLocation(#20468,#20051) -stmt_containers(#20468,#20001) +#20467=* +exprs(#20467,79,#20465,-1,"String") +hasLocation(#20467,#20231) +enclosing_stmt(#20467,#20464) +expr_containers(#20467,#20001) +literals("String","String",#20467) +#20468=@"var;{String};{#20000}" +variables(#20468,"String",#20000) +bind(#20467,#20468) #20469=* -exprs(#20469,13,#20468,0,"String("""")") -#20470=@"loc,{#10000},25,1,25,10" -locations_default(#20470,#10000,25,1,25,10) -hasLocation(#20469,#20470) -enclosing_stmt(#20469,#20468) +exprs(#20469,4,#20465,0,"""hi""") +hasLocation(#20469,#20235) +enclosing_stmt(#20469,#20464) expr_containers(#20469,#20001) -#20471=* -exprs(#20471,79,#20469,-1,"String") -hasLocation(#20471,#20241) -enclosing_stmt(#20471,#20468) -expr_containers(#20471,#20001) -literals("String","String",#20471) -bind(#20471,#20464) +literals("hi","""hi""",#20469) +#20470=* +regexpterm(#20470,14,#20469,0,"hi") +#20471=@"loc,{#10000},24,13,24,14" +locations_default(#20471,#10000,24,13,24,14) +hasLocation(#20470,#20471) +regexp_const_value(#20470,"hi") #20472=* -exprs(#20472,4,#20469,0,"""""") -hasLocation(#20472,#20245) -enclosing_stmt(#20472,#20468) -expr_containers(#20472,#20001) -literals("","""""",#20472) +stmts(#20472,2,#20001,20,"String("""");") +hasLocation(#20472,#20051) +stmt_containers(#20472,#20001) #20473=* -regexpterm(#20473,1,#20472,0,"") -#20474=@"loc,{#10000},25,9,25,8" -locations_default(#20474,#10000,25,9,25,8) +exprs(#20473,13,#20472,0,"String("""")") +#20474=@"loc,{#10000},25,1,25,10" +locations_default(#20474,#10000,25,1,25,10) hasLocation(#20473,#20474) +enclosing_stmt(#20473,#20472) +expr_containers(#20473,#20001) #20475=* -stmts(#20475,2,#20001,21,"Object.create({});") -hasLocation(#20475,#20053) -stmt_containers(#20475,#20001) +exprs(#20475,79,#20473,-1,"String") +hasLocation(#20475,#20241) +enclosing_stmt(#20475,#20472) +expr_containers(#20475,#20001) +literals("String","String",#20475) +bind(#20475,#20468) #20476=* -exprs(#20476,13,#20475,0,"Object.create({})") -#20477=@"loc,{#10000},26,1,26,17" -locations_default(#20477,#10000,26,1,26,17) -hasLocation(#20476,#20477) -enclosing_stmt(#20476,#20475) +exprs(#20476,4,#20473,0,"""""") +hasLocation(#20476,#20245) +enclosing_stmt(#20476,#20472) expr_containers(#20476,#20001) -#20478=* -exprs(#20478,14,#20476,-1,"Object.create") -#20479=@"loc,{#10000},26,1,26,13" -locations_default(#20479,#10000,26,1,26,13) -hasLocation(#20478,#20479) -enclosing_stmt(#20478,#20475) -expr_containers(#20478,#20001) +literals("","""""",#20476) +#20477=* +regexpterm(#20477,1,#20476,0,"") +#20478=@"loc,{#10000},25,9,25,8" +locations_default(#20478,#10000,25,9,25,8) +hasLocation(#20477,#20478) +#20479=* +stmts(#20479,2,#20001,21,"Object.create({});") +hasLocation(#20479,#20053) +stmt_containers(#20479,#20001) #20480=* -exprs(#20480,79,#20478,0,"Object") -hasLocation(#20480,#20251) -enclosing_stmt(#20480,#20475) +exprs(#20480,13,#20479,0,"Object.create({})") +#20481=@"loc,{#10000},26,1,26,17" +locations_default(#20481,#10000,26,1,26,17) +hasLocation(#20480,#20481) +enclosing_stmt(#20480,#20479) expr_containers(#20480,#20001) -literals("Object","Object",#20480) -bind(#20480,#20459) -#20481=* -exprs(#20481,0,#20478,1,"create") -hasLocation(#20481,#20255) -enclosing_stmt(#20481,#20475) -expr_containers(#20481,#20001) -literals("create","create",#20481) #20482=* -exprs(#20482,8,#20476,0,"{}") -#20483=@"loc,{#10000},26,15,26,16" -locations_default(#20483,#10000,26,15,26,16) +exprs(#20482,14,#20480,-1,"Object.create") +#20483=@"loc,{#10000},26,1,26,13" +locations_default(#20483,#10000,26,1,26,13) hasLocation(#20482,#20483) -enclosing_stmt(#20482,#20475) +enclosing_stmt(#20482,#20479) expr_containers(#20482,#20001) #20484=* -stmts(#20484,2,#20001,22,"String[ ... rse()];") -hasLocation(#20484,#20055) -stmt_containers(#20484,#20001) +exprs(#20484,79,#20482,0,"Object") +hasLocation(#20484,#20251) +enclosing_stmt(#20484,#20479) +expr_containers(#20484,#20001) +literals("Object","Object",#20484) +bind(#20484,#20463) #20485=* -exprs(#20485,15,#20484,0,"String[ ... erse()]") -#20486=@"loc,{#10000},27,1,27,29" -locations_default(#20486,#10000,27,1,27,29) -hasLocation(#20485,#20486) -enclosing_stmt(#20485,#20484) +exprs(#20485,0,#20482,1,"create") +hasLocation(#20485,#20255) +enclosing_stmt(#20485,#20479) expr_containers(#20485,#20001) -#20487=* -exprs(#20487,79,#20485,0,"String") -hasLocation(#20487,#20267) -enclosing_stmt(#20487,#20484) -expr_containers(#20487,#20001) -literals("String","String",#20487) -bind(#20487,#20464) +literals("create","create",#20485) +#20486=* +exprs(#20486,8,#20480,0,"{}") +#20487=@"loc,{#10000},26,15,26,16" +locations_default(#20487,#10000,26,15,26,16) +hasLocation(#20486,#20487) +enclosing_stmt(#20486,#20479) +expr_containers(#20486,#20001) #20488=* -exprs(#20488,13,#20485,1,"'epytot ... verse()") -#20489=@"loc,{#10000},27,8,27,28" -locations_default(#20489,#10000,27,8,27,28) -hasLocation(#20488,#20489) -enclosing_stmt(#20488,#20484) -expr_containers(#20488,#20001) -#20490=* -exprs(#20490,14,#20488,-1,"'epytotorp'.reverse") -#20491=@"loc,{#10000},27,8,27,26" -locations_default(#20491,#10000,27,8,27,26) -hasLocation(#20490,#20491) -enclosing_stmt(#20490,#20484) -expr_containers(#20490,#20001) +stmts(#20488,2,#20001,22,"String[ ... rse()];") +hasLocation(#20488,#20055) +stmt_containers(#20488,#20001) +#20489=* +exprs(#20489,15,#20488,0,"String[ ... erse()]") +#20490=@"loc,{#10000},27,1,27,29" +locations_default(#20490,#10000,27,1,27,29) +hasLocation(#20489,#20490) +enclosing_stmt(#20489,#20488) +expr_containers(#20489,#20001) +#20491=* +exprs(#20491,79,#20489,0,"String") +hasLocation(#20491,#20267) +enclosing_stmt(#20491,#20488) +expr_containers(#20491,#20001) +literals("String","String",#20491) +bind(#20491,#20468) #20492=* -exprs(#20492,4,#20490,0,"'epytotorp'") -hasLocation(#20492,#20271) -enclosing_stmt(#20492,#20484) +exprs(#20492,13,#20489,1,"'epytot ... verse()") +#20493=@"loc,{#10000},27,8,27,28" +locations_default(#20493,#10000,27,8,27,28) +hasLocation(#20492,#20493) +enclosing_stmt(#20492,#20488) expr_containers(#20492,#20001) -literals("epytotorp","'epytotorp'",#20492) -#20493=* -regexpterm(#20493,14,#20492,0,"epytotorp") -#20494=@"loc,{#10000},27,9,27,17" -locations_default(#20494,#10000,27,9,27,17) -hasLocation(#20493,#20494) -regexp_const_value(#20493,"epytotorp") -#20495=* -exprs(#20495,0,#20490,1,"reverse") -hasLocation(#20495,#20275) -enclosing_stmt(#20495,#20484) -expr_containers(#20495,#20001) -literals("reverse","reverse",#20495) +#20494=* +exprs(#20494,14,#20492,-1,"'epytotorp'.reverse") +#20495=@"loc,{#10000},27,8,27,26" +locations_default(#20495,#10000,27,8,27,26) +hasLocation(#20494,#20495) +enclosing_stmt(#20494,#20488) +expr_containers(#20494,#20001) #20496=* -stmts(#20496,2,#20001,23,"[,,];") -hasLocation(#20496,#20057) -stmt_containers(#20496,#20001) +exprs(#20496,4,#20494,0,"'epytotorp'") +hasLocation(#20496,#20271) +enclosing_stmt(#20496,#20488) +expr_containers(#20496,#20001) +literals("epytotorp","'epytotorp'",#20496) #20497=* -exprs(#20497,7,#20496,0,"[,,]") -#20498=@"loc,{#10000},28,1,28,4" -locations_default(#20498,#10000,28,1,28,4) +regexpterm(#20497,14,#20496,0,"epytotorp") +#20498=@"loc,{#10000},27,9,27,17" +locations_default(#20498,#10000,27,9,27,17) hasLocation(#20497,#20498) -enclosing_stmt(#20497,#20496) -expr_containers(#20497,#20001) -array_size(#20497,2) +regexp_const_value(#20497,"epytotorp") #20499=* -stmts(#20499,2,#20001,24,"[1,];") -hasLocation(#20499,#20059) -stmt_containers(#20499,#20001) +exprs(#20499,0,#20494,1,"reverse") +hasLocation(#20499,#20275) +enclosing_stmt(#20499,#20488) +expr_containers(#20499,#20001) +literals("reverse","reverse",#20499) #20500=* -exprs(#20500,7,#20499,0,"[1,]") -#20501=@"loc,{#10000},29,1,29,4" -locations_default(#20501,#10000,29,1,29,4) -hasLocation(#20500,#20501) -enclosing_stmt(#20500,#20499) -expr_containers(#20500,#20001) -#20502=* -exprs(#20502,3,#20500,0,"1") -hasLocation(#20502,#20297) -enclosing_stmt(#20502,#20499) -expr_containers(#20502,#20001) -literals("1","1",#20502) -array_size(#20500,1) +stmts(#20500,2,#20001,23,"[,,];") +hasLocation(#20500,#20057) +stmt_containers(#20500,#20001) +#20501=* +exprs(#20501,7,#20500,0,"[,,]") +#20502=@"loc,{#10000},28,1,28,4" +locations_default(#20502,#10000,28,1,28,4) +hasLocation(#20501,#20502) +enclosing_stmt(#20501,#20500) +expr_containers(#20501,#20001) +array_size(#20501,2) #20503=* -stmts(#20503,2,#20001,25,"({ z: 56, });") -hasLocation(#20503,#20061) +stmts(#20503,2,#20001,24,"[1,];") +hasLocation(#20503,#20059) stmt_containers(#20503,#20001) #20504=* -exprs(#20504,63,#20503,0,"({ z: 56, })") -#20505=@"loc,{#10000},30,1,30,12" -locations_default(#20505,#10000,30,1,30,12) +exprs(#20504,7,#20503,0,"[1,]") +#20505=@"loc,{#10000},29,1,29,4" +locations_default(#20505,#10000,29,1,29,4) hasLocation(#20504,#20505) enclosing_stmt(#20504,#20503) expr_containers(#20504,#20001) #20506=* -exprs(#20506,8,#20504,0,"{ z: 56, }") -#20507=@"loc,{#10000},30,2,30,11" -locations_default(#20507,#10000,30,2,30,11) -hasLocation(#20506,#20507) +exprs(#20506,3,#20504,0,"1") +hasLocation(#20506,#20297) enclosing_stmt(#20506,#20503) expr_containers(#20506,#20001) +literals("1","1",#20506) +array_size(#20504,1) +#20507=* +stmts(#20507,2,#20001,25,"({ z: 56, });") +hasLocation(#20507,#20061) +stmt_containers(#20507,#20001) #20508=* -properties(#20508,#20506,0,0,"z: 56") -#20509=@"loc,{#10000},30,4,30,8" -locations_default(#20509,#10000,30,4,30,8) +exprs(#20508,63,#20507,0,"({ z: 56, })") +#20509=@"loc,{#10000},30,1,30,12" +locations_default(#20509,#10000,30,1,30,12) hasLocation(#20508,#20509) +enclosing_stmt(#20508,#20507) +expr_containers(#20508,#20001) #20510=* -exprs(#20510,0,#20508,0,"z") -hasLocation(#20510,#20309) -enclosing_stmt(#20510,#20503) +exprs(#20510,8,#20508,0,"{ z: 56, }") +#20511=@"loc,{#10000},30,2,30,11" +locations_default(#20511,#10000,30,2,30,11) +hasLocation(#20510,#20511) +enclosing_stmt(#20510,#20507) expr_containers(#20510,#20001) -literals("z","z",#20510) -#20511=* -exprs(#20511,3,#20508,1,"56") -hasLocation(#20511,#20313) -enclosing_stmt(#20511,#20503) -expr_containers(#20511,#20001) -literals("56","56",#20511) #20512=* -entry_cfg_node(#20512,#20001) -#20513=@"loc,{#10000},1,1,1,0" -locations_default(#20513,#10000,1,1,1,0) +properties(#20512,#20510,0,0,"z: 56") +#20513=@"loc,{#10000},30,4,30,8" +locations_default(#20513,#10000,30,4,30,8) hasLocation(#20512,#20513) #20514=* -exit_cfg_node(#20514,#20001) -hasLocation(#20514,#20323) +exprs(#20514,0,#20512,0,"z") +hasLocation(#20514,#20309) +enclosing_stmt(#20514,#20507) +expr_containers(#20514,#20001) +literals("z","z",#20514) +#20515=* +exprs(#20515,3,#20512,1,"56") +hasLocation(#20515,#20313) +enclosing_stmt(#20515,#20507) +expr_containers(#20515,#20001) +literals("56","56",#20515) +#20516=* +entry_cfg_node(#20516,#20001) +#20517=@"loc,{#10000},1,1,1,0" +locations_default(#20517,#10000,1,1,1,0) +hasLocation(#20516,#20517) +#20518=* +exit_cfg_node(#20518,#20001) +hasLocation(#20518,#20323) +successor(#20507,#20508) +successor(#20508,#20510) +successor(#20510,#20514) +successor(#20515,#20512) +successor(#20514,#20515) +successor(#20512,#20518) successor(#20503,#20504) successor(#20504,#20506) -successor(#20506,#20510) -successor(#20511,#20508) -successor(#20510,#20511) -successor(#20508,#20514) -successor(#20499,#20500) -successor(#20500,#20502) -successor(#20502,#20503) -successor(#20496,#20497) -successor(#20497,#20499) -successor(#20484,#20487) -successor(#20495,#20490) -successor(#20492,#20495) -successor(#20490,#20488) -successor(#20488,#20485) -successor(#20487,#20492) -successor(#20485,#20496) -successor(#20475,#20480) -successor(#20482,#20476) -successor(#20481,#20478) -successor(#20480,#20481) -successor(#20478,#20482) -successor(#20476,#20484) -successor(#20468,#20471) -successor(#20472,#20469) -successor(#20471,#20472) -successor(#20469,#20475) -successor(#20460,#20463) -successor(#20465,#20461) -successor(#20463,#20465) -successor(#20461,#20468) -successor(#20455,#20458) -successor(#20458,#20456) -successor(#20456,#20460) -successor(#20450,#20453) -successor(#20453,#20451) -successor(#20451,#20455) -successor(#20407,#20409) -successor(#20409,#20411) -successor(#20411,#20415) -successor(#20442,#20439) -#20515=* -entry_cfg_node(#20515,#20442) -#20516=@"loc,{#10000},21,9,21,8" -locations_default(#20516,#10000,21,9,21,8) -hasLocation(#20515,#20516) -#20517=* -exit_cfg_node(#20517,#20442) -#20518=@"loc,{#10000},21,15,21,14" -locations_default(#20518,#10000,21,15,21,14) -hasLocation(#20517,#20518) -successor(#20448,#20517) -successor(#20446,#20448) -successor(#20515,#20446) -successor(#20441,#20442) -successor(#20439,#20450) -successor(#20433,#20430) +successor(#20506,#20507) +successor(#20500,#20501) +successor(#20501,#20503) +successor(#20488,#20491) +successor(#20499,#20494) +successor(#20496,#20499) +successor(#20494,#20492) +successor(#20492,#20489) +successor(#20491,#20496) +successor(#20489,#20500) +successor(#20479,#20484) +successor(#20486,#20480) +successor(#20485,#20482) +successor(#20484,#20485) +successor(#20482,#20486) +successor(#20480,#20488) +successor(#20472,#20475) +successor(#20476,#20473) +successor(#20475,#20476) +successor(#20473,#20479) +successor(#20464,#20467) +successor(#20469,#20465) +successor(#20467,#20469) +successor(#20465,#20472) +successor(#20459,#20462) +successor(#20462,#20460) +successor(#20460,#20464) +successor(#20454,#20457) +successor(#20457,#20455) +successor(#20455,#20459) +successor(#20408,#20410) +successor(#20410,#20412) +successor(#20412,#20416) +successor(#20445,#20442) #20519=* -entry_cfg_node(#20519,#20433) -#20520=@"loc,{#10000},20,9,20,8" -locations_default(#20520,#10000,20,9,20,8) +entry_cfg_node(#20519,#20445) +#20520=@"loc,{#10000},21,9,21,8" +locations_default(#20520,#10000,21,9,21,8) hasLocation(#20519,#20520) #20521=* -exit_cfg_node(#20521,#20433) -#20522=@"loc,{#10000},20,14,20,13" -locations_default(#20522,#10000,20,14,20,13) +exit_cfg_node(#20521,#20445) +#20522=@"loc,{#10000},21,15,21,14" +locations_default(#20522,#10000,21,15,21,14) hasLocation(#20521,#20522) -successor(#20437,#20521) -successor(#20519,#20437) -successor(#20432,#20433) -successor(#20430,#20441) -successor(#20424,#20421) +successor(#20452,#20521) +successor(#20450,#20452) +successor(#20519,#20450) +successor(#20444,#20445) +successor(#20442,#20454) +successor(#20435,#20432) #20523=* -entry_cfg_node(#20523,#20424) -#20524=@"loc,{#10000},19,9,19,8" -locations_default(#20524,#10000,19,9,19,8) +entry_cfg_node(#20523,#20435) +#20524=@"loc,{#10000},20,9,20,8" +locations_default(#20524,#10000,20,9,20,8) hasLocation(#20523,#20524) #20525=* -exit_cfg_node(#20525,#20424) -#20526=@"loc,{#10000},19,14,19,13" -locations_default(#20526,#10000,19,14,19,13) +exit_cfg_node(#20525,#20435) +#20526=@"loc,{#10000},20,14,20,13" +locations_default(#20526,#10000,20,14,20,13) hasLocation(#20525,#20526) -successor(#20428,#20525) -successor(#20523,#20428) -successor(#20423,#20424) -successor(#20421,#20432) -successor(#20420,#20417) -successor(#20419,#20420) -successor(#20417,#20423) -successor(#20416,#20413) -successor(#20415,#20416) -successor(#20413,#20419) -successor(#20399,#20400) -successor(#20400,#20402) -successor(#20404,#20407) +successor(#20440,#20525) +successor(#20523,#20440) +successor(#20434,#20435) +successor(#20432,#20444) +successor(#20425,#20422) +#20527=* +entry_cfg_node(#20527,#20425) +#20528=@"loc,{#10000},19,9,19,8" +locations_default(#20528,#10000,19,9,19,8) +hasLocation(#20527,#20528) +#20529=* +exit_cfg_node(#20529,#20425) +#20530=@"loc,{#10000},19,14,19,13" +locations_default(#20530,#10000,19,14,19,13) +hasLocation(#20529,#20530) +successor(#20430,#20529) +successor(#20527,#20430) +successor(#20424,#20425) +successor(#20422,#20434) +successor(#20421,#20418) +successor(#20420,#20421) +successor(#20418,#20424) +successor(#20417,#20414) +successor(#20416,#20417) +successor(#20414,#20420) +successor(#20400,#20401) +successor(#20401,#20403) +successor(#20405,#20408) +successor(#20404,#20405) successor(#20403,#20404) -successor(#20402,#20403) -successor(#20395,#20396) -successor(#20396,#20398) -successor(#20398,#20399) -successor(#20375,#20376) -successor(#20376,#20395) -successor(#20363,#20364) -successor(#20364,#20375) -successor(#20351,#20352) -successor(#20352,#20363) -successor(#20347,#20348) -successor(#20348,#20351) -successor(#20343,#20344) -successor(#20344,#20347) -successor(#20341,#20342) +successor(#20396,#20397) +successor(#20397,#20399) +successor(#20399,#20400) +successor(#20376,#20377) +successor(#20377,#20396) +successor(#20364,#20365) +successor(#20365,#20376) +successor(#20352,#20353) +successor(#20353,#20364) +successor(#20348,#20349) +successor(#20349,#20352) +successor(#20344,#20345) +successor(#20345,#20348) successor(#20342,#20343) -successor(#20339,#20340) +successor(#20343,#20344) successor(#20340,#20341) -successor(#20337,#20338) +successor(#20341,#20342) successor(#20338,#20339) -successor(#20335,#20336) +successor(#20339,#20340) successor(#20336,#20337) -successor(#20333,#20334) +successor(#20337,#20338) successor(#20334,#20335) -successor(#20331,#20332) +successor(#20335,#20336) successor(#20332,#20333) -successor(#20329,#20330) +successor(#20333,#20334) successor(#20330,#20331) -successor(#20327,#20328) +successor(#20331,#20332) successor(#20328,#20329) -successor(#20325,#20326) +successor(#20329,#20330) successor(#20326,#20327) -successor(#20512,#20325) +successor(#20327,#20328) +successor(#20516,#20326) numlines(#10000,30,30,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/regexp.js.trap b/javascript/extractor/tests/exprs/output/trap/regexp.js.trap index 3b58a28545b6..7a1b12cd130c 100644 --- a/javascript/extractor/tests/exprs/output/trap/regexp.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/regexp.js.trap @@ -722,1397 +722,1399 @@ toplevels(#20001,0) #20268=@"loc,{#10000},1,1,44,60" locations_default(#20268,#10000,1,1,44,60) hasLocation(#20001,#20268) -#20269=* -stmts(#20269,2,#20001,0,"/t/;") -hasLocation(#20269,#20003) -stmt_containers(#20269,#20001) +#20269=@"var;{this};{#20000}" +variables(#20269,"this",#20000) #20270=* -exprs(#20270,5,#20269,0,"/t/") -hasLocation(#20270,#20091) -enclosing_stmt(#20270,#20269) -expr_containers(#20270,#20001) -literals("/t/","/t/",#20270) +stmts(#20270,2,#20001,0,"/t/;") +hasLocation(#20270,#20003) +stmt_containers(#20270,#20001) #20271=* -regexpterm(#20271,14,#20270,0,"t") -#20272=@"loc,{#10000},1,2,1,2" -locations_default(#20272,#10000,1,2,1,2) -hasLocation(#20271,#20272) -regexp_const_value(#20271,"t") -#20273=* -stmts(#20273,2,#20001,1,"/foo|bar/;") -hasLocation(#20273,#20005) -stmt_containers(#20273,#20001) +exprs(#20271,5,#20270,0,"/t/") +hasLocation(#20271,#20091) +enclosing_stmt(#20271,#20270) +expr_containers(#20271,#20001) +literals("/t/","/t/",#20271) +#20272=* +regexpterm(#20272,14,#20271,0,"t") +#20273=@"loc,{#10000},1,2,1,2" +locations_default(#20273,#10000,1,2,1,2) +hasLocation(#20272,#20273) +regexp_const_value(#20272,"t") #20274=* -exprs(#20274,5,#20273,0,"/foo|bar/") -hasLocation(#20274,#20095) -enclosing_stmt(#20274,#20273) -expr_containers(#20274,#20001) -literals("/foo|bar/","/foo|bar/",#20274) +stmts(#20274,2,#20001,1,"/foo|bar/;") +hasLocation(#20274,#20005) +stmt_containers(#20274,#20001) #20275=* -regexpterm(#20275,0,#20274,0,"foo|bar") -#20276=@"loc,{#10000},2,2,2,8" -locations_default(#20276,#10000,2,2,2,8) -hasLocation(#20275,#20276) -#20277=* -regexpterm(#20277,14,#20275,0,"foo") -#20278=@"loc,{#10000},2,2,2,4" -locations_default(#20278,#10000,2,2,2,4) -hasLocation(#20277,#20278) -regexp_const_value(#20277,"foo") -#20279=* -regexpterm(#20279,14,#20275,1,"bar") -#20280=@"loc,{#10000},2,6,2,8" -locations_default(#20280,#10000,2,6,2,8) -hasLocation(#20279,#20280) -regexp_const_value(#20279,"bar") -#20281=* -stmts(#20281,2,#20001,2,"/(?:)/;") -hasLocation(#20281,#20007) -stmt_containers(#20281,#20001) +exprs(#20275,5,#20274,0,"/foo|bar/") +hasLocation(#20275,#20095) +enclosing_stmt(#20275,#20274) +expr_containers(#20275,#20001) +literals("/foo|bar/","/foo|bar/",#20275) +#20276=* +regexpterm(#20276,0,#20275,0,"foo|bar") +#20277=@"loc,{#10000},2,2,2,8" +locations_default(#20277,#10000,2,2,2,8) +hasLocation(#20276,#20277) +#20278=* +regexpterm(#20278,14,#20276,0,"foo") +#20279=@"loc,{#10000},2,2,2,4" +locations_default(#20279,#10000,2,2,2,4) +hasLocation(#20278,#20279) +regexp_const_value(#20278,"foo") +#20280=* +regexpterm(#20280,14,#20276,1,"bar") +#20281=@"loc,{#10000},2,6,2,8" +locations_default(#20281,#10000,2,6,2,8) +hasLocation(#20280,#20281) +regexp_const_value(#20280,"bar") #20282=* -exprs(#20282,5,#20281,0,"/(?:)/") -hasLocation(#20282,#20099) -enclosing_stmt(#20282,#20281) -expr_containers(#20282,#20001) -literals("/(?:)/","/(?:)/",#20282) +stmts(#20282,2,#20001,2,"/(?:)/;") +hasLocation(#20282,#20007) +stmt_containers(#20282,#20001) #20283=* -regexpterm(#20283,13,#20282,0,"(?:)") -#20284=@"loc,{#10000},3,2,3,5" -locations_default(#20284,#10000,3,2,3,5) -hasLocation(#20283,#20284) -#20285=* -regexpterm(#20285,1,#20283,0,"") -#20286=@"loc,{#10000},3,5,3,4" -locations_default(#20286,#10000,3,5,3,4) -hasLocation(#20285,#20286) -#20287=* -stmts(#20287,2,#20001,3,"/^abc$/;") -hasLocation(#20287,#20009) -stmt_containers(#20287,#20001) +exprs(#20283,5,#20282,0,"/(?:)/") +hasLocation(#20283,#20099) +enclosing_stmt(#20283,#20282) +expr_containers(#20283,#20001) +literals("/(?:)/","/(?:)/",#20283) +#20284=* +regexpterm(#20284,13,#20283,0,"(?:)") +#20285=@"loc,{#10000},3,2,3,5" +locations_default(#20285,#10000,3,2,3,5) +hasLocation(#20284,#20285) +#20286=* +regexpterm(#20286,1,#20284,0,"") +#20287=@"loc,{#10000},3,5,3,4" +locations_default(#20287,#10000,3,5,3,4) +hasLocation(#20286,#20287) #20288=* -exprs(#20288,5,#20287,0,"/^abc$/") -hasLocation(#20288,#20103) -enclosing_stmt(#20288,#20287) -expr_containers(#20288,#20001) -literals("/^abc$/","/^abc$/",#20288) +stmts(#20288,2,#20001,3,"/^abc$/;") +hasLocation(#20288,#20009) +stmt_containers(#20288,#20001) #20289=* -regexpterm(#20289,1,#20288,0,"^abc$") -#20290=@"loc,{#10000},4,2,4,6" -locations_default(#20290,#10000,4,2,4,6) -hasLocation(#20289,#20290) -#20291=* -regexpterm(#20291,2,#20289,0,"^") -#20292=@"loc,{#10000},4,2,4,2" -locations_default(#20292,#10000,4,2,4,2) -hasLocation(#20291,#20292) -#20293=* -regexpterm(#20293,14,#20289,1,"abc") -#20294=@"loc,{#10000},4,3,4,5" -locations_default(#20294,#10000,4,3,4,5) -hasLocation(#20293,#20294) -regexp_const_value(#20293,"abc") -#20295=* -regexpterm(#20295,3,#20289,2,"$") -#20296=@"loc,{#10000},4,6,4,6" -locations_default(#20296,#10000,4,6,4,6) -hasLocation(#20295,#20296) -#20297=* -stmts(#20297,2,#20001,4,"/\bx\b/;") -hasLocation(#20297,#20011) -stmt_containers(#20297,#20001) +exprs(#20289,5,#20288,0,"/^abc$/") +hasLocation(#20289,#20103) +enclosing_stmt(#20289,#20288) +expr_containers(#20289,#20001) +literals("/^abc$/","/^abc$/",#20289) +#20290=* +regexpterm(#20290,1,#20289,0,"^abc$") +#20291=@"loc,{#10000},4,2,4,6" +locations_default(#20291,#10000,4,2,4,6) +hasLocation(#20290,#20291) +#20292=* +regexpterm(#20292,2,#20290,0,"^") +#20293=@"loc,{#10000},4,2,4,2" +locations_default(#20293,#10000,4,2,4,2) +hasLocation(#20292,#20293) +#20294=* +regexpterm(#20294,14,#20290,1,"abc") +#20295=@"loc,{#10000},4,3,4,5" +locations_default(#20295,#10000,4,3,4,5) +hasLocation(#20294,#20295) +regexp_const_value(#20294,"abc") +#20296=* +regexpterm(#20296,3,#20290,2,"$") +#20297=@"loc,{#10000},4,6,4,6" +locations_default(#20297,#10000,4,6,4,6) +hasLocation(#20296,#20297) #20298=* -exprs(#20298,5,#20297,0,"/\bx\b/") -hasLocation(#20298,#20107) -enclosing_stmt(#20298,#20297) -expr_containers(#20298,#20001) -literals("/\bx\b/","/\bx\b/",#20298) +stmts(#20298,2,#20001,4,"/\bx\b/;") +hasLocation(#20298,#20011) +stmt_containers(#20298,#20001) #20299=* -regexpterm(#20299,1,#20298,0,"\bx\b") -#20300=@"loc,{#10000},5,2,5,6" -locations_default(#20300,#10000,5,2,5,6) -hasLocation(#20299,#20300) -#20301=* -regexpterm(#20301,4,#20299,0,"\b") -#20302=@"loc,{#10000},5,2,5,3" -locations_default(#20302,#10000,5,2,5,3) -hasLocation(#20301,#20302) -#20303=* -regexpterm(#20303,14,#20299,1,"x") -#20304=@"loc,{#10000},5,4,5,4" -locations_default(#20304,#10000,5,4,5,4) -hasLocation(#20303,#20304) -regexp_const_value(#20303,"x") -#20305=* -regexpterm(#20305,4,#20299,2,"\b") -#20306=@"loc,{#10000},5,5,5,6" -locations_default(#20306,#10000,5,5,5,6) -hasLocation(#20305,#20306) -#20307=* -stmts(#20307,2,#20001,5,"/\bx\B/;") -hasLocation(#20307,#20013) -stmt_containers(#20307,#20001) +exprs(#20299,5,#20298,0,"/\bx\b/") +hasLocation(#20299,#20107) +enclosing_stmt(#20299,#20298) +expr_containers(#20299,#20001) +literals("/\bx\b/","/\bx\b/",#20299) +#20300=* +regexpterm(#20300,1,#20299,0,"\bx\b") +#20301=@"loc,{#10000},5,2,5,6" +locations_default(#20301,#10000,5,2,5,6) +hasLocation(#20300,#20301) +#20302=* +regexpterm(#20302,4,#20300,0,"\b") +#20303=@"loc,{#10000},5,2,5,3" +locations_default(#20303,#10000,5,2,5,3) +hasLocation(#20302,#20303) +#20304=* +regexpterm(#20304,14,#20300,1,"x") +#20305=@"loc,{#10000},5,4,5,4" +locations_default(#20305,#10000,5,4,5,4) +hasLocation(#20304,#20305) +regexp_const_value(#20304,"x") +#20306=* +regexpterm(#20306,4,#20300,2,"\b") +#20307=@"loc,{#10000},5,5,5,6" +locations_default(#20307,#10000,5,5,5,6) +hasLocation(#20306,#20307) #20308=* -exprs(#20308,5,#20307,0,"/\bx\B/") -hasLocation(#20308,#20111) -enclosing_stmt(#20308,#20307) -expr_containers(#20308,#20001) -literals("/\bx\B/","/\bx\B/",#20308) +stmts(#20308,2,#20001,5,"/\bx\B/;") +hasLocation(#20308,#20013) +stmt_containers(#20308,#20001) #20309=* -regexpterm(#20309,1,#20308,0,"\bx\B") -#20310=@"loc,{#10000},6,2,6,6" -locations_default(#20310,#10000,6,2,6,6) -hasLocation(#20309,#20310) -#20311=* -regexpterm(#20311,4,#20309,0,"\b") -#20312=@"loc,{#10000},6,2,6,3" -locations_default(#20312,#10000,6,2,6,3) -hasLocation(#20311,#20312) -#20313=* -regexpterm(#20313,14,#20309,1,"x") -#20314=@"loc,{#10000},6,4,6,4" -locations_default(#20314,#10000,6,4,6,4) -hasLocation(#20313,#20314) -regexp_const_value(#20313,"x") -#20315=* -regexpterm(#20315,5,#20309,2,"\B") -#20316=@"loc,{#10000},6,5,6,6" -locations_default(#20316,#10000,6,5,6,6) -hasLocation(#20315,#20316) -#20317=* -stmts(#20317,2,#20001,6,"/x(?=y)/;") -hasLocation(#20317,#20015) -stmt_containers(#20317,#20001) +exprs(#20309,5,#20308,0,"/\bx\B/") +hasLocation(#20309,#20111) +enclosing_stmt(#20309,#20308) +expr_containers(#20309,#20001) +literals("/\bx\B/","/\bx\B/",#20309) +#20310=* +regexpterm(#20310,1,#20309,0,"\bx\B") +#20311=@"loc,{#10000},6,2,6,6" +locations_default(#20311,#10000,6,2,6,6) +hasLocation(#20310,#20311) +#20312=* +regexpterm(#20312,4,#20310,0,"\b") +#20313=@"loc,{#10000},6,2,6,3" +locations_default(#20313,#10000,6,2,6,3) +hasLocation(#20312,#20313) +#20314=* +regexpterm(#20314,14,#20310,1,"x") +#20315=@"loc,{#10000},6,4,6,4" +locations_default(#20315,#10000,6,4,6,4) +hasLocation(#20314,#20315) +regexp_const_value(#20314,"x") +#20316=* +regexpterm(#20316,5,#20310,2,"\B") +#20317=@"loc,{#10000},6,5,6,6" +locations_default(#20317,#10000,6,5,6,6) +hasLocation(#20316,#20317) #20318=* -exprs(#20318,5,#20317,0,"/x(?=y)/") -hasLocation(#20318,#20115) -enclosing_stmt(#20318,#20317) -expr_containers(#20318,#20001) -literals("/x(?=y)/","/x(?=y)/",#20318) +stmts(#20318,2,#20001,6,"/x(?=y)/;") +hasLocation(#20318,#20015) +stmt_containers(#20318,#20001) #20319=* -regexpterm(#20319,1,#20318,0,"x(?=y)") -#20320=@"loc,{#10000},7,2,7,7" -locations_default(#20320,#10000,7,2,7,7) -hasLocation(#20319,#20320) -#20321=* -regexpterm(#20321,14,#20319,0,"x") -#20322=@"loc,{#10000},7,2,7,2" -locations_default(#20322,#10000,7,2,7,2) -hasLocation(#20321,#20322) -regexp_const_value(#20321,"x") -#20323=* -regexpterm(#20323,6,#20319,1,"(?=y)") -#20324=@"loc,{#10000},7,3,7,7" -locations_default(#20324,#10000,7,3,7,7) -hasLocation(#20323,#20324) -#20325=* -regexpterm(#20325,14,#20323,0,"y") -#20326=@"loc,{#10000},7,6,7,6" -locations_default(#20326,#10000,7,6,7,6) -hasLocation(#20325,#20326) -regexp_const_value(#20325,"y") -#20327=* -stmts(#20327,2,#20001,7,"/x(?!z)/;") -hasLocation(#20327,#20017) -stmt_containers(#20327,#20001) +exprs(#20319,5,#20318,0,"/x(?=y)/") +hasLocation(#20319,#20115) +enclosing_stmt(#20319,#20318) +expr_containers(#20319,#20001) +literals("/x(?=y)/","/x(?=y)/",#20319) +#20320=* +regexpterm(#20320,1,#20319,0,"x(?=y)") +#20321=@"loc,{#10000},7,2,7,7" +locations_default(#20321,#10000,7,2,7,7) +hasLocation(#20320,#20321) +#20322=* +regexpterm(#20322,14,#20320,0,"x") +#20323=@"loc,{#10000},7,2,7,2" +locations_default(#20323,#10000,7,2,7,2) +hasLocation(#20322,#20323) +regexp_const_value(#20322,"x") +#20324=* +regexpterm(#20324,6,#20320,1,"(?=y)") +#20325=@"loc,{#10000},7,3,7,7" +locations_default(#20325,#10000,7,3,7,7) +hasLocation(#20324,#20325) +#20326=* +regexpterm(#20326,14,#20324,0,"y") +#20327=@"loc,{#10000},7,6,7,6" +locations_default(#20327,#10000,7,6,7,6) +hasLocation(#20326,#20327) +regexp_const_value(#20326,"y") #20328=* -exprs(#20328,5,#20327,0,"/x(?!z)/") -hasLocation(#20328,#20119) -enclosing_stmt(#20328,#20327) -expr_containers(#20328,#20001) -literals("/x(?!z)/","/x(?!z)/",#20328) +stmts(#20328,2,#20001,7,"/x(?!z)/;") +hasLocation(#20328,#20017) +stmt_containers(#20328,#20001) #20329=* -regexpterm(#20329,1,#20328,0,"x(?!z)") -#20330=@"loc,{#10000},8,2,8,7" -locations_default(#20330,#10000,8,2,8,7) -hasLocation(#20329,#20330) -#20331=* -regexpterm(#20331,14,#20329,0,"x") -#20332=@"loc,{#10000},8,2,8,2" -locations_default(#20332,#10000,8,2,8,2) -hasLocation(#20331,#20332) -regexp_const_value(#20331,"x") -#20333=* -regexpterm(#20333,7,#20329,1,"(?!z)") -#20334=@"loc,{#10000},8,3,8,7" -locations_default(#20334,#10000,8,3,8,7) -hasLocation(#20333,#20334) -#20335=* -regexpterm(#20335,14,#20333,0,"z") -#20336=@"loc,{#10000},8,6,8,6" -locations_default(#20336,#10000,8,6,8,6) -hasLocation(#20335,#20336) -regexp_const_value(#20335,"z") -#20337=* -stmts(#20337,2,#20001,8,"/a*/;") -hasLocation(#20337,#20019) -stmt_containers(#20337,#20001) +exprs(#20329,5,#20328,0,"/x(?!z)/") +hasLocation(#20329,#20119) +enclosing_stmt(#20329,#20328) +expr_containers(#20329,#20001) +literals("/x(?!z)/","/x(?!z)/",#20329) +#20330=* +regexpterm(#20330,1,#20329,0,"x(?!z)") +#20331=@"loc,{#10000},8,2,8,7" +locations_default(#20331,#10000,8,2,8,7) +hasLocation(#20330,#20331) +#20332=* +regexpterm(#20332,14,#20330,0,"x") +#20333=@"loc,{#10000},8,2,8,2" +locations_default(#20333,#10000,8,2,8,2) +hasLocation(#20332,#20333) +regexp_const_value(#20332,"x") +#20334=* +regexpterm(#20334,7,#20330,1,"(?!z)") +#20335=@"loc,{#10000},8,3,8,7" +locations_default(#20335,#10000,8,3,8,7) +hasLocation(#20334,#20335) +#20336=* +regexpterm(#20336,14,#20334,0,"z") +#20337=@"loc,{#10000},8,6,8,6" +locations_default(#20337,#10000,8,6,8,6) +hasLocation(#20336,#20337) +regexp_const_value(#20336,"z") #20338=* -exprs(#20338,5,#20337,0,"/a*/") -hasLocation(#20338,#20123) -enclosing_stmt(#20338,#20337) -expr_containers(#20338,#20001) -literals("/a*/","/a*/",#20338) +stmts(#20338,2,#20001,8,"/a*/;") +hasLocation(#20338,#20019) +stmt_containers(#20338,#20001) #20339=* -regexpterm(#20339,8,#20338,0,"a*") -#20340=@"loc,{#10000},9,2,9,3" -locations_default(#20340,#10000,9,2,9,3) -hasLocation(#20339,#20340) -is_greedy(#20339) -#20341=* -regexpterm(#20341,14,#20339,0,"a") -#20342=@"loc,{#10000},9,2,9,2" -locations_default(#20342,#10000,9,2,9,2) -hasLocation(#20341,#20342) -regexp_const_value(#20341,"a") -#20343=* -stmts(#20343,2,#20001,9,"/a*?/;") -hasLocation(#20343,#20021) -stmt_containers(#20343,#20001) +exprs(#20339,5,#20338,0,"/a*/") +hasLocation(#20339,#20123) +enclosing_stmt(#20339,#20338) +expr_containers(#20339,#20001) +literals("/a*/","/a*/",#20339) +#20340=* +regexpterm(#20340,8,#20339,0,"a*") +#20341=@"loc,{#10000},9,2,9,3" +locations_default(#20341,#10000,9,2,9,3) +hasLocation(#20340,#20341) +is_greedy(#20340) +#20342=* +regexpterm(#20342,14,#20340,0,"a") +#20343=@"loc,{#10000},9,2,9,2" +locations_default(#20343,#10000,9,2,9,2) +hasLocation(#20342,#20343) +regexp_const_value(#20342,"a") #20344=* -exprs(#20344,5,#20343,0,"/a*?/") -hasLocation(#20344,#20127) -enclosing_stmt(#20344,#20343) -expr_containers(#20344,#20001) -literals("/a*?/","/a*?/",#20344) +stmts(#20344,2,#20001,9,"/a*?/;") +hasLocation(#20344,#20021) +stmt_containers(#20344,#20001) #20345=* -regexpterm(#20345,8,#20344,0,"a*?") -#20346=@"loc,{#10000},10,2,10,4" -locations_default(#20346,#10000,10,2,10,4) -hasLocation(#20345,#20346) -#20347=* -regexpterm(#20347,14,#20345,0,"a") -#20348=@"loc,{#10000},10,2,10,2" -locations_default(#20348,#10000,10,2,10,2) -hasLocation(#20347,#20348) -regexp_const_value(#20347,"a") -#20349=* -stmts(#20349,2,#20001,10,"/a+/;") -hasLocation(#20349,#20023) -stmt_containers(#20349,#20001) +exprs(#20345,5,#20344,0,"/a*?/") +hasLocation(#20345,#20127) +enclosing_stmt(#20345,#20344) +expr_containers(#20345,#20001) +literals("/a*?/","/a*?/",#20345) +#20346=* +regexpterm(#20346,8,#20345,0,"a*?") +#20347=@"loc,{#10000},10,2,10,4" +locations_default(#20347,#10000,10,2,10,4) +hasLocation(#20346,#20347) +#20348=* +regexpterm(#20348,14,#20346,0,"a") +#20349=@"loc,{#10000},10,2,10,2" +locations_default(#20349,#10000,10,2,10,2) +hasLocation(#20348,#20349) +regexp_const_value(#20348,"a") #20350=* -exprs(#20350,5,#20349,0,"/a+/") -hasLocation(#20350,#20131) -enclosing_stmt(#20350,#20349) -expr_containers(#20350,#20001) -literals("/a+/","/a+/",#20350) +stmts(#20350,2,#20001,10,"/a+/;") +hasLocation(#20350,#20023) +stmt_containers(#20350,#20001) #20351=* -regexpterm(#20351,9,#20350,0,"a+") -#20352=@"loc,{#10000},11,2,11,3" -locations_default(#20352,#10000,11,2,11,3) -hasLocation(#20351,#20352) -is_greedy(#20351) -#20353=* -regexpterm(#20353,14,#20351,0,"a") -#20354=@"loc,{#10000},11,2,11,2" -locations_default(#20354,#10000,11,2,11,2) -hasLocation(#20353,#20354) -regexp_const_value(#20353,"a") -#20355=* -stmts(#20355,2,#20001,11,"/a+?/;") -hasLocation(#20355,#20025) -stmt_containers(#20355,#20001) +exprs(#20351,5,#20350,0,"/a+/") +hasLocation(#20351,#20131) +enclosing_stmt(#20351,#20350) +expr_containers(#20351,#20001) +literals("/a+/","/a+/",#20351) +#20352=* +regexpterm(#20352,9,#20351,0,"a+") +#20353=@"loc,{#10000},11,2,11,3" +locations_default(#20353,#10000,11,2,11,3) +hasLocation(#20352,#20353) +is_greedy(#20352) +#20354=* +regexpterm(#20354,14,#20352,0,"a") +#20355=@"loc,{#10000},11,2,11,2" +locations_default(#20355,#10000,11,2,11,2) +hasLocation(#20354,#20355) +regexp_const_value(#20354,"a") #20356=* -exprs(#20356,5,#20355,0,"/a+?/") -hasLocation(#20356,#20135) -enclosing_stmt(#20356,#20355) -expr_containers(#20356,#20001) -literals("/a+?/","/a+?/",#20356) +stmts(#20356,2,#20001,11,"/a+?/;") +hasLocation(#20356,#20025) +stmt_containers(#20356,#20001) #20357=* -regexpterm(#20357,9,#20356,0,"a+?") -#20358=@"loc,{#10000},12,2,12,4" -locations_default(#20358,#10000,12,2,12,4) -hasLocation(#20357,#20358) -#20359=* -regexpterm(#20359,14,#20357,0,"a") -#20360=@"loc,{#10000},12,2,12,2" -locations_default(#20360,#10000,12,2,12,2) -hasLocation(#20359,#20360) -regexp_const_value(#20359,"a") -#20361=* -stmts(#20361,2,#20001,12,"/a?/;") -hasLocation(#20361,#20027) -stmt_containers(#20361,#20001) +exprs(#20357,5,#20356,0,"/a+?/") +hasLocation(#20357,#20135) +enclosing_stmt(#20357,#20356) +expr_containers(#20357,#20001) +literals("/a+?/","/a+?/",#20357) +#20358=* +regexpterm(#20358,9,#20357,0,"a+?") +#20359=@"loc,{#10000},12,2,12,4" +locations_default(#20359,#10000,12,2,12,4) +hasLocation(#20358,#20359) +#20360=* +regexpterm(#20360,14,#20358,0,"a") +#20361=@"loc,{#10000},12,2,12,2" +locations_default(#20361,#10000,12,2,12,2) +hasLocation(#20360,#20361) +regexp_const_value(#20360,"a") #20362=* -exprs(#20362,5,#20361,0,"/a?/") -hasLocation(#20362,#20139) -enclosing_stmt(#20362,#20361) -expr_containers(#20362,#20001) -literals("/a?/","/a?/",#20362) +stmts(#20362,2,#20001,12,"/a?/;") +hasLocation(#20362,#20027) +stmt_containers(#20362,#20001) #20363=* -regexpterm(#20363,10,#20362,0,"a?") -#20364=@"loc,{#10000},13,2,13,3" -locations_default(#20364,#10000,13,2,13,3) -hasLocation(#20363,#20364) -is_greedy(#20363) -#20365=* -regexpterm(#20365,14,#20363,0,"a") -#20366=@"loc,{#10000},13,2,13,2" -locations_default(#20366,#10000,13,2,13,2) -hasLocation(#20365,#20366) -regexp_const_value(#20365,"a") -#20367=* -stmts(#20367,2,#20001,13,"/a??/;") -hasLocation(#20367,#20029) -stmt_containers(#20367,#20001) +exprs(#20363,5,#20362,0,"/a?/") +hasLocation(#20363,#20139) +enclosing_stmt(#20363,#20362) +expr_containers(#20363,#20001) +literals("/a?/","/a?/",#20363) +#20364=* +regexpterm(#20364,10,#20363,0,"a?") +#20365=@"loc,{#10000},13,2,13,3" +locations_default(#20365,#10000,13,2,13,3) +hasLocation(#20364,#20365) +is_greedy(#20364) +#20366=* +regexpterm(#20366,14,#20364,0,"a") +#20367=@"loc,{#10000},13,2,13,2" +locations_default(#20367,#10000,13,2,13,2) +hasLocation(#20366,#20367) +regexp_const_value(#20366,"a") #20368=* -exprs(#20368,5,#20367,0,"/a??/") -hasLocation(#20368,#20143) -enclosing_stmt(#20368,#20367) -expr_containers(#20368,#20001) -literals("/a??/","/a??/",#20368) +stmts(#20368,2,#20001,13,"/a??/;") +hasLocation(#20368,#20029) +stmt_containers(#20368,#20001) #20369=* -regexpterm(#20369,10,#20368,0,"a??") -#20370=@"loc,{#10000},14,2,14,4" -locations_default(#20370,#10000,14,2,14,4) -hasLocation(#20369,#20370) -#20371=* -regexpterm(#20371,14,#20369,0,"a") -#20372=@"loc,{#10000},14,2,14,2" -locations_default(#20372,#10000,14,2,14,2) -hasLocation(#20371,#20372) -regexp_const_value(#20371,"a") -#20373=* -stmts(#20373,2,#20001,14,"/a{1}/;") -hasLocation(#20373,#20031) -stmt_containers(#20373,#20001) +exprs(#20369,5,#20368,0,"/a??/") +hasLocation(#20369,#20143) +enclosing_stmt(#20369,#20368) +expr_containers(#20369,#20001) +literals("/a??/","/a??/",#20369) +#20370=* +regexpterm(#20370,10,#20369,0,"a??") +#20371=@"loc,{#10000},14,2,14,4" +locations_default(#20371,#10000,14,2,14,4) +hasLocation(#20370,#20371) +#20372=* +regexpterm(#20372,14,#20370,0,"a") +#20373=@"loc,{#10000},14,2,14,2" +locations_default(#20373,#10000,14,2,14,2) +hasLocation(#20372,#20373) +regexp_const_value(#20372,"a") #20374=* -exprs(#20374,5,#20373,0,"/a{1}/") -hasLocation(#20374,#20147) -enclosing_stmt(#20374,#20373) -expr_containers(#20374,#20001) -literals("/a{1}/","/a{1}/",#20374) +stmts(#20374,2,#20001,14,"/a{1}/;") +hasLocation(#20374,#20031) +stmt_containers(#20374,#20001) #20375=* -regexpterm(#20375,11,#20374,0,"a{1}") -#20376=@"loc,{#10000},15,2,15,5" -locations_default(#20376,#10000,15,2,15,5) -hasLocation(#20375,#20376) -is_greedy(#20375) -range_quantifier_lower_bound(#20375,1) -range_quantifier_upper_bound(#20375,1) -#20377=* -regexpterm(#20377,14,#20375,0,"a") -#20378=@"loc,{#10000},15,2,15,2" -locations_default(#20378,#10000,15,2,15,2) -hasLocation(#20377,#20378) -regexp_const_value(#20377,"a") -#20379=* -stmts(#20379,2,#20001,15,"/a{1,}/;") -hasLocation(#20379,#20033) -stmt_containers(#20379,#20001) +exprs(#20375,5,#20374,0,"/a{1}/") +hasLocation(#20375,#20147) +enclosing_stmt(#20375,#20374) +expr_containers(#20375,#20001) +literals("/a{1}/","/a{1}/",#20375) +#20376=* +regexpterm(#20376,11,#20375,0,"a{1}") +#20377=@"loc,{#10000},15,2,15,5" +locations_default(#20377,#10000,15,2,15,5) +hasLocation(#20376,#20377) +is_greedy(#20376) +range_quantifier_lower_bound(#20376,1) +range_quantifier_upper_bound(#20376,1) +#20378=* +regexpterm(#20378,14,#20376,0,"a") +#20379=@"loc,{#10000},15,2,15,2" +locations_default(#20379,#10000,15,2,15,2) +hasLocation(#20378,#20379) +regexp_const_value(#20378,"a") #20380=* -exprs(#20380,5,#20379,0,"/a{1,}/") -hasLocation(#20380,#20151) -enclosing_stmt(#20380,#20379) -expr_containers(#20380,#20001) -literals("/a{1,}/","/a{1,}/",#20380) +stmts(#20380,2,#20001,15,"/a{1,}/;") +hasLocation(#20380,#20033) +stmt_containers(#20380,#20001) #20381=* -regexpterm(#20381,11,#20380,0,"a{1,}") -#20382=@"loc,{#10000},16,2,16,6" -locations_default(#20382,#10000,16,2,16,6) -hasLocation(#20381,#20382) -is_greedy(#20381) -range_quantifier_lower_bound(#20381,1) -#20383=* -regexpterm(#20383,14,#20381,0,"a") -#20384=@"loc,{#10000},16,2,16,2" -locations_default(#20384,#10000,16,2,16,2) -hasLocation(#20383,#20384) -regexp_const_value(#20383,"a") -#20385=* -stmts(#20385,2,#20001,16,"/a{1,2}/;") -hasLocation(#20385,#20035) -stmt_containers(#20385,#20001) +exprs(#20381,5,#20380,0,"/a{1,}/") +hasLocation(#20381,#20151) +enclosing_stmt(#20381,#20380) +expr_containers(#20381,#20001) +literals("/a{1,}/","/a{1,}/",#20381) +#20382=* +regexpterm(#20382,11,#20381,0,"a{1,}") +#20383=@"loc,{#10000},16,2,16,6" +locations_default(#20383,#10000,16,2,16,6) +hasLocation(#20382,#20383) +is_greedy(#20382) +range_quantifier_lower_bound(#20382,1) +#20384=* +regexpterm(#20384,14,#20382,0,"a") +#20385=@"loc,{#10000},16,2,16,2" +locations_default(#20385,#10000,16,2,16,2) +hasLocation(#20384,#20385) +regexp_const_value(#20384,"a") #20386=* -exprs(#20386,5,#20385,0,"/a{1,2}/") -hasLocation(#20386,#20155) -enclosing_stmt(#20386,#20385) -expr_containers(#20386,#20001) -literals("/a{1,2}/","/a{1,2}/",#20386) +stmts(#20386,2,#20001,16,"/a{1,2}/;") +hasLocation(#20386,#20035) +stmt_containers(#20386,#20001) #20387=* -regexpterm(#20387,11,#20386,0,"a{1,2}") -#20388=@"loc,{#10000},17,2,17,7" -locations_default(#20388,#10000,17,2,17,7) -hasLocation(#20387,#20388) -is_greedy(#20387) -range_quantifier_lower_bound(#20387,1) -range_quantifier_upper_bound(#20387,2) -#20389=* -regexpterm(#20389,14,#20387,0,"a") -#20390=@"loc,{#10000},17,2,17,2" -locations_default(#20390,#10000,17,2,17,2) -hasLocation(#20389,#20390) -regexp_const_value(#20389,"a") -#20391=* -stmts(#20391,2,#20001,17,"/a{1}?/;") -hasLocation(#20391,#20037) -stmt_containers(#20391,#20001) +exprs(#20387,5,#20386,0,"/a{1,2}/") +hasLocation(#20387,#20155) +enclosing_stmt(#20387,#20386) +expr_containers(#20387,#20001) +literals("/a{1,2}/","/a{1,2}/",#20387) +#20388=* +regexpterm(#20388,11,#20387,0,"a{1,2}") +#20389=@"loc,{#10000},17,2,17,7" +locations_default(#20389,#10000,17,2,17,7) +hasLocation(#20388,#20389) +is_greedy(#20388) +range_quantifier_lower_bound(#20388,1) +range_quantifier_upper_bound(#20388,2) +#20390=* +regexpterm(#20390,14,#20388,0,"a") +#20391=@"loc,{#10000},17,2,17,2" +locations_default(#20391,#10000,17,2,17,2) +hasLocation(#20390,#20391) +regexp_const_value(#20390,"a") #20392=* -exprs(#20392,5,#20391,0,"/a{1}?/") -hasLocation(#20392,#20159) -enclosing_stmt(#20392,#20391) -expr_containers(#20392,#20001) -literals("/a{1}?/","/a{1}?/",#20392) +stmts(#20392,2,#20001,17,"/a{1}?/;") +hasLocation(#20392,#20037) +stmt_containers(#20392,#20001) #20393=* -regexpterm(#20393,11,#20392,0,"a{1}?") -#20394=@"loc,{#10000},18,2,18,6" -locations_default(#20394,#10000,18,2,18,6) -hasLocation(#20393,#20394) -range_quantifier_lower_bound(#20393,1) -range_quantifier_upper_bound(#20393,1) -#20395=* -regexpterm(#20395,14,#20393,0,"a") -#20396=@"loc,{#10000},18,2,18,2" -locations_default(#20396,#10000,18,2,18,2) -hasLocation(#20395,#20396) -regexp_const_value(#20395,"a") -#20397=* -stmts(#20397,2,#20001,18,"/a{1,}?/;") -hasLocation(#20397,#20039) -stmt_containers(#20397,#20001) +exprs(#20393,5,#20392,0,"/a{1}?/") +hasLocation(#20393,#20159) +enclosing_stmt(#20393,#20392) +expr_containers(#20393,#20001) +literals("/a{1}?/","/a{1}?/",#20393) +#20394=* +regexpterm(#20394,11,#20393,0,"a{1}?") +#20395=@"loc,{#10000},18,2,18,6" +locations_default(#20395,#10000,18,2,18,6) +hasLocation(#20394,#20395) +range_quantifier_lower_bound(#20394,1) +range_quantifier_upper_bound(#20394,1) +#20396=* +regexpterm(#20396,14,#20394,0,"a") +#20397=@"loc,{#10000},18,2,18,2" +locations_default(#20397,#10000,18,2,18,2) +hasLocation(#20396,#20397) +regexp_const_value(#20396,"a") #20398=* -exprs(#20398,5,#20397,0,"/a{1,}?/") -hasLocation(#20398,#20163) -enclosing_stmt(#20398,#20397) -expr_containers(#20398,#20001) -literals("/a{1,}?/","/a{1,}?/",#20398) +stmts(#20398,2,#20001,18,"/a{1,}?/;") +hasLocation(#20398,#20039) +stmt_containers(#20398,#20001) #20399=* -regexpterm(#20399,11,#20398,0,"a{1,}?") -#20400=@"loc,{#10000},19,2,19,7" -locations_default(#20400,#10000,19,2,19,7) -hasLocation(#20399,#20400) -range_quantifier_lower_bound(#20399,1) -#20401=* -regexpterm(#20401,14,#20399,0,"a") -#20402=@"loc,{#10000},19,2,19,2" -locations_default(#20402,#10000,19,2,19,2) -hasLocation(#20401,#20402) -regexp_const_value(#20401,"a") -#20403=* -stmts(#20403,2,#20001,19,"/a{1,2}?/;") -hasLocation(#20403,#20041) -stmt_containers(#20403,#20001) +exprs(#20399,5,#20398,0,"/a{1,}?/") +hasLocation(#20399,#20163) +enclosing_stmt(#20399,#20398) +expr_containers(#20399,#20001) +literals("/a{1,}?/","/a{1,}?/",#20399) +#20400=* +regexpterm(#20400,11,#20399,0,"a{1,}?") +#20401=@"loc,{#10000},19,2,19,7" +locations_default(#20401,#10000,19,2,19,7) +hasLocation(#20400,#20401) +range_quantifier_lower_bound(#20400,1) +#20402=* +regexpterm(#20402,14,#20400,0,"a") +#20403=@"loc,{#10000},19,2,19,2" +locations_default(#20403,#10000,19,2,19,2) +hasLocation(#20402,#20403) +regexp_const_value(#20402,"a") #20404=* -exprs(#20404,5,#20403,0,"/a{1,2}?/") -hasLocation(#20404,#20167) -enclosing_stmt(#20404,#20403) -expr_containers(#20404,#20001) -literals("/a{1,2}?/","/a{1,2}?/",#20404) +stmts(#20404,2,#20001,19,"/a{1,2}?/;") +hasLocation(#20404,#20041) +stmt_containers(#20404,#20001) #20405=* -regexpterm(#20405,11,#20404,0,"a{1,2}?") -#20406=@"loc,{#10000},20,2,20,8" -locations_default(#20406,#10000,20,2,20,8) -hasLocation(#20405,#20406) -range_quantifier_lower_bound(#20405,1) -range_quantifier_upper_bound(#20405,2) -#20407=* -regexpterm(#20407,14,#20405,0,"a") -#20408=@"loc,{#10000},20,2,20,2" -locations_default(#20408,#10000,20,2,20,2) -hasLocation(#20407,#20408) -regexp_const_value(#20407,"a") -#20409=* -stmts(#20409,2,#20001,20,"/./;") -hasLocation(#20409,#20043) -stmt_containers(#20409,#20001) +exprs(#20405,5,#20404,0,"/a{1,2}?/") +hasLocation(#20405,#20167) +enclosing_stmt(#20405,#20404) +expr_containers(#20405,#20001) +literals("/a{1,2}?/","/a{1,2}?/",#20405) +#20406=* +regexpterm(#20406,11,#20405,0,"a{1,2}?") +#20407=@"loc,{#10000},20,2,20,8" +locations_default(#20407,#10000,20,2,20,8) +hasLocation(#20406,#20407) +range_quantifier_lower_bound(#20406,1) +range_quantifier_upper_bound(#20406,2) +#20408=* +regexpterm(#20408,14,#20406,0,"a") +#20409=@"loc,{#10000},20,2,20,2" +locations_default(#20409,#10000,20,2,20,2) +hasLocation(#20408,#20409) +regexp_const_value(#20408,"a") #20410=* -exprs(#20410,5,#20409,0,"/./") -hasLocation(#20410,#20171) -enclosing_stmt(#20410,#20409) -expr_containers(#20410,#20001) -literals("/./","/./",#20410) +stmts(#20410,2,#20001,20,"/./;") +hasLocation(#20410,#20043) +stmt_containers(#20410,#20001) #20411=* -regexpterm(#20411,12,#20410,0,".") -#20412=@"loc,{#10000},21,2,21,2" -locations_default(#20412,#10000,21,2,21,2) -hasLocation(#20411,#20412) -#20413=* -stmts(#20413,2,#20001,21,"/(abc)/;") -hasLocation(#20413,#20045) -stmt_containers(#20413,#20001) +exprs(#20411,5,#20410,0,"/./") +hasLocation(#20411,#20171) +enclosing_stmt(#20411,#20410) +expr_containers(#20411,#20001) +literals("/./","/./",#20411) +#20412=* +regexpterm(#20412,12,#20411,0,".") +#20413=@"loc,{#10000},21,2,21,2" +locations_default(#20413,#10000,21,2,21,2) +hasLocation(#20412,#20413) #20414=* -exprs(#20414,5,#20413,0,"/(abc)/") -hasLocation(#20414,#20175) -enclosing_stmt(#20414,#20413) -expr_containers(#20414,#20001) -literals("/(abc)/","/(abc)/",#20414) +stmts(#20414,2,#20001,21,"/(abc)/;") +hasLocation(#20414,#20045) +stmt_containers(#20414,#20001) #20415=* -regexpterm(#20415,13,#20414,0,"(abc)") -#20416=@"loc,{#10000},22,2,22,6" -locations_default(#20416,#10000,22,2,22,6) -hasLocation(#20415,#20416) -is_capture(#20415,1) -#20417=* -regexpterm(#20417,14,#20415,0,"abc") -#20418=@"loc,{#10000},22,3,22,5" -locations_default(#20418,#10000,22,3,22,5) -hasLocation(#20417,#20418) -regexp_const_value(#20417,"abc") -#20419=* -stmts(#20419,2,#20001,22,"/(?:abc)/;") -hasLocation(#20419,#20047) -stmt_containers(#20419,#20001) +exprs(#20415,5,#20414,0,"/(abc)/") +hasLocation(#20415,#20175) +enclosing_stmt(#20415,#20414) +expr_containers(#20415,#20001) +literals("/(abc)/","/(abc)/",#20415) +#20416=* +regexpterm(#20416,13,#20415,0,"(abc)") +#20417=@"loc,{#10000},22,2,22,6" +locations_default(#20417,#10000,22,2,22,6) +hasLocation(#20416,#20417) +is_capture(#20416,1) +#20418=* +regexpterm(#20418,14,#20416,0,"abc") +#20419=@"loc,{#10000},22,3,22,5" +locations_default(#20419,#10000,22,3,22,5) +hasLocation(#20418,#20419) +regexp_const_value(#20418,"abc") #20420=* -exprs(#20420,5,#20419,0,"/(?:abc)/") -hasLocation(#20420,#20179) -enclosing_stmt(#20420,#20419) -expr_containers(#20420,#20001) -literals("/(?:abc)/","/(?:abc)/",#20420) +stmts(#20420,2,#20001,22,"/(?:abc)/;") +hasLocation(#20420,#20047) +stmt_containers(#20420,#20001) #20421=* -regexpterm(#20421,13,#20420,0,"(?:abc)") -#20422=@"loc,{#10000},23,2,23,8" -locations_default(#20422,#10000,23,2,23,8) -hasLocation(#20421,#20422) -#20423=* -regexpterm(#20423,14,#20421,0,"abc") -#20424=@"loc,{#10000},23,5,23,7" -locations_default(#20424,#10000,23,5,23,7) -hasLocation(#20423,#20424) -regexp_const_value(#20423,"abc") -#20425=* -stmts(#20425,2,#20001,23,"/\x0a/;") -hasLocation(#20425,#20049) -stmt_containers(#20425,#20001) +exprs(#20421,5,#20420,0,"/(?:abc)/") +hasLocation(#20421,#20179) +enclosing_stmt(#20421,#20420) +expr_containers(#20421,#20001) +literals("/(?:abc)/","/(?:abc)/",#20421) +#20422=* +regexpterm(#20422,13,#20421,0,"(?:abc)") +#20423=@"loc,{#10000},23,2,23,8" +locations_default(#20423,#10000,23,2,23,8) +hasLocation(#20422,#20423) +#20424=* +regexpterm(#20424,14,#20422,0,"abc") +#20425=@"loc,{#10000},23,5,23,7" +locations_default(#20425,#10000,23,5,23,7) +hasLocation(#20424,#20425) +regexp_const_value(#20424,"abc") #20426=* -exprs(#20426,5,#20425,0,"/\x0a/") -hasLocation(#20426,#20183) -enclosing_stmt(#20426,#20425) -expr_containers(#20426,#20001) -literals("/\x0a/","/\x0a/",#20426) +stmts(#20426,2,#20001,23,"/\x0a/;") +hasLocation(#20426,#20049) +stmt_containers(#20426,#20001) #20427=* -regexpterm(#20427,15,#20426,0,"\x0a") -#20428=@"loc,{#10000},24,2,24,5" -locations_default(#20428,#10000,24,2,24,5) -hasLocation(#20427,#20428) -regexp_const_value(#20427," +exprs(#20427,5,#20426,0,"/\x0a/") +hasLocation(#20427,#20183) +enclosing_stmt(#20427,#20426) +expr_containers(#20427,#20001) +literals("/\x0a/","/\x0a/",#20427) +#20428=* +regexpterm(#20428,15,#20427,0,"\x0a") +#20429=@"loc,{#10000},24,2,24,5" +locations_default(#20429,#10000,24,2,24,5) +hasLocation(#20428,#20429) +regexp_const_value(#20428," ") -#20429=* -stmts(#20429,2,#20001,24,"/\u000a/;") -hasLocation(#20429,#20051) -stmt_containers(#20429,#20001) #20430=* -exprs(#20430,5,#20429,0,"/\u000a/") -hasLocation(#20430,#20187) -enclosing_stmt(#20430,#20429) -expr_containers(#20430,#20001) -literals("/\u000a/","/\u000a/",#20430) +stmts(#20430,2,#20001,24,"/\u000a/;") +hasLocation(#20430,#20051) +stmt_containers(#20430,#20001) #20431=* -regexpterm(#20431,16,#20430,0,"\u000a") -#20432=@"loc,{#10000},25,2,25,7" -locations_default(#20432,#10000,25,2,25,7) -hasLocation(#20431,#20432) -regexp_const_value(#20431," +exprs(#20431,5,#20430,0,"/\u000a/") +hasLocation(#20431,#20187) +enclosing_stmt(#20431,#20430) +expr_containers(#20431,#20001) +literals("/\u000a/","/\u000a/",#20431) +#20432=* +regexpterm(#20432,16,#20431,0,"\u000a") +#20433=@"loc,{#10000},25,2,25,7" +locations_default(#20433,#10000,25,2,25,7) +hasLocation(#20432,#20433) +regexp_const_value(#20432," ") -#20433=* -stmts(#20433,2,#20001,25,"/\10/;") -hasLocation(#20433,#20053) -stmt_containers(#20433,#20001) #20434=* -exprs(#20434,5,#20433,0,"/\10/") -hasLocation(#20434,#20191) -enclosing_stmt(#20434,#20433) -expr_containers(#20434,#20001) -literals("/\10/","/\10/",#20434) +stmts(#20434,2,#20001,25,"/\10/;") +hasLocation(#20434,#20053) +stmt_containers(#20434,#20001) #20435=* -regexpterm(#20435,22,#20434,0,"\10") -#20436=@"loc,{#10000},26,2,26,4" -locations_default(#20436,#10000,26,2,26,4) -hasLocation(#20435,#20436) -backref(#20435,10) -#20437=* -regexp_parse_errors(#20437,#20435,"invalid back reference") -hasLocation(#20437,#20436) +exprs(#20435,5,#20434,0,"/\10/") +hasLocation(#20435,#20191) +enclosing_stmt(#20435,#20434) +expr_containers(#20435,#20001) +literals("/\10/","/\10/",#20435) +#20436=* +regexpterm(#20436,22,#20435,0,"\10") +#20437=@"loc,{#10000},26,2,26,4" +locations_default(#20437,#10000,26,2,26,4) +hasLocation(#20436,#20437) +backref(#20436,10) #20438=* -stmts(#20438,2,#20001,26,"/\t\n\r\f\v/;") -hasLocation(#20438,#20055) -stmt_containers(#20438,#20001) +regexp_parse_errors(#20438,#20436,"invalid back reference") +hasLocation(#20438,#20437) #20439=* -exprs(#20439,5,#20438,0,"/\t\n\r\f\v/") -hasLocation(#20439,#20195) -enclosing_stmt(#20439,#20438) -expr_containers(#20439,#20001) -literals("/\t\n\r\f\v/","/\t\n\r\f\v/",#20439) +stmts(#20439,2,#20001,26,"/\t\n\r\f\v/;") +hasLocation(#20439,#20055) +stmt_containers(#20439,#20001) #20440=* -regexpterm(#20440,1,#20439,0,"\t\n\r\f\v") -#20441=@"loc,{#10000},27,2,27,11" -locations_default(#20441,#10000,27,2,27,11) -hasLocation(#20440,#20441) -#20442=* -regexpterm(#20442,19,#20440,0,"\t") -#20443=@"loc,{#10000},27,2,27,3" -locations_default(#20443,#10000,27,2,27,3) -hasLocation(#20442,#20443) -regexp_const_value(#20442," ") -#20444=* -regexpterm(#20444,19,#20440,1,"\n") -#20445=@"loc,{#10000},27,4,27,5" -locations_default(#20445,#10000,27,4,27,5) -hasLocation(#20444,#20445) -regexp_const_value(#20444," +exprs(#20440,5,#20439,0,"/\t\n\r\f\v/") +hasLocation(#20440,#20195) +enclosing_stmt(#20440,#20439) +expr_containers(#20440,#20001) +literals("/\t\n\r\f\v/","/\t\n\r\f\v/",#20440) +#20441=* +regexpterm(#20441,1,#20440,0,"\t\n\r\f\v") +#20442=@"loc,{#10000},27,2,27,11" +locations_default(#20442,#10000,27,2,27,11) +hasLocation(#20441,#20442) +#20443=* +regexpterm(#20443,19,#20441,0,"\t") +#20444=@"loc,{#10000},27,2,27,3" +locations_default(#20444,#10000,27,2,27,3) +hasLocation(#20443,#20444) +regexp_const_value(#20443," ") +#20445=* +regexpterm(#20445,19,#20441,1,"\n") +#20446=@"loc,{#10000},27,4,27,5" +locations_default(#20446,#10000,27,4,27,5) +hasLocation(#20445,#20446) +regexp_const_value(#20445," ") -#20446=* -regexpterm(#20446,19,#20440,2,"\r") -#20447=@"loc,{#10000},27,6,27,7" -locations_default(#20447,#10000,27,6,27,7) -hasLocation(#20446,#20447) -regexp_const_value(#20446," ") -#20448=* -regexpterm(#20448,19,#20440,3,"\f") -#20449=@"loc,{#10000},27,8,27,9" -locations_default(#20449,#10000,27,8,27,9) -hasLocation(#20448,#20449) -regexp_const_value(#20448," ") -#20450=* -regexpterm(#20450,19,#20440,4,"\v") -#20451=@"loc,{#10000},27,10,27,11" -locations_default(#20451,#10000,27,10,27,11) -hasLocation(#20450,#20451) -regexp_const_value(#20450," ") -#20452=* -stmts(#20452,2,#20001,27,"/\ca\cN/;") -hasLocation(#20452,#20057) -stmt_containers(#20452,#20001) +#20447=* +regexpterm(#20447,19,#20441,2,"\r") +#20448=@"loc,{#10000},27,6,27,7" +locations_default(#20448,#10000,27,6,27,7) +hasLocation(#20447,#20448) +regexp_const_value(#20447," ") +#20449=* +regexpterm(#20449,19,#20441,3,"\f") +#20450=@"loc,{#10000},27,8,27,9" +locations_default(#20450,#10000,27,8,27,9) +hasLocation(#20449,#20450) +regexp_const_value(#20449," ") +#20451=* +regexpterm(#20451,19,#20441,4,"\v") +#20452=@"loc,{#10000},27,10,27,11" +locations_default(#20452,#10000,27,10,27,11) +hasLocation(#20451,#20452) +regexp_const_value(#20451," ") #20453=* -exprs(#20453,5,#20452,0,"/\ca\cN/") -hasLocation(#20453,#20199) -enclosing_stmt(#20453,#20452) -expr_containers(#20453,#20001) -literals("/\ca\cN/","/\ca\cN/",#20453) +stmts(#20453,2,#20001,27,"/\ca\cN/;") +hasLocation(#20453,#20057) +stmt_containers(#20453,#20001) #20454=* -regexpterm(#20454,1,#20453,0,"\ca\cN") -#20455=@"loc,{#10000},28,2,28,7" -locations_default(#20455,#10000,28,2,28,7) -hasLocation(#20454,#20455) -#20456=* -regexpterm(#20456,19,#20454,0,"\ca") -#20457=@"loc,{#10000},28,2,28,4" -locations_default(#20457,#10000,28,2,28,4) -hasLocation(#20456,#20457) -regexp_const_value(#20456,"") -#20458=* -regexpterm(#20458,19,#20454,1,"\cN") -#20459=@"loc,{#10000},28,5,28,7" -locations_default(#20459,#10000,28,5,28,7) -hasLocation(#20458,#20459) -regexp_const_value(#20458,"") -#20460=* -stmts(#20460,2,#20001,28,"/\w\S/;") -hasLocation(#20460,#20059) -stmt_containers(#20460,#20001) +exprs(#20454,5,#20453,0,"/\ca\cN/") +hasLocation(#20454,#20199) +enclosing_stmt(#20454,#20453) +expr_containers(#20454,#20001) +literals("/\ca\cN/","/\ca\cN/",#20454) +#20455=* +regexpterm(#20455,1,#20454,0,"\ca\cN") +#20456=@"loc,{#10000},28,2,28,7" +locations_default(#20456,#10000,28,2,28,7) +hasLocation(#20455,#20456) +#20457=* +regexpterm(#20457,19,#20455,0,"\ca") +#20458=@"loc,{#10000},28,2,28,4" +locations_default(#20458,#10000,28,2,28,4) +hasLocation(#20457,#20458) +regexp_const_value(#20457,"") +#20459=* +regexpterm(#20459,19,#20455,1,"\cN") +#20460=@"loc,{#10000},28,5,28,7" +locations_default(#20460,#10000,28,5,28,7) +hasLocation(#20459,#20460) +regexp_const_value(#20459,"") #20461=* -exprs(#20461,5,#20460,0,"/\w\S/") -hasLocation(#20461,#20203) -enclosing_stmt(#20461,#20460) -expr_containers(#20461,#20001) -literals("/\w\S/","/\w\S/",#20461) +stmts(#20461,2,#20001,28,"/\w\S/;") +hasLocation(#20461,#20059) +stmt_containers(#20461,#20001) #20462=* -regexpterm(#20462,1,#20461,0,"\w\S") -#20463=@"loc,{#10000},29,2,29,5" -locations_default(#20463,#10000,29,2,29,5) -hasLocation(#20462,#20463) -#20464=* -regexpterm(#20464,20,#20462,0,"\w") -#20465=@"loc,{#10000},29,2,29,3" -locations_default(#20465,#10000,29,2,29,3) -hasLocation(#20464,#20465) -char_class_escape(#20464,"w") -#20466=* -regexpterm(#20466,20,#20462,1,"\S") -#20467=@"loc,{#10000},29,4,29,5" -locations_default(#20467,#10000,29,4,29,5) -hasLocation(#20466,#20467) -char_class_escape(#20466,"S") -#20468=* -stmts(#20468,2,#20001,29,"/\\/;") -hasLocation(#20468,#20061) -stmt_containers(#20468,#20001) +exprs(#20462,5,#20461,0,"/\w\S/") +hasLocation(#20462,#20203) +enclosing_stmt(#20462,#20461) +expr_containers(#20462,#20001) +literals("/\w\S/","/\w\S/",#20462) +#20463=* +regexpterm(#20463,1,#20462,0,"\w\S") +#20464=@"loc,{#10000},29,2,29,5" +locations_default(#20464,#10000,29,2,29,5) +hasLocation(#20463,#20464) +#20465=* +regexpterm(#20465,20,#20463,0,"\w") +#20466=@"loc,{#10000},29,2,29,3" +locations_default(#20466,#10000,29,2,29,3) +hasLocation(#20465,#20466) +char_class_escape(#20465,"w") +#20467=* +regexpterm(#20467,20,#20463,1,"\S") +#20468=@"loc,{#10000},29,4,29,5" +locations_default(#20468,#10000,29,4,29,5) +hasLocation(#20467,#20468) +char_class_escape(#20467,"S") #20469=* -exprs(#20469,5,#20468,0,"/\\/") -hasLocation(#20469,#20207) -enclosing_stmt(#20469,#20468) -expr_containers(#20469,#20001) -literals("/\\/","/\\/",#20469) +stmts(#20469,2,#20001,29,"/\\/;") +hasLocation(#20469,#20061) +stmt_containers(#20469,#20001) #20470=* -regexpterm(#20470,21,#20469,0,"\\") -#20471=@"loc,{#10000},30,2,30,3" -locations_default(#20471,#10000,30,2,30,3) -hasLocation(#20470,#20471) -regexp_const_value(#20470,"\") -#20472=* -stmts(#20472,2,#20001,30,"/[abc]/;") -hasLocation(#20472,#20063) -stmt_containers(#20472,#20001) +exprs(#20470,5,#20469,0,"/\\/") +hasLocation(#20470,#20207) +enclosing_stmt(#20470,#20469) +expr_containers(#20470,#20001) +literals("/\\/","/\\/",#20470) +#20471=* +regexpterm(#20471,21,#20470,0,"\\") +#20472=@"loc,{#10000},30,2,30,3" +locations_default(#20472,#10000,30,2,30,3) +hasLocation(#20471,#20472) +regexp_const_value(#20471,"\") #20473=* -exprs(#20473,5,#20472,0,"/[abc]/") -hasLocation(#20473,#20211) -enclosing_stmt(#20473,#20472) -expr_containers(#20473,#20001) -literals("/[abc]/","/[abc]/",#20473) +stmts(#20473,2,#20001,30,"/[abc]/;") +hasLocation(#20473,#20063) +stmt_containers(#20473,#20001) #20474=* -regexpterm(#20474,23,#20473,0,"[abc]") -#20475=@"loc,{#10000},31,2,31,6" -locations_default(#20475,#10000,31,2,31,6) -hasLocation(#20474,#20475) -#20476=* -regexpterm(#20476,14,#20474,0,"a") -#20477=@"loc,{#10000},31,3,31,3" -locations_default(#20477,#10000,31,3,31,3) -hasLocation(#20476,#20477) -regexp_const_value(#20476,"a") -#20478=* -regexpterm(#20478,14,#20474,1,"b") -#20479=@"loc,{#10000},31,4,31,4" -locations_default(#20479,#10000,31,4,31,4) -hasLocation(#20478,#20479) -regexp_const_value(#20478,"b") -#20480=* -regexpterm(#20480,14,#20474,2,"c") -#20481=@"loc,{#10000},31,5,31,5" -locations_default(#20481,#10000,31,5,31,5) -hasLocation(#20480,#20481) -regexp_const_value(#20480,"c") -#20482=* -stmts(#20482,2,#20001,31,"/[a-z]/;") -hasLocation(#20482,#20065) -stmt_containers(#20482,#20001) +exprs(#20474,5,#20473,0,"/[abc]/") +hasLocation(#20474,#20211) +enclosing_stmt(#20474,#20473) +expr_containers(#20474,#20001) +literals("/[abc]/","/[abc]/",#20474) +#20475=* +regexpterm(#20475,23,#20474,0,"[abc]") +#20476=@"loc,{#10000},31,2,31,6" +locations_default(#20476,#10000,31,2,31,6) +hasLocation(#20475,#20476) +#20477=* +regexpterm(#20477,14,#20475,0,"a") +#20478=@"loc,{#10000},31,3,31,3" +locations_default(#20478,#10000,31,3,31,3) +hasLocation(#20477,#20478) +regexp_const_value(#20477,"a") +#20479=* +regexpterm(#20479,14,#20475,1,"b") +#20480=@"loc,{#10000},31,4,31,4" +locations_default(#20480,#10000,31,4,31,4) +hasLocation(#20479,#20480) +regexp_const_value(#20479,"b") +#20481=* +regexpterm(#20481,14,#20475,2,"c") +#20482=@"loc,{#10000},31,5,31,5" +locations_default(#20482,#10000,31,5,31,5) +hasLocation(#20481,#20482) +regexp_const_value(#20481,"c") #20483=* -exprs(#20483,5,#20482,0,"/[a-z]/") -hasLocation(#20483,#20215) -enclosing_stmt(#20483,#20482) -expr_containers(#20483,#20001) -literals("/[a-z]/","/[a-z]/",#20483) +stmts(#20483,2,#20001,31,"/[a-z]/;") +hasLocation(#20483,#20065) +stmt_containers(#20483,#20001) #20484=* -regexpterm(#20484,23,#20483,0,"[a-z]") -#20485=@"loc,{#10000},32,2,32,6" -locations_default(#20485,#10000,32,2,32,6) -hasLocation(#20484,#20485) -#20486=* -regexpterm(#20486,24,#20484,0,"a-z") -#20487=@"loc,{#10000},32,3,32,5" -locations_default(#20487,#10000,32,3,32,5) -hasLocation(#20486,#20487) -#20488=* -regexpterm(#20488,14,#20486,0,"a") -#20489=@"loc,{#10000},32,3,32,3" -locations_default(#20489,#10000,32,3,32,3) -hasLocation(#20488,#20489) -regexp_const_value(#20488,"a") -#20490=* -regexpterm(#20490,14,#20486,1,"z") -#20491=@"loc,{#10000},32,5,32,5" -locations_default(#20491,#10000,32,5,32,5) -hasLocation(#20490,#20491) -regexp_const_value(#20490,"z") -#20492=* -stmts(#20492,2,#20001,32,"/[a-zA-Z]/;") -hasLocation(#20492,#20067) -stmt_containers(#20492,#20001) +exprs(#20484,5,#20483,0,"/[a-z]/") +hasLocation(#20484,#20215) +enclosing_stmt(#20484,#20483) +expr_containers(#20484,#20001) +literals("/[a-z]/","/[a-z]/",#20484) +#20485=* +regexpterm(#20485,23,#20484,0,"[a-z]") +#20486=@"loc,{#10000},32,2,32,6" +locations_default(#20486,#10000,32,2,32,6) +hasLocation(#20485,#20486) +#20487=* +regexpterm(#20487,24,#20485,0,"a-z") +#20488=@"loc,{#10000},32,3,32,5" +locations_default(#20488,#10000,32,3,32,5) +hasLocation(#20487,#20488) +#20489=* +regexpterm(#20489,14,#20487,0,"a") +#20490=@"loc,{#10000},32,3,32,3" +locations_default(#20490,#10000,32,3,32,3) +hasLocation(#20489,#20490) +regexp_const_value(#20489,"a") +#20491=* +regexpterm(#20491,14,#20487,1,"z") +#20492=@"loc,{#10000},32,5,32,5" +locations_default(#20492,#10000,32,5,32,5) +hasLocation(#20491,#20492) +regexp_const_value(#20491,"z") #20493=* -exprs(#20493,5,#20492,0,"/[a-zA-Z]/") -hasLocation(#20493,#20219) -enclosing_stmt(#20493,#20492) -expr_containers(#20493,#20001) -literals("/[a-zA-Z]/","/[a-zA-Z]/",#20493) +stmts(#20493,2,#20001,32,"/[a-zA-Z]/;") +hasLocation(#20493,#20067) +stmt_containers(#20493,#20001) #20494=* -regexpterm(#20494,23,#20493,0,"[a-zA-Z]") -#20495=@"loc,{#10000},33,2,33,9" -locations_default(#20495,#10000,33,2,33,9) -hasLocation(#20494,#20495) -#20496=* -regexpterm(#20496,24,#20494,0,"a-z") -#20497=@"loc,{#10000},33,3,33,5" -locations_default(#20497,#10000,33,3,33,5) -hasLocation(#20496,#20497) -#20498=* -regexpterm(#20498,14,#20496,0,"a") -#20499=@"loc,{#10000},33,3,33,3" -locations_default(#20499,#10000,33,3,33,3) -hasLocation(#20498,#20499) -regexp_const_value(#20498,"a") -#20500=* -regexpterm(#20500,14,#20496,1,"z") -#20501=@"loc,{#10000},33,5,33,5" -locations_default(#20501,#10000,33,5,33,5) -hasLocation(#20500,#20501) -regexp_const_value(#20500,"z") -#20502=* -regexpterm(#20502,24,#20494,1,"A-Z") -#20503=@"loc,{#10000},33,6,33,8" -locations_default(#20503,#10000,33,6,33,8) -hasLocation(#20502,#20503) -#20504=* -regexpterm(#20504,14,#20502,0,"A") -#20505=@"loc,{#10000},33,6,33,6" -locations_default(#20505,#10000,33,6,33,6) -hasLocation(#20504,#20505) -regexp_const_value(#20504,"A") -#20506=* -regexpterm(#20506,14,#20502,1,"Z") -#20507=@"loc,{#10000},33,8,33,8" -locations_default(#20507,#10000,33,8,33,8) -hasLocation(#20506,#20507) -regexp_const_value(#20506,"Z") -#20508=* -stmts(#20508,2,#20001,33,"/[-a-z]/;") -hasLocation(#20508,#20069) -stmt_containers(#20508,#20001) +exprs(#20494,5,#20493,0,"/[a-zA-Z]/") +hasLocation(#20494,#20219) +enclosing_stmt(#20494,#20493) +expr_containers(#20494,#20001) +literals("/[a-zA-Z]/","/[a-zA-Z]/",#20494) +#20495=* +regexpterm(#20495,23,#20494,0,"[a-zA-Z]") +#20496=@"loc,{#10000},33,2,33,9" +locations_default(#20496,#10000,33,2,33,9) +hasLocation(#20495,#20496) +#20497=* +regexpterm(#20497,24,#20495,0,"a-z") +#20498=@"loc,{#10000},33,3,33,5" +locations_default(#20498,#10000,33,3,33,5) +hasLocation(#20497,#20498) +#20499=* +regexpterm(#20499,14,#20497,0,"a") +#20500=@"loc,{#10000},33,3,33,3" +locations_default(#20500,#10000,33,3,33,3) +hasLocation(#20499,#20500) +regexp_const_value(#20499,"a") +#20501=* +regexpterm(#20501,14,#20497,1,"z") +#20502=@"loc,{#10000},33,5,33,5" +locations_default(#20502,#10000,33,5,33,5) +hasLocation(#20501,#20502) +regexp_const_value(#20501,"z") +#20503=* +regexpterm(#20503,24,#20495,1,"A-Z") +#20504=@"loc,{#10000},33,6,33,8" +locations_default(#20504,#10000,33,6,33,8) +hasLocation(#20503,#20504) +#20505=* +regexpterm(#20505,14,#20503,0,"A") +#20506=@"loc,{#10000},33,6,33,6" +locations_default(#20506,#10000,33,6,33,6) +hasLocation(#20505,#20506) +regexp_const_value(#20505,"A") +#20507=* +regexpterm(#20507,14,#20503,1,"Z") +#20508=@"loc,{#10000},33,8,33,8" +locations_default(#20508,#10000,33,8,33,8) +hasLocation(#20507,#20508) +regexp_const_value(#20507,"Z") #20509=* -exprs(#20509,5,#20508,0,"/[-a-z]/") -hasLocation(#20509,#20223) -enclosing_stmt(#20509,#20508) -expr_containers(#20509,#20001) -literals("/[-a-z]/","/[-a-z]/",#20509) +stmts(#20509,2,#20001,33,"/[-a-z]/;") +hasLocation(#20509,#20069) +stmt_containers(#20509,#20001) #20510=* -regexpterm(#20510,23,#20509,0,"[-a-z]") -#20511=@"loc,{#10000},34,2,34,7" -locations_default(#20511,#10000,34,2,34,7) -hasLocation(#20510,#20511) -#20512=* -regexpterm(#20512,14,#20510,0,"-") -#20513=@"loc,{#10000},34,3,34,3" -locations_default(#20513,#10000,34,3,34,3) -hasLocation(#20512,#20513) -regexp_const_value(#20512,"-") -#20514=* -regexpterm(#20514,24,#20510,1,"a-z") -#20515=@"loc,{#10000},34,4,34,6" -locations_default(#20515,#10000,34,4,34,6) -hasLocation(#20514,#20515) -#20516=* -regexpterm(#20516,14,#20514,0,"a") -#20517=@"loc,{#10000},34,4,34,4" -locations_default(#20517,#10000,34,4,34,4) -hasLocation(#20516,#20517) -regexp_const_value(#20516,"a") -#20518=* -regexpterm(#20518,14,#20514,1,"z") -#20519=@"loc,{#10000},34,6,34,6" -locations_default(#20519,#10000,34,6,34,6) -hasLocation(#20518,#20519) -regexp_const_value(#20518,"z") -#20520=* -stmts(#20520,2,#20001,34,"/[^a-z]/;") -hasLocation(#20520,#20071) -stmt_containers(#20520,#20001) +exprs(#20510,5,#20509,0,"/[-a-z]/") +hasLocation(#20510,#20223) +enclosing_stmt(#20510,#20509) +expr_containers(#20510,#20001) +literals("/[-a-z]/","/[-a-z]/",#20510) +#20511=* +regexpterm(#20511,23,#20510,0,"[-a-z]") +#20512=@"loc,{#10000},34,2,34,7" +locations_default(#20512,#10000,34,2,34,7) +hasLocation(#20511,#20512) +#20513=* +regexpterm(#20513,14,#20511,0,"-") +#20514=@"loc,{#10000},34,3,34,3" +locations_default(#20514,#10000,34,3,34,3) +hasLocation(#20513,#20514) +regexp_const_value(#20513,"-") +#20515=* +regexpterm(#20515,24,#20511,1,"a-z") +#20516=@"loc,{#10000},34,4,34,6" +locations_default(#20516,#10000,34,4,34,6) +hasLocation(#20515,#20516) +#20517=* +regexpterm(#20517,14,#20515,0,"a") +#20518=@"loc,{#10000},34,4,34,4" +locations_default(#20518,#10000,34,4,34,4) +hasLocation(#20517,#20518) +regexp_const_value(#20517,"a") +#20519=* +regexpterm(#20519,14,#20515,1,"z") +#20520=@"loc,{#10000},34,6,34,6" +locations_default(#20520,#10000,34,6,34,6) +hasLocation(#20519,#20520) +regexp_const_value(#20519,"z") #20521=* -exprs(#20521,5,#20520,0,"/[^a-z]/") -hasLocation(#20521,#20227) -enclosing_stmt(#20521,#20520) -expr_containers(#20521,#20001) -literals("/[^a-z]/","/[^a-z]/",#20521) +stmts(#20521,2,#20001,34,"/[^a-z]/;") +hasLocation(#20521,#20071) +stmt_containers(#20521,#20001) #20522=* -regexpterm(#20522,23,#20521,0,"[^a-z]") -#20523=@"loc,{#10000},35,2,35,7" -locations_default(#20523,#10000,35,2,35,7) -hasLocation(#20522,#20523) -is_inverted(#20522) -#20524=* -regexpterm(#20524,24,#20522,0,"a-z") -#20525=@"loc,{#10000},35,4,35,6" -locations_default(#20525,#10000,35,4,35,6) -hasLocation(#20524,#20525) -#20526=* -regexpterm(#20526,14,#20524,0,"a") -#20527=@"loc,{#10000},35,4,35,4" -locations_default(#20527,#10000,35,4,35,4) -hasLocation(#20526,#20527) -regexp_const_value(#20526,"a") -#20528=* -regexpterm(#20528,14,#20524,1,"z") -#20529=@"loc,{#10000},35,6,35,6" -locations_default(#20529,#10000,35,6,35,6) -hasLocation(#20528,#20529) -regexp_const_value(#20528,"z") -#20530=* -stmts(#20530,2,#20001,35,"/[a\b\x0c]/;") -hasLocation(#20530,#20073) -stmt_containers(#20530,#20001) +exprs(#20522,5,#20521,0,"/[^a-z]/") +hasLocation(#20522,#20227) +enclosing_stmt(#20522,#20521) +expr_containers(#20522,#20001) +literals("/[^a-z]/","/[^a-z]/",#20522) +#20523=* +regexpterm(#20523,23,#20522,0,"[^a-z]") +#20524=@"loc,{#10000},35,2,35,7" +locations_default(#20524,#10000,35,2,35,7) +hasLocation(#20523,#20524) +is_inverted(#20523) +#20525=* +regexpterm(#20525,24,#20523,0,"a-z") +#20526=@"loc,{#10000},35,4,35,6" +locations_default(#20526,#10000,35,4,35,6) +hasLocation(#20525,#20526) +#20527=* +regexpterm(#20527,14,#20525,0,"a") +#20528=@"loc,{#10000},35,4,35,4" +locations_default(#20528,#10000,35,4,35,4) +hasLocation(#20527,#20528) +regexp_const_value(#20527,"a") +#20529=* +regexpterm(#20529,14,#20525,1,"z") +#20530=@"loc,{#10000},35,6,35,6" +locations_default(#20530,#10000,35,6,35,6) +hasLocation(#20529,#20530) +regexp_const_value(#20529,"z") #20531=* -exprs(#20531,5,#20530,0,"/[a\b\x0c]/") -hasLocation(#20531,#20231) -enclosing_stmt(#20531,#20530) -expr_containers(#20531,#20001) -literals("/[a\b\x0c]/","/[a\b\x0c]/",#20531) +stmts(#20531,2,#20001,35,"/[a\b\x0c]/;") +hasLocation(#20531,#20073) +stmt_containers(#20531,#20001) #20532=* -regexpterm(#20532,23,#20531,0,"[a\b\x0c]") -#20533=@"loc,{#10000},36,2,36,10" -locations_default(#20533,#10000,36,2,36,10) -hasLocation(#20532,#20533) -#20534=* -regexpterm(#20534,14,#20532,0,"a") -#20535=@"loc,{#10000},36,3,36,3" -locations_default(#20535,#10000,36,3,36,3) -hasLocation(#20534,#20535) -regexp_const_value(#20534,"a") -#20536=* -regexpterm(#20536,19,#20532,1,"\b") -#20537=@"loc,{#10000},36,4,36,5" -locations_default(#20537,#10000,36,4,36,5) -hasLocation(#20536,#20537) -regexp_const_value(#20536,"") -#20538=* -regexpterm(#20538,15,#20532,2,"\x0c") -#20539=@"loc,{#10000},36,6,36,9" -locations_default(#20539,#10000,36,6,36,9) -hasLocation(#20538,#20539) -regexp_const_value(#20538," ") -#20540=* -stmts(#20540,2,#20001,36,"/a{/;") -hasLocation(#20540,#20075) -stmt_containers(#20540,#20001) +exprs(#20532,5,#20531,0,"/[a\b\x0c]/") +hasLocation(#20532,#20231) +enclosing_stmt(#20532,#20531) +expr_containers(#20532,#20001) +literals("/[a\b\x0c]/","/[a\b\x0c]/",#20532) +#20533=* +regexpterm(#20533,23,#20532,0,"[a\b\x0c]") +#20534=@"loc,{#10000},36,2,36,10" +locations_default(#20534,#10000,36,2,36,10) +hasLocation(#20533,#20534) +#20535=* +regexpterm(#20535,14,#20533,0,"a") +#20536=@"loc,{#10000},36,3,36,3" +locations_default(#20536,#10000,36,3,36,3) +hasLocation(#20535,#20536) +regexp_const_value(#20535,"a") +#20537=* +regexpterm(#20537,19,#20533,1,"\b") +#20538=@"loc,{#10000},36,4,36,5" +locations_default(#20538,#10000,36,4,36,5) +hasLocation(#20537,#20538) +regexp_const_value(#20537,"") +#20539=* +regexpterm(#20539,15,#20533,2,"\x0c") +#20540=@"loc,{#10000},36,6,36,9" +locations_default(#20540,#10000,36,6,36,9) +hasLocation(#20539,#20540) +regexp_const_value(#20539," ") #20541=* -exprs(#20541,5,#20540,0,"/a{/") -hasLocation(#20541,#20235) -enclosing_stmt(#20541,#20540) -expr_containers(#20541,#20001) -literals("/a{/","/a{/",#20541) +stmts(#20541,2,#20001,36,"/a{/;") +hasLocation(#20541,#20075) +stmt_containers(#20541,#20001) #20542=* -regexpterm(#20542,1,#20541,0,"a{") -#20543=@"loc,{#10000},37,2,37,3" -locations_default(#20543,#10000,37,2,37,3) -hasLocation(#20542,#20543) -#20544=* -regexpterm(#20544,14,#20542,0,"a") -#20545=@"loc,{#10000},37,2,37,2" -locations_default(#20545,#10000,37,2,37,2) -hasLocation(#20544,#20545) -regexp_const_value(#20544,"a") -#20546=* -regexpterm(#20546,14,#20542,1,"a{") -hasLocation(#20546,#20543) -regexp_const_value(#20546,"{") +exprs(#20542,5,#20541,0,"/a{/") +hasLocation(#20542,#20235) +enclosing_stmt(#20542,#20541) +expr_containers(#20542,#20001) +literals("/a{/","/a{/",#20542) +#20543=* +regexpterm(#20543,1,#20542,0,"a{") +#20544=@"loc,{#10000},37,2,37,3" +locations_default(#20544,#10000,37,2,37,3) +hasLocation(#20543,#20544) +#20545=* +regexpterm(#20545,14,#20543,0,"a") +#20546=@"loc,{#10000},37,2,37,2" +locations_default(#20546,#10000,37,2,37,2) +hasLocation(#20545,#20546) +regexp_const_value(#20545,"a") #20547=* -regexp_parse_errors(#20547,#20542,"expected digit") -#20548=@"loc,{#10000},37,4,37,4" -locations_default(#20548,#10000,37,4,37,4) -hasLocation(#20547,#20548) -#20549=* -stmts(#20549,2,#20001,37,"/a{b}/;") -hasLocation(#20549,#20077) -stmt_containers(#20549,#20001) +regexpterm(#20547,14,#20543,1,"a{") +hasLocation(#20547,#20544) +regexp_const_value(#20547,"{") +#20548=* +regexp_parse_errors(#20548,#20543,"expected digit") +#20549=@"loc,{#10000},37,4,37,4" +locations_default(#20549,#10000,37,4,37,4) +hasLocation(#20548,#20549) #20550=* -exprs(#20550,5,#20549,0,"/a{b}/") -hasLocation(#20550,#20239) -enclosing_stmt(#20550,#20549) -expr_containers(#20550,#20001) -literals("/a{b}/","/a{b}/",#20550) +stmts(#20550,2,#20001,37,"/a{b}/;") +hasLocation(#20550,#20077) +stmt_containers(#20550,#20001) #20551=* -regexpterm(#20551,1,#20550,0,"a{b}") -#20552=@"loc,{#10000},38,2,38,5" -locations_default(#20552,#10000,38,2,38,5) -hasLocation(#20551,#20552) -#20553=* -regexpterm(#20553,1,#20551,0,"a{") -#20554=@"loc,{#10000},38,2,38,3" -locations_default(#20554,#10000,38,2,38,3) -hasLocation(#20553,#20554) -#20555=* -regexpterm(#20555,14,#20553,0,"a") -#20556=@"loc,{#10000},38,2,38,2" -locations_default(#20556,#10000,38,2,38,2) -hasLocation(#20555,#20556) -regexp_const_value(#20555,"a") -#20557=* -regexpterm(#20557,14,#20553,1,"a{") -hasLocation(#20557,#20554) -regexp_const_value(#20557,"{") +exprs(#20551,5,#20550,0,"/a{b}/") +hasLocation(#20551,#20239) +enclosing_stmt(#20551,#20550) +expr_containers(#20551,#20001) +literals("/a{b}/","/a{b}/",#20551) +#20552=* +regexpterm(#20552,1,#20551,0,"a{b}") +#20553=@"loc,{#10000},38,2,38,5" +locations_default(#20553,#10000,38,2,38,5) +hasLocation(#20552,#20553) +#20554=* +regexpterm(#20554,1,#20552,0,"a{") +#20555=@"loc,{#10000},38,2,38,3" +locations_default(#20555,#10000,38,2,38,3) +hasLocation(#20554,#20555) +#20556=* +regexpterm(#20556,14,#20554,0,"a") +#20557=@"loc,{#10000},38,2,38,2" +locations_default(#20557,#10000,38,2,38,2) +hasLocation(#20556,#20557) +regexp_const_value(#20556,"a") #20558=* -regexpterm(#20558,14,#20551,1,"b") -#20559=@"loc,{#10000},38,4,38,4" -locations_default(#20559,#10000,38,4,38,4) -hasLocation(#20558,#20559) -regexp_const_value(#20558,"b") -#20560=* -regexpterm(#20560,14,#20551,2,"}") -#20561=@"loc,{#10000},38,5,38,5" -locations_default(#20561,#10000,38,5,38,5) -hasLocation(#20560,#20561) -regexp_const_value(#20560,"}") -#20562=* -regexp_parse_errors(#20562,#20551,"expected digit") -hasLocation(#20562,#20559) +regexpterm(#20558,14,#20554,1,"a{") +hasLocation(#20558,#20555) +regexp_const_value(#20558,"{") +#20559=* +regexpterm(#20559,14,#20552,1,"b") +#20560=@"loc,{#10000},38,4,38,4" +locations_default(#20560,#10000,38,4,38,4) +hasLocation(#20559,#20560) +regexp_const_value(#20559,"b") +#20561=* +regexpterm(#20561,14,#20552,2,"}") +#20562=@"loc,{#10000},38,5,38,5" +locations_default(#20562,#10000,38,5,38,5) +hasLocation(#20561,#20562) +regexp_const_value(#20561,"}") #20563=* -regexp_parse_errors(#20563,#20551,"unexpected character") -hasLocation(#20563,#20561) +regexp_parse_errors(#20563,#20552,"expected digit") +hasLocation(#20563,#20560) #20564=* -stmts(#20564,2,#20001,38,"/a{2/;") -hasLocation(#20564,#20079) -stmt_containers(#20564,#20001) +regexp_parse_errors(#20564,#20552,"unexpected character") +hasLocation(#20564,#20562) #20565=* -exprs(#20565,5,#20564,0,"/a{2/") -hasLocation(#20565,#20243) -enclosing_stmt(#20565,#20564) -expr_containers(#20565,#20001) -literals("/a{2/","/a{2/",#20565) +stmts(#20565,2,#20001,38,"/a{2/;") +hasLocation(#20565,#20079) +stmt_containers(#20565,#20001) #20566=* -regexpterm(#20566,1,#20565,0,"a{2") -#20567=@"loc,{#10000},39,2,39,4" -locations_default(#20567,#10000,39,2,39,4) -hasLocation(#20566,#20567) -#20568=* -regexpterm(#20568,14,#20566,0,"a") -#20569=@"loc,{#10000},39,2,39,2" -locations_default(#20569,#10000,39,2,39,2) -hasLocation(#20568,#20569) -regexp_const_value(#20568,"a") -#20570=* -regexpterm(#20570,14,#20566,1,"a{2") -hasLocation(#20570,#20567) -regexp_const_value(#20570,"{2") +exprs(#20566,5,#20565,0,"/a{2/") +hasLocation(#20566,#20243) +enclosing_stmt(#20566,#20565) +expr_containers(#20566,#20001) +literals("/a{2/","/a{2/",#20566) +#20567=* +regexpterm(#20567,1,#20566,0,"a{2") +#20568=@"loc,{#10000},39,2,39,4" +locations_default(#20568,#10000,39,2,39,4) +hasLocation(#20567,#20568) +#20569=* +regexpterm(#20569,14,#20567,0,"a") +#20570=@"loc,{#10000},39,2,39,2" +locations_default(#20570,#10000,39,2,39,2) +hasLocation(#20569,#20570) +regexp_const_value(#20569,"a") #20571=* -stmts(#20571,2,#20001,39,"/\xa/;") -hasLocation(#20571,#20081) -stmt_containers(#20571,#20001) +regexpterm(#20571,14,#20567,1,"a{2") +hasLocation(#20571,#20568) +regexp_const_value(#20571,"{2") #20572=* -exprs(#20572,5,#20571,0,"/\xa/") -hasLocation(#20572,#20247) -enclosing_stmt(#20572,#20571) -expr_containers(#20572,#20001) -literals("/\xa/","/\xa/",#20572) +stmts(#20572,2,#20001,39,"/\xa/;") +hasLocation(#20572,#20081) +stmt_containers(#20572,#20001) #20573=* -regexpterm(#20573,15,#20572,0,"\xa") -#20574=@"loc,{#10000},40,2,40,4" -locations_default(#20574,#10000,40,2,40,4) -hasLocation(#20573,#20574) -regexp_const_value(#20573," +exprs(#20573,5,#20572,0,"/\xa/") +hasLocation(#20573,#20247) +enclosing_stmt(#20573,#20572) +expr_containers(#20573,#20001) +literals("/\xa/","/\xa/",#20573) +#20574=* +regexpterm(#20574,15,#20573,0,"\xa") +#20575=@"loc,{#10000},40,2,40,4" +locations_default(#20575,#10000,40,2,40,4) +hasLocation(#20574,#20575) +regexp_const_value(#20574," ") -#20575=* -regexp_parse_errors(#20575,#20573,"unexpected end of regular expression") -#20576=@"loc,{#10000},40,5,40,5" -locations_default(#20576,#10000,40,5,40,5) -hasLocation(#20575,#20576) -#20577=* -stmts(#20577,2,#20001,40,"/\c0/;") -hasLocation(#20577,#20083) -stmt_containers(#20577,#20001) +#20576=* +regexp_parse_errors(#20576,#20574,"unexpected end of regular expression") +#20577=@"loc,{#10000},40,5,40,5" +locations_default(#20577,#10000,40,5,40,5) +hasLocation(#20576,#20577) #20578=* -exprs(#20578,5,#20577,0,"/\c0/") -hasLocation(#20578,#20251) -enclosing_stmt(#20578,#20577) -expr_containers(#20578,#20001) -literals("/\c0/","/\c0/",#20578) +stmts(#20578,2,#20001,40,"/\c0/;") +hasLocation(#20578,#20083) +stmt_containers(#20578,#20001) #20579=* -regexpterm(#20579,19,#20578,0,"\c0") -#20580=@"loc,{#10000},41,2,41,4" -locations_default(#20580,#10000,41,2,41,4) -hasLocation(#20579,#20580) -regexp_const_value(#20579,"") -#20581=* -regexp_parse_errors(#20581,#20579,"expected control letter") -#20582=@"loc,{#10000},41,4,41,4" -locations_default(#20582,#10000,41,4,41,4) -hasLocation(#20581,#20582) -#20583=* -stmts(#20583,2,#20001,41,"/[]/;") -hasLocation(#20583,#20085) -stmt_containers(#20583,#20001) +exprs(#20579,5,#20578,0,"/\c0/") +hasLocation(#20579,#20251) +enclosing_stmt(#20579,#20578) +expr_containers(#20579,#20001) +literals("/\c0/","/\c0/",#20579) +#20580=* +regexpterm(#20580,19,#20579,0,"\c0") +#20581=@"loc,{#10000},41,2,41,4" +locations_default(#20581,#10000,41,2,41,4) +hasLocation(#20580,#20581) +regexp_const_value(#20580,"") +#20582=* +regexp_parse_errors(#20582,#20580,"expected control letter") +#20583=@"loc,{#10000},41,4,41,4" +locations_default(#20583,#10000,41,4,41,4) +hasLocation(#20582,#20583) #20584=* -exprs(#20584,5,#20583,0,"/[]/") -hasLocation(#20584,#20255) -enclosing_stmt(#20584,#20583) -expr_containers(#20584,#20001) -literals("/[]/","/[]/",#20584) +stmts(#20584,2,#20001,41,"/[]/;") +hasLocation(#20584,#20085) +stmt_containers(#20584,#20001) #20585=* -regexpterm(#20585,23,#20584,0,"[]") -#20586=@"loc,{#10000},42,2,42,3" -locations_default(#20586,#10000,42,2,42,3) -hasLocation(#20585,#20586) -#20587=* -stmts(#20587,2,#20001,42,"/[^]/;") -hasLocation(#20587,#20087) -stmt_containers(#20587,#20001) +exprs(#20585,5,#20584,0,"/[]/") +hasLocation(#20585,#20255) +enclosing_stmt(#20585,#20584) +expr_containers(#20585,#20001) +literals("/[]/","/[]/",#20585) +#20586=* +regexpterm(#20586,23,#20585,0,"[]") +#20587=@"loc,{#10000},42,2,42,3" +locations_default(#20587,#10000,42,2,42,3) +hasLocation(#20586,#20587) #20588=* -exprs(#20588,5,#20587,0,"/[^]/") -hasLocation(#20588,#20259) -enclosing_stmt(#20588,#20587) -expr_containers(#20588,#20001) -literals("/[^]/","/[^]/",#20588) +stmts(#20588,2,#20001,42,"/[^]/;") +hasLocation(#20588,#20087) +stmt_containers(#20588,#20001) #20589=* -regexpterm(#20589,23,#20588,0,"[^]") -#20590=@"loc,{#10000},43,2,43,4" -locations_default(#20590,#10000,43,2,43,4) -hasLocation(#20589,#20590) -is_inverted(#20589) -#20591=* -stmts(#20591,2,#20001,43,"//;") -hasLocation(#20591,#20089) -stmt_containers(#20591,#20001) +exprs(#20589,5,#20588,0,"/[^]/") +hasLocation(#20589,#20259) +enclosing_stmt(#20589,#20588) +expr_containers(#20589,#20001) +literals("/[^]/","/[^]/",#20589) +#20590=* +regexpterm(#20590,23,#20589,0,"[^]") +#20591=@"loc,{#10000},43,2,43,4" +locations_default(#20591,#10000,43,2,43,4) +hasLocation(#20590,#20591) +is_inverted(#20590) #20592=* -exprs(#20592,5,#20591,0,"//") -hasLocation(#20592,#20263) -enclosing_stmt(#20592,#20591) -expr_containers(#20592,#20001) -literals("/]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/","/]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/",#20592) +stmts(#20592,2,#20001,43,"//;") +hasLocation(#20592,#20089) +stmt_containers(#20592,#20001) #20593=* -regexpterm(#20593,1,#20592,0,"]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>") -#20594=@"loc,{#10000},44,2,44,58" -locations_default(#20594,#10000,44,2,44,58) -hasLocation(#20593,#20594) -#20595=* -regexpterm(#20595,14,#20593,0,"]*") -#20600=@"loc,{#10000},44,8,44,12" -locations_default(#20600,#10000,44,8,44,12) -hasLocation(#20599,#20600) -is_greedy(#20599) -#20601=* -regexpterm(#20601,23,#20599,0,"[^>]") -#20602=@"loc,{#10000},44,8,44,11" -locations_default(#20602,#10000,44,8,44,11) -hasLocation(#20601,#20602) -is_inverted(#20601) -#20603=* -regexpterm(#20603,14,#20601,0,">") -#20604=@"loc,{#10000},44,10,44,10" -locations_default(#20604,#10000,44,10,44,10) -hasLocation(#20603,#20604) -regexp_const_value(#20603,">") -#20605=* -regexpterm(#20605,14,#20593,3,">") -#20606=@"loc,{#10000},44,13,44,13" -locations_default(#20606,#10000,44,13,44,13) -hasLocation(#20605,#20606) -regexp_const_value(#20605,">") -#20607=* -regexpterm(#20607,13,#20593,4,"((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)") -#20608=@"loc,{#10000},44,14,44,51" -locations_default(#20608,#10000,44,14,44,51) -hasLocation(#20607,#20608) -is_capture(#20607,1) -#20609=* -regexpterm(#20609,8,#20607,0,"(?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?") -#20610=@"loc,{#10000},44,15,44,50" -locations_default(#20610,#10000,44,15,44,50) -hasLocation(#20609,#20610) -#20611=* -regexpterm(#20611,13,#20609,0,"(?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))") -#20612=@"loc,{#10000},44,15,44,48" -locations_default(#20612,#10000,44,15,44,48) -hasLocation(#20611,#20612) -#20613=* -regexpterm(#20613,0,#20611,0,"(?=([^<]+))\2|<(?!tpl\b[^>]*>)") -#20614=@"loc,{#10000},44,18,44,47" -locations_default(#20614,#10000,44,18,44,47) -hasLocation(#20613,#20614) -#20615=* -regexpterm(#20615,1,#20613,0,"(?=([^<]+))\2") -#20616=@"loc,{#10000},44,18,44,30" -locations_default(#20616,#10000,44,18,44,30) -hasLocation(#20615,#20616) -#20617=* -regexpterm(#20617,6,#20615,0,"(?=([^<]+))") -#20618=@"loc,{#10000},44,18,44,28" -locations_default(#20618,#10000,44,18,44,28) -hasLocation(#20617,#20618) -#20619=* -regexpterm(#20619,13,#20617,0,"([^<]+)") -#20620=@"loc,{#10000},44,21,44,27" -locations_default(#20620,#10000,44,21,44,27) -hasLocation(#20619,#20620) -is_capture(#20619,2) -#20621=* -regexpterm(#20621,9,#20619,0,"[^<]+") -#20622=@"loc,{#10000},44,22,44,26" -locations_default(#20622,#10000,44,22,44,26) -hasLocation(#20621,#20622) -is_greedy(#20621) -#20623=* -regexpterm(#20623,23,#20621,0,"[^<]") -#20624=@"loc,{#10000},44,22,44,25" -locations_default(#20624,#10000,44,22,44,25) -hasLocation(#20623,#20624) -is_inverted(#20623) -#20625=* -regexpterm(#20625,14,#20623,0,"<") -#20626=@"loc,{#10000},44,24,44,24" -locations_default(#20626,#10000,44,24,44,24) -hasLocation(#20625,#20626) -regexp_const_value(#20625,"<") -#20627=* -regexpterm(#20627,22,#20615,1,"\2") -#20628=@"loc,{#10000},44,29,44,30" -locations_default(#20628,#10000,44,29,44,30) -hasLocation(#20627,#20628) -backref(#20627,2) -#20629=* -regexpterm(#20629,1,#20613,1,"<(?!tpl\b[^>]*>)") -#20630=@"loc,{#10000},44,32,44,47" -locations_default(#20630,#10000,44,32,44,47) -hasLocation(#20629,#20630) -#20631=* -regexpterm(#20631,14,#20629,0,"<") -#20632=@"loc,{#10000},44,32,44,32" -locations_default(#20632,#10000,44,32,44,32) -hasLocation(#20631,#20632) -regexp_const_value(#20631,"<") -#20633=* -regexpterm(#20633,7,#20629,1,"(?!tpl\b[^>]*>)") -#20634=@"loc,{#10000},44,33,44,47" -locations_default(#20634,#10000,44,33,44,47) -hasLocation(#20633,#20634) -#20635=* -regexpterm(#20635,1,#20633,0,"tpl\b[^>]*>") -#20636=@"loc,{#10000},44,36,44,46" -locations_default(#20636,#10000,44,36,44,46) -hasLocation(#20635,#20636) -#20637=* -regexpterm(#20637,14,#20635,0,"tpl") -#20638=@"loc,{#10000},44,36,44,38" -locations_default(#20638,#10000,44,36,44,38) -hasLocation(#20637,#20638) -regexp_const_value(#20637,"tpl") -#20639=* -regexpterm(#20639,4,#20635,1,"\b") -#20640=@"loc,{#10000},44,39,44,40" -locations_default(#20640,#10000,44,39,44,40) -hasLocation(#20639,#20640) -#20641=* -regexpterm(#20641,8,#20635,2,"[^>]*") -#20642=@"loc,{#10000},44,41,44,45" -locations_default(#20642,#10000,44,41,44,45) -hasLocation(#20641,#20642) -is_greedy(#20641) -#20643=* -regexpterm(#20643,23,#20641,0,"[^>]") -#20644=@"loc,{#10000},44,41,44,44" -locations_default(#20644,#10000,44,41,44,44) -hasLocation(#20643,#20644) -is_inverted(#20643) -#20645=* -regexpterm(#20645,14,#20643,0,">") -#20646=@"loc,{#10000},44,43,44,43" -locations_default(#20646,#10000,44,43,44,43) -hasLocation(#20645,#20646) -regexp_const_value(#20645,">") -#20647=* -regexpterm(#20647,14,#20635,3,">") -#20648=@"loc,{#10000},44,46,44,46" -locations_default(#20648,#10000,44,46,44,46) -hasLocation(#20647,#20648) -regexp_const_value(#20647,">") -#20649=* -regexpterm(#20649,14,#20593,5,"<") -#20650=@"loc,{#10000},44,52,44,52" -locations_default(#20650,#10000,44,52,44,52) -hasLocation(#20649,#20650) -regexp_const_value(#20649,"<") -#20651=* -regexpterm(#20651,21,#20593,6,"\/") -#20652=@"loc,{#10000},44,53,44,54" -locations_default(#20652,#10000,44,53,44,54) -hasLocation(#20651,#20652) -regexp_const_value(#20651,"/") -#20653=* -regexpterm(#20653,14,#20593,7,"tpl>") -#20654=@"loc,{#10000},44,55,44,58" -locations_default(#20654,#10000,44,55,44,58) -hasLocation(#20653,#20654) -regexp_const_value(#20653,"tpl>") -#20655=* -entry_cfg_node(#20655,#20001) -#20656=@"loc,{#10000},1,1,1,0" -locations_default(#20656,#10000,1,1,1,0) -hasLocation(#20655,#20656) -#20657=* -exit_cfg_node(#20657,#20001) -hasLocation(#20657,#20267) -successor(#20591,#20592) -successor(#20592,#20657) -successor(#20587,#20588) -successor(#20588,#20591) -successor(#20583,#20584) -successor(#20584,#20587) -successor(#20577,#20578) -successor(#20578,#20583) -successor(#20571,#20572) -successor(#20572,#20577) -successor(#20564,#20565) -successor(#20565,#20571) -successor(#20549,#20550) -successor(#20550,#20564) -successor(#20540,#20541) -successor(#20541,#20549) -successor(#20530,#20531) -successor(#20531,#20540) -successor(#20520,#20521) -successor(#20521,#20530) -successor(#20508,#20509) -successor(#20509,#20520) -successor(#20492,#20493) -successor(#20493,#20508) -successor(#20482,#20483) -successor(#20483,#20492) -successor(#20472,#20473) -successor(#20473,#20482) -successor(#20468,#20469) -successor(#20469,#20472) -successor(#20460,#20461) -successor(#20461,#20468) -successor(#20452,#20453) -successor(#20453,#20460) -successor(#20438,#20439) -successor(#20439,#20452) -successor(#20433,#20434) -successor(#20434,#20438) -successor(#20429,#20430) -successor(#20430,#20433) -successor(#20425,#20426) -successor(#20426,#20429) -successor(#20419,#20420) -successor(#20420,#20425) -successor(#20413,#20414) -successor(#20414,#20419) -successor(#20409,#20410) -successor(#20410,#20413) -successor(#20403,#20404) -successor(#20404,#20409) -successor(#20397,#20398) -successor(#20398,#20403) -successor(#20391,#20392) -successor(#20392,#20397) -successor(#20385,#20386) -successor(#20386,#20391) -successor(#20379,#20380) -successor(#20380,#20385) -successor(#20373,#20374) -successor(#20374,#20379) -successor(#20367,#20368) -successor(#20368,#20373) -successor(#20361,#20362) -successor(#20362,#20367) -successor(#20355,#20356) -successor(#20356,#20361) -successor(#20349,#20350) -successor(#20350,#20355) -successor(#20343,#20344) -successor(#20344,#20349) -successor(#20337,#20338) -successor(#20338,#20343) -successor(#20327,#20328) -successor(#20328,#20337) -successor(#20317,#20318) -successor(#20318,#20327) -successor(#20307,#20308) -successor(#20308,#20317) -successor(#20297,#20298) -successor(#20298,#20307) -successor(#20287,#20288) -successor(#20288,#20297) -successor(#20281,#20282) -successor(#20282,#20287) -successor(#20273,#20274) -successor(#20274,#20281) -successor(#20269,#20270) -successor(#20270,#20273) -successor(#20655,#20269) +exprs(#20593,5,#20592,0,"//") +hasLocation(#20593,#20263) +enclosing_stmt(#20593,#20592) +expr_containers(#20593,#20001) +literals("/]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/","/]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>/",#20593) +#20594=* +regexpterm(#20594,1,#20593,0,"]*>((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)<\/tpl>") +#20595=@"loc,{#10000},44,2,44,58" +locations_default(#20595,#10000,44,2,44,58) +hasLocation(#20594,#20595) +#20596=* +regexpterm(#20596,14,#20594,0,"]*") +#20601=@"loc,{#10000},44,8,44,12" +locations_default(#20601,#10000,44,8,44,12) +hasLocation(#20600,#20601) +is_greedy(#20600) +#20602=* +regexpterm(#20602,23,#20600,0,"[^>]") +#20603=@"loc,{#10000},44,8,44,11" +locations_default(#20603,#10000,44,8,44,11) +hasLocation(#20602,#20603) +is_inverted(#20602) +#20604=* +regexpterm(#20604,14,#20602,0,">") +#20605=@"loc,{#10000},44,10,44,10" +locations_default(#20605,#10000,44,10,44,10) +hasLocation(#20604,#20605) +regexp_const_value(#20604,">") +#20606=* +regexpterm(#20606,14,#20594,3,">") +#20607=@"loc,{#10000},44,13,44,13" +locations_default(#20607,#10000,44,13,44,13) +hasLocation(#20606,#20607) +regexp_const_value(#20606,">") +#20608=* +regexpterm(#20608,13,#20594,4,"((?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?)") +#20609=@"loc,{#10000},44,14,44,51" +locations_default(#20609,#10000,44,14,44,51) +hasLocation(#20608,#20609) +is_capture(#20608,1) +#20610=* +regexpterm(#20610,8,#20608,0,"(?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))*?") +#20611=@"loc,{#10000},44,15,44,50" +locations_default(#20611,#10000,44,15,44,50) +hasLocation(#20610,#20611) +#20612=* +regexpterm(#20612,13,#20610,0,"(?:(?=([^<]+))\2|<(?!tpl\b[^>]*>))") +#20613=@"loc,{#10000},44,15,44,48" +locations_default(#20613,#10000,44,15,44,48) +hasLocation(#20612,#20613) +#20614=* +regexpterm(#20614,0,#20612,0,"(?=([^<]+))\2|<(?!tpl\b[^>]*>)") +#20615=@"loc,{#10000},44,18,44,47" +locations_default(#20615,#10000,44,18,44,47) +hasLocation(#20614,#20615) +#20616=* +regexpterm(#20616,1,#20614,0,"(?=([^<]+))\2") +#20617=@"loc,{#10000},44,18,44,30" +locations_default(#20617,#10000,44,18,44,30) +hasLocation(#20616,#20617) +#20618=* +regexpterm(#20618,6,#20616,0,"(?=([^<]+))") +#20619=@"loc,{#10000},44,18,44,28" +locations_default(#20619,#10000,44,18,44,28) +hasLocation(#20618,#20619) +#20620=* +regexpterm(#20620,13,#20618,0,"([^<]+)") +#20621=@"loc,{#10000},44,21,44,27" +locations_default(#20621,#10000,44,21,44,27) +hasLocation(#20620,#20621) +is_capture(#20620,2) +#20622=* +regexpterm(#20622,9,#20620,0,"[^<]+") +#20623=@"loc,{#10000},44,22,44,26" +locations_default(#20623,#10000,44,22,44,26) +hasLocation(#20622,#20623) +is_greedy(#20622) +#20624=* +regexpterm(#20624,23,#20622,0,"[^<]") +#20625=@"loc,{#10000},44,22,44,25" +locations_default(#20625,#10000,44,22,44,25) +hasLocation(#20624,#20625) +is_inverted(#20624) +#20626=* +regexpterm(#20626,14,#20624,0,"<") +#20627=@"loc,{#10000},44,24,44,24" +locations_default(#20627,#10000,44,24,44,24) +hasLocation(#20626,#20627) +regexp_const_value(#20626,"<") +#20628=* +regexpterm(#20628,22,#20616,1,"\2") +#20629=@"loc,{#10000},44,29,44,30" +locations_default(#20629,#10000,44,29,44,30) +hasLocation(#20628,#20629) +backref(#20628,2) +#20630=* +regexpterm(#20630,1,#20614,1,"<(?!tpl\b[^>]*>)") +#20631=@"loc,{#10000},44,32,44,47" +locations_default(#20631,#10000,44,32,44,47) +hasLocation(#20630,#20631) +#20632=* +regexpterm(#20632,14,#20630,0,"<") +#20633=@"loc,{#10000},44,32,44,32" +locations_default(#20633,#10000,44,32,44,32) +hasLocation(#20632,#20633) +regexp_const_value(#20632,"<") +#20634=* +regexpterm(#20634,7,#20630,1,"(?!tpl\b[^>]*>)") +#20635=@"loc,{#10000},44,33,44,47" +locations_default(#20635,#10000,44,33,44,47) +hasLocation(#20634,#20635) +#20636=* +regexpterm(#20636,1,#20634,0,"tpl\b[^>]*>") +#20637=@"loc,{#10000},44,36,44,46" +locations_default(#20637,#10000,44,36,44,46) +hasLocation(#20636,#20637) +#20638=* +regexpterm(#20638,14,#20636,0,"tpl") +#20639=@"loc,{#10000},44,36,44,38" +locations_default(#20639,#10000,44,36,44,38) +hasLocation(#20638,#20639) +regexp_const_value(#20638,"tpl") +#20640=* +regexpterm(#20640,4,#20636,1,"\b") +#20641=@"loc,{#10000},44,39,44,40" +locations_default(#20641,#10000,44,39,44,40) +hasLocation(#20640,#20641) +#20642=* +regexpterm(#20642,8,#20636,2,"[^>]*") +#20643=@"loc,{#10000},44,41,44,45" +locations_default(#20643,#10000,44,41,44,45) +hasLocation(#20642,#20643) +is_greedy(#20642) +#20644=* +regexpterm(#20644,23,#20642,0,"[^>]") +#20645=@"loc,{#10000},44,41,44,44" +locations_default(#20645,#10000,44,41,44,44) +hasLocation(#20644,#20645) +is_inverted(#20644) +#20646=* +regexpterm(#20646,14,#20644,0,">") +#20647=@"loc,{#10000},44,43,44,43" +locations_default(#20647,#10000,44,43,44,43) +hasLocation(#20646,#20647) +regexp_const_value(#20646,">") +#20648=* +regexpterm(#20648,14,#20636,3,">") +#20649=@"loc,{#10000},44,46,44,46" +locations_default(#20649,#10000,44,46,44,46) +hasLocation(#20648,#20649) +regexp_const_value(#20648,">") +#20650=* +regexpterm(#20650,14,#20594,5,"<") +#20651=@"loc,{#10000},44,52,44,52" +locations_default(#20651,#10000,44,52,44,52) +hasLocation(#20650,#20651) +regexp_const_value(#20650,"<") +#20652=* +regexpterm(#20652,21,#20594,6,"\/") +#20653=@"loc,{#10000},44,53,44,54" +locations_default(#20653,#10000,44,53,44,54) +hasLocation(#20652,#20653) +regexp_const_value(#20652,"/") +#20654=* +regexpterm(#20654,14,#20594,7,"tpl>") +#20655=@"loc,{#10000},44,55,44,58" +locations_default(#20655,#10000,44,55,44,58) +hasLocation(#20654,#20655) +regexp_const_value(#20654,"tpl>") +#20656=* +entry_cfg_node(#20656,#20001) +#20657=@"loc,{#10000},1,1,1,0" +locations_default(#20657,#10000,1,1,1,0) +hasLocation(#20656,#20657) +#20658=* +exit_cfg_node(#20658,#20001) +hasLocation(#20658,#20267) +successor(#20592,#20593) +successor(#20593,#20658) +successor(#20588,#20589) +successor(#20589,#20592) +successor(#20584,#20585) +successor(#20585,#20588) +successor(#20578,#20579) +successor(#20579,#20584) +successor(#20572,#20573) +successor(#20573,#20578) +successor(#20565,#20566) +successor(#20566,#20572) +successor(#20550,#20551) +successor(#20551,#20565) +successor(#20541,#20542) +successor(#20542,#20550) +successor(#20531,#20532) +successor(#20532,#20541) +successor(#20521,#20522) +successor(#20522,#20531) +successor(#20509,#20510) +successor(#20510,#20521) +successor(#20493,#20494) +successor(#20494,#20509) +successor(#20483,#20484) +successor(#20484,#20493) +successor(#20473,#20474) +successor(#20474,#20483) +successor(#20469,#20470) +successor(#20470,#20473) +successor(#20461,#20462) +successor(#20462,#20469) +successor(#20453,#20454) +successor(#20454,#20461) +successor(#20439,#20440) +successor(#20440,#20453) +successor(#20434,#20435) +successor(#20435,#20439) +successor(#20430,#20431) +successor(#20431,#20434) +successor(#20426,#20427) +successor(#20427,#20430) +successor(#20420,#20421) +successor(#20421,#20426) +successor(#20414,#20415) +successor(#20415,#20420) +successor(#20410,#20411) +successor(#20411,#20414) +successor(#20404,#20405) +successor(#20405,#20410) +successor(#20398,#20399) +successor(#20399,#20404) +successor(#20392,#20393) +successor(#20393,#20398) +successor(#20386,#20387) +successor(#20387,#20392) +successor(#20380,#20381) +successor(#20381,#20386) +successor(#20374,#20375) +successor(#20375,#20380) +successor(#20368,#20369) +successor(#20369,#20374) +successor(#20362,#20363) +successor(#20363,#20368) +successor(#20356,#20357) +successor(#20357,#20362) +successor(#20350,#20351) +successor(#20351,#20356) +successor(#20344,#20345) +successor(#20345,#20350) +successor(#20338,#20339) +successor(#20339,#20344) +successor(#20328,#20329) +successor(#20329,#20338) +successor(#20318,#20319) +successor(#20319,#20328) +successor(#20308,#20309) +successor(#20309,#20318) +successor(#20298,#20299) +successor(#20299,#20308) +successor(#20288,#20289) +successor(#20289,#20298) +successor(#20282,#20283) +successor(#20283,#20288) +successor(#20274,#20275) +successor(#20275,#20282) +successor(#20270,#20271) +successor(#20271,#20274) +successor(#20656,#20270) numlines(#10000,44,44,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/unary.js.trap b/javascript/extractor/tests/exprs/output/trap/unary.js.trap index aca29eb70338..bf2ceef513d3 100644 --- a/javascript/extractor/tests/exprs/output/trap/unary.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/unary.js.trap @@ -185,181 +185,183 @@ toplevels(#20001,0) #20068=@"loc,{#10000},1,1,7,24" locations_default(#20068,#10000,1,1,7,24) hasLocation(#20001,#20068) -#20069=* -stmts(#20069,2,#20001,0,"-23;") -hasLocation(#20069,#20003) -stmt_containers(#20069,#20001) +#20069=@"var;{this};{#20000}" +variables(#20069,"this",#20000) #20070=* -exprs(#20070,16,#20069,0,"-23") -#20071=@"loc,{#10000},1,1,1,3" -locations_default(#20071,#10000,1,1,1,3) -hasLocation(#20070,#20071) -enclosing_stmt(#20070,#20069) -expr_containers(#20070,#20001) -#20072=* -exprs(#20072,3,#20070,0,"23") -hasLocation(#20072,#20019) -enclosing_stmt(#20072,#20069) -expr_containers(#20072,#20001) -literals("23","23",#20072) +stmts(#20070,2,#20001,0,"-23;") +hasLocation(#20070,#20003) +stmt_containers(#20070,#20001) +#20071=* +exprs(#20071,16,#20070,0,"-23") +#20072=@"loc,{#10000},1,1,1,3" +locations_default(#20072,#10000,1,1,1,3) +hasLocation(#20071,#20072) +enclosing_stmt(#20071,#20070) +expr_containers(#20071,#20001) #20073=* -stmts(#20073,2,#20001,1,"+42;") -hasLocation(#20073,#20005) -stmt_containers(#20073,#20001) +exprs(#20073,3,#20071,0,"23") +hasLocation(#20073,#20019) +enclosing_stmt(#20073,#20070) +expr_containers(#20073,#20001) +literals("23","23",#20073) #20074=* -exprs(#20074,17,#20073,0,"+42") -#20075=@"loc,{#10000},2,1,2,3" -locations_default(#20075,#10000,2,1,2,3) -hasLocation(#20074,#20075) -enclosing_stmt(#20074,#20073) -expr_containers(#20074,#20001) -#20076=* -exprs(#20076,3,#20074,0,"42") -hasLocation(#20076,#20025) -enclosing_stmt(#20076,#20073) -expr_containers(#20076,#20001) -literals("42","42",#20076) +stmts(#20074,2,#20001,1,"+42;") +hasLocation(#20074,#20005) +stmt_containers(#20074,#20001) +#20075=* +exprs(#20075,17,#20074,0,"+42") +#20076=@"loc,{#10000},2,1,2,3" +locations_default(#20076,#10000,2,1,2,3) +hasLocation(#20075,#20076) +enclosing_stmt(#20075,#20074) +expr_containers(#20075,#20001) #20077=* -stmts(#20077,2,#20001,2,"!true;") -hasLocation(#20077,#20007) -stmt_containers(#20077,#20001) +exprs(#20077,3,#20075,0,"42") +hasLocation(#20077,#20025) +enclosing_stmt(#20077,#20074) +expr_containers(#20077,#20001) +literals("42","42",#20077) #20078=* -exprs(#20078,18,#20077,0,"!true") -#20079=@"loc,{#10000},3,1,3,5" -locations_default(#20079,#10000,3,1,3,5) -hasLocation(#20078,#20079) -enclosing_stmt(#20078,#20077) -expr_containers(#20078,#20001) -#20080=* -exprs(#20080,2,#20078,0,"true") -hasLocation(#20080,#20031) -enclosing_stmt(#20080,#20077) -expr_containers(#20080,#20001) -literals("true","true",#20080) +stmts(#20078,2,#20001,2,"!true;") +hasLocation(#20078,#20007) +stmt_containers(#20078,#20001) +#20079=* +exprs(#20079,18,#20078,0,"!true") +#20080=@"loc,{#10000},3,1,3,5" +locations_default(#20080,#10000,3,1,3,5) +hasLocation(#20079,#20080) +enclosing_stmt(#20079,#20078) +expr_containers(#20079,#20001) #20081=* -stmts(#20081,2,#20001,3,"~2;") -hasLocation(#20081,#20009) -stmt_containers(#20081,#20001) +exprs(#20081,2,#20079,0,"true") +hasLocation(#20081,#20031) +enclosing_stmt(#20081,#20078) +expr_containers(#20081,#20001) +literals("true","true",#20081) #20082=* -exprs(#20082,19,#20081,0,"~2") -#20083=@"loc,{#10000},4,1,4,2" -locations_default(#20083,#10000,4,1,4,2) -hasLocation(#20082,#20083) -enclosing_stmt(#20082,#20081) -expr_containers(#20082,#20001) -#20084=* -exprs(#20084,3,#20082,0,"2") -hasLocation(#20084,#20037) -enclosing_stmt(#20084,#20081) -expr_containers(#20084,#20001) -literals("2","2",#20084) +stmts(#20082,2,#20001,3,"~2;") +hasLocation(#20082,#20009) +stmt_containers(#20082,#20001) +#20083=* +exprs(#20083,19,#20082,0,"~2") +#20084=@"loc,{#10000},4,1,4,2" +locations_default(#20084,#10000,4,1,4,2) +hasLocation(#20083,#20084) +enclosing_stmt(#20083,#20082) +expr_containers(#20083,#20001) #20085=* -stmts(#20085,2,#20001,4,"typeof Object;") -hasLocation(#20085,#20011) -stmt_containers(#20085,#20001) +exprs(#20085,3,#20083,0,"2") +hasLocation(#20085,#20037) +enclosing_stmt(#20085,#20082) +expr_containers(#20085,#20001) +literals("2","2",#20085) #20086=* -exprs(#20086,20,#20085,0,"typeof Object") -#20087=@"loc,{#10000},5,1,5,13" -locations_default(#20087,#10000,5,1,5,13) -hasLocation(#20086,#20087) -enclosing_stmt(#20086,#20085) -expr_containers(#20086,#20001) -#20088=* -exprs(#20088,79,#20086,0,"Object") -hasLocation(#20088,#20043) -enclosing_stmt(#20088,#20085) -expr_containers(#20088,#20001) -literals("Object","Object",#20088) -#20089=@"var;{Object};{#20000}" -variables(#20089,"Object",#20000) -bind(#20088,#20089) -#20090=* -stmts(#20090,2,#20001,5,"void(0);") -hasLocation(#20090,#20013) -stmt_containers(#20090,#20001) +stmts(#20086,2,#20001,4,"typeof Object;") +hasLocation(#20086,#20011) +stmt_containers(#20086,#20001) +#20087=* +exprs(#20087,20,#20086,0,"typeof Object") +#20088=@"loc,{#10000},5,1,5,13" +locations_default(#20088,#10000,5,1,5,13) +hasLocation(#20087,#20088) +enclosing_stmt(#20087,#20086) +expr_containers(#20087,#20001) +#20089=* +exprs(#20089,79,#20087,0,"Object") +hasLocation(#20089,#20043) +enclosing_stmt(#20089,#20086) +expr_containers(#20089,#20001) +literals("Object","Object",#20089) +#20090=@"var;{Object};{#20000}" +variables(#20090,"Object",#20000) +bind(#20089,#20090) #20091=* -exprs(#20091,21,#20090,0,"void(0)") -#20092=@"loc,{#10000},6,1,6,7" -locations_default(#20092,#10000,6,1,6,7) -hasLocation(#20091,#20092) -enclosing_stmt(#20091,#20090) -expr_containers(#20091,#20001) -#20093=* -exprs(#20093,63,#20091,0,"(0)") -#20094=@"loc,{#10000},6,5,6,7" -locations_default(#20094,#10000,6,5,6,7) -hasLocation(#20093,#20094) -enclosing_stmt(#20093,#20090) -expr_containers(#20093,#20001) -#20095=* -exprs(#20095,3,#20093,0,"0") -hasLocation(#20095,#20051) -enclosing_stmt(#20095,#20090) -expr_containers(#20095,#20001) -literals("0","0",#20095) +stmts(#20091,2,#20001,5,"void(0);") +hasLocation(#20091,#20013) +stmt_containers(#20091,#20001) +#20092=* +exprs(#20092,21,#20091,0,"void(0)") +#20093=@"loc,{#10000},6,1,6,7" +locations_default(#20093,#10000,6,1,6,7) +hasLocation(#20092,#20093) +enclosing_stmt(#20092,#20091) +expr_containers(#20092,#20001) +#20094=* +exprs(#20094,63,#20092,0,"(0)") +#20095=@"loc,{#10000},6,5,6,7" +locations_default(#20095,#10000,6,5,6,7) +hasLocation(#20094,#20095) +enclosing_stmt(#20094,#20091) +expr_containers(#20094,#20001) #20096=* -stmts(#20096,2,#20001,6,"delete ... totype;") -hasLocation(#20096,#20015) -stmt_containers(#20096,#20001) +exprs(#20096,3,#20094,0,"0") +hasLocation(#20096,#20051) +enclosing_stmt(#20096,#20091) +expr_containers(#20096,#20001) +literals("0","0",#20096) #20097=* -exprs(#20097,22,#20096,0,"delete ... ototype") -#20098=@"loc,{#10000},7,1,7,23" -locations_default(#20098,#10000,7,1,7,23) -hasLocation(#20097,#20098) -enclosing_stmt(#20097,#20096) -expr_containers(#20097,#20001) -#20099=* -exprs(#20099,14,#20097,0,"Object.prototype") -#20100=@"loc,{#10000},7,8,7,23" -locations_default(#20100,#10000,7,8,7,23) -hasLocation(#20099,#20100) -enclosing_stmt(#20099,#20096) -expr_containers(#20099,#20001) -#20101=* -exprs(#20101,79,#20099,0,"Object") -hasLocation(#20101,#20059) -enclosing_stmt(#20101,#20096) -expr_containers(#20101,#20001) -literals("Object","Object",#20101) -bind(#20101,#20089) +stmts(#20097,2,#20001,6,"delete ... totype;") +hasLocation(#20097,#20015) +stmt_containers(#20097,#20001) +#20098=* +exprs(#20098,22,#20097,0,"delete ... ototype") +#20099=@"loc,{#10000},7,1,7,23" +locations_default(#20099,#10000,7,1,7,23) +hasLocation(#20098,#20099) +enclosing_stmt(#20098,#20097) +expr_containers(#20098,#20001) +#20100=* +exprs(#20100,14,#20098,0,"Object.prototype") +#20101=@"loc,{#10000},7,8,7,23" +locations_default(#20101,#10000,7,8,7,23) +hasLocation(#20100,#20101) +enclosing_stmt(#20100,#20097) +expr_containers(#20100,#20001) #20102=* -exprs(#20102,0,#20099,1,"prototype") -hasLocation(#20102,#20063) -enclosing_stmt(#20102,#20096) +exprs(#20102,79,#20100,0,"Object") +hasLocation(#20102,#20059) +enclosing_stmt(#20102,#20097) expr_containers(#20102,#20001) -literals("prototype","prototype",#20102) +literals("Object","Object",#20102) +bind(#20102,#20090) #20103=* -entry_cfg_node(#20103,#20001) -#20104=@"loc,{#10000},1,1,1,0" -locations_default(#20104,#10000,1,1,1,0) -hasLocation(#20103,#20104) -#20105=* -exit_cfg_node(#20105,#20001) -hasLocation(#20105,#20067) -successor(#20096,#20101) -successor(#20102,#20099) -successor(#20101,#20102) -successor(#20099,#20097) -successor(#20097,#20105) -successor(#20090,#20093) -successor(#20093,#20095) -successor(#20095,#20091) -successor(#20091,#20096) -successor(#20085,#20088) -successor(#20088,#20086) -successor(#20086,#20090) -successor(#20081,#20084) -successor(#20084,#20082) +exprs(#20103,0,#20100,1,"prototype") +hasLocation(#20103,#20063) +enclosing_stmt(#20103,#20097) +expr_containers(#20103,#20001) +literals("prototype","prototype",#20103) +#20104=* +entry_cfg_node(#20104,#20001) +#20105=@"loc,{#10000},1,1,1,0" +locations_default(#20105,#10000,1,1,1,0) +hasLocation(#20104,#20105) +#20106=* +exit_cfg_node(#20106,#20001) +hasLocation(#20106,#20067) +successor(#20097,#20102) +successor(#20103,#20100) +successor(#20102,#20103) +successor(#20100,#20098) +successor(#20098,#20106) +successor(#20091,#20094) +successor(#20094,#20096) +successor(#20096,#20092) +successor(#20092,#20097) +successor(#20086,#20089) +successor(#20089,#20087) +successor(#20087,#20091) successor(#20082,#20085) -successor(#20077,#20080) -successor(#20080,#20078) +successor(#20085,#20083) +successor(#20083,#20086) successor(#20078,#20081) -successor(#20073,#20076) -successor(#20076,#20074) +successor(#20081,#20079) +successor(#20079,#20082) successor(#20074,#20077) -successor(#20069,#20072) -successor(#20072,#20070) +successor(#20077,#20075) +successor(#20075,#20078) successor(#20070,#20073) -successor(#20103,#20069) +successor(#20073,#20071) +successor(#20071,#20074) +successor(#20104,#20070) numlines(#10000,7,7,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/exprs/output/trap/update.js.trap b/javascript/extractor/tests/exprs/output/trap/update.js.trap index dba8253323f5..dbf0a06d9f3f 100644 --- a/javascript/extractor/tests/exprs/output/trap/update.js.trap +++ b/javascript/extractor/tests/exprs/output/trap/update.js.trap @@ -103,102 +103,104 @@ toplevels(#20001,0) #20036=@"loc,{#10000},1,1,5,0" locations_default(#20036,#10000,1,1,5,0) hasLocation(#20001,#20036) -#20037=* -stmts(#20037,2,#20001,0,"++a;") -hasLocation(#20037,#20003) -stmt_containers(#20037,#20001) +#20037=@"var;{this};{#20000}" +variables(#20037,"this",#20000) #20038=* -exprs(#20038,59,#20037,0,"++a") -#20039=@"loc,{#10000},1,1,1,3" -locations_default(#20039,#10000,1,1,1,3) -hasLocation(#20038,#20039) -enclosing_stmt(#20038,#20037) -expr_containers(#20038,#20001) -#20040=* -exprs(#20040,79,#20038,0,"a") -hasLocation(#20040,#20013) -enclosing_stmt(#20040,#20037) -expr_containers(#20040,#20001) -literals("a","a",#20040) -#20041=@"var;{a};{#20000}" -variables(#20041,"a",#20000) -bind(#20040,#20041) -#20042=* -stmts(#20042,2,#20001,1,"a++;") -hasLocation(#20042,#20005) -stmt_containers(#20042,#20001) +stmts(#20038,2,#20001,0,"++a;") +hasLocation(#20038,#20003) +stmt_containers(#20038,#20001) +#20039=* +exprs(#20039,59,#20038,0,"++a") +#20040=@"loc,{#10000},1,1,1,3" +locations_default(#20040,#10000,1,1,1,3) +hasLocation(#20039,#20040) +enclosing_stmt(#20039,#20038) +expr_containers(#20039,#20001) +#20041=* +exprs(#20041,79,#20039,0,"a") +hasLocation(#20041,#20013) +enclosing_stmt(#20041,#20038) +expr_containers(#20041,#20001) +literals("a","a",#20041) +#20042=@"var;{a};{#20000}" +variables(#20042,"a",#20000) +bind(#20041,#20042) #20043=* -exprs(#20043,60,#20042,0,"a++") -#20044=@"loc,{#10000},2,1,2,3" -locations_default(#20044,#10000,2,1,2,3) -hasLocation(#20043,#20044) -enclosing_stmt(#20043,#20042) -expr_containers(#20043,#20001) -#20045=* -exprs(#20045,79,#20043,0,"a") -hasLocation(#20045,#20017) -enclosing_stmt(#20045,#20042) -expr_containers(#20045,#20001) -literals("a","a",#20045) -bind(#20045,#20041) +stmts(#20043,2,#20001,1,"a++;") +hasLocation(#20043,#20005) +stmt_containers(#20043,#20001) +#20044=* +exprs(#20044,60,#20043,0,"a++") +#20045=@"loc,{#10000},2,1,2,3" +locations_default(#20045,#10000,2,1,2,3) +hasLocation(#20044,#20045) +enclosing_stmt(#20044,#20043) +expr_containers(#20044,#20001) #20046=* -stmts(#20046,2,#20001,2,"--b;") -hasLocation(#20046,#20007) -stmt_containers(#20046,#20001) +exprs(#20046,79,#20044,0,"a") +hasLocation(#20046,#20017) +enclosing_stmt(#20046,#20043) +expr_containers(#20046,#20001) +literals("a","a",#20046) +bind(#20046,#20042) #20047=* -exprs(#20047,61,#20046,0,"--b") -#20048=@"loc,{#10000},3,1,3,3" -locations_default(#20048,#10000,3,1,3,3) -hasLocation(#20047,#20048) -enclosing_stmt(#20047,#20046) -expr_containers(#20047,#20001) -#20049=* -exprs(#20049,79,#20047,0,"b") -hasLocation(#20049,#20025) -enclosing_stmt(#20049,#20046) -expr_containers(#20049,#20001) -literals("b","b",#20049) -#20050=@"var;{b};{#20000}" -variables(#20050,"b",#20000) -bind(#20049,#20050) -#20051=* -stmts(#20051,2,#20001,3,"b--;") -hasLocation(#20051,#20009) -stmt_containers(#20051,#20001) +stmts(#20047,2,#20001,2,"--b;") +hasLocation(#20047,#20007) +stmt_containers(#20047,#20001) +#20048=* +exprs(#20048,61,#20047,0,"--b") +#20049=@"loc,{#10000},3,1,3,3" +locations_default(#20049,#10000,3,1,3,3) +hasLocation(#20048,#20049) +enclosing_stmt(#20048,#20047) +expr_containers(#20048,#20001) +#20050=* +exprs(#20050,79,#20048,0,"b") +hasLocation(#20050,#20025) +enclosing_stmt(#20050,#20047) +expr_containers(#20050,#20001) +literals("b","b",#20050) +#20051=@"var;{b};{#20000}" +variables(#20051,"b",#20000) +bind(#20050,#20051) #20052=* -exprs(#20052,62,#20051,0,"b--") -#20053=@"loc,{#10000},4,1,4,3" -locations_default(#20053,#10000,4,1,4,3) -hasLocation(#20052,#20053) -enclosing_stmt(#20052,#20051) -expr_containers(#20052,#20001) -#20054=* -exprs(#20054,79,#20052,0,"b") -hasLocation(#20054,#20029) -enclosing_stmt(#20054,#20051) -expr_containers(#20054,#20001) -literals("b","b",#20054) -bind(#20054,#20050) +stmts(#20052,2,#20001,3,"b--;") +hasLocation(#20052,#20009) +stmt_containers(#20052,#20001) +#20053=* +exprs(#20053,62,#20052,0,"b--") +#20054=@"loc,{#10000},4,1,4,3" +locations_default(#20054,#10000,4,1,4,3) +hasLocation(#20053,#20054) +enclosing_stmt(#20053,#20052) +expr_containers(#20053,#20001) #20055=* -entry_cfg_node(#20055,#20001) -#20056=@"loc,{#10000},1,1,1,0" -locations_default(#20056,#10000,1,1,1,0) -hasLocation(#20055,#20056) -#20057=* -exit_cfg_node(#20057,#20001) -hasLocation(#20057,#20035) -successor(#20051,#20054) -successor(#20054,#20052) -successor(#20052,#20057) -successor(#20046,#20049) -successor(#20049,#20047) -successor(#20047,#20051) -successor(#20042,#20045) -successor(#20045,#20043) +exprs(#20055,79,#20053,0,"b") +hasLocation(#20055,#20029) +enclosing_stmt(#20055,#20052) +expr_containers(#20055,#20001) +literals("b","b",#20055) +bind(#20055,#20051) +#20056=* +entry_cfg_node(#20056,#20001) +#20057=@"loc,{#10000},1,1,1,0" +locations_default(#20057,#10000,1,1,1,0) +hasLocation(#20056,#20057) +#20058=* +exit_cfg_node(#20058,#20001) +hasLocation(#20058,#20035) +successor(#20052,#20055) +successor(#20055,#20053) +successor(#20053,#20058) +successor(#20047,#20050) +successor(#20050,#20048) +successor(#20048,#20052) successor(#20043,#20046) -successor(#20037,#20040) -successor(#20040,#20038) -successor(#20038,#20042) -successor(#20055,#20037) +successor(#20046,#20044) +successor(#20044,#20047) +successor(#20038,#20041) +successor(#20041,#20039) +successor(#20039,#20043) +successor(#20056,#20038) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/extensions/output/trap/tst.es6.trap b/javascript/extractor/tests/extensions/output/trap/tst.es6.trap index 1f8496da9b08..5d88f7527705 100644 --- a/javascript/extractor/tests/extensions/output/trap/tst.es6.trap +++ b/javascript/extractor/tests/extensions/output/trap/tst.es6.trap @@ -66,65 +66,67 @@ scopenodes(#20001,#20021) scopenesting(#20021,#20000) is_module(#20001) is_es2015_module(#20001) -#20022=* -stmts(#20022,2,#20001,0,"console ... ES6"");") -hasLocation(#20022,#20003) -stmt_containers(#20022,#20001) +#20022=@"var;{this};{#20021}" +variables(#20022,"this",#20021) #20023=* -exprs(#20023,13,#20022,0,"console ... o ES6"")") -#20024=@"loc,{#10000},1,1,1,24" -locations_default(#20024,#10000,1,1,1,24) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20022) -expr_containers(#20023,#20001) -#20025=* -exprs(#20025,14,#20023,-1,"console.log") -#20026=@"loc,{#10000},1,1,1,11" -locations_default(#20026,#10000,1,1,1,11) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20022) -expr_containers(#20025,#20001) -#20027=* -exprs(#20027,79,#20025,0,"console") -hasLocation(#20027,#20005) -enclosing_stmt(#20027,#20022) -expr_containers(#20027,#20001) -literals("console","console",#20027) -#20028=@"var;{console};{#20000}" -variables(#20028,"console",#20000) -bind(#20027,#20028) -#20029=* -exprs(#20029,0,#20025,1,"log") -hasLocation(#20029,#20009) -enclosing_stmt(#20029,#20022) -expr_containers(#20029,#20001) -literals("log","log",#20029) +stmts(#20023,2,#20001,0,"console ... ES6"");") +hasLocation(#20023,#20003) +stmt_containers(#20023,#20001) +#20024=* +exprs(#20024,13,#20023,0,"console ... o ES6"")") +#20025=@"loc,{#10000},1,1,1,24" +locations_default(#20025,#10000,1,1,1,24) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20023) +expr_containers(#20024,#20001) +#20026=* +exprs(#20026,14,#20024,-1,"console.log") +#20027=@"loc,{#10000},1,1,1,11" +locations_default(#20027,#10000,1,1,1,11) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20023) +expr_containers(#20026,#20001) +#20028=* +exprs(#20028,79,#20026,0,"console") +hasLocation(#20028,#20005) +enclosing_stmt(#20028,#20023) +expr_containers(#20028,#20001) +literals("console","console",#20028) +#20029=@"var;{console};{#20000}" +variables(#20029,"console",#20000) +bind(#20028,#20029) #20030=* -exprs(#20030,4,#20023,0,"""Hello ES6""") -hasLocation(#20030,#20013) -enclosing_stmt(#20030,#20022) +exprs(#20030,0,#20026,1,"log") +hasLocation(#20030,#20009) +enclosing_stmt(#20030,#20023) expr_containers(#20030,#20001) -literals("Hello ES6","""Hello ES6""",#20030) +literals("log","log",#20030) #20031=* -regexpterm(#20031,14,#20030,0,"Hello ES6") -#20032=@"loc,{#10000},1,14,1,22" -locations_default(#20032,#10000,1,14,1,22) -hasLocation(#20031,#20032) -regexp_const_value(#20031,"Hello ES6") -#20033=* -entry_cfg_node(#20033,#20001) -#20034=@"loc,{#10000},1,1,1,0" -locations_default(#20034,#10000,1,1,1,0) -hasLocation(#20033,#20034) -#20035=* -exit_cfg_node(#20035,#20001) -hasLocation(#20035,#20019) -successor(#20022,#20027) -successor(#20030,#20023) -successor(#20029,#20025) -successor(#20027,#20029) -successor(#20025,#20030) -successor(#20023,#20035) -successor(#20033,#20022) +exprs(#20031,4,#20024,0,"""Hello ES6""") +hasLocation(#20031,#20013) +enclosing_stmt(#20031,#20023) +expr_containers(#20031,#20001) +literals("Hello ES6","""Hello ES6""",#20031) +#20032=* +regexpterm(#20032,14,#20031,0,"Hello ES6") +#20033=@"loc,{#10000},1,14,1,22" +locations_default(#20033,#10000,1,14,1,22) +hasLocation(#20032,#20033) +regexp_const_value(#20032,"Hello ES6") +#20034=* +entry_cfg_node(#20034,#20001) +#20035=@"loc,{#10000},1,1,1,0" +locations_default(#20035,#10000,1,1,1,0) +hasLocation(#20034,#20035) +#20036=* +exit_cfg_node(#20036,#20001) +hasLocation(#20036,#20019) +successor(#20023,#20028) +successor(#20031,#20024) +successor(#20030,#20026) +successor(#20028,#20030) +successor(#20026,#20031) +successor(#20024,#20036) +successor(#20034,#20023) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/extensions/output/trap/tst2.es.trap b/javascript/extractor/tests/extensions/output/trap/tst2.es.trap index e07f93a15712..c0f303899393 100644 --- a/javascript/extractor/tests/extensions/output/trap/tst2.es.trap +++ b/javascript/extractor/tests/extensions/output/trap/tst2.es.trap @@ -66,65 +66,67 @@ scopenodes(#20001,#20021) scopenesting(#20021,#20000) is_module(#20001) is_es2015_module(#20001) -#20022=* -stmts(#20022,2,#20001,0,"console ... o ES"");") -hasLocation(#20022,#20003) -stmt_containers(#20022,#20001) +#20022=@"var;{this};{#20021}" +variables(#20022,"this",#20021) #20023=* -exprs(#20023,13,#20022,0,"console ... lo ES"")") -#20024=@"loc,{#10000},1,1,1,23" -locations_default(#20024,#10000,1,1,1,23) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20022) -expr_containers(#20023,#20001) -#20025=* -exprs(#20025,14,#20023,-1,"console.log") -#20026=@"loc,{#10000},1,1,1,11" -locations_default(#20026,#10000,1,1,1,11) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20022) -expr_containers(#20025,#20001) -#20027=* -exprs(#20027,79,#20025,0,"console") -hasLocation(#20027,#20005) -enclosing_stmt(#20027,#20022) -expr_containers(#20027,#20001) -literals("console","console",#20027) -#20028=@"var;{console};{#20000}" -variables(#20028,"console",#20000) -bind(#20027,#20028) -#20029=* -exprs(#20029,0,#20025,1,"log") -hasLocation(#20029,#20009) -enclosing_stmt(#20029,#20022) -expr_containers(#20029,#20001) -literals("log","log",#20029) +stmts(#20023,2,#20001,0,"console ... o ES"");") +hasLocation(#20023,#20003) +stmt_containers(#20023,#20001) +#20024=* +exprs(#20024,13,#20023,0,"console ... lo ES"")") +#20025=@"loc,{#10000},1,1,1,23" +locations_default(#20025,#10000,1,1,1,23) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20023) +expr_containers(#20024,#20001) +#20026=* +exprs(#20026,14,#20024,-1,"console.log") +#20027=@"loc,{#10000},1,1,1,11" +locations_default(#20027,#10000,1,1,1,11) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20023) +expr_containers(#20026,#20001) +#20028=* +exprs(#20028,79,#20026,0,"console") +hasLocation(#20028,#20005) +enclosing_stmt(#20028,#20023) +expr_containers(#20028,#20001) +literals("console","console",#20028) +#20029=@"var;{console};{#20000}" +variables(#20029,"console",#20000) +bind(#20028,#20029) #20030=* -exprs(#20030,4,#20023,0,"""Hello ES""") -hasLocation(#20030,#20013) -enclosing_stmt(#20030,#20022) +exprs(#20030,0,#20026,1,"log") +hasLocation(#20030,#20009) +enclosing_stmt(#20030,#20023) expr_containers(#20030,#20001) -literals("Hello ES","""Hello ES""",#20030) +literals("log","log",#20030) #20031=* -regexpterm(#20031,14,#20030,0,"Hello ES") -#20032=@"loc,{#10000},1,14,1,21" -locations_default(#20032,#10000,1,14,1,21) -hasLocation(#20031,#20032) -regexp_const_value(#20031,"Hello ES") -#20033=* -entry_cfg_node(#20033,#20001) -#20034=@"loc,{#10000},1,1,1,0" -locations_default(#20034,#10000,1,1,1,0) -hasLocation(#20033,#20034) -#20035=* -exit_cfg_node(#20035,#20001) -hasLocation(#20035,#20019) -successor(#20022,#20027) -successor(#20030,#20023) -successor(#20029,#20025) -successor(#20027,#20029) -successor(#20025,#20030) -successor(#20023,#20035) -successor(#20033,#20022) +exprs(#20031,4,#20024,0,"""Hello ES""") +hasLocation(#20031,#20013) +enclosing_stmt(#20031,#20023) +expr_containers(#20031,#20001) +literals("Hello ES","""Hello ES""",#20031) +#20032=* +regexpterm(#20032,14,#20031,0,"Hello ES") +#20033=@"loc,{#10000},1,14,1,21" +locations_default(#20033,#10000,1,14,1,21) +hasLocation(#20032,#20033) +regexp_const_value(#20032,"Hello ES") +#20034=* +entry_cfg_node(#20034,#20001) +#20035=@"loc,{#10000},1,1,1,0" +locations_default(#20035,#10000,1,1,1,0) +hasLocation(#20034,#20035) +#20036=* +exit_cfg_node(#20036,#20001) +hasLocation(#20036,#20019) +successor(#20023,#20028) +successor(#20031,#20024) +successor(#20030,#20026) +successor(#20028,#20030) +successor(#20026,#20031) +successor(#20024,#20036) +successor(#20034,#20023) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/extensions/output/trap/tst4.cjs.trap b/javascript/extractor/tests/extensions/output/trap/tst4.cjs.trap index 4323614bf4d0..44a75e37949d 100644 --- a/javascript/extractor/tests/extensions/output/trap/tst4.cjs.trap +++ b/javascript/extractor/tests/extensions/output/trap/tst4.cjs.trap @@ -85,64 +85,66 @@ variables(#20030,"__dirname",#20025) #20031=@"var;{arguments};{#20025}" variables(#20031,"arguments",#20025) is_module(#20001) -#20032=* -stmts(#20032,2,#20001,0,"console ... onJS"");") -hasLocation(#20032,#20003) -stmt_containers(#20032,#20001) +#20032=@"var;{this};{#20025}" +variables(#20032,"this",#20025) #20033=* -exprs(#20033,13,#20032,0,"console ... monJS"")") -#20034=@"loc,{#10000},1,1,1,29" -locations_default(#20034,#10000,1,1,1,29) -hasLocation(#20033,#20034) -enclosing_stmt(#20033,#20032) -expr_containers(#20033,#20001) -#20035=* -exprs(#20035,14,#20033,-1,"console.log") -#20036=@"loc,{#10000},1,1,1,11" -locations_default(#20036,#10000,1,1,1,11) -hasLocation(#20035,#20036) -enclosing_stmt(#20035,#20032) -expr_containers(#20035,#20001) -#20037=* -exprs(#20037,79,#20035,0,"console") -hasLocation(#20037,#20005) -enclosing_stmt(#20037,#20032) -expr_containers(#20037,#20001) -literals("console","console",#20037) -bind(#20037,#20023) +stmts(#20033,2,#20001,0,"console ... onJS"");") +hasLocation(#20033,#20003) +stmt_containers(#20033,#20001) +#20034=* +exprs(#20034,13,#20033,0,"console ... monJS"")") +#20035=@"loc,{#10000},1,1,1,29" +locations_default(#20035,#10000,1,1,1,29) +hasLocation(#20034,#20035) +enclosing_stmt(#20034,#20033) +expr_containers(#20034,#20001) +#20036=* +exprs(#20036,14,#20034,-1,"console.log") +#20037=@"loc,{#10000},1,1,1,11" +locations_default(#20037,#10000,1,1,1,11) +hasLocation(#20036,#20037) +enclosing_stmt(#20036,#20033) +expr_containers(#20036,#20001) #20038=* -exprs(#20038,0,#20035,1,"log") -hasLocation(#20038,#20009) -enclosing_stmt(#20038,#20032) +exprs(#20038,79,#20036,0,"console") +hasLocation(#20038,#20005) +enclosing_stmt(#20038,#20033) expr_containers(#20038,#20001) -literals("log","log",#20038) +literals("console","console",#20038) +bind(#20038,#20023) #20039=* -exprs(#20039,4,#20033,0,"""Hello CommonJS""") -hasLocation(#20039,#20013) -enclosing_stmt(#20039,#20032) +exprs(#20039,0,#20036,1,"log") +hasLocation(#20039,#20009) +enclosing_stmt(#20039,#20033) expr_containers(#20039,#20001) -literals("Hello CommonJS","""Hello CommonJS""",#20039) +literals("log","log",#20039) #20040=* -regexpterm(#20040,14,#20039,0,"Hello CommonJS") -#20041=@"loc,{#10000},1,14,1,27" -locations_default(#20041,#10000,1,14,1,27) -hasLocation(#20040,#20041) -regexp_const_value(#20040,"Hello CommonJS") -#20042=* -entry_cfg_node(#20042,#20001) -#20043=@"loc,{#10000},1,1,1,0" -locations_default(#20043,#10000,1,1,1,0) -hasLocation(#20042,#20043) -#20044=* -exit_cfg_node(#20044,#20001) -hasLocation(#20044,#20019) -successor(#20032,#20037) -successor(#20039,#20033) -successor(#20038,#20035) -successor(#20037,#20038) -successor(#20035,#20039) -successor(#20033,#20044) -successor(#20042,#20032) +exprs(#20040,4,#20034,0,"""Hello CommonJS""") +hasLocation(#20040,#20013) +enclosing_stmt(#20040,#20033) +expr_containers(#20040,#20001) +literals("Hello CommonJS","""Hello CommonJS""",#20040) +#20041=* +regexpterm(#20041,14,#20040,0,"Hello CommonJS") +#20042=@"loc,{#10000},1,14,1,27" +locations_default(#20042,#10000,1,14,1,27) +hasLocation(#20041,#20042) +regexp_const_value(#20041,"Hello CommonJS") +#20043=* +entry_cfg_node(#20043,#20001) +#20044=@"loc,{#10000},1,1,1,0" +locations_default(#20044,#10000,1,1,1,0) +hasLocation(#20043,#20044) +#20045=* +exit_cfg_node(#20045,#20001) +hasLocation(#20045,#20019) +successor(#20033,#20038) +successor(#20040,#20034) +successor(#20039,#20036) +successor(#20038,#20039) +successor(#20036,#20040) +successor(#20034,#20045) +successor(#20043,#20033) is_nodejs(#20001) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/externs/output/trap/Point.js.trap b/javascript/extractor/tests/externs/output/trap/Point.js.trap index d69c901ea893..adfef77d7a9b 100644 --- a/javascript/extractor/tests/externs/output/trap/Point.js.trap +++ b/javascript/extractor/tests/externs/output/trap/Point.js.trap @@ -483,474 +483,482 @@ variables(#20181,"Point",#20000) variables(#20182,"someGlobal",#20000) #20183=@"var;{MyString};{#20000}" variables(#20183,"MyString",#20000) -#20184=* -stmts(#20184,17,#20001,0,"functio ... , y) {}") -hasLocation(#20184,#20005) -stmt_containers(#20184,#20001) +#20184=@"var;{this};{#20000}" +variables(#20184,"this",#20000) #20185=* -exprs(#20185,78,#20184,-1,"Point") -hasLocation(#20185,#20040) -expr_containers(#20185,#20184) -literals("Point","Point",#20185) -decl(#20185,#20181) +stmts(#20185,17,#20001,0,"functio ... , y) {}") +hasLocation(#20185,#20005) +stmt_containers(#20185,#20001) #20186=* -scopes(#20186,1) -scopenodes(#20184,#20186) -scopenesting(#20186,#20000) -#20187=@"var;{x};{#20186}" -variables(#20187,"x",#20186) -#20188=* -exprs(#20188,78,#20184,0,"x") -hasLocation(#20188,#20044) -expr_containers(#20188,#20184) -literals("x","x",#20188) -decl(#20188,#20187) -#20189=@"var;{y};{#20186}" -variables(#20189,"y",#20186) +exprs(#20186,78,#20185,-1,"Point") +hasLocation(#20186,#20040) +expr_containers(#20186,#20185) +literals("Point","Point",#20186) +decl(#20186,#20181) +#20187=* +scopes(#20187,1) +scopenodes(#20185,#20187) +scopenesting(#20187,#20000) +#20188=@"var;{this};{#20187}" +variables(#20188,"this",#20187) +#20189=@"var;{x};{#20187}" +variables(#20189,"x",#20187) #20190=* -exprs(#20190,78,#20184,1,"y") -hasLocation(#20190,#20048) -expr_containers(#20190,#20184) -literals("y","y",#20190) +exprs(#20190,78,#20185,0,"x") +hasLocation(#20190,#20044) +expr_containers(#20190,#20185) +literals("x","x",#20190) decl(#20190,#20189) -#20191=@"var;{arguments};{#20186}" -variables(#20191,"arguments",#20186) -is_arguments_object(#20191) +#20191=@"var;{y};{#20187}" +variables(#20191,"y",#20187) #20192=* -stmts(#20192,1,#20184,-2,"{}") -#20193=@"loc,{#10000},1,22,1,23" -locations_default(#20193,#10000,1,22,1,23) -hasLocation(#20192,#20193) -stmt_containers(#20192,#20184) +exprs(#20192,78,#20185,1,"y") +hasLocation(#20192,#20048) +expr_containers(#20192,#20185) +literals("y","y",#20192) +decl(#20192,#20191) +#20193=@"var;{arguments};{#20187}" +variables(#20193,"arguments",#20187) +is_arguments_object(#20193) #20194=* -stmts(#20194,2,#20001,1,"Point.p ... dy) {};") -hasLocation(#20194,#20009) -stmt_containers(#20194,#20001) -#20195=* -exprs(#20195,47,#20194,0,"Point.p ... dy) {}") -#20196=@"loc,{#10000},3,1,3,42" -locations_default(#20196,#10000,3,1,3,42) -hasLocation(#20195,#20196) -enclosing_stmt(#20195,#20194) -expr_containers(#20195,#20001) +stmts(#20194,1,#20185,-2,"{}") +#20195=@"loc,{#10000},1,22,1,23" +locations_default(#20195,#10000,1,22,1,23) +hasLocation(#20194,#20195) +stmt_containers(#20194,#20185) +#20196=* +stmts(#20196,2,#20001,1,"Point.p ... dy) {};") +hasLocation(#20196,#20009) +stmt_containers(#20196,#20001) #20197=* -exprs(#20197,14,#20195,0,"Point.prototype.move") -#20198=@"loc,{#10000},3,1,3,20" -locations_default(#20198,#10000,3,1,3,20) +exprs(#20197,47,#20196,0,"Point.p ... dy) {}") +#20198=@"loc,{#10000},3,1,3,42" +locations_default(#20198,#10000,3,1,3,42) hasLocation(#20197,#20198) -enclosing_stmt(#20197,#20194) +enclosing_stmt(#20197,#20196) expr_containers(#20197,#20001) #20199=* -exprs(#20199,14,#20197,0,"Point.prototype") -#20200=@"loc,{#10000},3,1,3,15" -locations_default(#20200,#10000,3,1,3,15) +exprs(#20199,14,#20197,0,"Point.prototype.move") +#20200=@"loc,{#10000},3,1,3,20" +locations_default(#20200,#10000,3,1,3,20) hasLocation(#20199,#20200) -enclosing_stmt(#20199,#20194) +enclosing_stmt(#20199,#20196) expr_containers(#20199,#20001) #20201=* -exprs(#20201,79,#20199,0,"Point") -hasLocation(#20201,#20056) -enclosing_stmt(#20201,#20194) +exprs(#20201,14,#20199,0,"Point.prototype") +#20202=@"loc,{#10000},3,1,3,15" +locations_default(#20202,#10000,3,1,3,15) +hasLocation(#20201,#20202) +enclosing_stmt(#20201,#20196) expr_containers(#20201,#20001) -literals("Point","Point",#20201) -bind(#20201,#20181) -#20202=* -exprs(#20202,0,#20199,1,"prototype") -hasLocation(#20202,#20060) -enclosing_stmt(#20202,#20194) -expr_containers(#20202,#20001) -literals("prototype","prototype",#20202) #20203=* -exprs(#20203,0,#20197,1,"move") -hasLocation(#20203,#20064) -enclosing_stmt(#20203,#20194) +exprs(#20203,79,#20201,0,"Point") +hasLocation(#20203,#20056) +enclosing_stmt(#20203,#20196) expr_containers(#20203,#20001) -literals("move","move",#20203) +literals("Point","Point",#20203) +bind(#20203,#20181) #20204=* -exprs(#20204,9,#20195,1,"function(dx, dy) {}") -#20205=@"loc,{#10000},3,24,3,42" -locations_default(#20205,#10000,3,24,3,42) -hasLocation(#20204,#20205) -enclosing_stmt(#20204,#20194) +exprs(#20204,0,#20201,1,"prototype") +hasLocation(#20204,#20060) +enclosing_stmt(#20204,#20196) expr_containers(#20204,#20001) +literals("prototype","prototype",#20204) +#20205=* +exprs(#20205,0,#20199,1,"move") +hasLocation(#20205,#20064) +enclosing_stmt(#20205,#20196) +expr_containers(#20205,#20001) +literals("move","move",#20205) #20206=* -scopes(#20206,1) -scopenodes(#20204,#20206) -scopenesting(#20206,#20000) -#20207=@"var;{dx};{#20206}" -variables(#20207,"dx",#20206) +exprs(#20206,9,#20197,1,"function(dx, dy) {}") +#20207=@"loc,{#10000},3,24,3,42" +locations_default(#20207,#10000,3,24,3,42) +hasLocation(#20206,#20207) +enclosing_stmt(#20206,#20196) +expr_containers(#20206,#20001) #20208=* -exprs(#20208,78,#20204,0,"dx") -hasLocation(#20208,#20072) -expr_containers(#20208,#20204) -literals("dx","dx",#20208) -decl(#20208,#20207) -#20209=@"var;{dy};{#20206}" -variables(#20209,"dy",#20206) -#20210=* -exprs(#20210,78,#20204,1,"dy") -hasLocation(#20210,#20076) -expr_containers(#20210,#20204) -literals("dy","dy",#20210) -decl(#20210,#20209) -#20211=@"var;{arguments};{#20206}" -variables(#20211,"arguments",#20206) -is_arguments_object(#20211) -#20212=* -stmts(#20212,1,#20204,-2,"{}") -#20213=@"loc,{#10000},3,41,3,42" -locations_default(#20213,#10000,3,41,3,42) -hasLocation(#20212,#20213) -stmt_containers(#20212,#20204) -#20214=* -stmts(#20214,2,#20001,2,"Point.p ... j = {};") -hasLocation(#20214,#20011) -stmt_containers(#20214,#20001) +scopes(#20208,1) +scopenodes(#20206,#20208) +scopenesting(#20208,#20000) +#20209=@"var;{this};{#20208}" +variables(#20209,"this",#20208) +#20210=@"var;{dx};{#20208}" +variables(#20210,"dx",#20208) +#20211=* +exprs(#20211,78,#20206,0,"dx") +hasLocation(#20211,#20072) +expr_containers(#20211,#20206) +literals("dx","dx",#20211) +decl(#20211,#20210) +#20212=@"var;{dy};{#20208}" +variables(#20212,"dy",#20208) +#20213=* +exprs(#20213,78,#20206,1,"dy") +hasLocation(#20213,#20076) +expr_containers(#20213,#20206) +literals("dy","dy",#20213) +decl(#20213,#20212) +#20214=@"var;{arguments};{#20208}" +variables(#20214,"arguments",#20208) +is_arguments_object(#20214) #20215=* -exprs(#20215,47,#20214,0,"Point.p ... bj = {}") -#20216=@"loc,{#10000},4,1,4,24" -locations_default(#20216,#10000,4,1,4,24) +stmts(#20215,1,#20206,-2,"{}") +#20216=@"loc,{#10000},3,41,3,42" +locations_default(#20216,#10000,3,41,3,42) hasLocation(#20215,#20216) -enclosing_stmt(#20215,#20214) -expr_containers(#20215,#20001) +stmt_containers(#20215,#20206) #20217=* -exprs(#20217,14,#20215,0,"Point.prototype.obj") -#20218=@"loc,{#10000},4,1,4,19" -locations_default(#20218,#10000,4,1,4,19) -hasLocation(#20217,#20218) -enclosing_stmt(#20217,#20214) -expr_containers(#20217,#20001) -#20219=* -exprs(#20219,14,#20217,0,"Point.prototype") -#20220=@"loc,{#10000},4,1,4,15" -locations_default(#20220,#10000,4,1,4,15) -hasLocation(#20219,#20220) -enclosing_stmt(#20219,#20214) -expr_containers(#20219,#20001) -#20221=* -exprs(#20221,79,#20219,0,"Point") -hasLocation(#20221,#20086) -enclosing_stmt(#20221,#20214) -expr_containers(#20221,#20001) -literals("Point","Point",#20221) -bind(#20221,#20181) +stmts(#20217,2,#20001,2,"Point.p ... j = {};") +hasLocation(#20217,#20011) +stmt_containers(#20217,#20001) +#20218=* +exprs(#20218,47,#20217,0,"Point.p ... bj = {}") +#20219=@"loc,{#10000},4,1,4,24" +locations_default(#20219,#10000,4,1,4,24) +hasLocation(#20218,#20219) +enclosing_stmt(#20218,#20217) +expr_containers(#20218,#20001) +#20220=* +exprs(#20220,14,#20218,0,"Point.prototype.obj") +#20221=@"loc,{#10000},4,1,4,19" +locations_default(#20221,#10000,4,1,4,19) +hasLocation(#20220,#20221) +enclosing_stmt(#20220,#20217) +expr_containers(#20220,#20001) #20222=* -exprs(#20222,0,#20219,1,"prototype") -hasLocation(#20222,#20090) -enclosing_stmt(#20222,#20214) +exprs(#20222,14,#20220,0,"Point.prototype") +#20223=@"loc,{#10000},4,1,4,15" +locations_default(#20223,#10000,4,1,4,15) +hasLocation(#20222,#20223) +enclosing_stmt(#20222,#20217) expr_containers(#20222,#20001) -literals("prototype","prototype",#20222) -#20223=* -exprs(#20223,0,#20217,1,"obj") -hasLocation(#20223,#20094) -enclosing_stmt(#20223,#20214) -expr_containers(#20223,#20001) -literals("obj","obj",#20223) #20224=* -exprs(#20224,8,#20215,1,"{}") -#20225=@"loc,{#10000},4,23,4,24" -locations_default(#20225,#10000,4,23,4,24) -hasLocation(#20224,#20225) -enclosing_stmt(#20224,#20214) +exprs(#20224,79,#20222,0,"Point") +hasLocation(#20224,#20086) +enclosing_stmt(#20224,#20217) expr_containers(#20224,#20001) +literals("Point","Point",#20224) +bind(#20224,#20181) +#20225=* +exprs(#20225,0,#20222,1,"prototype") +hasLocation(#20225,#20090) +enclosing_stmt(#20225,#20217) +expr_containers(#20225,#20001) +literals("prototype","prototype",#20225) #20226=* -stmts(#20226,2,#20001,3,"Point.p ... secret;") -hasLocation(#20226,#20013) -stmt_containers(#20226,#20001) +exprs(#20226,0,#20220,1,"obj") +hasLocation(#20226,#20094) +enclosing_stmt(#20226,#20217) +expr_containers(#20226,#20001) +literals("obj","obj",#20226) #20227=* -exprs(#20227,14,#20226,0,"Point.p ... .secret") -#20228=@"loc,{#10000},5,1,5,22" -locations_default(#20228,#10000,5,1,5,22) +exprs(#20227,8,#20218,1,"{}") +#20228=@"loc,{#10000},4,23,4,24" +locations_default(#20228,#10000,4,23,4,24) hasLocation(#20227,#20228) -enclosing_stmt(#20227,#20226) +enclosing_stmt(#20227,#20217) expr_containers(#20227,#20001) #20229=* -exprs(#20229,14,#20227,0,"Point.prototype") -#20230=@"loc,{#10000},5,1,5,15" -locations_default(#20230,#10000,5,1,5,15) -hasLocation(#20229,#20230) -enclosing_stmt(#20229,#20226) -expr_containers(#20229,#20001) -#20231=* -exprs(#20231,79,#20229,0,"Point") -hasLocation(#20231,#20104) -enclosing_stmt(#20231,#20226) -expr_containers(#20231,#20001) -literals("Point","Point",#20231) -bind(#20231,#20181) +stmts(#20229,2,#20001,3,"Point.p ... secret;") +hasLocation(#20229,#20013) +stmt_containers(#20229,#20001) +#20230=* +exprs(#20230,14,#20229,0,"Point.p ... .secret") +#20231=@"loc,{#10000},5,1,5,22" +locations_default(#20231,#10000,5,1,5,22) +hasLocation(#20230,#20231) +enclosing_stmt(#20230,#20229) +expr_containers(#20230,#20001) #20232=* -exprs(#20232,0,#20229,1,"prototype") -hasLocation(#20232,#20108) -enclosing_stmt(#20232,#20226) +exprs(#20232,14,#20230,0,"Point.prototype") +#20233=@"loc,{#10000},5,1,5,15" +locations_default(#20233,#10000,5,1,5,15) +hasLocation(#20232,#20233) +enclosing_stmt(#20232,#20229) expr_containers(#20232,#20001) -literals("prototype","prototype",#20232) -#20233=* -exprs(#20233,0,#20227,1,"secret") -hasLocation(#20233,#20112) -enclosing_stmt(#20233,#20226) -expr_containers(#20233,#20001) -literals("secret","secret",#20233) #20234=* -stmts(#20234,2,#20001,4,"Point.ORIGIN;") -hasLocation(#20234,#20017) -stmt_containers(#20234,#20001) +exprs(#20234,79,#20232,0,"Point") +hasLocation(#20234,#20104) +enclosing_stmt(#20234,#20229) +expr_containers(#20234,#20001) +literals("Point","Point",#20234) +bind(#20234,#20181) #20235=* -exprs(#20235,14,#20234,0,"Point.ORIGIN") -#20236=@"loc,{#10000},7,1,7,12" -locations_default(#20236,#10000,7,1,7,12) -hasLocation(#20235,#20236) -enclosing_stmt(#20235,#20234) +exprs(#20235,0,#20232,1,"prototype") +hasLocation(#20235,#20108) +enclosing_stmt(#20235,#20229) expr_containers(#20235,#20001) +literals("prototype","prototype",#20235) +#20236=* +exprs(#20236,0,#20230,1,"secret") +hasLocation(#20236,#20112) +enclosing_stmt(#20236,#20229) +expr_containers(#20236,#20001) +literals("secret","secret",#20236) #20237=* -exprs(#20237,79,#20235,0,"Point") -hasLocation(#20237,#20116) -enclosing_stmt(#20237,#20234) -expr_containers(#20237,#20001) -literals("Point","Point",#20237) -bind(#20237,#20181) +stmts(#20237,2,#20001,4,"Point.ORIGIN;") +hasLocation(#20237,#20017) +stmt_containers(#20237,#20001) #20238=* -exprs(#20238,0,#20235,1,"ORIGIN") -hasLocation(#20238,#20120) -enclosing_stmt(#20238,#20234) +exprs(#20238,14,#20237,0,"Point.ORIGIN") +#20239=@"loc,{#10000},7,1,7,12" +locations_default(#20239,#10000,7,1,7,12) +hasLocation(#20238,#20239) +enclosing_stmt(#20238,#20237) expr_containers(#20238,#20001) -literals("ORIGIN","ORIGIN",#20238) -#20239=* -stmts(#20239,2,#20001,5,"Point.f ... n() {};") -hasLocation(#20239,#20019) -stmt_containers(#20239,#20001) #20240=* -exprs(#20240,47,#20239,0,"Point.f ... on() {}") -#20241=@"loc,{#10000},8,1,8,25" -locations_default(#20241,#10000,8,1,8,25) -hasLocation(#20240,#20241) -enclosing_stmt(#20240,#20239) +exprs(#20240,79,#20238,0,"Point") +hasLocation(#20240,#20116) +enclosing_stmt(#20240,#20237) expr_containers(#20240,#20001) +literals("Point","Point",#20240) +bind(#20240,#20181) +#20241=* +exprs(#20241,0,#20238,1,"ORIGIN") +hasLocation(#20241,#20120) +enclosing_stmt(#20241,#20237) +expr_containers(#20241,#20001) +literals("ORIGIN","ORIGIN",#20241) #20242=* -exprs(#20242,14,#20240,0,"Point.foo") -#20243=@"loc,{#10000},8,1,8,9" -locations_default(#20243,#10000,8,1,8,9) -hasLocation(#20242,#20243) -enclosing_stmt(#20242,#20239) -expr_containers(#20242,#20001) -#20244=* -exprs(#20244,79,#20242,0,"Point") -hasLocation(#20244,#20124) -enclosing_stmt(#20244,#20239) -expr_containers(#20244,#20001) -literals("Point","Point",#20244) -bind(#20244,#20181) +stmts(#20242,2,#20001,5,"Point.f ... n() {};") +hasLocation(#20242,#20019) +stmt_containers(#20242,#20001) +#20243=* +exprs(#20243,47,#20242,0,"Point.f ... on() {}") +#20244=@"loc,{#10000},8,1,8,25" +locations_default(#20244,#10000,8,1,8,25) +hasLocation(#20243,#20244) +enclosing_stmt(#20243,#20242) +expr_containers(#20243,#20001) #20245=* -exprs(#20245,0,#20242,1,"foo") -hasLocation(#20245,#20128) -enclosing_stmt(#20245,#20239) +exprs(#20245,14,#20243,0,"Point.foo") +#20246=@"loc,{#10000},8,1,8,9" +locations_default(#20246,#10000,8,1,8,9) +hasLocation(#20245,#20246) +enclosing_stmt(#20245,#20242) expr_containers(#20245,#20001) -literals("foo","foo",#20245) -#20246=* -exprs(#20246,9,#20240,1,"function() {}") -#20247=@"loc,{#10000},8,13,8,25" -locations_default(#20247,#10000,8,13,8,25) -hasLocation(#20246,#20247) -enclosing_stmt(#20246,#20239) -expr_containers(#20246,#20001) +#20247=* +exprs(#20247,79,#20245,0,"Point") +hasLocation(#20247,#20124) +enclosing_stmt(#20247,#20242) +expr_containers(#20247,#20001) +literals("Point","Point",#20247) +bind(#20247,#20181) #20248=* -scopes(#20248,1) -scopenodes(#20246,#20248) -scopenesting(#20248,#20000) -#20249=@"var;{arguments};{#20248}" -variables(#20249,"arguments",#20248) -is_arguments_object(#20249) -#20250=* -stmts(#20250,1,#20246,-2,"{}") -#20251=@"loc,{#10000},8,24,8,25" -locations_default(#20251,#10000,8,24,8,25) -hasLocation(#20250,#20251) -stmt_containers(#20250,#20246) -#20252=* -stmts(#20252,18,#20001,6,"var someGlobal;") -hasLocation(#20252,#20023) -stmt_containers(#20252,#20001) -#20253=* -exprs(#20253,64,#20252,0,"someGlobal") -hasLocation(#20253,#20146) -enclosing_stmt(#20253,#20252) -expr_containers(#20253,#20001) +exprs(#20248,0,#20245,1,"foo") +hasLocation(#20248,#20128) +enclosing_stmt(#20248,#20242) +expr_containers(#20248,#20001) +literals("foo","foo",#20248) +#20249=* +exprs(#20249,9,#20243,1,"function() {}") +#20250=@"loc,{#10000},8,13,8,25" +locations_default(#20250,#10000,8,13,8,25) +hasLocation(#20249,#20250) +enclosing_stmt(#20249,#20242) +expr_containers(#20249,#20001) +#20251=* +scopes(#20251,1) +scopenodes(#20249,#20251) +scopenesting(#20251,#20000) +#20252=@"var;{this};{#20251}" +variables(#20252,"this",#20251) +#20253=@"var;{arguments};{#20251}" +variables(#20253,"arguments",#20251) +is_arguments_object(#20253) #20254=* -exprs(#20254,78,#20253,0,"someGlobal") -hasLocation(#20254,#20146) -enclosing_stmt(#20254,#20252) -expr_containers(#20254,#20001) -literals("someGlobal","someGlobal",#20254) -decl(#20254,#20182) -#20255=* -stmts(#20255,18,#20001,7,"var MyString;") -hasLocation(#20255,#20028) -stmt_containers(#20255,#20001) +stmts(#20254,1,#20249,-2,"{}") +#20255=@"loc,{#10000},8,24,8,25" +locations_default(#20255,#10000,8,24,8,25) +hasLocation(#20254,#20255) +stmt_containers(#20254,#20249) #20256=* -exprs(#20256,64,#20255,0,"MyString") -hasLocation(#20256,#20152) -enclosing_stmt(#20256,#20255) -expr_containers(#20256,#20001) +stmts(#20256,18,#20001,6,"var someGlobal;") +hasLocation(#20256,#20023) +stmt_containers(#20256,#20001) #20257=* -exprs(#20257,78,#20256,0,"MyString") -hasLocation(#20257,#20152) -enclosing_stmt(#20257,#20255) +exprs(#20257,64,#20256,0,"someGlobal") +hasLocation(#20257,#20146) +enclosing_stmt(#20257,#20256) expr_containers(#20257,#20001) -literals("MyString","MyString",#20257) -decl(#20257,#20183) #20258=* -stmts(#20258,2,#20001,8,"Point.p ... inal'];") -hasLocation(#20258,#20032) -stmt_containers(#20258,#20001) +exprs(#20258,78,#20257,0,"someGlobal") +hasLocation(#20258,#20146) +enclosing_stmt(#20258,#20256) +expr_containers(#20258,#20001) +literals("someGlobal","someGlobal",#20258) +decl(#20258,#20182) #20259=* -exprs(#20259,15,#20258,0,"Point.p ... final']") -#20260=@"loc,{#10000},15,1,15,24" -locations_default(#20260,#10000,15,1,15,24) -hasLocation(#20259,#20260) -enclosing_stmt(#20259,#20258) -expr_containers(#20259,#20001) +stmts(#20259,18,#20001,7,"var MyString;") +hasLocation(#20259,#20028) +stmt_containers(#20259,#20001) +#20260=* +exprs(#20260,64,#20259,0,"MyString") +hasLocation(#20260,#20152) +enclosing_stmt(#20260,#20259) +expr_containers(#20260,#20001) #20261=* -exprs(#20261,14,#20259,0,"Point.prototype") -#20262=@"loc,{#10000},15,1,15,15" -locations_default(#20262,#10000,15,1,15,15) -hasLocation(#20261,#20262) -enclosing_stmt(#20261,#20258) +exprs(#20261,78,#20260,0,"MyString") +hasLocation(#20261,#20152) +enclosing_stmt(#20261,#20259) expr_containers(#20261,#20001) +literals("MyString","MyString",#20261) +decl(#20261,#20183) +#20262=* +stmts(#20262,2,#20001,8,"Point.p ... inal'];") +hasLocation(#20262,#20032) +stmt_containers(#20262,#20001) #20263=* -exprs(#20263,79,#20261,0,"Point") -hasLocation(#20263,#20156) -enclosing_stmt(#20263,#20258) +exprs(#20263,15,#20262,0,"Point.p ... final']") +#20264=@"loc,{#10000},15,1,15,24" +locations_default(#20264,#10000,15,1,15,24) +hasLocation(#20263,#20264) +enclosing_stmt(#20263,#20262) expr_containers(#20263,#20001) -literals("Point","Point",#20263) -bind(#20263,#20181) -#20264=* -exprs(#20264,0,#20261,1,"prototype") -hasLocation(#20264,#20160) -enclosing_stmt(#20264,#20258) -expr_containers(#20264,#20001) -literals("prototype","prototype",#20264) #20265=* -exprs(#20265,4,#20259,1,"'final'") -hasLocation(#20265,#20164) -enclosing_stmt(#20265,#20258) +exprs(#20265,14,#20263,0,"Point.prototype") +#20266=@"loc,{#10000},15,1,15,15" +locations_default(#20266,#10000,15,1,15,15) +hasLocation(#20265,#20266) +enclosing_stmt(#20265,#20262) expr_containers(#20265,#20001) -literals("final","'final'",#20265) -#20266=* -regexpterm(#20266,14,#20265,0,"final") -#20267=@"loc,{#10000},15,18,15,22" -locations_default(#20267,#10000,15,18,15,22) -hasLocation(#20266,#20267) -regexp_const_value(#20266,"final") +#20267=* +exprs(#20267,79,#20265,0,"Point") +hasLocation(#20267,#20156) +enclosing_stmt(#20267,#20262) +expr_containers(#20267,#20001) +literals("Point","Point",#20267) +bind(#20267,#20181) #20268=* -stmts(#20268,2,#20001,9,"'use strict';") -hasLocation(#20268,#20036) -stmt_containers(#20268,#20001) +exprs(#20268,0,#20265,1,"prototype") +hasLocation(#20268,#20160) +enclosing_stmt(#20268,#20262) +expr_containers(#20268,#20001) +literals("prototype","prototype",#20268) #20269=* -exprs(#20269,4,#20268,0,"'use strict'") -hasLocation(#20269,#20170) -enclosing_stmt(#20269,#20268) +exprs(#20269,4,#20263,1,"'final'") +hasLocation(#20269,#20164) +enclosing_stmt(#20269,#20262) expr_containers(#20269,#20001) -literals("use strict","'use strict'",#20269) +literals("final","'final'",#20269) #20270=* -regexpterm(#20270,14,#20269,0,"use strict") -#20271=@"loc,{#10000},17,2,17,11" -locations_default(#20271,#10000,17,2,17,11) +regexpterm(#20270,14,#20269,0,"final") +#20271=@"loc,{#10000},15,18,15,22" +locations_default(#20271,#10000,15,18,15,22) hasLocation(#20270,#20271) -regexp_const_value(#20270,"use strict") +regexp_const_value(#20270,"final") #20272=* -entry_cfg_node(#20272,#20001) -#20273=@"loc,{#10000},1,1,1,0" -locations_default(#20273,#10000,1,1,1,0) -hasLocation(#20272,#20273) +stmts(#20272,2,#20001,9,"'use strict';") +hasLocation(#20272,#20036) +stmt_containers(#20272,#20001) +#20273=* +exprs(#20273,4,#20272,0,"'use strict'") +hasLocation(#20273,#20170) +enclosing_stmt(#20273,#20272) +expr_containers(#20273,#20001) +literals("use strict","'use strict'",#20273) #20274=* -exit_cfg_node(#20274,#20001) -hasLocation(#20274,#20174) -successor(#20268,#20269) -successor(#20269,#20274) -successor(#20258,#20263) -successor(#20265,#20259) -successor(#20264,#20261) -successor(#20263,#20264) -successor(#20261,#20265) -successor(#20259,#20268) -successor(#20255,#20257) -successor(#20257,#20256) +regexpterm(#20274,14,#20273,0,"use strict") +#20275=@"loc,{#10000},17,2,17,11" +locations_default(#20275,#10000,17,2,17,11) +hasLocation(#20274,#20275) +regexp_const_value(#20274,"use strict") +#20276=* +entry_cfg_node(#20276,#20001) +#20277=@"loc,{#10000},1,1,1,0" +locations_default(#20277,#10000,1,1,1,0) +hasLocation(#20276,#20277) +#20278=* +exit_cfg_node(#20278,#20001) +hasLocation(#20278,#20174) +successor(#20272,#20273) +successor(#20273,#20278) +successor(#20262,#20267) +successor(#20269,#20263) +successor(#20268,#20265) +successor(#20267,#20268) +successor(#20265,#20269) +successor(#20263,#20272) +successor(#20259,#20261) +successor(#20261,#20260) +successor(#20260,#20262) successor(#20256,#20258) -successor(#20252,#20254) -successor(#20254,#20253) -successor(#20253,#20255) -successor(#20239,#20244) -successor(#20246,#20240) -#20275=* -entry_cfg_node(#20275,#20246) -#20276=@"loc,{#10000},8,13,8,12" -locations_default(#20276,#10000,8,13,8,12) -hasLocation(#20275,#20276) -#20277=* -exit_cfg_node(#20277,#20246) -#20278=@"loc,{#10000},8,26,8,25" -locations_default(#20278,#10000,8,26,8,25) -hasLocation(#20277,#20278) -successor(#20250,#20277) -successor(#20275,#20250) -successor(#20245,#20242) -successor(#20244,#20245) -successor(#20242,#20246) -successor(#20240,#20252) -successor(#20234,#20237) -successor(#20238,#20235) -successor(#20237,#20238) -successor(#20235,#20239) -successor(#20226,#20231) -successor(#20233,#20227) -successor(#20232,#20229) -successor(#20231,#20232) -successor(#20229,#20233) -successor(#20227,#20234) -successor(#20214,#20221) -successor(#20224,#20215) -successor(#20223,#20217) -successor(#20222,#20219) -successor(#20221,#20222) -successor(#20219,#20223) -successor(#20217,#20224) -successor(#20215,#20226) -successor(#20194,#20201) -successor(#20204,#20195) +successor(#20258,#20257) +successor(#20257,#20259) +successor(#20242,#20247) +successor(#20249,#20243) #20279=* -entry_cfg_node(#20279,#20204) -#20280=@"loc,{#10000},3,24,3,23" -locations_default(#20280,#10000,3,24,3,23) +entry_cfg_node(#20279,#20249) +#20280=@"loc,{#10000},8,13,8,12" +locations_default(#20280,#10000,8,13,8,12) hasLocation(#20279,#20280) #20281=* -exit_cfg_node(#20281,#20204) -#20282=@"loc,{#10000},3,43,3,42" -locations_default(#20282,#10000,3,43,3,42) +exit_cfg_node(#20281,#20249) +#20282=@"loc,{#10000},8,26,8,25" +locations_default(#20282,#10000,8,26,8,25) hasLocation(#20281,#20282) -successor(#20212,#20281) -successor(#20210,#20212) -successor(#20208,#20210) -successor(#20279,#20208) -successor(#20203,#20197) -successor(#20202,#20199) -successor(#20201,#20202) -successor(#20199,#20203) -successor(#20197,#20204) -successor(#20195,#20214) -successor(#20184,#20194) +successor(#20254,#20281) +successor(#20279,#20254) +successor(#20248,#20245) +successor(#20247,#20248) +successor(#20245,#20249) +successor(#20243,#20256) +successor(#20237,#20240) +successor(#20241,#20238) +successor(#20240,#20241) +successor(#20238,#20242) +successor(#20229,#20234) +successor(#20236,#20230) +successor(#20235,#20232) +successor(#20234,#20235) +successor(#20232,#20236) +successor(#20230,#20237) +successor(#20217,#20224) +successor(#20227,#20218) +successor(#20226,#20220) +successor(#20225,#20222) +successor(#20224,#20225) +successor(#20222,#20226) +successor(#20220,#20227) +successor(#20218,#20229) +successor(#20196,#20203) +successor(#20206,#20197) #20283=* -entry_cfg_node(#20283,#20184) -hasLocation(#20283,#20273) -#20284=* -exit_cfg_node(#20284,#20184) -#20285=@"loc,{#10000},1,24,1,23" -locations_default(#20285,#10000,1,24,1,23) -hasLocation(#20284,#20285) -successor(#20192,#20284) +entry_cfg_node(#20283,#20206) +#20284=@"loc,{#10000},3,24,3,23" +locations_default(#20284,#10000,3,24,3,23) +hasLocation(#20283,#20284) +#20285=* +exit_cfg_node(#20285,#20206) +#20286=@"loc,{#10000},3,43,3,42" +locations_default(#20286,#10000,3,43,3,42) +hasLocation(#20285,#20286) +successor(#20215,#20285) +successor(#20213,#20215) +successor(#20211,#20213) +successor(#20283,#20211) +successor(#20205,#20199) +successor(#20204,#20201) +successor(#20203,#20204) +successor(#20201,#20205) +successor(#20199,#20206) +successor(#20197,#20217) +successor(#20185,#20196) +#20287=* +entry_cfg_node(#20287,#20185) +hasLocation(#20287,#20277) +#20288=* +exit_cfg_node(#20288,#20185) +#20289=@"loc,{#10000},1,24,1,23" +locations_default(#20289,#10000,1,24,1,23) +hasLocation(#20288,#20289) +successor(#20194,#20288) +successor(#20192,#20194) successor(#20190,#20192) -successor(#20188,#20190) -successor(#20283,#20188) -successor(#20185,#20184) -successor(#20272,#20185) +successor(#20287,#20190) +successor(#20186,#20185) +successor(#20276,#20186) is_externs(#20001) numlines(#10000,17,10,1) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/ambig.js.trap b/javascript/extractor/tests/flow/output/trap/ambig.js.trap index 5c03f0309c28..640d3607fb0d 100644 --- a/javascript/extractor/tests/flow/output/trap/ambig.js.trap +++ b/javascript/extractor/tests/flow/output/trap/ambig.js.trap @@ -215,14 +215,16 @@ toplevels(#20001,0) #20077=@"loc,{#10000},1,1,9,0" locations_default(#20077,#10000,1,1,9,0) hasLocation(#20001,#20077) -#20078=* -entry_cfg_node(#20078,#20001) -#20079=@"loc,{#10000},1,1,1,0" -locations_default(#20079,#10000,1,1,1,0) -hasLocation(#20078,#20079) -#20080=* -exit_cfg_node(#20080,#20001) -hasLocation(#20080,#20076) -successor(#20078,#20080) +#20078=@"var;{this};{#20000}" +variables(#20078,"this",#20000) +#20079=* +entry_cfg_node(#20079,#20001) +#20080=@"loc,{#10000},1,1,1,0" +locations_default(#20080,#10000,1,1,1,0) +hasLocation(#20079,#20080) +#20081=* +exit_cfg_node(#20081,#20001) +hasLocation(#20081,#20076) +successor(#20079,#20081) numlines(#10000,8,7,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/anonFunctionOptionalParm.js.trap b/javascript/extractor/tests/flow/output/trap/anonFunctionOptionalParm.js.trap index 8a5bb69f6ab5..9437949324cd 100644 --- a/javascript/extractor/tests/flow/output/trap/anonFunctionOptionalParm.js.trap +++ b/javascript/extractor/tests/flow/output/trap/anonFunctionOptionalParm.js.trap @@ -92,74 +92,76 @@ locations_default(#20032,#10000,1,1,2,0) hasLocation(#20001,#20032) #20033=@"var;{f};{#20000}" variables(#20033,"f",#20000) -#20034=* -stmts(#20034,18,#20001,0,"var f = ... => {};") -hasLocation(#20034,#20003) -stmt_containers(#20034,#20001) +#20034=@"var;{this};{#20000}" +variables(#20034,"this",#20000) #20035=* -exprs(#20035,64,#20034,0,"f = (x?:int) => {}") -#20036=@"loc,{#10000},1,5,1,22" -locations_default(#20036,#10000,1,5,1,22) -hasLocation(#20035,#20036) -enclosing_stmt(#20035,#20034) -expr_containers(#20035,#20001) -#20037=* -exprs(#20037,78,#20035,0,"f") -hasLocation(#20037,#20007) -enclosing_stmt(#20037,#20034) -expr_containers(#20037,#20001) -literals("f","f",#20037) -decl(#20037,#20033) +stmts(#20035,18,#20001,0,"var f = ... => {};") +hasLocation(#20035,#20003) +stmt_containers(#20035,#20001) +#20036=* +exprs(#20036,64,#20035,0,"f = (x?:int) => {}") +#20037=@"loc,{#10000},1,5,1,22" +locations_default(#20037,#10000,1,5,1,22) +hasLocation(#20036,#20037) +enclosing_stmt(#20036,#20035) +expr_containers(#20036,#20001) #20038=* -exprs(#20038,65,#20035,1,"(x?:int) => {}") -#20039=@"loc,{#10000},1,9,1,22" -locations_default(#20039,#10000,1,9,1,22) -hasLocation(#20038,#20039) -enclosing_stmt(#20038,#20034) +exprs(#20038,78,#20036,0,"f") +hasLocation(#20038,#20007) +enclosing_stmt(#20038,#20035) expr_containers(#20038,#20001) -#20040=* -scopes(#20040,1) -scopenodes(#20038,#20040) -scopenesting(#20040,#20000) -#20041=@"var;{x};{#20040}" -variables(#20041,"x",#20040) -#20042=* -exprs(#20042,78,#20038,0,"x") -hasLocation(#20042,#20013) -expr_containers(#20042,#20038) -literals("x","x",#20042) -decl(#20042,#20041) +literals("f","f",#20038) +decl(#20038,#20033) +#20039=* +exprs(#20039,65,#20036,1,"(x?:int) => {}") +#20040=@"loc,{#10000},1,9,1,22" +locations_default(#20040,#10000,1,9,1,22) +hasLocation(#20039,#20040) +enclosing_stmt(#20039,#20035) +expr_containers(#20039,#20001) +#20041=* +scopes(#20041,1) +scopenodes(#20039,#20041) +scopenesting(#20041,#20000) +#20042=@"var;{x};{#20041}" +variables(#20042,"x",#20041) #20043=* -stmts(#20043,1,#20038,-2,"{}") -#20044=@"loc,{#10000},1,21,1,22" -locations_default(#20044,#10000,1,21,1,22) -hasLocation(#20043,#20044) -stmt_containers(#20043,#20038) -#20045=* -entry_cfg_node(#20045,#20001) -#20046=@"loc,{#10000},1,1,1,0" -locations_default(#20046,#10000,1,1,1,0) -hasLocation(#20045,#20046) -#20047=* -exit_cfg_node(#20047,#20001) -hasLocation(#20047,#20031) -successor(#20034,#20037) -successor(#20038,#20035) +exprs(#20043,78,#20039,0,"x") +hasLocation(#20043,#20013) +expr_containers(#20043,#20039) +literals("x","x",#20043) +decl(#20043,#20042) +#20044=* +stmts(#20044,1,#20039,-2,"{}") +#20045=@"loc,{#10000},1,21,1,22" +locations_default(#20045,#10000,1,21,1,22) +hasLocation(#20044,#20045) +stmt_containers(#20044,#20039) +#20046=* +entry_cfg_node(#20046,#20001) +#20047=@"loc,{#10000},1,1,1,0" +locations_default(#20047,#10000,1,1,1,0) +hasLocation(#20046,#20047) #20048=* -entry_cfg_node(#20048,#20038) -#20049=@"loc,{#10000},1,9,1,8" -locations_default(#20049,#10000,1,9,1,8) -hasLocation(#20048,#20049) -#20050=* -exit_cfg_node(#20050,#20038) -#20051=@"loc,{#10000},1,23,1,22" -locations_default(#20051,#10000,1,23,1,22) -hasLocation(#20050,#20051) -successor(#20043,#20050) -successor(#20042,#20043) -successor(#20048,#20042) -successor(#20037,#20038) -successor(#20035,#20047) -successor(#20045,#20034) +exit_cfg_node(#20048,#20001) +hasLocation(#20048,#20031) +successor(#20035,#20038) +successor(#20039,#20036) +#20049=* +entry_cfg_node(#20049,#20039) +#20050=@"loc,{#10000},1,9,1,8" +locations_default(#20050,#10000,1,9,1,8) +hasLocation(#20049,#20050) +#20051=* +exit_cfg_node(#20051,#20039) +#20052=@"loc,{#10000},1,23,1,22" +locations_default(#20052,#10000,1,23,1,22) +hasLocation(#20051,#20052) +successor(#20044,#20051) +successor(#20043,#20044) +successor(#20049,#20043) +successor(#20038,#20039) +successor(#20036,#20048) +successor(#20046,#20035) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/anonFunctionReturnType.js.trap b/javascript/extractor/tests/flow/output/trap/anonFunctionReturnType.js.trap index 6118bba73887..4850f4069f9a 100644 --- a/javascript/extractor/tests/flow/output/trap/anonFunctionReturnType.js.trap +++ b/javascript/extractor/tests/flow/output/trap/anonFunctionReturnType.js.trap @@ -99,74 +99,76 @@ toplevels(#20001,0) hasLocation(#20001,#20003) #20036=@"var;{f};{#20000}" variables(#20036,"f",#20000) -#20037=* -stmts(#20037,18,#20001,0,"var f = ... => {};") -hasLocation(#20037,#20003) -stmt_containers(#20037,#20001) +#20037=@"var;{this};{#20000}" +variables(#20037,"this",#20000) #20038=* -exprs(#20038,64,#20037,0,"f = (vi ... n => {}") -#20039=@"loc,{#10000},1,5,1,47" -locations_default(#20039,#10000,1,5,1,47) -hasLocation(#20038,#20039) -enclosing_stmt(#20038,#20037) -expr_containers(#20038,#20001) -#20040=* -exprs(#20040,78,#20038,0,"f") -hasLocation(#20040,#20007) -enclosing_stmt(#20040,#20037) -expr_containers(#20040,#20001) -literals("f","f",#20040) -decl(#20040,#20036) +stmts(#20038,18,#20001,0,"var f = ... => {};") +hasLocation(#20038,#20003) +stmt_containers(#20038,#20001) +#20039=* +exprs(#20039,64,#20038,0,"f = (vi ... n => {}") +#20040=@"loc,{#10000},1,5,1,47" +locations_default(#20040,#10000,1,5,1,47) +hasLocation(#20039,#20040) +enclosing_stmt(#20039,#20038) +expr_containers(#20039,#20001) #20041=* -exprs(#20041,65,#20038,1,"(viewab ... n => {}") -#20042=@"loc,{#10000},1,9,1,47" -locations_default(#20042,#10000,1,9,1,47) -hasLocation(#20041,#20042) -enclosing_stmt(#20041,#20037) +exprs(#20041,78,#20039,0,"f") +hasLocation(#20041,#20007) +enclosing_stmt(#20041,#20038) expr_containers(#20041,#20001) -#20043=* -scopes(#20043,1) -scopenodes(#20041,#20043) -scopenesting(#20043,#20000) -#20044=@"var;{viewable};{#20043}" -variables(#20044,"viewable",#20043) -#20045=* -exprs(#20045,78,#20041,0,"viewable") -hasLocation(#20045,#20013) -expr_containers(#20045,#20041) -literals("viewable","viewable",#20045) -decl(#20045,#20044) +literals("f","f",#20041) +decl(#20041,#20036) +#20042=* +exprs(#20042,65,#20039,1,"(viewab ... n => {}") +#20043=@"loc,{#10000},1,9,1,47" +locations_default(#20043,#10000,1,9,1,47) +hasLocation(#20042,#20043) +enclosing_stmt(#20042,#20038) +expr_containers(#20042,#20001) +#20044=* +scopes(#20044,1) +scopenodes(#20042,#20044) +scopenesting(#20044,#20000) +#20045=@"var;{viewable};{#20044}" +variables(#20045,"viewable",#20044) #20046=* -stmts(#20046,1,#20041,-2,"{}") -#20047=@"loc,{#10000},1,46,1,47" -locations_default(#20047,#10000,1,46,1,47) -hasLocation(#20046,#20047) -stmt_containers(#20046,#20041) -#20048=* -entry_cfg_node(#20048,#20001) -#20049=@"loc,{#10000},1,1,1,0" -locations_default(#20049,#10000,1,1,1,0) -hasLocation(#20048,#20049) -#20050=* -exit_cfg_node(#20050,#20001) -hasLocation(#20050,#20035) -successor(#20037,#20040) -successor(#20041,#20038) +exprs(#20046,78,#20042,0,"viewable") +hasLocation(#20046,#20013) +expr_containers(#20046,#20042) +literals("viewable","viewable",#20046) +decl(#20046,#20045) +#20047=* +stmts(#20047,1,#20042,-2,"{}") +#20048=@"loc,{#10000},1,46,1,47" +locations_default(#20048,#10000,1,46,1,47) +hasLocation(#20047,#20048) +stmt_containers(#20047,#20042) +#20049=* +entry_cfg_node(#20049,#20001) +#20050=@"loc,{#10000},1,1,1,0" +locations_default(#20050,#10000,1,1,1,0) +hasLocation(#20049,#20050) #20051=* -entry_cfg_node(#20051,#20041) -#20052=@"loc,{#10000},1,9,1,8" -locations_default(#20052,#10000,1,9,1,8) -hasLocation(#20051,#20052) -#20053=* -exit_cfg_node(#20053,#20041) -#20054=@"loc,{#10000},1,48,1,47" -locations_default(#20054,#10000,1,48,1,47) -hasLocation(#20053,#20054) -successor(#20046,#20053) -successor(#20045,#20046) -successor(#20051,#20045) -successor(#20040,#20041) -successor(#20038,#20050) -successor(#20048,#20037) +exit_cfg_node(#20051,#20001) +hasLocation(#20051,#20035) +successor(#20038,#20041) +successor(#20042,#20039) +#20052=* +entry_cfg_node(#20052,#20042) +#20053=@"loc,{#10000},1,9,1,8" +locations_default(#20053,#10000,1,9,1,8) +hasLocation(#20052,#20053) +#20054=* +exit_cfg_node(#20054,#20042) +#20055=@"loc,{#10000},1,48,1,47" +locations_default(#20055,#10000,1,48,1,47) +hasLocation(#20054,#20055) +successor(#20047,#20054) +successor(#20046,#20047) +successor(#20052,#20046) +successor(#20041,#20042) +successor(#20039,#20051) +successor(#20049,#20038) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/anonFunctionWithoutParens.js.trap b/javascript/extractor/tests/flow/output/trap/anonFunctionWithoutParens.js.trap index 154751cda15d..9a1b1c05f6ca 100644 --- a/javascript/extractor/tests/flow/output/trap/anonFunctionWithoutParens.js.trap +++ b/javascript/extractor/tests/flow/output/trap/anonFunctionWithoutParens.js.trap @@ -72,14 +72,16 @@ locations_default(#20025,#10000,1,40,1,39) hasLocation(#20024,#20025) toplevels(#20001,0) hasLocation(#20001,#20003) -#20026=* -entry_cfg_node(#20026,#20001) -#20027=@"loc,{#10000},1,1,1,0" -locations_default(#20027,#10000,1,1,1,0) -hasLocation(#20026,#20027) -#20028=* -exit_cfg_node(#20028,#20001) -hasLocation(#20028,#20025) -successor(#20026,#20028) +#20026=@"var;{this};{#20000}" +variables(#20026,"this",#20000) +#20027=* +entry_cfg_node(#20027,#20001) +#20028=@"loc,{#10000},1,1,1,0" +locations_default(#20028,#10000,1,1,1,0) +hasLocation(#20027,#20028) +#20029=* +exit_cfg_node(#20029,#20001) +hasLocation(#20029,#20025) +successor(#20027,#20029) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/anonIndexer.js.trap b/javascript/extractor/tests/flow/output/trap/anonIndexer.js.trap index 6f75d1228b72..c26879b64993 100644 --- a/javascript/extractor/tests/flow/output/trap/anonIndexer.js.trap +++ b/javascript/extractor/tests/flow/output/trap/anonIndexer.js.trap @@ -85,14 +85,16 @@ toplevels(#20001,0) #20030=@"loc,{#10000},1,1,2,0" locations_default(#20030,#10000,1,1,2,0) hasLocation(#20001,#20030) -#20031=* -entry_cfg_node(#20031,#20001) -#20032=@"loc,{#10000},1,1,1,0" -locations_default(#20032,#10000,1,1,1,0) -hasLocation(#20031,#20032) -#20033=* -exit_cfg_node(#20033,#20001) -hasLocation(#20033,#20029) -successor(#20031,#20033) +#20031=@"var;{this};{#20000}" +variables(#20031,"this",#20000) +#20032=* +entry_cfg_node(#20032,#20001) +#20033=@"loc,{#10000},1,1,1,0" +locations_default(#20033,#10000,1,1,1,0) +hasLocation(#20032,#20033) +#20034=* +exit_cfg_node(#20034,#20001) +hasLocation(#20034,#20029) +successor(#20032,#20034) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/arbitaryModuleSpecifier.js.trap b/javascript/extractor/tests/flow/output/trap/arbitaryModuleSpecifier.js.trap index 50ec6a88c657..03bf7785bf51 100644 --- a/javascript/extractor/tests/flow/output/trap/arbitaryModuleSpecifier.js.trap +++ b/javascript/extractor/tests/flow/output/trap/arbitaryModuleSpecifier.js.trap @@ -81,63 +81,65 @@ local_namespace_names(#20026,"foo",#20023) variables(#20024,"foo",#20023) local_type_names(#20025,"foo",#20023) local_namespace_names(#20026,"foo",#20023) -#20027=* -stmts(#20027,27,#20001,0,"import ... ""foo"";") -#20028=@"loc,{#10000},1,1,1,28" -locations_default(#20028,#10000,1,1,1,28) -hasLocation(#20027,#20028) -stmt_containers(#20027,#20001) -#20029=* -exprs(#20029,4,#20027,-1,"""foo""") -hasLocation(#20029,#20017) -enclosing_stmt(#20029,#20027) -expr_containers(#20029,#20001) -literals("foo","""foo""",#20029) +#20027=@"var;{this};{#20023}" +variables(#20027,"this",#20023) +#20028=* +stmts(#20028,27,#20001,0,"import ... ""foo"";") +#20029=@"loc,{#10000},1,1,1,28" +locations_default(#20029,#10000,1,1,1,28) +hasLocation(#20028,#20029) +stmt_containers(#20028,#20001) #20030=* -regexpterm(#20030,14,#20029,0,"foo") -#20031=@"loc,{#10000},1,24,1,26" -locations_default(#20031,#10000,1,24,1,26) -hasLocation(#20030,#20031) -regexp_const_value(#20030,"foo") -#20032=* -exprs(#20032,83,#20027,0,"""foo""") -hasLocation(#20032,#20011) -enclosing_stmt(#20032,#20027) -expr_containers(#20032,#20001) +exprs(#20030,4,#20028,-1,"""foo""") +hasLocation(#20030,#20017) +enclosing_stmt(#20030,#20028) +expr_containers(#20030,#20001) +literals("foo","""foo""",#20030) +#20031=* +regexpterm(#20031,14,#20030,0,"foo") +#20032=@"loc,{#10000},1,24,1,26" +locations_default(#20032,#10000,1,24,1,26) +hasLocation(#20031,#20032) +regexp_const_value(#20031,"foo") #20033=* -exprs(#20033,0,#20032,0,"""foo""") +exprs(#20033,83,#20028,0,"""foo""") hasLocation(#20033,#20011) -enclosing_stmt(#20033,#20027) +enclosing_stmt(#20033,#20028) expr_containers(#20033,#20001) -literals("foo","foo",#20033) #20034=* -exprs(#20034,78,#20032,1,"""foo""") +exprs(#20034,0,#20033,0,"""foo""") hasLocation(#20034,#20011) -enclosing_stmt(#20034,#20027) +enclosing_stmt(#20034,#20028) expr_containers(#20034,#20001) literals("foo","foo",#20034) -decl(#20034,#20024) -typedecl(#20034,#20025) -namespacedecl(#20034,#20026) #20035=* -entry_cfg_node(#20035,#20001) -#20036=@"loc,{#10000},1,1,1,0" -locations_default(#20036,#10000,1,1,1,0) -hasLocation(#20035,#20036) -#20037=* -exit_cfg_node(#20037,#20001) -hasLocation(#20037,#20021) -successor(#20027,#20037) -successor(#20032,#20027) -successor(#20035,#20032) +exprs(#20035,78,#20033,1,"""foo""") +hasLocation(#20035,#20011) +enclosing_stmt(#20035,#20028) +expr_containers(#20035,#20001) +literals("foo","foo",#20035) +decl(#20035,#20024) +typedecl(#20035,#20025) +namespacedecl(#20035,#20026) +#20036=* +entry_cfg_node(#20036,#20001) +#20037=@"loc,{#10000},1,1,1,0" +locations_default(#20037,#10000,1,1,1,0) +hasLocation(#20036,#20037) #20038=* -js_parse_errors(#20038,#20001,"Error: Unexpected string","import { ""foo"" } from ""foo""; // syntax-error, but it shouldn't crash the extractor -") -hasLocation(#20038,#20013) +exit_cfg_node(#20038,#20001) +hasLocation(#20038,#20021) +successor(#20028,#20038) +successor(#20033,#20028) +successor(#20036,#20033) #20039=* -lines(#20039,#20001,"import { ""foo"" } from ""foo""; // syntax-error, but it shouldn't crash the extractor"," +js_parse_errors(#20039,#20001,"Error: Unexpected string","import { ""foo"" } from ""foo""; // syntax-error, but it shouldn't crash the extractor +") +hasLocation(#20039,#20013) +#20040=* +lines(#20040,#20001,"import { ""foo"" } from ""foo""; // syntax-error, but it shouldn't crash the extractor"," ") -hasLocation(#20039,#20005) +hasLocation(#20040,#20005) numlines(#20001,1,0,0) numlines(#10000,1,1,1) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/array-types.js.trap b/javascript/extractor/tests/flow/output/trap/array-types.js.trap index de8a4aa77d97..0d92ed3735b1 100644 --- a/javascript/extractor/tests/flow/output/trap/array-types.js.trap +++ b/javascript/extractor/tests/flow/output/trap/array-types.js.trap @@ -285,204 +285,214 @@ locations_default(#20108,#10000,1,1,5,0) hasLocation(#20001,#20108) #20109=@"var;{f};{#20000}" variables(#20109,"f",#20000) -#20110=* -stmts(#20110,17,#20001,0,"function f(p: T) {}") -hasLocation(#20110,#20003) -stmt_containers(#20110,#20001) +#20110=@"var;{this};{#20000}" +variables(#20110,"this",#20000) #20111=* -exprs(#20111,78,#20110,-1,"f") -hasLocation(#20111,#20013) -expr_containers(#20111,#20110) -literals("f","f",#20111) -decl(#20111,#20109) +stmts(#20111,17,#20001,0,"function f(p: T) {}") +hasLocation(#20111,#20003) +stmt_containers(#20111,#20001) #20112=* -scopes(#20112,1) -scopenodes(#20110,#20112) -scopenesting(#20112,#20000) -#20113=@"var;{p};{#20112}" -variables(#20113,"p",#20112) -#20114=* -exprs(#20114,78,#20110,0,"p: T") -#20115=@"loc,{#10000},1,12,1,15" -locations_default(#20115,#10000,1,12,1,15) -hasLocation(#20114,#20115) -expr_containers(#20114,#20110) -literals("p","p",#20114) -decl(#20114,#20113) -#20116=@"var;{arguments};{#20112}" -variables(#20116,"arguments",#20112) -is_arguments_object(#20116) -#20117=* -stmts(#20117,1,#20110,-2,"{}") -#20118=@"loc,{#10000},1,18,1,19" -locations_default(#20118,#10000,1,18,1,19) -hasLocation(#20117,#20118) -stmt_containers(#20117,#20110) +exprs(#20112,78,#20111,-1,"f") +hasLocation(#20112,#20013) +expr_containers(#20112,#20111) +literals("f","f",#20112) +decl(#20112,#20109) +#20113=* +scopes(#20113,1) +scopenodes(#20111,#20113) +scopenesting(#20113,#20000) +#20114=@"var;{this};{#20113}" +variables(#20114,"this",#20113) +#20115=@"var;{p};{#20113}" +variables(#20115,"p",#20113) +#20116=* +exprs(#20116,78,#20111,0,"p: T") +#20117=@"loc,{#10000},1,12,1,15" +locations_default(#20117,#10000,1,12,1,15) +hasLocation(#20116,#20117) +expr_containers(#20116,#20111) +literals("p","p",#20116) +decl(#20116,#20115) +#20118=@"var;{arguments};{#20113}" +variables(#20118,"arguments",#20113) +is_arguments_object(#20118) #20119=* -stmts(#20119,17,#20001,1,"functio ... T[]) {}") -hasLocation(#20119,#20005) -stmt_containers(#20119,#20001) -#20120=* -exprs(#20120,78,#20119,-1,"f") -hasLocation(#20120,#20031) -expr_containers(#20120,#20119) -literals("f","f",#20120) -decl(#20120,#20109) +stmts(#20119,1,#20111,-2,"{}") +#20120=@"loc,{#10000},1,18,1,19" +locations_default(#20120,#10000,1,18,1,19) +hasLocation(#20119,#20120) +stmt_containers(#20119,#20111) #20121=* -scopes(#20121,1) -scopenodes(#20119,#20121) -scopenesting(#20121,#20000) -#20122=@"var;{p};{#20121}" -variables(#20122,"p",#20121) +stmts(#20121,17,#20001,1,"functio ... T[]) {}") +hasLocation(#20121,#20005) +stmt_containers(#20121,#20001) +#20122=* +exprs(#20122,78,#20121,-1,"f") +hasLocation(#20122,#20031) +expr_containers(#20122,#20121) +literals("f","f",#20122) +decl(#20122,#20109) #20123=* -exprs(#20123,78,#20119,0,"p: T[]") -#20124=@"loc,{#10000},2,12,2,17" -locations_default(#20124,#10000,2,12,2,17) -hasLocation(#20123,#20124) -expr_containers(#20123,#20119) -literals("p","p",#20123) -decl(#20123,#20122) -#20125=@"var;{arguments};{#20121}" -variables(#20125,"arguments",#20121) -is_arguments_object(#20125) +scopes(#20123,1) +scopenodes(#20121,#20123) +scopenesting(#20123,#20000) +#20124=@"var;{this};{#20123}" +variables(#20124,"this",#20123) +#20125=@"var;{p};{#20123}" +variables(#20125,"p",#20123) #20126=* -stmts(#20126,1,#20119,-2,"{}") -#20127=@"loc,{#10000},2,20,2,21" -locations_default(#20127,#10000,2,20,2,21) +exprs(#20126,78,#20121,0,"p: T[]") +#20127=@"loc,{#10000},2,12,2,17" +locations_default(#20127,#10000,2,12,2,17) hasLocation(#20126,#20127) -stmt_containers(#20126,#20119) -#20128=* -stmts(#20128,17,#20001,2,"functio ... ][]) {}") -hasLocation(#20128,#20007) -stmt_containers(#20128,#20001) +expr_containers(#20126,#20121) +literals("p","p",#20126) +decl(#20126,#20125) +#20128=@"var;{arguments};{#20123}" +variables(#20128,"arguments",#20123) +is_arguments_object(#20128) #20129=* -exprs(#20129,78,#20128,-1,"f") -hasLocation(#20129,#20053) -expr_containers(#20129,#20128) -literals("f","f",#20129) -decl(#20129,#20109) -#20130=* -scopes(#20130,1) -scopenodes(#20128,#20130) -scopenesting(#20130,#20000) -#20131=@"var;{p};{#20130}" -variables(#20131,"p",#20130) +stmts(#20129,1,#20121,-2,"{}") +#20130=@"loc,{#10000},2,20,2,21" +locations_default(#20130,#10000,2,20,2,21) +hasLocation(#20129,#20130) +stmt_containers(#20129,#20121) +#20131=* +stmts(#20131,17,#20001,2,"functio ... ][]) {}") +hasLocation(#20131,#20007) +stmt_containers(#20131,#20001) #20132=* -exprs(#20132,78,#20128,0,"p: T[][]") -#20133=@"loc,{#10000},3,12,3,19" -locations_default(#20133,#10000,3,12,3,19) -hasLocation(#20132,#20133) -expr_containers(#20132,#20128) -literals("p","p",#20132) -decl(#20132,#20131) -#20134=@"var;{arguments};{#20130}" -variables(#20134,"arguments",#20130) -is_arguments_object(#20134) -#20135=* -stmts(#20135,1,#20128,-2,"{}") -#20136=@"loc,{#10000},3,22,3,23" -locations_default(#20136,#10000,3,22,3,23) -hasLocation(#20135,#20136) -stmt_containers(#20135,#20128) -#20137=* -stmts(#20137,17,#20001,3,"functio ... ][]) {}") -hasLocation(#20137,#20009) -stmt_containers(#20137,#20001) -#20138=* -exprs(#20138,78,#20137,-1,"f") -hasLocation(#20138,#20079) -expr_containers(#20138,#20137) -literals("f","f",#20138) -decl(#20138,#20109) +exprs(#20132,78,#20131,-1,"f") +hasLocation(#20132,#20053) +expr_containers(#20132,#20131) +literals("f","f",#20132) +decl(#20132,#20109) +#20133=* +scopes(#20133,1) +scopenodes(#20131,#20133) +scopenesting(#20133,#20000) +#20134=@"var;{this};{#20133}" +variables(#20134,"this",#20133) +#20135=@"var;{p};{#20133}" +variables(#20135,"p",#20133) +#20136=* +exprs(#20136,78,#20131,0,"p: T[][]") +#20137=@"loc,{#10000},3,12,3,19" +locations_default(#20137,#10000,3,12,3,19) +hasLocation(#20136,#20137) +expr_containers(#20136,#20131) +literals("p","p",#20136) +decl(#20136,#20135) +#20138=@"var;{arguments};{#20133}" +variables(#20138,"arguments",#20133) +is_arguments_object(#20138) #20139=* -scopes(#20139,1) -scopenodes(#20137,#20139) -scopenesting(#20139,#20000) -#20140=@"var;{p};{#20139}" -variables(#20140,"p",#20139) +stmts(#20139,1,#20131,-2,"{}") +#20140=@"loc,{#10000},3,22,3,23" +locations_default(#20140,#10000,3,22,3,23) +hasLocation(#20139,#20140) +stmt_containers(#20139,#20131) #20141=* -exprs(#20141,78,#20137,0,"p: T[][][]") -#20142=@"loc,{#10000},4,12,4,21" -locations_default(#20142,#10000,4,12,4,21) -hasLocation(#20141,#20142) -expr_containers(#20141,#20137) -literals("p","p",#20141) -decl(#20141,#20140) -#20143=@"var;{arguments};{#20139}" -variables(#20143,"arguments",#20139) -is_arguments_object(#20143) -#20144=* -stmts(#20144,1,#20137,-2,"{}") -#20145=@"loc,{#10000},4,24,4,25" -locations_default(#20145,#10000,4,24,4,25) -hasLocation(#20144,#20145) -stmt_containers(#20144,#20137) +stmts(#20141,17,#20001,3,"functio ... ][]) {}") +hasLocation(#20141,#20009) +stmt_containers(#20141,#20001) +#20142=* +exprs(#20142,78,#20141,-1,"f") +hasLocation(#20142,#20079) +expr_containers(#20142,#20141) +literals("f","f",#20142) +decl(#20142,#20109) +#20143=* +scopes(#20143,1) +scopenodes(#20141,#20143) +scopenesting(#20143,#20000) +#20144=@"var;{this};{#20143}" +variables(#20144,"this",#20143) +#20145=@"var;{p};{#20143}" +variables(#20145,"p",#20143) #20146=* -entry_cfg_node(#20146,#20001) -#20147=@"loc,{#10000},1,1,1,0" -locations_default(#20147,#10000,1,1,1,0) +exprs(#20146,78,#20141,0,"p: T[][][]") +#20147=@"loc,{#10000},4,12,4,21" +locations_default(#20147,#10000,4,12,4,21) hasLocation(#20146,#20147) -#20148=* -exit_cfg_node(#20148,#20001) -hasLocation(#20148,#20107) -successor(#20137,#20148) +expr_containers(#20146,#20141) +literals("p","p",#20146) +decl(#20146,#20145) +#20148=@"var;{arguments};{#20143}" +variables(#20148,"arguments",#20143) +is_arguments_object(#20148) #20149=* -entry_cfg_node(#20149,#20137) -#20150=@"loc,{#10000},4,1,4,0" -locations_default(#20150,#10000,4,1,4,0) +stmts(#20149,1,#20141,-2,"{}") +#20150=@"loc,{#10000},4,24,4,25" +locations_default(#20150,#10000,4,24,4,25) hasLocation(#20149,#20150) +stmt_containers(#20149,#20141) #20151=* -exit_cfg_node(#20151,#20137) -#20152=@"loc,{#10000},4,26,4,25" -locations_default(#20152,#10000,4,26,4,25) +entry_cfg_node(#20151,#20001) +#20152=@"loc,{#10000},1,1,1,0" +locations_default(#20152,#10000,1,1,1,0) hasLocation(#20151,#20152) -successor(#20144,#20151) -successor(#20141,#20144) -successor(#20149,#20141) -successor(#20128,#20137) #20153=* -entry_cfg_node(#20153,#20128) -#20154=@"loc,{#10000},3,1,3,0" -locations_default(#20154,#10000,3,1,3,0) -hasLocation(#20153,#20154) -#20155=* -exit_cfg_node(#20155,#20128) -#20156=@"loc,{#10000},3,24,3,23" -locations_default(#20156,#10000,3,24,3,23) -hasLocation(#20155,#20156) -successor(#20135,#20155) -successor(#20132,#20135) -successor(#20153,#20132) -successor(#20119,#20128) -#20157=* -entry_cfg_node(#20157,#20119) -#20158=@"loc,{#10000},2,1,2,0" -locations_default(#20158,#10000,2,1,2,0) -hasLocation(#20157,#20158) -#20159=* -exit_cfg_node(#20159,#20119) -#20160=@"loc,{#10000},2,22,2,21" -locations_default(#20160,#10000,2,22,2,21) -hasLocation(#20159,#20160) -successor(#20126,#20159) -successor(#20123,#20126) -successor(#20157,#20123) -successor(#20110,#20119) -#20161=* -entry_cfg_node(#20161,#20110) -hasLocation(#20161,#20147) +exit_cfg_node(#20153,#20001) +hasLocation(#20153,#20107) +successor(#20141,#20153) +#20154=* +entry_cfg_node(#20154,#20141) +#20155=@"loc,{#10000},4,1,4,0" +locations_default(#20155,#10000,4,1,4,0) +hasLocation(#20154,#20155) +#20156=* +exit_cfg_node(#20156,#20141) +#20157=@"loc,{#10000},4,26,4,25" +locations_default(#20157,#10000,4,26,4,25) +hasLocation(#20156,#20157) +successor(#20149,#20156) +successor(#20146,#20149) +successor(#20154,#20146) +successor(#20131,#20141) +#20158=* +entry_cfg_node(#20158,#20131) +#20159=@"loc,{#10000},3,1,3,0" +locations_default(#20159,#10000,3,1,3,0) +hasLocation(#20158,#20159) +#20160=* +exit_cfg_node(#20160,#20131) +#20161=@"loc,{#10000},3,24,3,23" +locations_default(#20161,#10000,3,24,3,23) +hasLocation(#20160,#20161) +successor(#20139,#20160) +successor(#20136,#20139) +successor(#20158,#20136) +successor(#20121,#20131) #20162=* -exit_cfg_node(#20162,#20110) -#20163=@"loc,{#10000},1,20,1,19" -locations_default(#20163,#10000,1,20,1,19) +entry_cfg_node(#20162,#20121) +#20163=@"loc,{#10000},2,1,2,0" +locations_default(#20163,#10000,2,1,2,0) hasLocation(#20162,#20163) -successor(#20117,#20162) -successor(#20114,#20117) -successor(#20161,#20114) -successor(#20138,#20110) -successor(#20129,#20138) -successor(#20120,#20129) -successor(#20111,#20120) -successor(#20146,#20111) +#20164=* +exit_cfg_node(#20164,#20121) +#20165=@"loc,{#10000},2,22,2,21" +locations_default(#20165,#10000,2,22,2,21) +hasLocation(#20164,#20165) +successor(#20129,#20164) +successor(#20126,#20129) +successor(#20162,#20126) +successor(#20111,#20121) +#20166=* +entry_cfg_node(#20166,#20111) +hasLocation(#20166,#20152) +#20167=* +exit_cfg_node(#20167,#20111) +#20168=@"loc,{#10000},1,20,1,19" +locations_default(#20168,#10000,1,20,1,19) +hasLocation(#20167,#20168) +successor(#20119,#20167) +successor(#20116,#20119) +successor(#20166,#20116) +successor(#20142,#20111) +successor(#20132,#20142) +successor(#20122,#20132) +successor(#20112,#20122) +successor(#20151,#20112) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/async.js.trap b/javascript/extractor/tests/flow/output/trap/async.js.trap index c1a1fbdaa7fa..08066c0b6476 100644 --- a/javascript/extractor/tests/flow/output/trap/async.js.trap +++ b/javascript/extractor/tests/flow/output/trap/async.js.trap @@ -112,82 +112,84 @@ locations_default(#20040,#10000,1,1,2,0) hasLocation(#20001,#20040) #20041=@"var;{f};{#20000}" variables(#20041,"f",#20000) -#20042=* -stmts(#20042,23,#20001,0,"let f = ... foo();") -hasLocation(#20042,#20003) -stmt_containers(#20042,#20001) +#20042=@"var;{this};{#20000}" +variables(#20042,"this",#20000) #20043=* -exprs(#20043,64,#20042,0,"f = asy ... t foo()") -#20044=@"loc,{#10000},1,5,1,48" -locations_default(#20044,#10000,1,5,1,48) -hasLocation(#20043,#20044) -enclosing_stmt(#20043,#20042) -expr_containers(#20043,#20001) -#20045=* -exprs(#20045,78,#20043,0,"f") -hasLocation(#20045,#20007) -enclosing_stmt(#20045,#20042) -expr_containers(#20045,#20001) -literals("f","f",#20045) -decl(#20045,#20041) +stmts(#20043,23,#20001,0,"let f = ... foo();") +hasLocation(#20043,#20003) +stmt_containers(#20043,#20001) +#20044=* +exprs(#20044,64,#20043,0,"f = asy ... t foo()") +#20045=@"loc,{#10000},1,5,1,48" +locations_default(#20045,#10000,1,5,1,48) +hasLocation(#20044,#20045) +enclosing_stmt(#20044,#20043) +expr_containers(#20044,#20001) #20046=* -exprs(#20046,65,#20043,1,"async() ... t foo()") -#20047=@"loc,{#10000},1,9,1,48" -locations_default(#20047,#10000,1,9,1,48) -hasLocation(#20046,#20047) -enclosing_stmt(#20046,#20042) +exprs(#20046,78,#20044,0,"f") +hasLocation(#20046,#20007) +enclosing_stmt(#20046,#20043) expr_containers(#20046,#20001) -#20048=* -scopes(#20048,1) -scopenodes(#20046,#20048) -scopenesting(#20048,#20000) -is_async(#20046) +literals("f","f",#20046) +decl(#20046,#20041) +#20047=* +exprs(#20047,65,#20044,1,"async() ... t foo()") +#20048=@"loc,{#10000},1,9,1,48" +locations_default(#20048,#10000,1,9,1,48) +hasLocation(#20047,#20048) +enclosing_stmt(#20047,#20043) +expr_containers(#20047,#20001) #20049=* -exprs(#20049,92,#20046,-2,"await foo()") -#20050=@"loc,{#10000},1,38,1,48" -locations_default(#20050,#10000,1,38,1,48) -hasLocation(#20049,#20050) -expr_containers(#20049,#20046) -#20051=* -exprs(#20051,13,#20049,0,"foo()") -#20052=@"loc,{#10000},1,44,1,48" -locations_default(#20052,#10000,1,44,1,48) -hasLocation(#20051,#20052) -expr_containers(#20051,#20046) -#20053=* -exprs(#20053,79,#20051,-1,"foo") -hasLocation(#20053,#20031) -expr_containers(#20053,#20046) -literals("foo","foo",#20053) -#20054=@"var;{foo};{#20000}" -variables(#20054,"foo",#20000) -bind(#20053,#20054) -#20055=* -entry_cfg_node(#20055,#20001) -#20056=@"loc,{#10000},1,1,1,0" -locations_default(#20056,#10000,1,1,1,0) -hasLocation(#20055,#20056) -#20057=* -exit_cfg_node(#20057,#20001) -hasLocation(#20057,#20039) -successor(#20042,#20045) -successor(#20046,#20043) +scopes(#20049,1) +scopenodes(#20047,#20049) +scopenesting(#20049,#20000) +is_async(#20047) +#20050=* +exprs(#20050,92,#20047,-2,"await foo()") +#20051=@"loc,{#10000},1,38,1,48" +locations_default(#20051,#10000,1,38,1,48) +hasLocation(#20050,#20051) +expr_containers(#20050,#20047) +#20052=* +exprs(#20052,13,#20050,0,"foo()") +#20053=@"loc,{#10000},1,44,1,48" +locations_default(#20053,#10000,1,44,1,48) +hasLocation(#20052,#20053) +expr_containers(#20052,#20047) +#20054=* +exprs(#20054,79,#20052,-1,"foo") +hasLocation(#20054,#20031) +expr_containers(#20054,#20047) +literals("foo","foo",#20054) +#20055=@"var;{foo};{#20000}" +variables(#20055,"foo",#20000) +bind(#20054,#20055) +#20056=* +entry_cfg_node(#20056,#20001) +#20057=@"loc,{#10000},1,1,1,0" +locations_default(#20057,#10000,1,1,1,0) +hasLocation(#20056,#20057) #20058=* -entry_cfg_node(#20058,#20046) -#20059=@"loc,{#10000},1,9,1,8" -locations_default(#20059,#10000,1,9,1,8) -hasLocation(#20058,#20059) -#20060=* -exit_cfg_node(#20060,#20046) -#20061=@"loc,{#10000},1,49,1,48" -locations_default(#20061,#10000,1,49,1,48) -hasLocation(#20060,#20061) -successor(#20053,#20051) -successor(#20051,#20049) -successor(#20049,#20060) -successor(#20058,#20053) -successor(#20045,#20046) -successor(#20043,#20057) -successor(#20055,#20042) +exit_cfg_node(#20058,#20001) +hasLocation(#20058,#20039) +successor(#20043,#20046) +successor(#20047,#20044) +#20059=* +entry_cfg_node(#20059,#20047) +#20060=@"loc,{#10000},1,9,1,8" +locations_default(#20060,#10000,1,9,1,8) +hasLocation(#20059,#20060) +#20061=* +exit_cfg_node(#20061,#20047) +#20062=@"loc,{#10000},1,49,1,48" +locations_default(#20062,#10000,1,49,1,48) +hasLocation(#20061,#20062) +successor(#20054,#20052) +successor(#20052,#20050) +successor(#20050,#20061) +successor(#20059,#20054) +successor(#20046,#20047) +successor(#20044,#20058) +successor(#20056,#20043) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/atAtIteratorProp.js.trap b/javascript/extractor/tests/flow/output/trap/atAtIteratorProp.js.trap index 3e4fbaa2bece..ce1ef10e5ad7 100644 --- a/javascript/extractor/tests/flow/output/trap/atAtIteratorProp.js.trap +++ b/javascript/extractor/tests/flow/output/trap/atAtIteratorProp.js.trap @@ -95,14 +95,16 @@ toplevels(#20001,0) #20033=@"loc,{#10000},1,1,3,1" locations_default(#20033,#10000,1,1,3,1) hasLocation(#20001,#20033) -#20034=* -entry_cfg_node(#20034,#20001) -#20035=@"loc,{#10000},1,1,1,0" -locations_default(#20035,#10000,1,1,1,0) -hasLocation(#20034,#20035) -#20036=* -exit_cfg_node(#20036,#20001) -hasLocation(#20036,#20032) -successor(#20034,#20036) +#20034=@"var;{this};{#20000}" +variables(#20034,"this",#20000) +#20035=* +entry_cfg_node(#20035,#20001) +#20036=@"loc,{#10000},1,1,1,0" +locations_default(#20036,#10000,1,1,1,0) +hasLocation(#20035,#20036) +#20037=* +exit_cfg_node(#20037,#20001) +hasLocation(#20037,#20032) +successor(#20035,#20037) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/complexParamTypes.js.trap b/javascript/extractor/tests/flow/output/trap/complexParamTypes.js.trap index d6b8e03674e1..963d98a35812 100644 --- a/javascript/extractor/tests/flow/output/trap/complexParamTypes.js.trap +++ b/javascript/extractor/tests/flow/output/trap/complexParamTypes.js.trap @@ -182,14 +182,16 @@ locations_default(#20069,#10000,1,70,1,69) hasLocation(#20068,#20069) toplevels(#20001,0) hasLocation(#20001,#20003) -#20070=* -entry_cfg_node(#20070,#20001) -#20071=@"loc,{#10000},1,1,1,0" -locations_default(#20071,#10000,1,1,1,0) -hasLocation(#20070,#20071) -#20072=* -exit_cfg_node(#20072,#20001) -hasLocation(#20072,#20069) -successor(#20070,#20072) +#20070=@"var;{this};{#20000}" +variables(#20070,"this",#20000) +#20071=* +entry_cfg_node(#20071,#20001) +#20072=@"loc,{#10000},1,1,1,0" +locations_default(#20072,#10000,1,1,1,0) +hasLocation(#20071,#20072) +#20073=* +exit_cfg_node(#20073,#20001) +hasLocation(#20073,#20069) +successor(#20071,#20073) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/complexParamTypes2.js.trap b/javascript/extractor/tests/flow/output/trap/complexParamTypes2.js.trap index e03ae461c44b..123e531b5637 100644 --- a/javascript/extractor/tests/flow/output/trap/complexParamTypes2.js.trap +++ b/javascript/extractor/tests/flow/output/trap/complexParamTypes2.js.trap @@ -135,14 +135,16 @@ toplevels(#20001,0) #20049=@"loc,{#10000},1,1,3,1" locations_default(#20049,#10000,1,1,3,1) hasLocation(#20001,#20049) -#20050=* -entry_cfg_node(#20050,#20001) -#20051=@"loc,{#10000},1,1,1,0" -locations_default(#20051,#10000,1,1,1,0) -hasLocation(#20050,#20051) -#20052=* -exit_cfg_node(#20052,#20001) -hasLocation(#20052,#20048) -successor(#20050,#20052) +#20050=@"var;{this};{#20000}" +variables(#20050,"this",#20000) +#20051=* +entry_cfg_node(#20051,#20001) +#20052=@"loc,{#10000},1,1,1,0" +locations_default(#20052,#10000,1,1,1,0) +hasLocation(#20051,#20052) +#20053=* +exit_cfg_node(#20053,#20001) +hasLocation(#20053,#20048) +successor(#20051,#20053) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/declareExport.js.trap b/javascript/extractor/tests/flow/output/trap/declareExport.js.trap index 5a01cf475c0b..fda3af2d12ba 100644 --- a/javascript/extractor/tests/flow/output/trap/declareExport.js.trap +++ b/javascript/extractor/tests/flow/output/trap/declareExport.js.trap @@ -238,14 +238,16 @@ toplevels(#20001,0) #20090=@"loc,{#10000},1,1,5,58" locations_default(#20090,#10000,1,1,5,58) hasLocation(#20001,#20090) -#20091=* -entry_cfg_node(#20091,#20001) -#20092=@"loc,{#10000},1,1,1,0" -locations_default(#20092,#10000,1,1,1,0) -hasLocation(#20091,#20092) -#20093=* -exit_cfg_node(#20093,#20001) -hasLocation(#20093,#20089) -successor(#20091,#20093) +#20091=@"var;{this};{#20000}" +variables(#20091,"this",#20000) +#20092=* +entry_cfg_node(#20092,#20001) +#20093=@"loc,{#10000},1,1,1,0" +locations_default(#20093,#10000,1,1,1,0) +hasLocation(#20092,#20093) +#20094=* +exit_cfg_node(#20094,#20001) +hasLocation(#20094,#20089) +successor(#20092,#20094) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/declareModuleExports.js.trap b/javascript/extractor/tests/flow/output/trap/declareModuleExports.js.trap index b65fd64d9762..56c2b8e3874a 100644 --- a/javascript/extractor/tests/flow/output/trap/declareModuleExports.js.trap +++ b/javascript/extractor/tests/flow/output/trap/declareModuleExports.js.trap @@ -102,14 +102,16 @@ toplevels(#20001,0) #20035=@"loc,{#10000},1,1,4,1" locations_default(#20035,#10000,1,1,4,1) hasLocation(#20001,#20035) -#20036=* -entry_cfg_node(#20036,#20001) -#20037=@"loc,{#10000},1,1,1,0" -locations_default(#20037,#10000,1,1,1,0) -hasLocation(#20036,#20037) -#20038=* -exit_cfg_node(#20038,#20001) -hasLocation(#20038,#20034) -successor(#20036,#20038) +#20036=@"var;{this};{#20000}" +variables(#20036,"this",#20000) +#20037=* +entry_cfg_node(#20037,#20001) +#20038=@"loc,{#10000},1,1,1,0" +locations_default(#20038,#10000,1,1,1,0) +hasLocation(#20037,#20038) +#20039=* +exit_cfg_node(#20039,#20001) +hasLocation(#20039,#20034) +successor(#20037,#20039) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/declared-module-imports.js.trap b/javascript/extractor/tests/flow/output/trap/declared-module-imports.js.trap index 1588e279e76c..26add106f4f2 100644 --- a/javascript/extractor/tests/flow/output/trap/declared-module-imports.js.trap +++ b/javascript/extractor/tests/flow/output/trap/declared-module-imports.js.trap @@ -128,14 +128,16 @@ toplevels(#20001,0) #20045=@"loc,{#10000},1,1,5,0" locations_default(#20045,#10000,1,1,5,0) hasLocation(#20001,#20045) -#20046=* -entry_cfg_node(#20046,#20001) -#20047=@"loc,{#10000},1,1,1,0" -locations_default(#20047,#10000,1,1,1,0) -hasLocation(#20046,#20047) -#20048=* -exit_cfg_node(#20048,#20001) -hasLocation(#20048,#20044) -successor(#20046,#20048) +#20046=@"var;{this};{#20000}" +variables(#20046,"this",#20000) +#20047=* +entry_cfg_node(#20047,#20001) +#20048=@"loc,{#10000},1,1,1,0" +locations_default(#20048,#10000,1,1,1,0) +hasLocation(#20047,#20048) +#20049=* +exit_cfg_node(#20049,#20001) +hasLocation(#20049,#20044) +successor(#20047,#20049) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/explicitTypeParameters.js.trap b/javascript/extractor/tests/flow/output/trap/explicitTypeParameters.js.trap index eeeaf349ea49..73ced595abc3 100644 --- a/javascript/extractor/tests/flow/output/trap/explicitTypeParameters.js.trap +++ b/javascript/extractor/tests/flow/output/trap/explicitTypeParameters.js.trap @@ -445,242 +445,246 @@ locations_default(#20167,#10000,1,1,12,5) hasLocation(#20001,#20167) #20168=@"var;{f2};{#20000}" variables(#20168,"f2",#20000) -#20169=* -stmts(#20169,2,#20001,0,"new K1();") -hasLocation(#20169,#20003) -stmt_containers(#20169,#20001) +#20169=@"var;{this};{#20000}" +variables(#20169,"this",#20000) #20170=* -exprs(#20170,12,#20169,0,"new K1()") -#20171=@"loc,{#10000},1,1,1,12" -locations_default(#20171,#10000,1,1,1,12) -hasLocation(#20170,#20171) -enclosing_stmt(#20170,#20169) -expr_containers(#20170,#20001) -#20172=* -exprs(#20172,79,#20170,-1,"K1") -hasLocation(#20172,#20029) -enclosing_stmt(#20172,#20169) -expr_containers(#20172,#20001) -literals("K1","K1",#20172) -#20173=@"var;{K1};{#20000}" -variables(#20173,"K1",#20000) -bind(#20172,#20173) -#20174=* -stmts(#20174,2,#20001,1,"f1();") -hasLocation(#20174,#20005) -stmt_containers(#20174,#20001) +stmts(#20170,2,#20001,0,"new K1();") +hasLocation(#20170,#20003) +stmt_containers(#20170,#20001) +#20171=* +exprs(#20171,12,#20170,0,"new K1()") +#20172=@"loc,{#10000},1,1,1,12" +locations_default(#20172,#10000,1,1,1,12) +hasLocation(#20171,#20172) +enclosing_stmt(#20171,#20170) +expr_containers(#20171,#20001) +#20173=* +exprs(#20173,79,#20171,-1,"K1") +hasLocation(#20173,#20029) +enclosing_stmt(#20173,#20170) +expr_containers(#20173,#20001) +literals("K1","K1",#20173) +#20174=@"var;{K1};{#20000}" +variables(#20174,"K1",#20000) +bind(#20173,#20174) #20175=* -exprs(#20175,13,#20174,0,"f1()") -#20176=@"loc,{#10000},2,1,2,8" -locations_default(#20176,#10000,2,1,2,8) -hasLocation(#20175,#20176) -enclosing_stmt(#20175,#20174) -expr_containers(#20175,#20001) -#20177=* -exprs(#20177,79,#20175,-1,"f1") -hasLocation(#20177,#20043) -enclosing_stmt(#20177,#20174) -expr_containers(#20177,#20001) -literals("f1","f1",#20177) -#20178=@"var;{f1};{#20000}" -variables(#20178,"f1",#20000) -bind(#20177,#20178) -#20179=* -stmts(#20179,22,#20001,2,"const f ... >(x);\n}") -#20180=@"loc,{#10000},3,1,5,1" -locations_default(#20180,#10000,3,1,5,1) -hasLocation(#20179,#20180) -stmt_containers(#20179,#20001) -#20181=* -exprs(#20181,64,#20179,0,"f2 = fu ... >(x);\n}") -#20182=@"loc,{#10000},3,7,5,1" -locations_default(#20182,#10000,3,7,5,1) -hasLocation(#20181,#20182) -enclosing_stmt(#20181,#20179) -expr_containers(#20181,#20001) -#20183=* -exprs(#20183,78,#20181,0,"f2") -hasLocation(#20183,#20059) -enclosing_stmt(#20183,#20179) -expr_containers(#20183,#20001) -literals("f2","f2",#20183) -decl(#20183,#20168) +stmts(#20175,2,#20001,1,"f1();") +hasLocation(#20175,#20005) +stmt_containers(#20175,#20001) +#20176=* +exprs(#20176,13,#20175,0,"f1()") +#20177=@"loc,{#10000},2,1,2,8" +locations_default(#20177,#10000,2,1,2,8) +hasLocation(#20176,#20177) +enclosing_stmt(#20176,#20175) +expr_containers(#20176,#20001) +#20178=* +exprs(#20178,79,#20176,-1,"f1") +hasLocation(#20178,#20043) +enclosing_stmt(#20178,#20175) +expr_containers(#20178,#20001) +literals("f1","f1",#20178) +#20179=@"var;{f1};{#20000}" +variables(#20179,"f1",#20000) +bind(#20178,#20179) +#20180=* +stmts(#20180,22,#20001,2,"const f ... >(x);\n}") +#20181=@"loc,{#10000},3,1,5,1" +locations_default(#20181,#10000,3,1,5,1) +hasLocation(#20180,#20181) +stmt_containers(#20180,#20001) +#20182=* +exprs(#20182,64,#20180,0,"f2 = fu ... >(x);\n}") +#20183=@"loc,{#10000},3,7,5,1" +locations_default(#20183,#10000,3,7,5,1) +hasLocation(#20182,#20183) +enclosing_stmt(#20182,#20180) +expr_containers(#20182,#20001) #20184=* -exprs(#20184,9,#20181,1,"functio ... >(x);\n}") -#20185=@"loc,{#10000},3,12,5,1" -locations_default(#20185,#10000,3,12,5,1) -hasLocation(#20184,#20185) -enclosing_stmt(#20184,#20179) +exprs(#20184,78,#20182,0,"f2") +hasLocation(#20184,#20059) +enclosing_stmt(#20184,#20180) expr_containers(#20184,#20001) -#20186=* -scopes(#20186,1) -scopenodes(#20184,#20186) -scopenesting(#20186,#20000) -#20187=@"var;{arguments};{#20186}" -variables(#20187,"arguments",#20186) -is_arguments_object(#20187) -is_generator(#20184) -#20188=* -stmts(#20188,1,#20184,-2,"{\n yie ... >(x);\n}") -#20189=@"loc,{#10000},3,32,5,1" -locations_default(#20189,#10000,3,32,5,1) -hasLocation(#20188,#20189) -stmt_containers(#20188,#20184) +literals("f2","f2",#20184) +decl(#20184,#20168) +#20185=* +exprs(#20185,9,#20182,1,"functio ... >(x);\n}") +#20186=@"loc,{#10000},3,12,5,1" +locations_default(#20186,#10000,3,12,5,1) +hasLocation(#20185,#20186) +enclosing_stmt(#20185,#20180) +expr_containers(#20185,#20001) +#20187=* +scopes(#20187,1) +scopenodes(#20185,#20187) +scopenesting(#20187,#20000) +#20188=@"var;{this};{#20187}" +variables(#20188,"this",#20187) +#20189=@"var;{arguments};{#20187}" +variables(#20189,"arguments",#20187) +is_arguments_object(#20189) +is_generator(#20185) #20190=* -stmts(#20190,2,#20188,0,"yield* f3(x);") -#20191=@"loc,{#10000},4,3,4,19" -locations_default(#20191,#10000,4,3,4,19) +stmts(#20190,1,#20185,-2,"{\n yie ... >(x);\n}") +#20191=@"loc,{#10000},3,32,5,1" +locations_default(#20191,#10000,3,32,5,1) hasLocation(#20190,#20191) -stmt_containers(#20190,#20184) +stmt_containers(#20190,#20185) #20192=* -exprs(#20192,69,#20190,0,"yield* f3(x)") -#20193=@"loc,{#10000},4,3,4,18" -locations_default(#20193,#10000,4,3,4,18) +stmts(#20192,2,#20190,0,"yield* f3(x);") +#20193=@"loc,{#10000},4,3,4,19" +locations_default(#20193,#10000,4,3,4,19) hasLocation(#20192,#20193) -enclosing_stmt(#20192,#20190) -expr_containers(#20192,#20184) +stmt_containers(#20192,#20185) #20194=* -exprs(#20194,13,#20192,0,"f3(x)") -#20195=@"loc,{#10000},4,10,4,18" -locations_default(#20195,#10000,4,10,4,18) +exprs(#20194,69,#20192,0,"yield* f3(x)") +#20195=@"loc,{#10000},4,3,4,18" +locations_default(#20195,#10000,4,3,4,18) hasLocation(#20194,#20195) -enclosing_stmt(#20194,#20190) -expr_containers(#20194,#20184) +enclosing_stmt(#20194,#20192) +expr_containers(#20194,#20185) #20196=* -exprs(#20196,79,#20194,-1,"f3") -hasLocation(#20196,#20087) -enclosing_stmt(#20196,#20190) -expr_containers(#20196,#20184) -literals("f3","f3",#20196) -#20197=@"var;{f3};{#20000}" -variables(#20197,"f3",#20000) -bind(#20196,#20197) +exprs(#20196,13,#20194,0,"f3(x)") +#20197=@"loc,{#10000},4,10,4,18" +locations_default(#20197,#10000,4,10,4,18) +hasLocation(#20196,#20197) +enclosing_stmt(#20196,#20192) +expr_containers(#20196,#20185) #20198=* -exprs(#20198,79,#20194,0,"x") -hasLocation(#20198,#20097) -enclosing_stmt(#20198,#20190) -expr_containers(#20198,#20184) -literals("x","x",#20198) -#20199=@"var;{x};{#20000}" -variables(#20199,"x",#20000) +exprs(#20198,79,#20196,-1,"f3") +hasLocation(#20198,#20087) +enclosing_stmt(#20198,#20192) +expr_containers(#20198,#20185) +literals("f3","f3",#20198) +#20199=@"var;{f3};{#20000}" +variables(#20199,"f3",#20000) bind(#20198,#20199) -is_delegating(#20192) #20200=* -stmts(#20200,2,#20001,3,"f4(v1);") -hasLocation(#20200,#20013) -stmt_containers(#20200,#20001) -#20201=* -exprs(#20201,13,#20200,0,"f4(v1)") -#20202=@"loc,{#10000},6,1,6,10" -locations_default(#20202,#10000,6,1,6,10) -hasLocation(#20201,#20202) -enclosing_stmt(#20201,#20200) -expr_containers(#20201,#20001) +exprs(#20200,79,#20196,0,"x") +hasLocation(#20200,#20097) +enclosing_stmt(#20200,#20192) +expr_containers(#20200,#20185) +literals("x","x",#20200) +#20201=@"var;{x};{#20000}" +variables(#20201,"x",#20000) +bind(#20200,#20201) +is_delegating(#20194) +#20202=* +stmts(#20202,2,#20001,3,"f4(v1);") +hasLocation(#20202,#20013) +stmt_containers(#20202,#20001) #20203=* -exprs(#20203,79,#20201,-1,"f4") -hasLocation(#20203,#20104) -enclosing_stmt(#20203,#20200) +exprs(#20203,13,#20202,0,"f4(v1)") +#20204=@"loc,{#10000},6,1,6,10" +locations_default(#20204,#10000,6,1,6,10) +hasLocation(#20203,#20204) +enclosing_stmt(#20203,#20202) expr_containers(#20203,#20001) -literals("f4","f4",#20203) -#20204=@"var;{f4};{#20000}" -variables(#20204,"f4",#20000) -bind(#20203,#20204) #20205=* -exprs(#20205,79,#20201,0,"v1") -hasLocation(#20205,#20114) -enclosing_stmt(#20205,#20200) +exprs(#20205,79,#20203,-1,"f4") +hasLocation(#20205,#20104) +enclosing_stmt(#20205,#20202) expr_containers(#20205,#20001) -literals("v1","v1",#20205) -#20206=@"var;{v1};{#20000}" -variables(#20206,"v1",#20000) +literals("f4","f4",#20205) +#20206=@"var;{f4};{#20000}" +variables(#20206,"f4",#20000) bind(#20205,#20206) #20207=* -stmts(#20207,2,#20001,4,"f5<_,_,_>();") -hasLocation(#20207,#20015) -stmt_containers(#20207,#20001) -#20208=* -exprs(#20208,13,#20207,0,"f5<_,_,_>()") -#20209=@"loc,{#10000},7,1,7,11" -locations_default(#20209,#10000,7,1,7,11) -hasLocation(#20208,#20209) -enclosing_stmt(#20208,#20207) -expr_containers(#20208,#20001) +exprs(#20207,79,#20203,0,"v1") +hasLocation(#20207,#20114) +enclosing_stmt(#20207,#20202) +expr_containers(#20207,#20001) +literals("v1","v1",#20207) +#20208=@"var;{v1};{#20000}" +variables(#20208,"v1",#20000) +bind(#20207,#20208) +#20209=* +stmts(#20209,2,#20001,4,"f5<_,_,_>();") +hasLocation(#20209,#20015) +stmt_containers(#20209,#20001) #20210=* -exprs(#20210,79,#20208,-1,"f5") -hasLocation(#20210,#20120) -enclosing_stmt(#20210,#20207) +exprs(#20210,13,#20209,0,"f5<_,_,_>()") +#20211=@"loc,{#10000},7,1,7,11" +locations_default(#20211,#10000,7,1,7,11) +hasLocation(#20210,#20211) +enclosing_stmt(#20210,#20209) expr_containers(#20210,#20001) -literals("f5","f5",#20210) -#20211=@"var;{f5};{#20000}" -variables(#20211,"f5",#20000) -bind(#20210,#20211) #20212=* -stmts(#20212,2,#20001,5,"f6<\n\t|T ... 9\n\t>();") -#20213=@"loc,{#10000},8,1,12,5" -locations_default(#20213,#10000,8,1,12,5) -hasLocation(#20212,#20213) -stmt_containers(#20212,#20001) +exprs(#20212,79,#20210,-1,"f5") +hasLocation(#20212,#20120) +enclosing_stmt(#20212,#20209) +expr_containers(#20212,#20001) +literals("f5","f5",#20212) +#20213=@"var;{f5};{#20000}" +variables(#20213,"f5",#20000) +bind(#20212,#20213) #20214=* -exprs(#20214,13,#20212,0,"f6<\n\t|T ... T9\n\t>()") -#20215=@"loc,{#10000},8,1,12,4" -locations_default(#20215,#10000,8,1,12,4) +stmts(#20214,2,#20001,5,"f6<\n\t|T ... 9\n\t>();") +#20215=@"loc,{#10000},8,1,12,5" +locations_default(#20215,#10000,8,1,12,5) hasLocation(#20214,#20215) -enclosing_stmt(#20214,#20212) -expr_containers(#20214,#20001) +stmt_containers(#20214,#20001) #20216=* -exprs(#20216,79,#20214,-1,"f6") -hasLocation(#20216,#20142) -enclosing_stmt(#20216,#20212) +exprs(#20216,13,#20214,0,"f6<\n\t|T ... T9\n\t>()") +#20217=@"loc,{#10000},8,1,12,4" +locations_default(#20217,#10000,8,1,12,4) +hasLocation(#20216,#20217) +enclosing_stmt(#20216,#20214) expr_containers(#20216,#20001) -literals("f6","f6",#20216) -#20217=@"var;{f6};{#20000}" -variables(#20217,"f6",#20000) -bind(#20216,#20217) #20218=* -entry_cfg_node(#20218,#20001) -#20219=@"loc,{#10000},1,1,1,0" -locations_default(#20219,#10000,1,1,1,0) -hasLocation(#20218,#20219) +exprs(#20218,79,#20216,-1,"f6") +hasLocation(#20218,#20142) +enclosing_stmt(#20218,#20214) +expr_containers(#20218,#20001) +literals("f6","f6",#20218) +#20219=@"var;{f6};{#20000}" +variables(#20219,"f6",#20000) +bind(#20218,#20219) #20220=* -exit_cfg_node(#20220,#20001) -hasLocation(#20220,#20166) -successor(#20212,#20216) -successor(#20216,#20214) -successor(#20214,#20220) -successor(#20207,#20210) -successor(#20210,#20208) -successor(#20208,#20212) -successor(#20200,#20203) -successor(#20205,#20201) -successor(#20203,#20205) -successor(#20201,#20207) -successor(#20179,#20183) -successor(#20184,#20181) -#20221=* -entry_cfg_node(#20221,#20184) -#20222=@"loc,{#10000},3,12,3,11" -locations_default(#20222,#10000,3,12,3,11) -hasLocation(#20221,#20222) +entry_cfg_node(#20220,#20001) +#20221=@"loc,{#10000},1,1,1,0" +locations_default(#20221,#10000,1,1,1,0) +hasLocation(#20220,#20221) +#20222=* +exit_cfg_node(#20222,#20001) +hasLocation(#20222,#20166) +successor(#20214,#20218) +successor(#20218,#20216) +successor(#20216,#20222) +successor(#20209,#20212) +successor(#20212,#20210) +successor(#20210,#20214) +successor(#20202,#20205) +successor(#20207,#20203) +successor(#20205,#20207) +successor(#20203,#20209) +successor(#20180,#20184) +successor(#20185,#20182) #20223=* -exit_cfg_node(#20223,#20184) -#20224=@"loc,{#10000},5,2,5,1" -locations_default(#20224,#10000,5,2,5,1) +entry_cfg_node(#20223,#20185) +#20224=@"loc,{#10000},3,12,3,11" +locations_default(#20224,#10000,3,12,3,11) hasLocation(#20223,#20224) -successor(#20190,#20196) -successor(#20198,#20194) -successor(#20196,#20198) -successor(#20194,#20192) -successor(#20192,#20223) -successor(#20188,#20190) -successor(#20221,#20188) -successor(#20183,#20184) -successor(#20181,#20200) -successor(#20174,#20177) -successor(#20177,#20175) -successor(#20175,#20179) -successor(#20169,#20172) -successor(#20172,#20170) -successor(#20170,#20174) -successor(#20218,#20169) +#20225=* +exit_cfg_node(#20225,#20185) +#20226=@"loc,{#10000},5,2,5,1" +locations_default(#20226,#10000,5,2,5,1) +hasLocation(#20225,#20226) +successor(#20192,#20198) +successor(#20200,#20196) +successor(#20198,#20200) +successor(#20196,#20194) +successor(#20194,#20225) +successor(#20190,#20192) +successor(#20223,#20190) +successor(#20184,#20185) +successor(#20182,#20202) +successor(#20175,#20178) +successor(#20178,#20176) +successor(#20176,#20180) +successor(#20170,#20173) +successor(#20173,#20171) +successor(#20171,#20175) +successor(#20220,#20170) numlines(#10000,12,12,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/explicitTypeParametersForArgumentlessConstructorCall.js.trap b/javascript/extractor/tests/flow/output/trap/explicitTypeParametersForArgumentlessConstructorCall.js.trap index e96f25d995b3..50139c469f9b 100644 --- a/javascript/extractor/tests/flow/output/trap/explicitTypeParametersForArgumentlessConstructorCall.js.trap +++ b/javascript/extractor/tests/flow/output/trap/explicitTypeParametersForArgumentlessConstructorCall.js.trap @@ -52,37 +52,39 @@ locations_default(#20017,#10000,1,12,1,11) hasLocation(#20016,#20017) toplevels(#20001,0) hasLocation(#20001,#20003) -#20018=* -stmts(#20018,2,#20001,0,"new K1;") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,12,#20018,0,"new K1") -#20020=@"loc,{#10000},1,1,1,10" -locations_default(#20020,#10000,1,1,1,10) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) -#20021=* -exprs(#20021,79,#20019,-1,"K1") -hasLocation(#20021,#20007) -enclosing_stmt(#20021,#20018) -expr_containers(#20021,#20001) -literals("K1","K1",#20021) -#20022=@"var;{K1};{#20000}" -variables(#20022,"K1",#20000) -bind(#20021,#20022) -#20023=* -entry_cfg_node(#20023,#20001) -#20024=@"loc,{#10000},1,1,1,0" -locations_default(#20024,#10000,1,1,1,0) -hasLocation(#20023,#20024) -#20025=* -exit_cfg_node(#20025,#20001) -hasLocation(#20025,#20017) -successor(#20018,#20021) -successor(#20021,#20019) -successor(#20019,#20025) -successor(#20023,#20018) +stmts(#20019,2,#20001,0,"new K1;") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) +#20020=* +exprs(#20020,12,#20019,0,"new K1") +#20021=@"loc,{#10000},1,1,1,10" +locations_default(#20021,#10000,1,1,1,10) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20001) +#20022=* +exprs(#20022,79,#20020,-1,"K1") +hasLocation(#20022,#20007) +enclosing_stmt(#20022,#20019) +expr_containers(#20022,#20001) +literals("K1","K1",#20022) +#20023=@"var;{K1};{#20000}" +variables(#20023,"K1",#20000) +bind(#20022,#20023) +#20024=* +entry_cfg_node(#20024,#20001) +#20025=@"loc,{#10000},1,1,1,0" +locations_default(#20025,#10000,1,1,1,0) +hasLocation(#20024,#20025) +#20026=* +exit_cfg_node(#20026,#20001) +hasLocation(#20026,#20017) +successor(#20019,#20022) +successor(#20022,#20020) +successor(#20020,#20026) +successor(#20024,#20019) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/export.js.trap b/javascript/extractor/tests/flow/output/trap/export.js.trap index 94465ac5a542..60795580ca45 100644 --- a/javascript/extractor/tests/flow/output/trap/export.js.trap +++ b/javascript/extractor/tests/flow/output/trap/export.js.trap @@ -224,70 +224,72 @@ scopenodes(#20001,#20083) scopenesting(#20083,#20000) is_module(#20001) is_es2015_module(#20001) -#20084=* -stmts(#20084,30,#20001,0,"export ... om ""m"";") -hasLocation(#20084,#20003) -stmt_containers(#20084,#20001) +#20084=@"var;{this};{#20083}" +variables(#20084,"this",#20083) #20085=* -exprs(#20085,4,#20084,-2,"""m""") -hasLocation(#20085,#20023) -enclosing_stmt(#20085,#20084) -expr_containers(#20085,#20001) -literals("m","""m""",#20085) +stmts(#20085,30,#20001,0,"export ... om ""m"";") +hasLocation(#20085,#20003) +stmt_containers(#20085,#20001) #20086=* -regexpterm(#20086,14,#20085,0,"m") -#20087=@"loc,{#10000},1,20,1,20" -locations_default(#20087,#10000,1,20,1,20) -hasLocation(#20086,#20087) -regexp_const_value(#20086,"m") -#20088=* -exprs(#20088,86,#20084,0,"a") -hasLocation(#20088,#20017) -enclosing_stmt(#20088,#20084) -expr_containers(#20088,#20001) +exprs(#20086,4,#20085,-2,"""m""") +hasLocation(#20086,#20023) +enclosing_stmt(#20086,#20085) +expr_containers(#20086,#20001) +literals("m","""m""",#20086) +#20087=* +regexpterm(#20087,14,#20086,0,"m") +#20088=@"loc,{#10000},1,20,1,20" +locations_default(#20088,#10000,1,20,1,20) +hasLocation(#20087,#20088) +regexp_const_value(#20087,"m") #20089=* -exprs(#20089,0,#20088,0,"a") +exprs(#20089,86,#20085,0,"a") hasLocation(#20089,#20017) -enclosing_stmt(#20089,#20084) +enclosing_stmt(#20089,#20085) expr_containers(#20089,#20001) -literals("a","a",#20089) #20090=* -exprs(#20090,0,#20088,1,"a") +exprs(#20090,0,#20089,0,"a") hasLocation(#20090,#20017) -enclosing_stmt(#20090,#20084) +enclosing_stmt(#20090,#20085) expr_containers(#20090,#20001) literals("a","a",#20090) #20091=* -stmts(#20091,28,#20001,1,"export * from ""m"";") -hasLocation(#20091,#20005) -stmt_containers(#20091,#20001) +exprs(#20091,0,#20089,1,"a") +hasLocation(#20091,#20017) +enclosing_stmt(#20091,#20085) +expr_containers(#20091,#20001) +literals("a","a",#20091) #20092=* -exprs(#20092,4,#20091,0,"""m""") -hasLocation(#20092,#20033) -enclosing_stmt(#20092,#20091) -expr_containers(#20092,#20001) -literals("m","""m""",#20092) +stmts(#20092,28,#20001,1,"export * from ""m"";") +hasLocation(#20092,#20005) +stmt_containers(#20092,#20001) #20093=* -regexpterm(#20093,14,#20092,0,"m") -#20094=@"loc,{#10000},2,16,2,16" -locations_default(#20094,#10000,2,16,2,16) -hasLocation(#20093,#20094) -regexp_const_value(#20093,"m") -#20095=* -entry_cfg_node(#20095,#20001) -#20096=@"loc,{#10000},1,1,1,0" -locations_default(#20096,#10000,1,1,1,0) -hasLocation(#20095,#20096) -#20097=* -exit_cfg_node(#20097,#20001) -hasLocation(#20097,#20081) +exprs(#20093,4,#20092,0,"""m""") +hasLocation(#20093,#20033) +enclosing_stmt(#20093,#20092) +expr_containers(#20093,#20001) +literals("m","""m""",#20093) +#20094=* +regexpterm(#20094,14,#20093,0,"m") +#20095=@"loc,{#10000},2,16,2,16" +locations_default(#20095,#10000,2,16,2,16) +hasLocation(#20094,#20095) +regexp_const_value(#20094,"m") +#20096=* +entry_cfg_node(#20096,#20001) +#20097=@"loc,{#10000},1,1,1,0" +locations_default(#20097,#10000,1,1,1,0) +hasLocation(#20096,#20097) +#20098=* +exit_cfg_node(#20098,#20001) +hasLocation(#20098,#20081) +successor(#20092,#20093) +successor(#20093,#20098) +successor(#20085,#20086) +successor(#20089,#20090) successor(#20091,#20092) -successor(#20092,#20097) -successor(#20084,#20085) -successor(#20088,#20089) successor(#20090,#20091) -successor(#20089,#20090) -successor(#20085,#20088) -successor(#20095,#20084) +successor(#20086,#20089) +successor(#20096,#20085) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/exportOpaqueType.js.trap b/javascript/extractor/tests/flow/output/trap/exportOpaqueType.js.trap index 5b8c2c2b7d97..dbd977e810a1 100644 --- a/javascript/extractor/tests/flow/output/trap/exportOpaqueType.js.trap +++ b/javascript/extractor/tests/flow/output/trap/exportOpaqueType.js.trap @@ -70,14 +70,16 @@ toplevels(#20001,0) #20024=@"loc,{#10000},1,1,2,0" locations_default(#20024,#10000,1,1,2,0) hasLocation(#20001,#20024) -#20025=* -entry_cfg_node(#20025,#20001) -#20026=@"loc,{#10000},1,1,1,0" -locations_default(#20026,#10000,1,1,1,0) -hasLocation(#20025,#20026) -#20027=* -exit_cfg_node(#20027,#20001) -hasLocation(#20027,#20023) -successor(#20025,#20027) +#20025=@"var;{this};{#20000}" +variables(#20025,"this",#20000) +#20026=* +entry_cfg_node(#20026,#20001) +#20027=@"loc,{#10000},1,1,1,0" +locations_default(#20027,#10000,1,1,1,0) +hasLocation(#20026,#20027) +#20028=* +exit_cfg_node(#20028,#20001) +hasLocation(#20028,#20023) +successor(#20026,#20028) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/get-set-methods.js.trap b/javascript/extractor/tests/flow/output/trap/get-set-methods.js.trap index 1a55904a3965..d2ec876feb68 100644 --- a/javascript/extractor/tests/flow/output/trap/get-set-methods.js.trap +++ b/javascript/extractor/tests/flow/output/trap/get-set-methods.js.trap @@ -177,189 +177,199 @@ hasLocation(#20001,#20063) variables(#20064,"C",#20000) #20065=@"local_type_name;{C};{#20000}" local_type_names(#20065,"C",#20000) -#20066=* -stmts(#20066,26,#20001,0,"class C ... ) { }\n}") -#20067=@"loc,{#10000},1,1,4,1" -locations_default(#20067,#10000,1,1,4,1) -hasLocation(#20066,#20067) -stmt_containers(#20066,#20001) -#20068=* -exprs(#20068,78,#20066,0,"C") -hasLocation(#20068,#20013) -enclosing_stmt(#20068,#20066) -expr_containers(#20068,#20001) -literals("C","C",#20068) -decl(#20068,#20064) -typedecl(#20068,#20065) +#20066=@"var;{this};{#20000}" +variables(#20066,"this",#20000) +#20067=* +stmts(#20067,26,#20001,0,"class C ... ) { }\n}") +#20068=@"loc,{#10000},1,1,4,1" +locations_default(#20068,#10000,1,1,4,1) +hasLocation(#20067,#20068) +stmt_containers(#20067,#20001) #20069=* -scopes(#20069,10) -scopenodes(#20066,#20069) -scopenesting(#20069,#20000) +exprs(#20069,78,#20067,0,"C") +hasLocation(#20069,#20013) +enclosing_stmt(#20069,#20067) +expr_containers(#20069,#20001) +literals("C","C",#20069) +decl(#20069,#20064) +typedecl(#20069,#20065) #20070=* -properties(#20070,#20066,2,0,"get(v: T) { }") -#20071=@"loc,{#10000},2,5,2,20" -locations_default(#20071,#10000,2,5,2,20) -hasLocation(#20070,#20071) +scopes(#20070,10) +scopenodes(#20067,#20070) +scopenesting(#20070,#20000) +#20071=@"var;{this};{#20070}" +variables(#20071,"this",#20070) #20072=* -exprs(#20072,0,#20070,0,"get") -hasLocation(#20072,#20017) -enclosing_stmt(#20072,#20066) -expr_containers(#20072,#20001) -literals("get","get",#20072) -#20073=* -exprs(#20073,9,#20070,1,"(v: T) { }") -#20074=@"loc,{#10000},2,11,2,20" -locations_default(#20074,#10000,2,11,2,20) -hasLocation(#20073,#20074) -enclosing_stmt(#20073,#20066) -expr_containers(#20073,#20001) +properties(#20072,#20067,2,0,"get(v: T) { }") +#20073=@"loc,{#10000},2,5,2,20" +locations_default(#20073,#10000,2,5,2,20) +hasLocation(#20072,#20073) +#20074=* +exprs(#20074,0,#20072,0,"get") +hasLocation(#20074,#20017) +enclosing_stmt(#20074,#20067) +expr_containers(#20074,#20001) +literals("get","get",#20074) #20075=* -scopes(#20075,1) -scopenodes(#20073,#20075) -scopenesting(#20075,#20069) -#20076=@"var;{v};{#20075}" -variables(#20076,"v",#20075) +exprs(#20075,9,#20072,1,"(v: T) { }") +#20076=@"loc,{#10000},2,11,2,20" +locations_default(#20076,#10000,2,11,2,20) +hasLocation(#20075,#20076) +enclosing_stmt(#20075,#20067) +expr_containers(#20075,#20001) #20077=* -exprs(#20077,78,#20073,0,"v: T") -#20078=@"loc,{#10000},2,12,2,15" -locations_default(#20078,#10000,2,12,2,15) -hasLocation(#20077,#20078) -expr_containers(#20077,#20073) -literals("v","v",#20077) -decl(#20077,#20076) -#20079=@"var;{arguments};{#20075}" -variables(#20079,"arguments",#20075) -is_arguments_object(#20079) +scopes(#20077,1) +scopenodes(#20075,#20077) +scopenesting(#20077,#20070) +#20078=@"var;{this};{#20077}" +variables(#20078,"this",#20077) +#20079=@"var;{v};{#20077}" +variables(#20079,"v",#20077) #20080=* -stmts(#20080,1,#20073,-2,"{ }") -#20081=@"loc,{#10000},2,18,2,20" -locations_default(#20081,#10000,2,18,2,20) +exprs(#20080,78,#20075,0,"v: T") +#20081=@"loc,{#10000},2,12,2,15" +locations_default(#20081,#10000,2,12,2,15) hasLocation(#20080,#20081) -stmt_containers(#20080,#20073) -is_method(#20070) -#20082=* -properties(#20082,#20066,3,0,"set(v: T) { }") -#20083=@"loc,{#10000},3,5,3,20" -locations_default(#20083,#10000,3,5,3,20) -hasLocation(#20082,#20083) -#20084=* -exprs(#20084,0,#20082,0,"set") -hasLocation(#20084,#20039) -enclosing_stmt(#20084,#20066) -expr_containers(#20084,#20001) -literals("set","set",#20084) +expr_containers(#20080,#20075) +literals("v","v",#20080) +decl(#20080,#20079) +#20082=@"var;{arguments};{#20077}" +variables(#20082,"arguments",#20077) +is_arguments_object(#20082) +#20083=* +stmts(#20083,1,#20075,-2,"{ }") +#20084=@"loc,{#10000},2,18,2,20" +locations_default(#20084,#10000,2,18,2,20) +hasLocation(#20083,#20084) +stmt_containers(#20083,#20075) +is_method(#20072) #20085=* -exprs(#20085,9,#20082,1,"(v: T) { }") -#20086=@"loc,{#10000},3,11,3,20" -locations_default(#20086,#10000,3,11,3,20) +properties(#20085,#20067,3,0,"set(v: T) { }") +#20086=@"loc,{#10000},3,5,3,20" +locations_default(#20086,#10000,3,5,3,20) hasLocation(#20085,#20086) -enclosing_stmt(#20085,#20066) -expr_containers(#20085,#20001) #20087=* -scopes(#20087,1) -scopenodes(#20085,#20087) -scopenesting(#20087,#20069) -#20088=@"var;{v};{#20087}" -variables(#20088,"v",#20087) -#20089=* -exprs(#20089,78,#20085,0,"v: T") -#20090=@"loc,{#10000},3,12,3,15" -locations_default(#20090,#10000,3,12,3,15) -hasLocation(#20089,#20090) -expr_containers(#20089,#20085) -literals("v","v",#20089) -decl(#20089,#20088) -#20091=@"var;{arguments};{#20087}" -variables(#20091,"arguments",#20087) -is_arguments_object(#20091) -#20092=* -stmts(#20092,1,#20085,-2,"{ }") -#20093=@"loc,{#10000},3,18,3,20" -locations_default(#20093,#10000,3,18,3,20) -hasLocation(#20092,#20093) -stmt_containers(#20092,#20085) -is_method(#20082) -#20094=* -properties(#20094,#20066,4,0,"constructor() {}") -#20095=@"loc,{#10000},1,9,1,8" -locations_default(#20095,#10000,1,9,1,8) -hasLocation(#20094,#20095) +exprs(#20087,0,#20085,0,"set") +hasLocation(#20087,#20039) +enclosing_stmt(#20087,#20067) +expr_containers(#20087,#20001) +literals("set","set",#20087) +#20088=* +exprs(#20088,9,#20085,1,"(v: T) { }") +#20089=@"loc,{#10000},3,11,3,20" +locations_default(#20089,#10000,3,11,3,20) +hasLocation(#20088,#20089) +enclosing_stmt(#20088,#20067) +expr_containers(#20088,#20001) +#20090=* +scopes(#20090,1) +scopenodes(#20088,#20090) +scopenesting(#20090,#20070) +#20091=@"var;{this};{#20090}" +variables(#20091,"this",#20090) +#20092=@"var;{v};{#20090}" +variables(#20092,"v",#20090) +#20093=* +exprs(#20093,78,#20088,0,"v: T") +#20094=@"loc,{#10000},3,12,3,15" +locations_default(#20094,#10000,3,12,3,15) +hasLocation(#20093,#20094) +expr_containers(#20093,#20088) +literals("v","v",#20093) +decl(#20093,#20092) +#20095=@"var;{arguments};{#20090}" +variables(#20095,"arguments",#20090) +is_arguments_object(#20095) #20096=* -exprs(#20096,0,#20094,0,"constructor") -hasLocation(#20096,#20095) -enclosing_stmt(#20096,#20066) -expr_containers(#20096,#20001) -literals("constructor","constructor",#20096) -#20097=* -exprs(#20097,9,#20094,1,"() {}") -hasLocation(#20097,#20095) -enclosing_stmt(#20097,#20066) -expr_containers(#20097,#20001) +stmts(#20096,1,#20088,-2,"{ }") +#20097=@"loc,{#10000},3,18,3,20" +locations_default(#20097,#10000,3,18,3,20) +hasLocation(#20096,#20097) +stmt_containers(#20096,#20088) +is_method(#20085) #20098=* -scopes(#20098,1) -scopenodes(#20097,#20098) -scopenesting(#20098,#20069) -#20099=@"var;{arguments};{#20098}" -variables(#20099,"arguments",#20098) -is_arguments_object(#20099) +properties(#20098,#20067,4,0,"constructor() {}") +#20099=@"loc,{#10000},1,9,1,8" +locations_default(#20099,#10000,1,9,1,8) +hasLocation(#20098,#20099) #20100=* -stmts(#20100,1,#20097,-2,"{}") -hasLocation(#20100,#20095) -stmt_containers(#20100,#20097) -is_method(#20094) +exprs(#20100,0,#20098,0,"constructor") +hasLocation(#20100,#20099) +enclosing_stmt(#20100,#20067) +expr_containers(#20100,#20001) +literals("constructor","constructor",#20100) #20101=* -entry_cfg_node(#20101,#20001) -#20102=@"loc,{#10000},1,1,1,0" -locations_default(#20102,#10000,1,1,1,0) -hasLocation(#20101,#20102) -#20103=* -exit_cfg_node(#20103,#20001) -hasLocation(#20103,#20062) -successor(#20097,#20094) -#20104=* -entry_cfg_node(#20104,#20097) -hasLocation(#20104,#20095) +exprs(#20101,9,#20098,1,"() {}") +hasLocation(#20101,#20099) +enclosing_stmt(#20101,#20067) +expr_containers(#20101,#20001) +#20102=* +scopes(#20102,1) +scopenodes(#20101,#20102) +scopenesting(#20102,#20070) +#20103=@"var;{this};{#20102}" +variables(#20103,"this",#20102) +#20104=@"var;{arguments};{#20102}" +variables(#20104,"arguments",#20102) +is_arguments_object(#20104) #20105=* -exit_cfg_node(#20105,#20097) -hasLocation(#20105,#20095) -successor(#20100,#20105) -successor(#20104,#20100) -successor(#20096,#20097) -successor(#20094,#20066) -successor(#20085,#20082) +stmts(#20105,1,#20101,-2,"{}") +hasLocation(#20105,#20099) +stmt_containers(#20105,#20101) +is_method(#20098) #20106=* -entry_cfg_node(#20106,#20085) -#20107=@"loc,{#10000},3,11,3,10" -locations_default(#20107,#10000,3,11,3,10) +entry_cfg_node(#20106,#20001) +#20107=@"loc,{#10000},1,1,1,0" +locations_default(#20107,#10000,1,1,1,0) hasLocation(#20106,#20107) #20108=* -exit_cfg_node(#20108,#20085) -#20109=@"loc,{#10000},3,21,3,20" -locations_default(#20109,#10000,3,21,3,20) -hasLocation(#20108,#20109) -successor(#20092,#20108) -successor(#20089,#20092) -successor(#20106,#20089) -successor(#20084,#20085) -successor(#20082,#20096) -successor(#20073,#20070) +exit_cfg_node(#20108,#20001) +hasLocation(#20108,#20062) +successor(#20101,#20098) +#20109=* +entry_cfg_node(#20109,#20101) +hasLocation(#20109,#20099) #20110=* -entry_cfg_node(#20110,#20073) -#20111=@"loc,{#10000},2,11,2,10" -locations_default(#20111,#10000,2,11,2,10) -hasLocation(#20110,#20111) -#20112=* -exit_cfg_node(#20112,#20073) -#20113=@"loc,{#10000},2,21,2,20" -locations_default(#20113,#10000,2,21,2,20) -hasLocation(#20112,#20113) -successor(#20080,#20112) -successor(#20077,#20080) -successor(#20110,#20077) -successor(#20072,#20073) -successor(#20070,#20084) -successor(#20068,#20072) -successor(#20066,#20103) -successor(#20101,#20068) +exit_cfg_node(#20110,#20101) +hasLocation(#20110,#20099) +successor(#20105,#20110) +successor(#20109,#20105) +successor(#20100,#20101) +successor(#20098,#20067) +successor(#20088,#20085) +#20111=* +entry_cfg_node(#20111,#20088) +#20112=@"loc,{#10000},3,11,3,10" +locations_default(#20112,#10000,3,11,3,10) +hasLocation(#20111,#20112) +#20113=* +exit_cfg_node(#20113,#20088) +#20114=@"loc,{#10000},3,21,3,20" +locations_default(#20114,#10000,3,21,3,20) +hasLocation(#20113,#20114) +successor(#20096,#20113) +successor(#20093,#20096) +successor(#20111,#20093) +successor(#20087,#20088) +successor(#20085,#20100) +successor(#20075,#20072) +#20115=* +entry_cfg_node(#20115,#20075) +#20116=@"loc,{#10000},2,11,2,10" +locations_default(#20116,#10000,2,11,2,10) +hasLocation(#20115,#20116) +#20117=* +exit_cfg_node(#20117,#20075) +#20118=@"loc,{#10000},2,21,2,20" +locations_default(#20118,#10000,2,21,2,20) +hasLocation(#20117,#20118) +successor(#20083,#20117) +successor(#20080,#20083) +successor(#20115,#20080) +successor(#20074,#20075) +successor(#20072,#20087) +successor(#20069,#20074) +successor(#20067,#20108) +successor(#20106,#20069) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/importType.js.trap b/javascript/extractor/tests/flow/output/trap/importType.js.trap index 9e2e2885049a..88efc5b76f60 100644 --- a/javascript/extractor/tests/flow/output/trap/importType.js.trap +++ b/javascript/extractor/tests/flow/output/trap/importType.js.trap @@ -196,52 +196,54 @@ local_namespace_names(#20072,"type",#20069) variables(#20070,"type",#20069) local_type_names(#20071,"type",#20069) local_namespace_names(#20072,"type",#20069) -#20073=* -stmts(#20073,27,#20001,0,"import ... om 'm';") -hasLocation(#20073,#20003) -stmt_containers(#20073,#20001) +#20073=@"var;{this};{#20069}" +variables(#20073,"this",#20069) #20074=* -exprs(#20074,4,#20073,-1,"'m'") -hasLocation(#20074,#20031) -enclosing_stmt(#20074,#20073) -expr_containers(#20074,#20001) -literals("m","'m'",#20074) +stmts(#20074,27,#20001,0,"import ... om 'm';") +hasLocation(#20074,#20003) +stmt_containers(#20074,#20001) #20075=* -regexpterm(#20075,14,#20074,0,"m") -#20076=@"loc,{#10000},1,43,1,43" -locations_default(#20076,#10000,1,43,1,43) -hasLocation(#20075,#20076) -regexp_const_value(#20075,"m") -#20077=* -exprs(#20077,83,#20073,0,"type") -hasLocation(#20077,#20013) -enclosing_stmt(#20077,#20073) -expr_containers(#20077,#20001) +exprs(#20075,4,#20074,-1,"'m'") +hasLocation(#20075,#20031) +enclosing_stmt(#20075,#20074) +expr_containers(#20075,#20001) +literals("m","'m'",#20075) +#20076=* +regexpterm(#20076,14,#20075,0,"m") +#20077=@"loc,{#10000},1,43,1,43" +locations_default(#20077,#10000,1,43,1,43) +hasLocation(#20076,#20077) +regexp_const_value(#20076,"m") #20078=* -exprs(#20078,0,#20077,0,"type") +exprs(#20078,83,#20074,0,"type") hasLocation(#20078,#20013) -enclosing_stmt(#20078,#20073) +enclosing_stmt(#20078,#20074) expr_containers(#20078,#20001) -literals("type","type",#20078) #20079=* -exprs(#20079,78,#20077,1,"type") +exprs(#20079,0,#20078,0,"type") hasLocation(#20079,#20013) -enclosing_stmt(#20079,#20073) +enclosing_stmt(#20079,#20074) expr_containers(#20079,#20001) literals("type","type",#20079) -decl(#20079,#20070) -typedecl(#20079,#20071) -namespacedecl(#20079,#20072) #20080=* -entry_cfg_node(#20080,#20001) -#20081=@"loc,{#10000},1,1,1,0" -locations_default(#20081,#10000,1,1,1,0) -hasLocation(#20080,#20081) -#20082=* -exit_cfg_node(#20082,#20001) -hasLocation(#20082,#20067) -successor(#20073,#20082) -successor(#20077,#20073) -successor(#20080,#20077) +exprs(#20080,78,#20078,1,"type") +hasLocation(#20080,#20013) +enclosing_stmt(#20080,#20074) +expr_containers(#20080,#20001) +literals("type","type",#20080) +decl(#20080,#20070) +typedecl(#20080,#20071) +namespacedecl(#20080,#20072) +#20081=* +entry_cfg_node(#20081,#20001) +#20082=@"loc,{#10000},1,1,1,0" +locations_default(#20082,#10000,1,1,1,0) +hasLocation(#20081,#20082) +#20083=* +exit_cfg_node(#20083,#20001) +hasLocation(#20083,#20067) +successor(#20074,#20083) +successor(#20078,#20074) +successor(#20081,#20078) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/importTypeInDeclaredModule.js.trap b/javascript/extractor/tests/flow/output/trap/importTypeInDeclaredModule.js.trap index 8c4b5a30f4a1..5f07abf6d592 100644 --- a/javascript/extractor/tests/flow/output/trap/importTypeInDeclaredModule.js.trap +++ b/javascript/extractor/tests/flow/output/trap/importTypeInDeclaredModule.js.trap @@ -205,14 +205,16 @@ toplevels(#20001,0) #20071=@"loc,{#10000},1,1,11,2" locations_default(#20071,#10000,1,1,11,2) hasLocation(#20001,#20071) -#20072=* -entry_cfg_node(#20072,#20001) -#20073=@"loc,{#10000},1,1,1,0" -locations_default(#20073,#10000,1,1,1,0) -hasLocation(#20072,#20073) -#20074=* -exit_cfg_node(#20074,#20001) -hasLocation(#20074,#20070) -successor(#20072,#20074) +#20072=@"var;{this};{#20000}" +variables(#20072,"this",#20000) +#20073=* +entry_cfg_node(#20073,#20001) +#20074=@"loc,{#10000},1,1,1,0" +locations_default(#20074,#10000,1,1,1,0) +hasLocation(#20073,#20074) +#20075=* +exit_cfg_node(#20075,#20001) +hasLocation(#20075,#20070) +successor(#20073,#20075) numlines(#10000,11,10,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/methodTypeParams.js.trap b/javascript/extractor/tests/flow/output/trap/methodTypeParams.js.trap index b2681d328ff0..74c7f4d2c99d 100644 --- a/javascript/extractor/tests/flow/output/trap/methodTypeParams.js.trap +++ b/javascript/extractor/tests/flow/output/trap/methodTypeParams.js.trap @@ -146,116 +146,120 @@ locations_default(#20051,#10000,1,1,5,1) hasLocation(#20001,#20051) #20052=@"var;{o};{#20000}" variables(#20052,"o",#20000) -#20053=* -stmts(#20053,18,#20001,0,"var o = ... ;\n }\n}") -hasLocation(#20053,#20051) -stmt_containers(#20053,#20001) +#20053=@"var;{this};{#20000}" +variables(#20053,"this",#20000) #20054=* -exprs(#20054,64,#20053,0,"o = {\n ... ;\n }\n}") -#20055=@"loc,{#10000},1,5,5,1" -locations_default(#20055,#10000,1,5,5,1) -hasLocation(#20054,#20055) -enclosing_stmt(#20054,#20053) -expr_containers(#20054,#20001) -#20056=* -exprs(#20056,78,#20054,0,"o") -hasLocation(#20056,#20015) -enclosing_stmt(#20056,#20053) -expr_containers(#20056,#20001) -literals("o","o",#20056) -decl(#20056,#20052) +stmts(#20054,18,#20001,0,"var o = ... ;\n }\n}") +hasLocation(#20054,#20051) +stmt_containers(#20054,#20001) +#20055=* +exprs(#20055,64,#20054,0,"o = {\n ... ;\n }\n}") +#20056=@"loc,{#10000},1,5,5,1" +locations_default(#20056,#10000,1,5,5,1) +hasLocation(#20055,#20056) +enclosing_stmt(#20055,#20054) +expr_containers(#20055,#20001) #20057=* -exprs(#20057,8,#20054,1,"{\n id< ... ;\n }\n}") -#20058=@"loc,{#10000},1,9,5,1" -locations_default(#20058,#10000,1,9,5,1) -hasLocation(#20057,#20058) -enclosing_stmt(#20057,#20053) +exprs(#20057,78,#20055,0,"o") +hasLocation(#20057,#20015) +enclosing_stmt(#20057,#20054) expr_containers(#20057,#20001) -#20059=* -properties(#20059,#20057,0,0,"id(a ... a;\n }") -#20060=@"loc,{#10000},2,3,4,3" -locations_default(#20060,#10000,2,3,4,3) -hasLocation(#20059,#20060) -#20061=* -exprs(#20061,0,#20059,0,"id") -hasLocation(#20061,#20021) -enclosing_stmt(#20061,#20053) -expr_containers(#20061,#20001) -literals("id","id",#20061) +literals("o","o",#20057) +decl(#20057,#20052) +#20058=* +exprs(#20058,8,#20055,1,"{\n id< ... ;\n }\n}") +#20059=@"loc,{#10000},1,9,5,1" +locations_default(#20059,#10000,1,9,5,1) +hasLocation(#20058,#20059) +enclosing_stmt(#20058,#20054) +expr_containers(#20058,#20001) +#20060=* +properties(#20060,#20058,0,0,"id(a ... a;\n }") +#20061=@"loc,{#10000},2,3,4,3" +locations_default(#20061,#10000,2,3,4,3) +hasLocation(#20060,#20061) #20062=* -exprs(#20062,9,#20059,1,"(a : A) ... a;\n }") -#20063=@"loc,{#10000},2,8,4,3" -locations_default(#20063,#10000,2,8,4,3) -hasLocation(#20062,#20063) -enclosing_stmt(#20062,#20053) +exprs(#20062,0,#20060,0,"id") +hasLocation(#20062,#20021) +enclosing_stmt(#20062,#20054) expr_containers(#20062,#20001) -#20064=* -scopes(#20064,1) -scopenodes(#20062,#20064) -scopenesting(#20064,#20000) -#20065=@"var;{a};{#20064}" -variables(#20065,"a",#20064) -#20066=* -exprs(#20066,78,#20062,0,"a : A") -#20067=@"loc,{#10000},2,9,2,13" -locations_default(#20067,#10000,2,9,2,13) -hasLocation(#20066,#20067) -expr_containers(#20066,#20062) -literals("a","a",#20066) -decl(#20066,#20065) -#20068=@"var;{arguments};{#20064}" -variables(#20068,"arguments",#20064) -is_arguments_object(#20068) -#20069=* -stmts(#20069,1,#20062,-2,"{\n return a;\n }") -#20070=@"loc,{#10000},2,16,4,3" -locations_default(#20070,#10000,2,16,4,3) -hasLocation(#20069,#20070) -stmt_containers(#20069,#20062) +literals("id","id",#20062) +#20063=* +exprs(#20063,9,#20060,1,"(a : A) ... a;\n }") +#20064=@"loc,{#10000},2,8,4,3" +locations_default(#20064,#10000,2,8,4,3) +hasLocation(#20063,#20064) +enclosing_stmt(#20063,#20054) +expr_containers(#20063,#20001) +#20065=* +scopes(#20065,1) +scopenodes(#20063,#20065) +scopenesting(#20065,#20000) +#20066=@"var;{this};{#20065}" +variables(#20066,"this",#20065) +#20067=@"var;{a};{#20065}" +variables(#20067,"a",#20065) +#20068=* +exprs(#20068,78,#20063,0,"a : A") +#20069=@"loc,{#10000},2,9,2,13" +locations_default(#20069,#10000,2,9,2,13) +hasLocation(#20068,#20069) +expr_containers(#20068,#20063) +literals("a","a",#20068) +decl(#20068,#20067) +#20070=@"var;{arguments};{#20065}" +variables(#20070,"arguments",#20065) +is_arguments_object(#20070) #20071=* -stmts(#20071,9,#20069,0,"return a;") -#20072=@"loc,{#10000},3,5,3,13" -locations_default(#20072,#10000,3,5,3,13) +stmts(#20071,1,#20063,-2,"{\n return a;\n }") +#20072=@"loc,{#10000},2,16,4,3" +locations_default(#20072,#10000,2,16,4,3) hasLocation(#20071,#20072) -stmt_containers(#20071,#20062) +stmt_containers(#20071,#20063) #20073=* -exprs(#20073,79,#20071,0,"a") -hasLocation(#20073,#20043) -enclosing_stmt(#20073,#20071) -expr_containers(#20073,#20062) -literals("a","a",#20073) -bind(#20073,#20065) -is_method(#20059) -#20074=* -entry_cfg_node(#20074,#20001) -#20075=@"loc,{#10000},1,1,1,0" -locations_default(#20075,#10000,1,1,1,0) -hasLocation(#20074,#20075) +stmts(#20073,9,#20071,0,"return a;") +#20074=@"loc,{#10000},3,5,3,13" +locations_default(#20074,#10000,3,5,3,13) +hasLocation(#20073,#20074) +stmt_containers(#20073,#20063) +#20075=* +exprs(#20075,79,#20073,0,"a") +hasLocation(#20075,#20043) +enclosing_stmt(#20075,#20073) +expr_containers(#20075,#20063) +literals("a","a",#20075) +bind(#20075,#20067) +is_method(#20060) #20076=* -exit_cfg_node(#20076,#20001) -hasLocation(#20076,#20050) -successor(#20053,#20056) -successor(#20057,#20061) -successor(#20062,#20059) -#20077=* -entry_cfg_node(#20077,#20062) -#20078=@"loc,{#10000},2,8,2,7" -locations_default(#20078,#10000,2,8,2,7) -hasLocation(#20077,#20078) +entry_cfg_node(#20076,#20001) +#20077=@"loc,{#10000},1,1,1,0" +locations_default(#20077,#10000,1,1,1,0) +hasLocation(#20076,#20077) +#20078=* +exit_cfg_node(#20078,#20001) +hasLocation(#20078,#20050) +successor(#20054,#20057) +successor(#20058,#20062) +successor(#20063,#20060) #20079=* -exit_cfg_node(#20079,#20062) -#20080=@"loc,{#10000},4,4,4,3" -locations_default(#20080,#10000,4,4,4,3) +entry_cfg_node(#20079,#20063) +#20080=@"loc,{#10000},2,8,2,7" +locations_default(#20080,#10000,2,8,2,7) hasLocation(#20079,#20080) -successor(#20073,#20071) -successor(#20071,#20079) -successor(#20069,#20073) -successor(#20066,#20069) -successor(#20077,#20066) -successor(#20061,#20062) -successor(#20059,#20054) -successor(#20056,#20057) -successor(#20054,#20076) -successor(#20074,#20053) +#20081=* +exit_cfg_node(#20081,#20063) +#20082=@"loc,{#10000},4,4,4,3" +locations_default(#20082,#10000,4,4,4,3) +hasLocation(#20081,#20082) +successor(#20075,#20073) +successor(#20073,#20081) +successor(#20071,#20075) +successor(#20068,#20071) +successor(#20079,#20068) +successor(#20062,#20063) +successor(#20060,#20055) +successor(#20057,#20058) +successor(#20055,#20078) +successor(#20076,#20054) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/notExplicitTypeParameters1.js.trap b/javascript/extractor/tests/flow/output/trap/notExplicitTypeParameters1.js.trap index f7fd599eb4bb..4f5ca5d7683c 100644 --- a/javascript/extractor/tests/flow/output/trap/notExplicitTypeParameters1.js.trap +++ b/javascript/extractor/tests/flow/output/trap/notExplicitTypeParameters1.js.trap @@ -62,64 +62,66 @@ locations_default(#20021,#10000,1,9,1,8) hasLocation(#20020,#20021) toplevels(#20001,0) hasLocation(#20001,#20003) -#20022=* -stmts(#20022,2,#20001,0,"1<2>(3);") -hasLocation(#20022,#20003) -stmt_containers(#20022,#20001) +#20022=@"var;{this};{#20000}" +variables(#20022,"this",#20000) #20023=* -exprs(#20023,29,#20022,0,"1<2>(3)") -#20024=@"loc,{#10000},1,1,1,7" -locations_default(#20024,#10000,1,1,1,7) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20022) -expr_containers(#20023,#20001) -#20025=* -exprs(#20025,27,#20023,0,"1<2") -#20026=@"loc,{#10000},1,1,1,3" -locations_default(#20026,#10000,1,1,1,3) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20022) -expr_containers(#20025,#20001) -#20027=* -exprs(#20027,3,#20025,0,"1") -hasLocation(#20027,#20005) -enclosing_stmt(#20027,#20022) -expr_containers(#20027,#20001) -literals("1","1",#20027) +stmts(#20023,2,#20001,0,"1<2>(3);") +hasLocation(#20023,#20003) +stmt_containers(#20023,#20001) +#20024=* +exprs(#20024,29,#20023,0,"1<2>(3)") +#20025=@"loc,{#10000},1,1,1,7" +locations_default(#20025,#10000,1,1,1,7) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20023) +expr_containers(#20024,#20001) +#20026=* +exprs(#20026,27,#20024,0,"1<2") +#20027=@"loc,{#10000},1,1,1,3" +locations_default(#20027,#10000,1,1,1,3) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20023) +expr_containers(#20026,#20001) #20028=* -exprs(#20028,3,#20025,1,"2") -hasLocation(#20028,#20009) -enclosing_stmt(#20028,#20022) +exprs(#20028,3,#20026,0,"1") +hasLocation(#20028,#20005) +enclosing_stmt(#20028,#20023) expr_containers(#20028,#20001) -literals("2","2",#20028) +literals("1","1",#20028) #20029=* -exprs(#20029,63,#20023,1,"(3)") -#20030=@"loc,{#10000},1,5,1,7" -locations_default(#20030,#10000,1,5,1,7) -hasLocation(#20029,#20030) -enclosing_stmt(#20029,#20022) +exprs(#20029,3,#20026,1,"2") +hasLocation(#20029,#20009) +enclosing_stmt(#20029,#20023) expr_containers(#20029,#20001) -#20031=* -exprs(#20031,3,#20029,0,"3") -hasLocation(#20031,#20015) -enclosing_stmt(#20031,#20022) -expr_containers(#20031,#20001) -literals("3","3",#20031) +literals("2","2",#20029) +#20030=* +exprs(#20030,63,#20024,1,"(3)") +#20031=@"loc,{#10000},1,5,1,7" +locations_default(#20031,#10000,1,5,1,7) +hasLocation(#20030,#20031) +enclosing_stmt(#20030,#20023) +expr_containers(#20030,#20001) #20032=* -entry_cfg_node(#20032,#20001) -#20033=@"loc,{#10000},1,1,1,0" -locations_default(#20033,#10000,1,1,1,0) -hasLocation(#20032,#20033) -#20034=* -exit_cfg_node(#20034,#20001) -hasLocation(#20034,#20021) -successor(#20022,#20027) -successor(#20029,#20031) -successor(#20031,#20023) -successor(#20028,#20025) -successor(#20027,#20028) -successor(#20025,#20029) -successor(#20023,#20034) -successor(#20032,#20022) +exprs(#20032,3,#20030,0,"3") +hasLocation(#20032,#20015) +enclosing_stmt(#20032,#20023) +expr_containers(#20032,#20001) +literals("3","3",#20032) +#20033=* +entry_cfg_node(#20033,#20001) +#20034=@"loc,{#10000},1,1,1,0" +locations_default(#20034,#10000,1,1,1,0) +hasLocation(#20033,#20034) +#20035=* +exit_cfg_node(#20035,#20001) +hasLocation(#20035,#20021) +successor(#20023,#20028) +successor(#20030,#20032) +successor(#20032,#20024) +successor(#20029,#20026) +successor(#20028,#20029) +successor(#20026,#20030) +successor(#20024,#20035) +successor(#20033,#20023) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/notExplicitTypeParameters2.js.trap b/javascript/extractor/tests/flow/output/trap/notExplicitTypeParameters2.js.trap index a7d9edcc6ebd..e148737d83ee 100644 --- a/javascript/extractor/tests/flow/output/trap/notExplicitTypeParameters2.js.trap +++ b/javascript/extractor/tests/flow/output/trap/notExplicitTypeParameters2.js.trap @@ -82,89 +82,91 @@ locations_default(#20029,#10000,1,13,1,12) hasLocation(#20028,#20029) toplevels(#20001,0) hasLocation(#20001,#20003) -#20030=* -stmts(#20030,2,#20001,0,"f(h());") -hasLocation(#20030,#20003) -stmt_containers(#20030,#20001) +#20030=@"var;{this};{#20000}" +variables(#20030,"this",#20000) #20031=* -exprs(#20031,29,#20030,0,"f(h())") -#20032=@"loc,{#10000},1,1,1,11" -locations_default(#20032,#10000,1,1,1,11) -hasLocation(#20031,#20032) -enclosing_stmt(#20031,#20030) -expr_containers(#20031,#20001) -#20033=* -exprs(#20033,27,#20031,0,"f(h());") +hasLocation(#20031,#20003) +stmt_containers(#20031,#20001) +#20032=* +exprs(#20032,29,#20031,0,"f(h())") +#20033=@"loc,{#10000},1,1,1,11" +locations_default(#20033,#10000,1,1,1,11) +hasLocation(#20032,#20033) +enclosing_stmt(#20032,#20031) +expr_containers(#20032,#20001) +#20034=* +exprs(#20034,27,#20032,0,"f(3);") -hasLocation(#20022,#20003) -stmt_containers(#20022,#20001) +#20022=@"var;{this};{#20000}" +variables(#20022,"this",#20000) #20023=* -exprs(#20023,29,#20022,0,"/x/<2>(3)") -#20024=@"loc,{#10000},1,1,1,9" -locations_default(#20024,#10000,1,1,1,9) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20022) -expr_containers(#20023,#20001) -#20025=* -exprs(#20025,27,#20023,0,"/x/<2") -#20026=@"loc,{#10000},1,1,1,5" -locations_default(#20026,#10000,1,1,1,5) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20022) -expr_containers(#20025,#20001) -#20027=* -exprs(#20027,5,#20025,0,"/x/") -hasLocation(#20027,#20005) -enclosing_stmt(#20027,#20022) -expr_containers(#20027,#20001) -literals("/x/","/x/",#20027) +stmts(#20023,2,#20001,0,"/x/<2>(3);") +hasLocation(#20023,#20003) +stmt_containers(#20023,#20001) +#20024=* +exprs(#20024,29,#20023,0,"/x/<2>(3)") +#20025=@"loc,{#10000},1,1,1,9" +locations_default(#20025,#10000,1,1,1,9) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20023) +expr_containers(#20024,#20001) +#20026=* +exprs(#20026,27,#20024,0,"/x/<2") +#20027=@"loc,{#10000},1,1,1,5" +locations_default(#20027,#10000,1,1,1,5) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20023) +expr_containers(#20026,#20001) #20028=* -regexpterm(#20028,14,#20027,0,"x") -#20029=@"loc,{#10000},1,2,1,2" -locations_default(#20029,#10000,1,2,1,2) -hasLocation(#20028,#20029) -regexp_const_value(#20028,"x") -#20030=* -exprs(#20030,3,#20025,1,"2") -hasLocation(#20030,#20009) -enclosing_stmt(#20030,#20022) -expr_containers(#20030,#20001) -literals("2","2",#20030) +exprs(#20028,5,#20026,0,"/x/") +hasLocation(#20028,#20005) +enclosing_stmt(#20028,#20023) +expr_containers(#20028,#20001) +literals("/x/","/x/",#20028) +#20029=* +regexpterm(#20029,14,#20028,0,"x") +#20030=@"loc,{#10000},1,2,1,2" +locations_default(#20030,#10000,1,2,1,2) +hasLocation(#20029,#20030) +regexp_const_value(#20029,"x") #20031=* -exprs(#20031,63,#20023,1,"(3)") -#20032=@"loc,{#10000},1,7,1,9" -locations_default(#20032,#10000,1,7,1,9) -hasLocation(#20031,#20032) -enclosing_stmt(#20031,#20022) +exprs(#20031,3,#20026,1,"2") +hasLocation(#20031,#20009) +enclosing_stmt(#20031,#20023) expr_containers(#20031,#20001) -#20033=* -exprs(#20033,3,#20031,0,"3") -hasLocation(#20033,#20015) -enclosing_stmt(#20033,#20022) -expr_containers(#20033,#20001) -literals("3","3",#20033) +literals("2","2",#20031) +#20032=* +exprs(#20032,63,#20024,1,"(3)") +#20033=@"loc,{#10000},1,7,1,9" +locations_default(#20033,#10000,1,7,1,9) +hasLocation(#20032,#20033) +enclosing_stmt(#20032,#20023) +expr_containers(#20032,#20001) #20034=* -entry_cfg_node(#20034,#20001) -#20035=@"loc,{#10000},1,1,1,0" -locations_default(#20035,#10000,1,1,1,0) -hasLocation(#20034,#20035) -#20036=* -exit_cfg_node(#20036,#20001) -hasLocation(#20036,#20021) -successor(#20022,#20027) -successor(#20031,#20033) -successor(#20033,#20023) -successor(#20030,#20025) -successor(#20027,#20030) -successor(#20025,#20031) -successor(#20023,#20036) -successor(#20034,#20022) +exprs(#20034,3,#20032,0,"3") +hasLocation(#20034,#20015) +enclosing_stmt(#20034,#20023) +expr_containers(#20034,#20001) +literals("3","3",#20034) +#20035=* +entry_cfg_node(#20035,#20001) +#20036=@"loc,{#10000},1,1,1,0" +locations_default(#20036,#10000,1,1,1,0) +hasLocation(#20035,#20036) +#20037=* +exit_cfg_node(#20037,#20001) +hasLocation(#20037,#20021) +successor(#20023,#20028) +successor(#20032,#20034) +successor(#20034,#20024) +successor(#20031,#20026) +successor(#20028,#20031) +successor(#20026,#20032) +successor(#20024,#20037) +successor(#20035,#20023) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/objectTypeSpread.js.trap b/javascript/extractor/tests/flow/output/trap/objectTypeSpread.js.trap index b6bb522eb5d9..85f67052329d 100644 --- a/javascript/extractor/tests/flow/output/trap/objectTypeSpread.js.trap +++ b/javascript/extractor/tests/flow/output/trap/objectTypeSpread.js.trap @@ -347,14 +347,16 @@ toplevels(#20001,0) #20134=@"loc,{#10000},1,1,4,24" locations_default(#20134,#10000,1,1,4,24) hasLocation(#20001,#20134) -#20135=* -entry_cfg_node(#20135,#20001) -#20136=@"loc,{#10000},1,1,1,0" -locations_default(#20136,#10000,1,1,1,0) -hasLocation(#20135,#20136) -#20137=* -exit_cfg_node(#20137,#20001) -hasLocation(#20137,#20133) -successor(#20135,#20137) +#20135=@"var;{this};{#20000}" +variables(#20135,"this",#20000) +#20136=* +entry_cfg_node(#20136,#20001) +#20137=@"loc,{#10000},1,1,1,0" +locations_default(#20137,#10000,1,1,1,0) +hasLocation(#20136,#20137) +#20138=* +exit_cfg_node(#20138,#20001) +hasLocation(#20138,#20133) +successor(#20136,#20138) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/optParms.js.trap b/javascript/extractor/tests/flow/output/trap/optParms.js.trap index 44212bfc13e8..4c4cb33ef529 100644 --- a/javascript/extractor/tests/flow/output/trap/optParms.js.trap +++ b/javascript/extractor/tests/flow/output/trap/optParms.js.trap @@ -155,143 +155,145 @@ hasLocation(#20001,#20056) variables(#20057,"f",#20000) #20058=@"var;{g};{#20000}" variables(#20058,"g",#20000) -#20059=* -stmts(#20059,23,#20001,0,"let f = (x?) => {};") -hasLocation(#20059,#20003) -stmt_containers(#20059,#20001) +#20059=@"var;{this};{#20000}" +variables(#20059,"this",#20000) #20060=* -exprs(#20060,64,#20059,0,"f = (x?) => {}") -#20061=@"loc,{#10000},1,5,1,18" -locations_default(#20061,#10000,1,5,1,18) -hasLocation(#20060,#20061) -enclosing_stmt(#20060,#20059) -expr_containers(#20060,#20001) -#20062=* -exprs(#20062,78,#20060,0,"f") -hasLocation(#20062,#20009) -enclosing_stmt(#20062,#20059) -expr_containers(#20062,#20001) -literals("f","f",#20062) -decl(#20062,#20057) +stmts(#20060,23,#20001,0,"let f = (x?) => {};") +hasLocation(#20060,#20003) +stmt_containers(#20060,#20001) +#20061=* +exprs(#20061,64,#20060,0,"f = (x?) => {}") +#20062=@"loc,{#10000},1,5,1,18" +locations_default(#20062,#10000,1,5,1,18) +hasLocation(#20061,#20062) +enclosing_stmt(#20061,#20060) +expr_containers(#20061,#20001) #20063=* -exprs(#20063,65,#20060,1,"(x?) => {}") -#20064=@"loc,{#10000},1,9,1,18" -locations_default(#20064,#10000,1,9,1,18) -hasLocation(#20063,#20064) -enclosing_stmt(#20063,#20059) +exprs(#20063,78,#20061,0,"f") +hasLocation(#20063,#20009) +enclosing_stmt(#20063,#20060) expr_containers(#20063,#20001) -#20065=* -scopes(#20065,1) -scopenodes(#20063,#20065) -scopenesting(#20065,#20000) -#20066=@"var;{x};{#20065}" -variables(#20066,"x",#20065) -#20067=* -exprs(#20067,78,#20063,0,"x") -hasLocation(#20067,#20015) -expr_containers(#20067,#20063) -literals("x","x",#20067) -decl(#20067,#20066) +literals("f","f",#20063) +decl(#20063,#20057) +#20064=* +exprs(#20064,65,#20061,1,"(x?) => {}") +#20065=@"loc,{#10000},1,9,1,18" +locations_default(#20065,#10000,1,9,1,18) +hasLocation(#20064,#20065) +enclosing_stmt(#20064,#20060) +expr_containers(#20064,#20001) +#20066=* +scopes(#20066,1) +scopenodes(#20064,#20066) +scopenesting(#20066,#20000) +#20067=@"var;{x};{#20066}" +variables(#20067,"x",#20066) #20068=* -stmts(#20068,1,#20063,-2,"{}") -#20069=@"loc,{#10000},1,17,1,18" -locations_default(#20069,#10000,1,17,1,18) -hasLocation(#20068,#20069) -stmt_containers(#20068,#20063) -#20070=* -stmts(#20070,23,#20001,1,"let g = ... => {};") -hasLocation(#20070,#20005) -stmt_containers(#20070,#20001) +exprs(#20068,78,#20064,0,"x") +hasLocation(#20068,#20015) +expr_containers(#20068,#20064) +literals("x","x",#20068) +decl(#20068,#20067) +#20069=* +stmts(#20069,1,#20064,-2,"{}") +#20070=@"loc,{#10000},1,17,1,18" +locations_default(#20070,#10000,1,17,1,18) +hasLocation(#20069,#20070) +stmt_containers(#20069,#20064) #20071=* -exprs(#20071,64,#20070,0,"g = (x?, y) => {}") -#20072=@"loc,{#10000},2,5,2,21" -locations_default(#20072,#10000,2,5,2,21) -hasLocation(#20071,#20072) -enclosing_stmt(#20071,#20070) -expr_containers(#20071,#20001) -#20073=* -exprs(#20073,78,#20071,0,"g") -hasLocation(#20073,#20031) -enclosing_stmt(#20073,#20070) -expr_containers(#20073,#20001) -literals("g","g",#20073) -decl(#20073,#20058) +stmts(#20071,23,#20001,1,"let g = ... => {};") +hasLocation(#20071,#20005) +stmt_containers(#20071,#20001) +#20072=* +exprs(#20072,64,#20071,0,"g = (x?, y) => {}") +#20073=@"loc,{#10000},2,5,2,21" +locations_default(#20073,#10000,2,5,2,21) +hasLocation(#20072,#20073) +enclosing_stmt(#20072,#20071) +expr_containers(#20072,#20001) #20074=* -exprs(#20074,65,#20071,1,"(x?, y) => {}") -#20075=@"loc,{#10000},2,9,2,21" -locations_default(#20075,#10000,2,9,2,21) -hasLocation(#20074,#20075) -enclosing_stmt(#20074,#20070) +exprs(#20074,78,#20072,0,"g") +hasLocation(#20074,#20031) +enclosing_stmt(#20074,#20071) expr_containers(#20074,#20001) -#20076=* -scopes(#20076,1) -scopenodes(#20074,#20076) -scopenesting(#20076,#20000) -#20077=@"var;{x};{#20076}" -variables(#20077,"x",#20076) -#20078=* -exprs(#20078,78,#20074,0,"x") -hasLocation(#20078,#20037) -expr_containers(#20078,#20074) -literals("x","x",#20078) -decl(#20078,#20077) -#20079=@"var;{y};{#20076}" -variables(#20079,"y",#20076) -#20080=* -exprs(#20080,78,#20074,1,"y") -hasLocation(#20080,#20043) -expr_containers(#20080,#20074) -literals("y","y",#20080) -decl(#20080,#20079) +literals("g","g",#20074) +decl(#20074,#20058) +#20075=* +exprs(#20075,65,#20072,1,"(x?, y) => {}") +#20076=@"loc,{#10000},2,9,2,21" +locations_default(#20076,#10000,2,9,2,21) +hasLocation(#20075,#20076) +enclosing_stmt(#20075,#20071) +expr_containers(#20075,#20001) +#20077=* +scopes(#20077,1) +scopenodes(#20075,#20077) +scopenesting(#20077,#20000) +#20078=@"var;{x};{#20077}" +variables(#20078,"x",#20077) +#20079=* +exprs(#20079,78,#20075,0,"x") +hasLocation(#20079,#20037) +expr_containers(#20079,#20075) +literals("x","x",#20079) +decl(#20079,#20078) +#20080=@"var;{y};{#20077}" +variables(#20080,"y",#20077) #20081=* -stmts(#20081,1,#20074,-2,"{}") -#20082=@"loc,{#10000},2,20,2,21" -locations_default(#20082,#10000,2,20,2,21) -hasLocation(#20081,#20082) -stmt_containers(#20081,#20074) -#20083=* -entry_cfg_node(#20083,#20001) -#20084=@"loc,{#10000},1,1,1,0" -locations_default(#20084,#10000,1,1,1,0) -hasLocation(#20083,#20084) -#20085=* -exit_cfg_node(#20085,#20001) -hasLocation(#20085,#20055) -successor(#20070,#20073) -successor(#20074,#20071) +exprs(#20081,78,#20075,1,"y") +hasLocation(#20081,#20043) +expr_containers(#20081,#20075) +literals("y","y",#20081) +decl(#20081,#20080) +#20082=* +stmts(#20082,1,#20075,-2,"{}") +#20083=@"loc,{#10000},2,20,2,21" +locations_default(#20083,#10000,2,20,2,21) +hasLocation(#20082,#20083) +stmt_containers(#20082,#20075) +#20084=* +entry_cfg_node(#20084,#20001) +#20085=@"loc,{#10000},1,1,1,0" +locations_default(#20085,#10000,1,1,1,0) +hasLocation(#20084,#20085) #20086=* -entry_cfg_node(#20086,#20074) -#20087=@"loc,{#10000},2,9,2,8" -locations_default(#20087,#10000,2,9,2,8) -hasLocation(#20086,#20087) -#20088=* -exit_cfg_node(#20088,#20074) -#20089=@"loc,{#10000},2,22,2,21" -locations_default(#20089,#10000,2,22,2,21) -hasLocation(#20088,#20089) -successor(#20081,#20088) -successor(#20080,#20081) -successor(#20078,#20080) -successor(#20086,#20078) -successor(#20073,#20074) -successor(#20071,#20085) -successor(#20059,#20062) -successor(#20063,#20060) -#20090=* -entry_cfg_node(#20090,#20063) -#20091=@"loc,{#10000},1,9,1,8" -locations_default(#20091,#10000,1,9,1,8) -hasLocation(#20090,#20091) -#20092=* -exit_cfg_node(#20092,#20063) -#20093=@"loc,{#10000},1,19,1,18" -locations_default(#20093,#10000,1,19,1,18) -hasLocation(#20092,#20093) -successor(#20068,#20092) -successor(#20067,#20068) -successor(#20090,#20067) -successor(#20062,#20063) -successor(#20060,#20070) -successor(#20083,#20059) +exit_cfg_node(#20086,#20001) +hasLocation(#20086,#20055) +successor(#20071,#20074) +successor(#20075,#20072) +#20087=* +entry_cfg_node(#20087,#20075) +#20088=@"loc,{#10000},2,9,2,8" +locations_default(#20088,#10000,2,9,2,8) +hasLocation(#20087,#20088) +#20089=* +exit_cfg_node(#20089,#20075) +#20090=@"loc,{#10000},2,22,2,21" +locations_default(#20090,#10000,2,22,2,21) +hasLocation(#20089,#20090) +successor(#20082,#20089) +successor(#20081,#20082) +successor(#20079,#20081) +successor(#20087,#20079) +successor(#20074,#20075) +successor(#20072,#20086) +successor(#20060,#20063) +successor(#20064,#20061) +#20091=* +entry_cfg_node(#20091,#20064) +#20092=@"loc,{#10000},1,9,1,8" +locations_default(#20092,#10000,1,9,1,8) +hasLocation(#20091,#20092) +#20093=* +exit_cfg_node(#20093,#20064) +#20094=@"loc,{#10000},1,19,1,18" +locations_default(#20094,#10000,1,19,1,18) +hasLocation(#20093,#20094) +successor(#20069,#20093) +successor(#20068,#20069) +successor(#20091,#20068) +successor(#20063,#20064) +successor(#20061,#20071) +successor(#20084,#20060) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/parmAnonFunctionType.js.trap b/javascript/extractor/tests/flow/output/trap/parmAnonFunctionType.js.trap index 7fc6015201a9..11f32ffffb54 100644 --- a/javascript/extractor/tests/flow/output/trap/parmAnonFunctionType.js.trap +++ b/javascript/extractor/tests/flow/output/trap/parmAnonFunctionType.js.trap @@ -148,92 +148,96 @@ locations_default(#20053,#10000,1,1,4,0) hasLocation(#20001,#20053) #20054=@"var;{f};{#20000}" variables(#20054,"f",#20000) -#20055=* -stmts(#20055,17,#20001,0,"functio ... (42);\n}") -#20056=@"loc,{#10000},1,1,3,1" -locations_default(#20056,#10000,1,1,3,1) -hasLocation(#20055,#20056) -stmt_containers(#20055,#20001) -#20057=* -exprs(#20057,78,#20055,-1,"f") -hasLocation(#20057,#20011) -expr_containers(#20057,#20055) -literals("f","f",#20057) -decl(#20057,#20054) +#20055=@"var;{this};{#20000}" +variables(#20055,"this",#20000) +#20056=* +stmts(#20056,17,#20001,0,"functio ... (42);\n}") +#20057=@"loc,{#10000},1,1,3,1" +locations_default(#20057,#10000,1,1,3,1) +hasLocation(#20056,#20057) +stmt_containers(#20056,#20001) #20058=* -scopes(#20058,1) -scopenodes(#20055,#20058) -scopenesting(#20058,#20000) -#20059=@"var;{g};{#20058}" -variables(#20059,"g",#20058) -#20060=* -exprs(#20060,78,#20055,0,"g: ({y: ... => void") -#20061=@"loc,{#10000},1,12,1,32" -locations_default(#20061,#10000,1,12,1,32) -hasLocation(#20060,#20061) -expr_containers(#20060,#20055) -literals("g","g",#20060) -decl(#20060,#20059) -#20062=@"var;{arguments};{#20058}" -variables(#20062,"arguments",#20058) -is_arguments_object(#20062) -#20063=* -stmts(#20063,1,#20055,-2,"{\n g(42);\n}") -#20064=@"loc,{#10000},1,35,3,1" -locations_default(#20064,#10000,1,35,3,1) -hasLocation(#20063,#20064) -stmt_containers(#20063,#20055) +exprs(#20058,78,#20056,-1,"f") +hasLocation(#20058,#20011) +expr_containers(#20058,#20056) +literals("f","f",#20058) +decl(#20058,#20054) +#20059=* +scopes(#20059,1) +scopenodes(#20056,#20059) +scopenesting(#20059,#20000) +#20060=@"var;{this};{#20059}" +variables(#20060,"this",#20059) +#20061=@"var;{g};{#20059}" +variables(#20061,"g",#20059) +#20062=* +exprs(#20062,78,#20056,0,"g: ({y: ... => void") +#20063=@"loc,{#10000},1,12,1,32" +locations_default(#20063,#10000,1,12,1,32) +hasLocation(#20062,#20063) +expr_containers(#20062,#20056) +literals("g","g",#20062) +decl(#20062,#20061) +#20064=@"var;{arguments};{#20059}" +variables(#20064,"arguments",#20059) +is_arguments_object(#20064) #20065=* -stmts(#20065,2,#20063,0,"g(42);") -#20066=@"loc,{#10000},2,3,2,8" -locations_default(#20066,#10000,2,3,2,8) +stmts(#20065,1,#20056,-2,"{\n g(42);\n}") +#20066=@"loc,{#10000},1,35,3,1" +locations_default(#20066,#10000,1,35,3,1) hasLocation(#20065,#20066) -stmt_containers(#20065,#20055) +stmt_containers(#20065,#20056) #20067=* -exprs(#20067,13,#20065,0,"g(42)") -#20068=@"loc,{#10000},2,3,2,7" -locations_default(#20068,#10000,2,3,2,7) +stmts(#20067,2,#20065,0,"g(42);") +#20068=@"loc,{#10000},2,3,2,8" +locations_default(#20068,#10000,2,3,2,8) hasLocation(#20067,#20068) -enclosing_stmt(#20067,#20065) -expr_containers(#20067,#20055) +stmt_containers(#20067,#20056) #20069=* -exprs(#20069,79,#20067,-1,"g") -hasLocation(#20069,#20041) -enclosing_stmt(#20069,#20065) -expr_containers(#20069,#20055) -literals("g","g",#20069) -bind(#20069,#20059) -#20070=* -exprs(#20070,3,#20067,0,"42") -hasLocation(#20070,#20045) -enclosing_stmt(#20070,#20065) -expr_containers(#20070,#20055) -literals("42","42",#20070) +exprs(#20069,13,#20067,0,"g(42)") +#20070=@"loc,{#10000},2,3,2,7" +locations_default(#20070,#10000,2,3,2,7) +hasLocation(#20069,#20070) +enclosing_stmt(#20069,#20067) +expr_containers(#20069,#20056) #20071=* -entry_cfg_node(#20071,#20001) -#20072=@"loc,{#10000},1,1,1,0" -locations_default(#20072,#10000,1,1,1,0) -hasLocation(#20071,#20072) +exprs(#20071,79,#20069,-1,"g") +hasLocation(#20071,#20041) +enclosing_stmt(#20071,#20067) +expr_containers(#20071,#20056) +literals("g","g",#20071) +bind(#20071,#20061) +#20072=* +exprs(#20072,3,#20069,0,"42") +hasLocation(#20072,#20045) +enclosing_stmt(#20072,#20067) +expr_containers(#20072,#20056) +literals("42","42",#20072) #20073=* -exit_cfg_node(#20073,#20001) -hasLocation(#20073,#20052) -successor(#20055,#20073) -#20074=* -entry_cfg_node(#20074,#20055) -hasLocation(#20074,#20072) +entry_cfg_node(#20073,#20001) +#20074=@"loc,{#10000},1,1,1,0" +locations_default(#20074,#10000,1,1,1,0) +hasLocation(#20073,#20074) #20075=* -exit_cfg_node(#20075,#20055) -#20076=@"loc,{#10000},3,2,3,1" -locations_default(#20076,#10000,3,2,3,1) -hasLocation(#20075,#20076) -successor(#20065,#20069) -successor(#20070,#20067) -successor(#20069,#20070) -successor(#20067,#20075) -successor(#20063,#20065) -successor(#20060,#20063) -successor(#20074,#20060) -successor(#20057,#20055) -successor(#20071,#20057) +exit_cfg_node(#20075,#20001) +hasLocation(#20075,#20052) +successor(#20056,#20075) +#20076=* +entry_cfg_node(#20076,#20056) +hasLocation(#20076,#20074) +#20077=* +exit_cfg_node(#20077,#20056) +#20078=@"loc,{#10000},3,2,3,1" +locations_default(#20078,#10000,3,2,3,1) +hasLocation(#20077,#20078) +successor(#20067,#20071) +successor(#20072,#20069) +successor(#20071,#20072) +successor(#20069,#20077) +successor(#20065,#20067) +successor(#20062,#20065) +successor(#20076,#20062) +successor(#20058,#20056) +successor(#20073,#20058) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/practicallyAmbigiousExplicitTypeParameters.js.trap b/javascript/extractor/tests/flow/output/trap/practicallyAmbigiousExplicitTypeParameters.js.trap index 8d5794363306..9b299d3c679c 100644 --- a/javascript/extractor/tests/flow/output/trap/practicallyAmbigiousExplicitTypeParameters.js.trap +++ b/javascript/extractor/tests/flow/output/trap/practicallyAmbigiousExplicitTypeParameters.js.trap @@ -561,704 +561,706 @@ toplevels(#20001,0) #20220=@"loc,{#10000},1,1,3,53" locations_default(#20220,#10000,1,1,3,53) hasLocation(#20001,#20220) -#20221=* -stmts(#20221,3,#20001,0,"if(!(0< ... |0))){}") -hasLocation(#20221,#20003) -stmt_containers(#20221,#20001) +#20221=@"var;{this};{#20000}" +variables(#20221,"this",#20000) #20222=* -exprs(#20222,18,#20221,0,"!(0<(jd|0)&0>(Wc|0))") -#20223=@"loc,{#10000},1,4,1,23" -locations_default(#20223,#10000,1,4,1,23) -hasLocation(#20222,#20223) -enclosing_stmt(#20222,#20221) -expr_containers(#20222,#20001) -#20224=* -exprs(#20224,63,#20222,0,"(0<(jd|0)&0>(Wc|0))") -#20225=@"loc,{#10000},1,5,1,23" -locations_default(#20225,#10000,1,5,1,23) -hasLocation(#20224,#20225) -enclosing_stmt(#20224,#20221) -expr_containers(#20224,#20001) -#20226=* -exprs(#20226,41,#20224,0,"0<(jd|0)&0>(Wc|0)") -#20227=@"loc,{#10000},1,6,1,22" -locations_default(#20227,#10000,1,6,1,22) -hasLocation(#20226,#20227) -enclosing_stmt(#20226,#20221) -expr_containers(#20226,#20001) -#20228=* -exprs(#20228,27,#20226,0,"0<(jd|0)") -#20229=@"loc,{#10000},1,6,1,13" -locations_default(#20229,#10000,1,6,1,13) -hasLocation(#20228,#20229) -enclosing_stmt(#20228,#20221) -expr_containers(#20228,#20001) -#20230=* -exprs(#20230,3,#20228,0,"0") -hasLocation(#20230,#20017) -enclosing_stmt(#20230,#20221) -expr_containers(#20230,#20001) -literals("0","0",#20230) +stmts(#20222,3,#20001,0,"if(!(0< ... |0))){}") +hasLocation(#20222,#20003) +stmt_containers(#20222,#20001) +#20223=* +exprs(#20223,18,#20222,0,"!(0<(jd|0)&0>(Wc|0))") +#20224=@"loc,{#10000},1,4,1,23" +locations_default(#20224,#10000,1,4,1,23) +hasLocation(#20223,#20224) +enclosing_stmt(#20223,#20222) +expr_containers(#20223,#20001) +#20225=* +exprs(#20225,63,#20223,0,"(0<(jd|0)&0>(Wc|0))") +#20226=@"loc,{#10000},1,5,1,23" +locations_default(#20226,#10000,1,5,1,23) +hasLocation(#20225,#20226) +enclosing_stmt(#20225,#20222) +expr_containers(#20225,#20001) +#20227=* +exprs(#20227,41,#20225,0,"0<(jd|0)&0>(Wc|0)") +#20228=@"loc,{#10000},1,6,1,22" +locations_default(#20228,#10000,1,6,1,22) +hasLocation(#20227,#20228) +enclosing_stmt(#20227,#20222) +expr_containers(#20227,#20001) +#20229=* +exprs(#20229,27,#20227,0,"0<(jd|0)") +#20230=@"loc,{#10000},1,6,1,13" +locations_default(#20230,#10000,1,6,1,13) +hasLocation(#20229,#20230) +enclosing_stmt(#20229,#20222) +expr_containers(#20229,#20001) #20231=* -exprs(#20231,63,#20228,1,"(jd|0)") -#20232=@"loc,{#10000},1,8,1,13" -locations_default(#20232,#10000,1,8,1,13) -hasLocation(#20231,#20232) -enclosing_stmt(#20231,#20221) +exprs(#20231,3,#20229,0,"0") +hasLocation(#20231,#20017) +enclosing_stmt(#20231,#20222) expr_containers(#20231,#20001) -#20233=* -exprs(#20233,39,#20231,0,"jd|0") -#20234=@"loc,{#10000},1,9,1,12" -locations_default(#20234,#10000,1,9,1,12) -hasLocation(#20233,#20234) -enclosing_stmt(#20233,#20221) -expr_containers(#20233,#20001) -#20235=* -exprs(#20235,79,#20233,0,"jd") -hasLocation(#20235,#20023) -enclosing_stmt(#20235,#20221) -expr_containers(#20235,#20001) -literals("jd","jd",#20235) -#20236=@"var;{jd};{#20000}" -variables(#20236,"jd",#20000) -bind(#20235,#20236) -#20237=* -exprs(#20237,3,#20233,1,"0") -hasLocation(#20237,#20027) -enclosing_stmt(#20237,#20221) -expr_containers(#20237,#20001) -literals("0","0",#20237) +literals("0","0",#20231) +#20232=* +exprs(#20232,63,#20229,1,"(jd|0)") +#20233=@"loc,{#10000},1,8,1,13" +locations_default(#20233,#10000,1,8,1,13) +hasLocation(#20232,#20233) +enclosing_stmt(#20232,#20222) +expr_containers(#20232,#20001) +#20234=* +exprs(#20234,39,#20232,0,"jd|0") +#20235=@"loc,{#10000},1,9,1,12" +locations_default(#20235,#10000,1,9,1,12) +hasLocation(#20234,#20235) +enclosing_stmt(#20234,#20222) +expr_containers(#20234,#20001) +#20236=* +exprs(#20236,79,#20234,0,"jd") +hasLocation(#20236,#20023) +enclosing_stmt(#20236,#20222) +expr_containers(#20236,#20001) +literals("jd","jd",#20236) +#20237=@"var;{jd};{#20000}" +variables(#20237,"jd",#20000) +bind(#20236,#20237) #20238=* -exprs(#20238,29,#20226,1,"0>(Wc|0)") -#20239=@"loc,{#10000},1,15,1,22" -locations_default(#20239,#10000,1,15,1,22) -hasLocation(#20238,#20239) -enclosing_stmt(#20238,#20221) +exprs(#20238,3,#20234,1,"0") +hasLocation(#20238,#20027) +enclosing_stmt(#20238,#20222) expr_containers(#20238,#20001) -#20240=* -exprs(#20240,3,#20238,0,"0") -hasLocation(#20240,#20033) -enclosing_stmt(#20240,#20221) -expr_containers(#20240,#20001) -literals("0","0",#20240) +literals("0","0",#20238) +#20239=* +exprs(#20239,29,#20227,1,"0>(Wc|0)") +#20240=@"loc,{#10000},1,15,1,22" +locations_default(#20240,#10000,1,15,1,22) +hasLocation(#20239,#20240) +enclosing_stmt(#20239,#20222) +expr_containers(#20239,#20001) #20241=* -exprs(#20241,63,#20238,1,"(Wc|0)") -#20242=@"loc,{#10000},1,17,1,22" -locations_default(#20242,#10000,1,17,1,22) -hasLocation(#20241,#20242) -enclosing_stmt(#20241,#20221) +exprs(#20241,3,#20239,0,"0") +hasLocation(#20241,#20033) +enclosing_stmt(#20241,#20222) expr_containers(#20241,#20001) -#20243=* -exprs(#20243,39,#20241,0,"Wc|0") -#20244=@"loc,{#10000},1,18,1,21" -locations_default(#20244,#10000,1,18,1,21) -hasLocation(#20243,#20244) -enclosing_stmt(#20243,#20221) -expr_containers(#20243,#20001) -#20245=* -exprs(#20245,79,#20243,0,"Wc") -hasLocation(#20245,#20039) -enclosing_stmt(#20245,#20221) -expr_containers(#20245,#20001) -literals("Wc","Wc",#20245) -#20246=@"var;{Wc};{#20000}" -variables(#20246,"Wc",#20000) -bind(#20245,#20246) -#20247=* -exprs(#20247,3,#20243,1,"0") -hasLocation(#20247,#20043) -enclosing_stmt(#20247,#20221) -expr_containers(#20247,#20001) -literals("0","0",#20247) +literals("0","0",#20241) +#20242=* +exprs(#20242,63,#20239,1,"(Wc|0)") +#20243=@"loc,{#10000},1,17,1,22" +locations_default(#20243,#10000,1,17,1,22) +hasLocation(#20242,#20243) +enclosing_stmt(#20242,#20222) +expr_containers(#20242,#20001) +#20244=* +exprs(#20244,39,#20242,0,"Wc|0") +#20245=@"loc,{#10000},1,18,1,21" +locations_default(#20245,#10000,1,18,1,21) +hasLocation(#20244,#20245) +enclosing_stmt(#20244,#20222) +expr_containers(#20244,#20001) +#20246=* +exprs(#20246,79,#20244,0,"Wc") +hasLocation(#20246,#20039) +enclosing_stmt(#20246,#20222) +expr_containers(#20246,#20001) +literals("Wc","Wc",#20246) +#20247=@"var;{Wc};{#20000}" +variables(#20247,"Wc",#20000) +bind(#20246,#20247) #20248=* -stmts(#20248,1,#20221,1,"{}") -#20249=@"loc,{#10000},1,25,1,26" -locations_default(#20249,#10000,1,25,1,26) -hasLocation(#20248,#20249) -stmt_containers(#20248,#20001) -#20250=* -stmts(#20250,2,#20001,1,"g=(g|0) ... 0)?e:g;") -hasLocation(#20250,#20005) -stmt_containers(#20250,#20001) +exprs(#20248,3,#20244,1,"0") +hasLocation(#20248,#20043) +enclosing_stmt(#20248,#20222) +expr_containers(#20248,#20001) +literals("0","0",#20248) +#20249=* +stmts(#20249,1,#20222,1,"{}") +#20250=@"loc,{#10000},1,25,1,26" +locations_default(#20250,#10000,1,25,1,26) +hasLocation(#20249,#20250) +stmt_containers(#20249,#20001) #20251=* -exprs(#20251,47,#20250,0,"g=(g|0) ... |0)?e:g") -#20252=@"loc,{#10000},2,1,2,29" -locations_default(#20252,#10000,2,1,2,29) -hasLocation(#20251,#20252) -enclosing_stmt(#20251,#20250) -expr_containers(#20251,#20001) -#20253=* -exprs(#20253,79,#20251,0,"g") -hasLocation(#20253,#20055) -enclosing_stmt(#20253,#20250) -expr_containers(#20253,#20001) -literals("g","g",#20253) -#20254=@"var;{g};{#20000}" -variables(#20254,"g",#20000) -bind(#20253,#20254) -#20255=* -exprs(#20255,11,#20251,1,"(g|0)<( ... |0)?e:g") -#20256=@"loc,{#10000},2,3,2,29" -locations_default(#20256,#10000,2,3,2,29) -hasLocation(#20255,#20256) -enclosing_stmt(#20255,#20250) -expr_containers(#20255,#20001) -#20257=* -exprs(#20257,39,#20255,0,"(g|0)<( ... )>(b|0)") -#20258=@"loc,{#10000},2,3,2,25" -locations_default(#20258,#10000,2,3,2,25) -hasLocation(#20257,#20258) -enclosing_stmt(#20257,#20250) -expr_containers(#20257,#20001) -#20259=* -exprs(#20259,27,#20257,0,"(g|0)<(e|0)") -#20260=@"loc,{#10000},2,3,2,13" -locations_default(#20260,#10000,2,3,2,13) -hasLocation(#20259,#20260) -enclosing_stmt(#20259,#20250) -expr_containers(#20259,#20001) -#20261=* -exprs(#20261,63,#20259,0,"(g|0)") -#20262=@"loc,{#10000},2,3,2,7" -locations_default(#20262,#10000,2,3,2,7) -hasLocation(#20261,#20262) -enclosing_stmt(#20261,#20250) -expr_containers(#20261,#20001) -#20263=* -exprs(#20263,39,#20261,0,"g|0") -#20264=@"loc,{#10000},2,4,2,6" -locations_default(#20264,#10000,2,4,2,6) -hasLocation(#20263,#20264) -enclosing_stmt(#20263,#20250) -expr_containers(#20263,#20001) -#20265=* -exprs(#20265,79,#20263,0,"g") -hasLocation(#20265,#20061) -enclosing_stmt(#20265,#20250) -expr_containers(#20265,#20001) -literals("g","g",#20265) -bind(#20265,#20254) +stmts(#20251,2,#20001,1,"g=(g|0) ... 0)?e:g;") +hasLocation(#20251,#20005) +stmt_containers(#20251,#20001) +#20252=* +exprs(#20252,47,#20251,0,"g=(g|0) ... |0)?e:g") +#20253=@"loc,{#10000},2,1,2,29" +locations_default(#20253,#10000,2,1,2,29) +hasLocation(#20252,#20253) +enclosing_stmt(#20252,#20251) +expr_containers(#20252,#20001) +#20254=* +exprs(#20254,79,#20252,0,"g") +hasLocation(#20254,#20055) +enclosing_stmt(#20254,#20251) +expr_containers(#20254,#20001) +literals("g","g",#20254) +#20255=@"var;{g};{#20000}" +variables(#20255,"g",#20000) +bind(#20254,#20255) +#20256=* +exprs(#20256,11,#20252,1,"(g|0)<( ... |0)?e:g") +#20257=@"loc,{#10000},2,3,2,29" +locations_default(#20257,#10000,2,3,2,29) +hasLocation(#20256,#20257) +enclosing_stmt(#20256,#20251) +expr_containers(#20256,#20001) +#20258=* +exprs(#20258,39,#20256,0,"(g|0)<( ... )>(b|0)") +#20259=@"loc,{#10000},2,3,2,25" +locations_default(#20259,#10000,2,3,2,25) +hasLocation(#20258,#20259) +enclosing_stmt(#20258,#20251) +expr_containers(#20258,#20001) +#20260=* +exprs(#20260,27,#20258,0,"(g|0)<(e|0)") +#20261=@"loc,{#10000},2,3,2,13" +locations_default(#20261,#10000,2,3,2,13) +hasLocation(#20260,#20261) +enclosing_stmt(#20260,#20251) +expr_containers(#20260,#20001) +#20262=* +exprs(#20262,63,#20260,0,"(g|0)") +#20263=@"loc,{#10000},2,3,2,7" +locations_default(#20263,#10000,2,3,2,7) +hasLocation(#20262,#20263) +enclosing_stmt(#20262,#20251) +expr_containers(#20262,#20001) +#20264=* +exprs(#20264,39,#20262,0,"g|0") +#20265=@"loc,{#10000},2,4,2,6" +locations_default(#20265,#10000,2,4,2,6) +hasLocation(#20264,#20265) +enclosing_stmt(#20264,#20251) +expr_containers(#20264,#20001) #20266=* -exprs(#20266,3,#20263,1,"0") -hasLocation(#20266,#20065) -enclosing_stmt(#20266,#20250) +exprs(#20266,79,#20264,0,"g") +hasLocation(#20266,#20061) +enclosing_stmt(#20266,#20251) expr_containers(#20266,#20001) -literals("0","0",#20266) +literals("g","g",#20266) +bind(#20266,#20255) #20267=* -exprs(#20267,63,#20259,1,"(e|0)") -#20268=@"loc,{#10000},2,9,2,13" -locations_default(#20268,#10000,2,9,2,13) -hasLocation(#20267,#20268) -enclosing_stmt(#20267,#20250) +exprs(#20267,3,#20264,1,"0") +hasLocation(#20267,#20065) +enclosing_stmt(#20267,#20251) expr_containers(#20267,#20001) -#20269=* -exprs(#20269,39,#20267,0,"e|0") -#20270=@"loc,{#10000},2,10,2,12" -locations_default(#20270,#10000,2,10,2,12) -hasLocation(#20269,#20270) -enclosing_stmt(#20269,#20250) -expr_containers(#20269,#20001) -#20271=* -exprs(#20271,79,#20269,0,"e") -hasLocation(#20271,#20073) -enclosing_stmt(#20271,#20250) -expr_containers(#20271,#20001) -literals("e","e",#20271) -#20272=@"var;{e};{#20000}" -variables(#20272,"e",#20000) -bind(#20271,#20272) -#20273=* -exprs(#20273,3,#20269,1,"0") -hasLocation(#20273,#20077) -enclosing_stmt(#20273,#20250) -expr_containers(#20273,#20001) -literals("0","0",#20273) +literals("0","0",#20267) +#20268=* +exprs(#20268,63,#20260,1,"(e|0)") +#20269=@"loc,{#10000},2,9,2,13" +locations_default(#20269,#10000,2,9,2,13) +hasLocation(#20268,#20269) +enclosing_stmt(#20268,#20251) +expr_containers(#20268,#20001) +#20270=* +exprs(#20270,39,#20268,0,"e|0") +#20271=@"loc,{#10000},2,10,2,12" +locations_default(#20271,#10000,2,10,2,12) +hasLocation(#20270,#20271) +enclosing_stmt(#20270,#20251) +expr_containers(#20270,#20001) +#20272=* +exprs(#20272,79,#20270,0,"e") +hasLocation(#20272,#20073) +enclosing_stmt(#20272,#20251) +expr_containers(#20272,#20001) +literals("e","e",#20272) +#20273=@"var;{e};{#20000}" +variables(#20273,"e",#20000) +bind(#20272,#20273) #20274=* -exprs(#20274,29,#20257,1,"(g|0)>(b|0)") -#20275=@"loc,{#10000},2,15,2,25" -locations_default(#20275,#10000,2,15,2,25) -hasLocation(#20274,#20275) -enclosing_stmt(#20274,#20250) +exprs(#20274,3,#20270,1,"0") +hasLocation(#20274,#20077) +enclosing_stmt(#20274,#20251) expr_containers(#20274,#20001) -#20276=* -exprs(#20276,63,#20274,0,"(g|0)") -#20277=@"loc,{#10000},2,15,2,19" -locations_default(#20277,#10000,2,15,2,19) -hasLocation(#20276,#20277) -enclosing_stmt(#20276,#20250) -expr_containers(#20276,#20001) -#20278=* -exprs(#20278,39,#20276,0,"g|0") -#20279=@"loc,{#10000},2,16,2,18" -locations_default(#20279,#10000,2,16,2,18) -hasLocation(#20278,#20279) -enclosing_stmt(#20278,#20250) -expr_containers(#20278,#20001) -#20280=* -exprs(#20280,79,#20278,0,"g") -hasLocation(#20280,#20085) -enclosing_stmt(#20280,#20250) -expr_containers(#20280,#20001) -literals("g","g",#20280) -bind(#20280,#20254) +literals("0","0",#20274) +#20275=* +exprs(#20275,29,#20258,1,"(g|0)>(b|0)") +#20276=@"loc,{#10000},2,15,2,25" +locations_default(#20276,#10000,2,15,2,25) +hasLocation(#20275,#20276) +enclosing_stmt(#20275,#20251) +expr_containers(#20275,#20001) +#20277=* +exprs(#20277,63,#20275,0,"(g|0)") +#20278=@"loc,{#10000},2,15,2,19" +locations_default(#20278,#10000,2,15,2,19) +hasLocation(#20277,#20278) +enclosing_stmt(#20277,#20251) +expr_containers(#20277,#20001) +#20279=* +exprs(#20279,39,#20277,0,"g|0") +#20280=@"loc,{#10000},2,16,2,18" +locations_default(#20280,#10000,2,16,2,18) +hasLocation(#20279,#20280) +enclosing_stmt(#20279,#20251) +expr_containers(#20279,#20001) #20281=* -exprs(#20281,3,#20278,1,"0") -hasLocation(#20281,#20089) -enclosing_stmt(#20281,#20250) +exprs(#20281,79,#20279,0,"g") +hasLocation(#20281,#20085) +enclosing_stmt(#20281,#20251) expr_containers(#20281,#20001) -literals("0","0",#20281) +literals("g","g",#20281) +bind(#20281,#20255) #20282=* -exprs(#20282,63,#20274,1,"(b|0)") -#20283=@"loc,{#10000},2,21,2,25" -locations_default(#20283,#10000,2,21,2,25) -hasLocation(#20282,#20283) -enclosing_stmt(#20282,#20250) +exprs(#20282,3,#20279,1,"0") +hasLocation(#20282,#20089) +enclosing_stmt(#20282,#20251) expr_containers(#20282,#20001) -#20284=* -exprs(#20284,39,#20282,0,"b|0") -#20285=@"loc,{#10000},2,22,2,24" -locations_default(#20285,#10000,2,22,2,24) -hasLocation(#20284,#20285) -enclosing_stmt(#20284,#20250) -expr_containers(#20284,#20001) -#20286=* -exprs(#20286,79,#20284,0,"b") -hasLocation(#20286,#20097) -enclosing_stmt(#20286,#20250) -expr_containers(#20286,#20001) -literals("b","b",#20286) -#20287=@"var;{b};{#20000}" -variables(#20287,"b",#20000) -bind(#20286,#20287) -#20288=* -exprs(#20288,3,#20284,1,"0") -hasLocation(#20288,#20101) -enclosing_stmt(#20288,#20250) -expr_containers(#20288,#20001) -literals("0","0",#20288) +literals("0","0",#20282) +#20283=* +exprs(#20283,63,#20275,1,"(b|0)") +#20284=@"loc,{#10000},2,21,2,25" +locations_default(#20284,#10000,2,21,2,25) +hasLocation(#20283,#20284) +enclosing_stmt(#20283,#20251) +expr_containers(#20283,#20001) +#20285=* +exprs(#20285,39,#20283,0,"b|0") +#20286=@"loc,{#10000},2,22,2,24" +locations_default(#20286,#10000,2,22,2,24) +hasLocation(#20285,#20286) +enclosing_stmt(#20285,#20251) +expr_containers(#20285,#20001) +#20287=* +exprs(#20287,79,#20285,0,"b") +hasLocation(#20287,#20097) +enclosing_stmt(#20287,#20251) +expr_containers(#20287,#20001) +literals("b","b",#20287) +#20288=@"var;{b};{#20000}" +variables(#20288,"b",#20000) +bind(#20287,#20288) #20289=* -exprs(#20289,79,#20255,1,"e") -hasLocation(#20289,#20107) -enclosing_stmt(#20289,#20250) +exprs(#20289,3,#20285,1,"0") +hasLocation(#20289,#20101) +enclosing_stmt(#20289,#20251) expr_containers(#20289,#20001) -literals("e","e",#20289) -bind(#20289,#20272) +literals("0","0",#20289) #20290=* -exprs(#20290,79,#20255,2,"g") -hasLocation(#20290,#20111) -enclosing_stmt(#20290,#20250) +exprs(#20290,79,#20256,1,"e") +hasLocation(#20290,#20107) +enclosing_stmt(#20290,#20251) expr_containers(#20290,#20001) -literals("g","g",#20290) -bind(#20290,#20254) +literals("e","e",#20290) +bind(#20290,#20273) #20291=* -stmts(#20291,3,#20001,2,"if((I|0 ... H|0)){}") -hasLocation(#20291,#20007) -stmt_containers(#20291,#20001) +exprs(#20291,79,#20256,2,"g") +hasLocation(#20291,#20111) +enclosing_stmt(#20291,#20251) +expr_containers(#20291,#20001) +literals("g","g",#20291) +bind(#20291,#20255) #20292=* -exprs(#20292,39,#20291,0,"(I|0)<( ... )>(H|0)") -#20293=@"loc,{#10000},3,4,3,50" -locations_default(#20293,#10000,3,4,3,50) -hasLocation(#20292,#20293) -enclosing_stmt(#20292,#20291) -expr_containers(#20292,#20001) -#20294=* -exprs(#20294,39,#20292,0,"(I|0)<( ... )<(F|0)") -#20295=@"loc,{#10000},3,4,3,38" -locations_default(#20295,#10000,3,4,3,38) -hasLocation(#20294,#20295) -enclosing_stmt(#20294,#20291) -expr_containers(#20294,#20001) -#20296=* -exprs(#20296,39,#20294,0,"(I|0)<( ... )>(P|0)") -#20297=@"loc,{#10000},3,4,3,26" -locations_default(#20297,#10000,3,4,3,26) -hasLocation(#20296,#20297) -enclosing_stmt(#20296,#20291) -expr_containers(#20296,#20001) -#20298=* -exprs(#20298,27,#20296,0,"(I|0)<(D|0)") -#20299=@"loc,{#10000},3,4,3,14" -locations_default(#20299,#10000,3,4,3,14) -hasLocation(#20298,#20299) -enclosing_stmt(#20298,#20291) -expr_containers(#20298,#20001) -#20300=* -exprs(#20300,63,#20298,0,"(I|0)") -#20301=@"loc,{#10000},3,4,3,8" -locations_default(#20301,#10000,3,4,3,8) -hasLocation(#20300,#20301) -enclosing_stmt(#20300,#20291) -expr_containers(#20300,#20001) -#20302=* -exprs(#20302,39,#20300,0,"I|0") -#20303=@"loc,{#10000},3,5,3,7" -locations_default(#20303,#10000,3,5,3,7) -hasLocation(#20302,#20303) -enclosing_stmt(#20302,#20291) -expr_containers(#20302,#20001) -#20304=* -exprs(#20304,79,#20302,0,"I") -hasLocation(#20304,#20121) -enclosing_stmt(#20304,#20291) -expr_containers(#20304,#20001) -literals("I","I",#20304) -#20305=@"var;{I};{#20000}" -variables(#20305,"I",#20000) -bind(#20304,#20305) -#20306=* -exprs(#20306,3,#20302,1,"0") -hasLocation(#20306,#20125) -enclosing_stmt(#20306,#20291) -expr_containers(#20306,#20001) -literals("0","0",#20306) +stmts(#20292,3,#20001,2,"if((I|0 ... H|0)){}") +hasLocation(#20292,#20007) +stmt_containers(#20292,#20001) +#20293=* +exprs(#20293,39,#20292,0,"(I|0)<( ... )>(H|0)") +#20294=@"loc,{#10000},3,4,3,50" +locations_default(#20294,#10000,3,4,3,50) +hasLocation(#20293,#20294) +enclosing_stmt(#20293,#20292) +expr_containers(#20293,#20001) +#20295=* +exprs(#20295,39,#20293,0,"(I|0)<( ... )<(F|0)") +#20296=@"loc,{#10000},3,4,3,38" +locations_default(#20296,#10000,3,4,3,38) +hasLocation(#20295,#20296) +enclosing_stmt(#20295,#20292) +expr_containers(#20295,#20001) +#20297=* +exprs(#20297,39,#20295,0,"(I|0)<( ... )>(P|0)") +#20298=@"loc,{#10000},3,4,3,26" +locations_default(#20298,#10000,3,4,3,26) +hasLocation(#20297,#20298) +enclosing_stmt(#20297,#20292) +expr_containers(#20297,#20001) +#20299=* +exprs(#20299,27,#20297,0,"(I|0)<(D|0)") +#20300=@"loc,{#10000},3,4,3,14" +locations_default(#20300,#10000,3,4,3,14) +hasLocation(#20299,#20300) +enclosing_stmt(#20299,#20292) +expr_containers(#20299,#20001) +#20301=* +exprs(#20301,63,#20299,0,"(I|0)") +#20302=@"loc,{#10000},3,4,3,8" +locations_default(#20302,#10000,3,4,3,8) +hasLocation(#20301,#20302) +enclosing_stmt(#20301,#20292) +expr_containers(#20301,#20001) +#20303=* +exprs(#20303,39,#20301,0,"I|0") +#20304=@"loc,{#10000},3,5,3,7" +locations_default(#20304,#10000,3,5,3,7) +hasLocation(#20303,#20304) +enclosing_stmt(#20303,#20292) +expr_containers(#20303,#20001) +#20305=* +exprs(#20305,79,#20303,0,"I") +hasLocation(#20305,#20121) +enclosing_stmt(#20305,#20292) +expr_containers(#20305,#20001) +literals("I","I",#20305) +#20306=@"var;{I};{#20000}" +variables(#20306,"I",#20000) +bind(#20305,#20306) #20307=* -exprs(#20307,63,#20298,1,"(D|0)") -#20308=@"loc,{#10000},3,10,3,14" -locations_default(#20308,#10000,3,10,3,14) -hasLocation(#20307,#20308) -enclosing_stmt(#20307,#20291) +exprs(#20307,3,#20303,1,"0") +hasLocation(#20307,#20125) +enclosing_stmt(#20307,#20292) expr_containers(#20307,#20001) -#20309=* -exprs(#20309,39,#20307,0,"D|0") -#20310=@"loc,{#10000},3,11,3,13" -locations_default(#20310,#10000,3,11,3,13) -hasLocation(#20309,#20310) -enclosing_stmt(#20309,#20291) -expr_containers(#20309,#20001) -#20311=* -exprs(#20311,79,#20309,0,"D") -hasLocation(#20311,#20133) -enclosing_stmt(#20311,#20291) -expr_containers(#20311,#20001) -literals("D","D",#20311) -#20312=@"var;{D};{#20000}" -variables(#20312,"D",#20000) -bind(#20311,#20312) -#20313=* -exprs(#20313,3,#20309,1,"0") -hasLocation(#20313,#20137) -enclosing_stmt(#20313,#20291) -expr_containers(#20313,#20001) -literals("0","0",#20313) +literals("0","0",#20307) +#20308=* +exprs(#20308,63,#20299,1,"(D|0)") +#20309=@"loc,{#10000},3,10,3,14" +locations_default(#20309,#10000,3,10,3,14) +hasLocation(#20308,#20309) +enclosing_stmt(#20308,#20292) +expr_containers(#20308,#20001) +#20310=* +exprs(#20310,39,#20308,0,"D|0") +#20311=@"loc,{#10000},3,11,3,13" +locations_default(#20311,#10000,3,11,3,13) +hasLocation(#20310,#20311) +enclosing_stmt(#20310,#20292) +expr_containers(#20310,#20001) +#20312=* +exprs(#20312,79,#20310,0,"D") +hasLocation(#20312,#20133) +enclosing_stmt(#20312,#20292) +expr_containers(#20312,#20001) +literals("D","D",#20312) +#20313=@"var;{D};{#20000}" +variables(#20313,"D",#20000) +bind(#20312,#20313) #20314=* -exprs(#20314,29,#20296,1,"(N|0)>(P|0)") -#20315=@"loc,{#10000},3,16,3,26" -locations_default(#20315,#10000,3,16,3,26) -hasLocation(#20314,#20315) -enclosing_stmt(#20314,#20291) +exprs(#20314,3,#20310,1,"0") +hasLocation(#20314,#20137) +enclosing_stmt(#20314,#20292) expr_containers(#20314,#20001) -#20316=* -exprs(#20316,63,#20314,0,"(N|0)") -#20317=@"loc,{#10000},3,16,3,20" -locations_default(#20317,#10000,3,16,3,20) -hasLocation(#20316,#20317) -enclosing_stmt(#20316,#20291) -expr_containers(#20316,#20001) -#20318=* -exprs(#20318,39,#20316,0,"N|0") -#20319=@"loc,{#10000},3,17,3,19" -locations_default(#20319,#10000,3,17,3,19) -hasLocation(#20318,#20319) -enclosing_stmt(#20318,#20291) -expr_containers(#20318,#20001) -#20320=* -exprs(#20320,79,#20318,0,"N") -hasLocation(#20320,#20145) -enclosing_stmt(#20320,#20291) -expr_containers(#20320,#20001) -literals("N","N",#20320) -#20321=@"var;{N};{#20000}" -variables(#20321,"N",#20000) -bind(#20320,#20321) -#20322=* -exprs(#20322,3,#20318,1,"0") -hasLocation(#20322,#20149) -enclosing_stmt(#20322,#20291) -expr_containers(#20322,#20001) -literals("0","0",#20322) +literals("0","0",#20314) +#20315=* +exprs(#20315,29,#20297,1,"(N|0)>(P|0)") +#20316=@"loc,{#10000},3,16,3,26" +locations_default(#20316,#10000,3,16,3,26) +hasLocation(#20315,#20316) +enclosing_stmt(#20315,#20292) +expr_containers(#20315,#20001) +#20317=* +exprs(#20317,63,#20315,0,"(N|0)") +#20318=@"loc,{#10000},3,16,3,20" +locations_default(#20318,#10000,3,16,3,20) +hasLocation(#20317,#20318) +enclosing_stmt(#20317,#20292) +expr_containers(#20317,#20001) +#20319=* +exprs(#20319,39,#20317,0,"N|0") +#20320=@"loc,{#10000},3,17,3,19" +locations_default(#20320,#10000,3,17,3,19) +hasLocation(#20319,#20320) +enclosing_stmt(#20319,#20292) +expr_containers(#20319,#20001) +#20321=* +exprs(#20321,79,#20319,0,"N") +hasLocation(#20321,#20145) +enclosing_stmt(#20321,#20292) +expr_containers(#20321,#20001) +literals("N","N",#20321) +#20322=@"var;{N};{#20000}" +variables(#20322,"N",#20000) +bind(#20321,#20322) #20323=* -exprs(#20323,63,#20314,1,"(P|0)") -#20324=@"loc,{#10000},3,22,3,26" -locations_default(#20324,#10000,3,22,3,26) -hasLocation(#20323,#20324) -enclosing_stmt(#20323,#20291) +exprs(#20323,3,#20319,1,"0") +hasLocation(#20323,#20149) +enclosing_stmt(#20323,#20292) expr_containers(#20323,#20001) -#20325=* -exprs(#20325,39,#20323,0,"P|0") -#20326=@"loc,{#10000},3,23,3,25" -locations_default(#20326,#10000,3,23,3,25) -hasLocation(#20325,#20326) -enclosing_stmt(#20325,#20291) -expr_containers(#20325,#20001) -#20327=* -exprs(#20327,79,#20325,0,"P") -hasLocation(#20327,#20157) -enclosing_stmt(#20327,#20291) -expr_containers(#20327,#20001) -literals("P","P",#20327) -#20328=@"var;{P};{#20000}" -variables(#20328,"P",#20000) -bind(#20327,#20328) -#20329=* -exprs(#20329,3,#20325,1,"0") -hasLocation(#20329,#20161) -enclosing_stmt(#20329,#20291) -expr_containers(#20329,#20001) -literals("0","0",#20329) +literals("0","0",#20323) +#20324=* +exprs(#20324,63,#20315,1,"(P|0)") +#20325=@"loc,{#10000},3,22,3,26" +locations_default(#20325,#10000,3,22,3,26) +hasLocation(#20324,#20325) +enclosing_stmt(#20324,#20292) +expr_containers(#20324,#20001) +#20326=* +exprs(#20326,39,#20324,0,"P|0") +#20327=@"loc,{#10000},3,23,3,25" +locations_default(#20327,#10000,3,23,3,25) +hasLocation(#20326,#20327) +enclosing_stmt(#20326,#20292) +expr_containers(#20326,#20001) +#20328=* +exprs(#20328,79,#20326,0,"P") +hasLocation(#20328,#20157) +enclosing_stmt(#20328,#20292) +expr_containers(#20328,#20001) +literals("P","P",#20328) +#20329=@"var;{P};{#20000}" +variables(#20329,"P",#20000) +bind(#20328,#20329) #20330=* -exprs(#20330,27,#20294,1,"(M|0)<(F|0)") -#20331=@"loc,{#10000},3,28,3,38" -locations_default(#20331,#10000,3,28,3,38) -hasLocation(#20330,#20331) -enclosing_stmt(#20330,#20291) +exprs(#20330,3,#20326,1,"0") +hasLocation(#20330,#20161) +enclosing_stmt(#20330,#20292) expr_containers(#20330,#20001) -#20332=* -exprs(#20332,63,#20330,0,"(M|0)") -#20333=@"loc,{#10000},3,28,3,32" -locations_default(#20333,#10000,3,28,3,32) -hasLocation(#20332,#20333) -enclosing_stmt(#20332,#20291) -expr_containers(#20332,#20001) -#20334=* -exprs(#20334,39,#20332,0,"M|0") -#20335=@"loc,{#10000},3,29,3,31" -locations_default(#20335,#10000,3,29,3,31) -hasLocation(#20334,#20335) -enclosing_stmt(#20334,#20291) -expr_containers(#20334,#20001) -#20336=* -exprs(#20336,79,#20334,0,"M") -hasLocation(#20336,#20169) -enclosing_stmt(#20336,#20291) -expr_containers(#20336,#20001) -literals("M","M",#20336) -#20337=@"var;{M};{#20000}" -variables(#20337,"M",#20000) -bind(#20336,#20337) -#20338=* -exprs(#20338,3,#20334,1,"0") -hasLocation(#20338,#20173) -enclosing_stmt(#20338,#20291) -expr_containers(#20338,#20001) -literals("0","0",#20338) +literals("0","0",#20330) +#20331=* +exprs(#20331,27,#20295,1,"(M|0)<(F|0)") +#20332=@"loc,{#10000},3,28,3,38" +locations_default(#20332,#10000,3,28,3,38) +hasLocation(#20331,#20332) +enclosing_stmt(#20331,#20292) +expr_containers(#20331,#20001) +#20333=* +exprs(#20333,63,#20331,0,"(M|0)") +#20334=@"loc,{#10000},3,28,3,32" +locations_default(#20334,#10000,3,28,3,32) +hasLocation(#20333,#20334) +enclosing_stmt(#20333,#20292) +expr_containers(#20333,#20001) +#20335=* +exprs(#20335,39,#20333,0,"M|0") +#20336=@"loc,{#10000},3,29,3,31" +locations_default(#20336,#10000,3,29,3,31) +hasLocation(#20335,#20336) +enclosing_stmt(#20335,#20292) +expr_containers(#20335,#20001) +#20337=* +exprs(#20337,79,#20335,0,"M") +hasLocation(#20337,#20169) +enclosing_stmt(#20337,#20292) +expr_containers(#20337,#20001) +literals("M","M",#20337) +#20338=@"var;{M};{#20000}" +variables(#20338,"M",#20000) +bind(#20337,#20338) #20339=* -exprs(#20339,63,#20330,1,"(F|0)") -#20340=@"loc,{#10000},3,34,3,38" -locations_default(#20340,#10000,3,34,3,38) -hasLocation(#20339,#20340) -enclosing_stmt(#20339,#20291) +exprs(#20339,3,#20335,1,"0") +hasLocation(#20339,#20173) +enclosing_stmt(#20339,#20292) expr_containers(#20339,#20001) -#20341=* -exprs(#20341,39,#20339,0,"F|0") -#20342=@"loc,{#10000},3,35,3,37" -locations_default(#20342,#10000,3,35,3,37) -hasLocation(#20341,#20342) -enclosing_stmt(#20341,#20291) -expr_containers(#20341,#20001) -#20343=* -exprs(#20343,79,#20341,0,"F") -hasLocation(#20343,#20181) -enclosing_stmt(#20343,#20291) -expr_containers(#20343,#20001) -literals("F","F",#20343) -#20344=@"var;{F};{#20000}" -variables(#20344,"F",#20000) -bind(#20343,#20344) -#20345=* -exprs(#20345,3,#20341,1,"0") -hasLocation(#20345,#20185) -enclosing_stmt(#20345,#20291) -expr_containers(#20345,#20001) -literals("0","0",#20345) +literals("0","0",#20339) +#20340=* +exprs(#20340,63,#20331,1,"(F|0)") +#20341=@"loc,{#10000},3,34,3,38" +locations_default(#20341,#10000,3,34,3,38) +hasLocation(#20340,#20341) +enclosing_stmt(#20340,#20292) +expr_containers(#20340,#20001) +#20342=* +exprs(#20342,39,#20340,0,"F|0") +#20343=@"loc,{#10000},3,35,3,37" +locations_default(#20343,#10000,3,35,3,37) +hasLocation(#20342,#20343) +enclosing_stmt(#20342,#20292) +expr_containers(#20342,#20001) +#20344=* +exprs(#20344,79,#20342,0,"F") +hasLocation(#20344,#20181) +enclosing_stmt(#20344,#20292) +expr_containers(#20344,#20001) +literals("F","F",#20344) +#20345=@"var;{F};{#20000}" +variables(#20345,"F",#20000) +bind(#20344,#20345) #20346=* -exprs(#20346,29,#20292,1,"(L|0)>(H|0)") -#20347=@"loc,{#10000},3,40,3,50" -locations_default(#20347,#10000,3,40,3,50) -hasLocation(#20346,#20347) -enclosing_stmt(#20346,#20291) +exprs(#20346,3,#20342,1,"0") +hasLocation(#20346,#20185) +enclosing_stmt(#20346,#20292) expr_containers(#20346,#20001) -#20348=* -exprs(#20348,63,#20346,0,"(L|0)") -#20349=@"loc,{#10000},3,40,3,44" -locations_default(#20349,#10000,3,40,3,44) -hasLocation(#20348,#20349) -enclosing_stmt(#20348,#20291) -expr_containers(#20348,#20001) -#20350=* -exprs(#20350,39,#20348,0,"L|0") -#20351=@"loc,{#10000},3,41,3,43" -locations_default(#20351,#10000,3,41,3,43) -hasLocation(#20350,#20351) -enclosing_stmt(#20350,#20291) -expr_containers(#20350,#20001) -#20352=* -exprs(#20352,79,#20350,0,"L") -hasLocation(#20352,#20193) -enclosing_stmt(#20352,#20291) -expr_containers(#20352,#20001) -literals("L","L",#20352) -#20353=@"var;{L};{#20000}" -variables(#20353,"L",#20000) -bind(#20352,#20353) -#20354=* -exprs(#20354,3,#20350,1,"0") -hasLocation(#20354,#20197) -enclosing_stmt(#20354,#20291) -expr_containers(#20354,#20001) -literals("0","0",#20354) +literals("0","0",#20346) +#20347=* +exprs(#20347,29,#20293,1,"(L|0)>(H|0)") +#20348=@"loc,{#10000},3,40,3,50" +locations_default(#20348,#10000,3,40,3,50) +hasLocation(#20347,#20348) +enclosing_stmt(#20347,#20292) +expr_containers(#20347,#20001) +#20349=* +exprs(#20349,63,#20347,0,"(L|0)") +#20350=@"loc,{#10000},3,40,3,44" +locations_default(#20350,#10000,3,40,3,44) +hasLocation(#20349,#20350) +enclosing_stmt(#20349,#20292) +expr_containers(#20349,#20001) +#20351=* +exprs(#20351,39,#20349,0,"L|0") +#20352=@"loc,{#10000},3,41,3,43" +locations_default(#20352,#10000,3,41,3,43) +hasLocation(#20351,#20352) +enclosing_stmt(#20351,#20292) +expr_containers(#20351,#20001) +#20353=* +exprs(#20353,79,#20351,0,"L") +hasLocation(#20353,#20193) +enclosing_stmt(#20353,#20292) +expr_containers(#20353,#20001) +literals("L","L",#20353) +#20354=@"var;{L};{#20000}" +variables(#20354,"L",#20000) +bind(#20353,#20354) #20355=* -exprs(#20355,63,#20346,1,"(H|0)") -#20356=@"loc,{#10000},3,46,3,50" -locations_default(#20356,#10000,3,46,3,50) -hasLocation(#20355,#20356) -enclosing_stmt(#20355,#20291) +exprs(#20355,3,#20351,1,"0") +hasLocation(#20355,#20197) +enclosing_stmt(#20355,#20292) expr_containers(#20355,#20001) -#20357=* -exprs(#20357,39,#20355,0,"H|0") -#20358=@"loc,{#10000},3,47,3,49" -locations_default(#20358,#10000,3,47,3,49) -hasLocation(#20357,#20358) -enclosing_stmt(#20357,#20291) -expr_containers(#20357,#20001) -#20359=* -exprs(#20359,79,#20357,0,"H") -hasLocation(#20359,#20205) -enclosing_stmt(#20359,#20291) -expr_containers(#20359,#20001) -literals("H","H",#20359) -#20360=@"var;{H};{#20000}" -variables(#20360,"H",#20000) -bind(#20359,#20360) -#20361=* -exprs(#20361,3,#20357,1,"0") -hasLocation(#20361,#20209) -enclosing_stmt(#20361,#20291) -expr_containers(#20361,#20001) -literals("0","0",#20361) +literals("0","0",#20355) +#20356=* +exprs(#20356,63,#20347,1,"(H|0)") +#20357=@"loc,{#10000},3,46,3,50" +locations_default(#20357,#10000,3,46,3,50) +hasLocation(#20356,#20357) +enclosing_stmt(#20356,#20292) +expr_containers(#20356,#20001) +#20358=* +exprs(#20358,39,#20356,0,"H|0") +#20359=@"loc,{#10000},3,47,3,49" +locations_default(#20359,#10000,3,47,3,49) +hasLocation(#20358,#20359) +enclosing_stmt(#20358,#20292) +expr_containers(#20358,#20001) +#20360=* +exprs(#20360,79,#20358,0,"H") +hasLocation(#20360,#20205) +enclosing_stmt(#20360,#20292) +expr_containers(#20360,#20001) +literals("H","H",#20360) +#20361=@"var;{H};{#20000}" +variables(#20361,"H",#20000) +bind(#20360,#20361) #20362=* -stmts(#20362,1,#20291,1,"{}") -#20363=@"loc,{#10000},3,52,3,53" -locations_default(#20363,#10000,3,52,3,53) -hasLocation(#20362,#20363) -stmt_containers(#20362,#20001) -#20364=* -entry_cfg_node(#20364,#20001) -#20365=@"loc,{#10000},1,1,1,0" -locations_default(#20365,#10000,1,1,1,0) -hasLocation(#20364,#20365) -#20366=* -exit_cfg_node(#20366,#20001) -hasLocation(#20366,#20219) -successor(#20291,#20300) -successor(#20355,#20359) -successor(#20361,#20357) -successor(#20359,#20361) -successor(#20357,#20346) -successor(#20348,#20352) -successor(#20354,#20350) -successor(#20352,#20354) -successor(#20350,#20355) -successor(#20346,#20292) -successor(#20339,#20343) -successor(#20345,#20341) -successor(#20343,#20345) -successor(#20341,#20330) -successor(#20332,#20336) -successor(#20338,#20334) -successor(#20336,#20338) -successor(#20334,#20339) -successor(#20330,#20294) -successor(#20323,#20327) -successor(#20329,#20325) -successor(#20327,#20329) -successor(#20325,#20314) -successor(#20316,#20320) -successor(#20322,#20318) -successor(#20320,#20322) -successor(#20318,#20323) -successor(#20314,#20296) -successor(#20307,#20311) -successor(#20313,#20309) -successor(#20311,#20313) -successor(#20309,#20298) -successor(#20300,#20304) -successor(#20306,#20302) -successor(#20304,#20306) -successor(#20302,#20307) -successor(#20298,#20316) -successor(#20296,#20332) -successor(#20294,#20348) +exprs(#20362,3,#20358,1,"0") +hasLocation(#20362,#20209) +enclosing_stmt(#20362,#20292) +expr_containers(#20362,#20001) +literals("0","0",#20362) +#20363=* +stmts(#20363,1,#20292,1,"{}") +#20364=@"loc,{#10000},3,52,3,53" +locations_default(#20364,#10000,3,52,3,53) +hasLocation(#20363,#20364) +stmt_containers(#20363,#20001) +#20365=* +entry_cfg_node(#20365,#20001) +#20366=@"loc,{#10000},1,1,1,0" +locations_default(#20366,#10000,1,1,1,0) +hasLocation(#20365,#20366) #20367=* -guard_node(#20367,1,#20292) -hasLocation(#20367,#20293) -successor(#20367,#20362) +exit_cfg_node(#20367,#20001) +hasLocation(#20367,#20219) +successor(#20292,#20301) +successor(#20356,#20360) +successor(#20362,#20358) +successor(#20360,#20362) +successor(#20358,#20347) +successor(#20349,#20353) +successor(#20355,#20351) +successor(#20353,#20355) +successor(#20351,#20356) +successor(#20347,#20293) +successor(#20340,#20344) +successor(#20346,#20342) +successor(#20344,#20346) +successor(#20342,#20331) +successor(#20333,#20337) +successor(#20339,#20335) +successor(#20337,#20339) +successor(#20335,#20340) +successor(#20331,#20295) +successor(#20324,#20328) +successor(#20330,#20326) +successor(#20328,#20330) +successor(#20326,#20315) +successor(#20317,#20321) +successor(#20323,#20319) +successor(#20321,#20323) +successor(#20319,#20324) +successor(#20315,#20297) +successor(#20308,#20312) +successor(#20314,#20310) +successor(#20312,#20314) +successor(#20310,#20299) +successor(#20301,#20305) +successor(#20307,#20303) +successor(#20305,#20307) +successor(#20303,#20308) +successor(#20299,#20317) +successor(#20297,#20333) +successor(#20295,#20349) #20368=* -guard_node(#20368,0,#20292) -hasLocation(#20368,#20293) -successor(#20368,#20366) -successor(#20292,#20367) -successor(#20292,#20368) -successor(#20362,#20366) -successor(#20250,#20253) -successor(#20255,#20261) -successor(#20282,#20286) -successor(#20288,#20284) -successor(#20286,#20288) -successor(#20284,#20274) -successor(#20276,#20280) -successor(#20281,#20278) -successor(#20280,#20281) -successor(#20278,#20282) -successor(#20274,#20257) -successor(#20267,#20271) -successor(#20273,#20269) -successor(#20271,#20273) -successor(#20269,#20259) -successor(#20261,#20265) -successor(#20266,#20263) -successor(#20265,#20266) -successor(#20263,#20267) -successor(#20259,#20276) +guard_node(#20368,1,#20293) +hasLocation(#20368,#20294) +successor(#20368,#20363) #20369=* -guard_node(#20369,1,#20257) -hasLocation(#20369,#20258) -successor(#20369,#20289) +guard_node(#20369,0,#20293) +hasLocation(#20369,#20294) +successor(#20369,#20367) +successor(#20293,#20368) +successor(#20293,#20369) +successor(#20363,#20367) +successor(#20251,#20254) +successor(#20256,#20262) +successor(#20283,#20287) +successor(#20289,#20285) +successor(#20287,#20289) +successor(#20285,#20275) +successor(#20277,#20281) +successor(#20282,#20279) +successor(#20281,#20282) +successor(#20279,#20283) +successor(#20275,#20258) +successor(#20268,#20272) +successor(#20274,#20270) +successor(#20272,#20274) +successor(#20270,#20260) +successor(#20262,#20266) +successor(#20267,#20264) +successor(#20266,#20267) +successor(#20264,#20268) +successor(#20260,#20277) #20370=* -guard_node(#20370,0,#20257) -hasLocation(#20370,#20258) +guard_node(#20370,1,#20258) +hasLocation(#20370,#20259) successor(#20370,#20290) -successor(#20257,#20369) -successor(#20257,#20370) -successor(#20289,#20251) -successor(#20290,#20251) -successor(#20253,#20255) -successor(#20251,#20291) -successor(#20221,#20224) -successor(#20224,#20230) -successor(#20241,#20245) -successor(#20247,#20243) -successor(#20245,#20247) -successor(#20243,#20238) -successor(#20240,#20241) -successor(#20238,#20226) -successor(#20231,#20235) -successor(#20237,#20233) -successor(#20235,#20237) -successor(#20233,#20228) -successor(#20230,#20231) -successor(#20228,#20240) -successor(#20226,#20222) #20371=* -guard_node(#20371,0,#20226) -hasLocation(#20371,#20227) -successor(#20371,#20248) +guard_node(#20371,0,#20258) +hasLocation(#20371,#20259) +successor(#20371,#20291) +successor(#20258,#20370) +successor(#20258,#20371) +successor(#20290,#20252) +successor(#20291,#20252) +successor(#20254,#20256) +successor(#20252,#20292) +successor(#20222,#20225) +successor(#20225,#20231) +successor(#20242,#20246) +successor(#20248,#20244) +successor(#20246,#20248) +successor(#20244,#20239) +successor(#20241,#20242) +successor(#20239,#20227) +successor(#20232,#20236) +successor(#20238,#20234) +successor(#20236,#20238) +successor(#20234,#20229) +successor(#20231,#20232) +successor(#20229,#20241) +successor(#20227,#20223) #20372=* -guard_node(#20372,1,#20226) -hasLocation(#20372,#20227) -successor(#20372,#20250) -successor(#20222,#20371) -successor(#20222,#20372) -successor(#20248,#20250) -successor(#20364,#20221) +guard_node(#20372,0,#20227) +hasLocation(#20372,#20228) +successor(#20372,#20249) +#20373=* +guard_node(#20373,1,#20227) +hasLocation(#20373,#20228) +successor(#20373,#20251) +successor(#20223,#20372) +successor(#20223,#20373) +successor(#20249,#20251) +successor(#20365,#20222) numlines(#10000,3,3,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/predicate-function-annotation.js.trap b/javascript/extractor/tests/flow/output/trap/predicate-function-annotation.js.trap index b43afc81579c..97310124e7b2 100644 --- a/javascript/extractor/tests/flow/output/trap/predicate-function-annotation.js.trap +++ b/javascript/extractor/tests/flow/output/trap/predicate-function-annotation.js.trap @@ -310,226 +310,232 @@ hasLocation(#20001,#20114) variables(#20115,"f",#20000) #20116=@"var;{g};{#20000}" variables(#20116,"g",#20000) -#20117=* -stmts(#20117,17,#20001,0,"functio ... rn a;\n}") -#20118=@"loc,{#10000},1,1,3,1" -locations_default(#20118,#10000,1,1,3,1) -hasLocation(#20117,#20118) -stmt_containers(#20117,#20001) -#20119=* -exprs(#20119,78,#20117,-1,"f") -hasLocation(#20119,#20023) -expr_containers(#20119,#20117) -literals("f","f",#20119) -decl(#20119,#20115) +#20117=@"var;{this};{#20000}" +variables(#20117,"this",#20000) +#20118=* +stmts(#20118,17,#20001,0,"functio ... rn a;\n}") +#20119=@"loc,{#10000},1,1,3,1" +locations_default(#20119,#10000,1,1,3,1) +hasLocation(#20118,#20119) +stmt_containers(#20118,#20001) #20120=* -scopes(#20120,1) -scopenodes(#20117,#20120) -scopenesting(#20120,#20000) -#20121=@"var;{a};{#20120}" -variables(#20121,"a",#20120) -#20122=* -exprs(#20122,78,#20117,0,"a") -hasLocation(#20122,#20027) -expr_containers(#20122,#20117) -literals("a","a",#20122) -decl(#20122,#20121) -#20123=@"var;{arguments};{#20120}" -variables(#20123,"arguments",#20120) -is_arguments_object(#20123) +exprs(#20120,78,#20118,-1,"f") +hasLocation(#20120,#20023) +expr_containers(#20120,#20118) +literals("f","f",#20120) +decl(#20120,#20115) +#20121=* +scopes(#20121,1) +scopenodes(#20118,#20121) +scopenesting(#20121,#20000) +#20122=@"var;{this};{#20121}" +variables(#20122,"this",#20121) +#20123=@"var;{a};{#20121}" +variables(#20123,"a",#20121) #20124=* -stmts(#20124,1,#20117,-2,"{\n return a;\n}") -#20125=@"loc,{#10000},1,32,3,1" -locations_default(#20125,#10000,1,32,3,1) -hasLocation(#20124,#20125) -stmt_containers(#20124,#20117) +exprs(#20124,78,#20118,0,"a") +hasLocation(#20124,#20027) +expr_containers(#20124,#20118) +literals("a","a",#20124) +decl(#20124,#20123) +#20125=@"var;{arguments};{#20121}" +variables(#20125,"arguments",#20121) +is_arguments_object(#20125) #20126=* -stmts(#20126,9,#20124,0,"return a;") -#20127=@"loc,{#10000},2,5,2,13" -locations_default(#20127,#10000,2,5,2,13) +stmts(#20126,1,#20118,-2,"{\n return a;\n}") +#20127=@"loc,{#10000},1,32,3,1" +locations_default(#20127,#10000,1,32,3,1) hasLocation(#20126,#20127) -stmt_containers(#20126,#20117) +stmt_containers(#20126,#20118) #20128=* -exprs(#20128,79,#20126,0,"a") -hasLocation(#20128,#20043) -enclosing_stmt(#20128,#20126) -expr_containers(#20128,#20117) -literals("a","a",#20128) -bind(#20128,#20121) -#20129=* -stmts(#20129,17,#20001,1,"functio ... ecks {}") -#20130=@"loc,{#10000},4,1,4,24" -locations_default(#20130,#10000,4,1,4,24) -hasLocation(#20129,#20130) -stmt_containers(#20129,#20001) +stmts(#20128,9,#20126,0,"return a;") +#20129=@"loc,{#10000},2,5,2,13" +locations_default(#20129,#10000,2,5,2,13) +hasLocation(#20128,#20129) +stmt_containers(#20128,#20118) +#20130=* +exprs(#20130,79,#20128,0,"a") +hasLocation(#20130,#20043) +enclosing_stmt(#20130,#20128) +expr_containers(#20130,#20118) +literals("a","a",#20130) +bind(#20130,#20123) #20131=* -exprs(#20131,78,#20129,-1,"g") -hasLocation(#20131,#20050) -expr_containers(#20131,#20129) -literals("g","g",#20131) -decl(#20131,#20116) -#20132=* -scopes(#20132,1) -scopenodes(#20129,#20132) -scopenesting(#20132,#20000) -#20133=@"var;{arguments};{#20132}" -variables(#20133,"arguments",#20132) -is_arguments_object(#20133) +stmts(#20131,17,#20001,1,"functio ... ecks {}") +#20132=@"loc,{#10000},4,1,4,24" +locations_default(#20132,#10000,4,1,4,24) +hasLocation(#20131,#20132) +stmt_containers(#20131,#20001) +#20133=* +exprs(#20133,78,#20131,-1,"g") +hasLocation(#20133,#20050) +expr_containers(#20133,#20131) +literals("g","g",#20133) +decl(#20133,#20116) #20134=* -stmts(#20134,1,#20129,-2,"{}") -#20135=@"loc,{#10000},4,23,4,24" -locations_default(#20135,#10000,4,23,4,24) -hasLocation(#20134,#20135) -stmt_containers(#20134,#20129) -#20136=* -stmts(#20136,1,#20001,2,"{\n return b;\n}") -#20137=@"loc,{#10000},4,26,6,1" -locations_default(#20137,#10000,4,26,6,1) -hasLocation(#20136,#20137) -stmt_containers(#20136,#20001) -#20138=* -stmts(#20138,9,#20136,0,"return b;") -#20139=@"loc,{#10000},5,5,5,13" -locations_default(#20139,#10000,5,5,5,13) -hasLocation(#20138,#20139) -stmt_containers(#20138,#20001) -#20140=* -exprs(#20140,79,#20138,0,"b") -hasLocation(#20140,#20070) -enclosing_stmt(#20140,#20138) -expr_containers(#20140,#20001) -literals("b","b",#20140) -#20141=@"var;{b};{#20000}" -variables(#20141,"b",#20000) -bind(#20140,#20141) -#20142=* -stmts(#20142,2,#20001,3,"(c): bo ... s => c;") -hasLocation(#20142,#20017) -stmt_containers(#20142,#20001) +scopes(#20134,1) +scopenodes(#20131,#20134) +scopenesting(#20134,#20000) +#20135=@"var;{this};{#20134}" +variables(#20135,"this",#20134) +#20136=@"var;{arguments};{#20134}" +variables(#20136,"arguments",#20134) +is_arguments_object(#20136) +#20137=* +stmts(#20137,1,#20131,-2,"{}") +#20138=@"loc,{#10000},4,23,4,24" +locations_default(#20138,#10000,4,23,4,24) +hasLocation(#20137,#20138) +stmt_containers(#20137,#20131) +#20139=* +stmts(#20139,1,#20001,2,"{\n return b;\n}") +#20140=@"loc,{#10000},4,26,6,1" +locations_default(#20140,#10000,4,26,6,1) +hasLocation(#20139,#20140) +stmt_containers(#20139,#20001) +#20141=* +stmts(#20141,9,#20139,0,"return b;") +#20142=@"loc,{#10000},5,5,5,13" +locations_default(#20142,#10000,5,5,5,13) +hasLocation(#20141,#20142) +stmt_containers(#20141,#20001) #20143=* -exprs(#20143,65,#20142,0,"(c): bo ... ks => c") -#20144=@"loc,{#10000},8,1,8,25" -locations_default(#20144,#10000,8,1,8,25) -hasLocation(#20143,#20144) -enclosing_stmt(#20143,#20142) +exprs(#20143,79,#20141,0,"b") +hasLocation(#20143,#20070) +enclosing_stmt(#20143,#20141) expr_containers(#20143,#20001) +literals("b","b",#20143) +#20144=@"var;{b};{#20000}" +variables(#20144,"b",#20000) +bind(#20143,#20144) #20145=* -scopes(#20145,1) -scopenodes(#20143,#20145) -scopenesting(#20145,#20000) -#20146=@"var;{c};{#20145}" -variables(#20146,"c",#20145) -#20147=* -exprs(#20147,78,#20143,0,"c") -hasLocation(#20147,#20077) -expr_containers(#20147,#20143) -literals("c","c",#20147) -decl(#20147,#20146) +stmts(#20145,2,#20001,3,"(c): bo ... s => c;") +hasLocation(#20145,#20017) +stmt_containers(#20145,#20001) +#20146=* +exprs(#20146,65,#20145,0,"(c): bo ... ks => c") +#20147=@"loc,{#10000},8,1,8,25" +locations_default(#20147,#10000,8,1,8,25) +hasLocation(#20146,#20147) +enclosing_stmt(#20146,#20145) +expr_containers(#20146,#20001) #20148=* -exprs(#20148,79,#20143,-2,"c") -hasLocation(#20148,#20091) -expr_containers(#20148,#20143) -literals("c","c",#20148) -bind(#20148,#20146) -#20149=* -stmts(#20149,2,#20001,4,"(d): %checks => d;") -hasLocation(#20149,#20019) -stmt_containers(#20149,#20001) +scopes(#20148,1) +scopenodes(#20146,#20148) +scopenesting(#20148,#20000) +#20149=@"var;{c};{#20148}" +variables(#20149,"c",#20148) #20150=* -exprs(#20150,65,#20149,0,"(d): %checks => d") -#20151=@"loc,{#10000},9,1,9,17" -locations_default(#20151,#10000,9,1,9,17) -hasLocation(#20150,#20151) -enclosing_stmt(#20150,#20149) -expr_containers(#20150,#20001) +exprs(#20150,78,#20146,0,"c") +hasLocation(#20150,#20077) +expr_containers(#20150,#20146) +literals("c","c",#20150) +decl(#20150,#20149) +#20151=* +exprs(#20151,79,#20146,-2,"c") +hasLocation(#20151,#20091) +expr_containers(#20151,#20146) +literals("c","c",#20151) +bind(#20151,#20149) #20152=* -scopes(#20152,1) -scopenodes(#20150,#20152) -scopenesting(#20152,#20000) -#20153=@"var;{d};{#20152}" -variables(#20153,"d",#20152) -#20154=* -exprs(#20154,78,#20150,0,"d") -hasLocation(#20154,#20097) -expr_containers(#20154,#20150) -literals("d","d",#20154) -decl(#20154,#20153) +stmts(#20152,2,#20001,4,"(d): %checks => d;") +hasLocation(#20152,#20019) +stmt_containers(#20152,#20001) +#20153=* +exprs(#20153,65,#20152,0,"(d): %checks => d") +#20154=@"loc,{#10000},9,1,9,17" +locations_default(#20154,#10000,9,1,9,17) +hasLocation(#20153,#20154) +enclosing_stmt(#20153,#20152) +expr_containers(#20153,#20001) #20155=* -exprs(#20155,79,#20150,-2,"d") -hasLocation(#20155,#20109) -expr_containers(#20155,#20150) -literals("d","d",#20155) -bind(#20155,#20153) -#20156=* -entry_cfg_node(#20156,#20001) -#20157=@"loc,{#10000},1,1,1,0" -locations_default(#20157,#10000,1,1,1,0) -hasLocation(#20156,#20157) +scopes(#20155,1) +scopenodes(#20153,#20155) +scopenesting(#20155,#20000) +#20156=@"var;{d};{#20155}" +variables(#20156,"d",#20155) +#20157=* +exprs(#20157,78,#20153,0,"d") +hasLocation(#20157,#20097) +expr_containers(#20157,#20153) +literals("d","d",#20157) +decl(#20157,#20156) #20158=* -exit_cfg_node(#20158,#20001) -hasLocation(#20158,#20113) -successor(#20149,#20150) -successor(#20150,#20158) +exprs(#20158,79,#20153,-2,"d") +hasLocation(#20158,#20109) +expr_containers(#20158,#20153) +literals("d","d",#20158) +bind(#20158,#20156) #20159=* -entry_cfg_node(#20159,#20150) -#20160=@"loc,{#10000},9,1,9,0" -locations_default(#20160,#10000,9,1,9,0) +entry_cfg_node(#20159,#20001) +#20160=@"loc,{#10000},1,1,1,0" +locations_default(#20160,#10000,1,1,1,0) hasLocation(#20159,#20160) #20161=* -exit_cfg_node(#20161,#20150) -#20162=@"loc,{#10000},9,18,9,17" -locations_default(#20162,#10000,9,18,9,17) -hasLocation(#20161,#20162) -successor(#20155,#20161) -successor(#20154,#20155) -successor(#20159,#20154) -successor(#20142,#20143) -successor(#20143,#20149) -#20163=* -entry_cfg_node(#20163,#20143) -#20164=@"loc,{#10000},8,1,8,0" -locations_default(#20164,#10000,8,1,8,0) -hasLocation(#20163,#20164) -#20165=* -exit_cfg_node(#20165,#20143) -#20166=@"loc,{#10000},8,26,8,25" -locations_default(#20166,#10000,8,26,8,25) -hasLocation(#20165,#20166) -successor(#20148,#20165) -successor(#20147,#20148) -successor(#20163,#20147) -successor(#20140,#20138) -successor(#20138,#20158) -successor(#20136,#20140) -successor(#20129,#20136) -#20167=* -entry_cfg_node(#20167,#20129) -#20168=@"loc,{#10000},4,1,4,0" -locations_default(#20168,#10000,4,1,4,0) -hasLocation(#20167,#20168) -#20169=* -exit_cfg_node(#20169,#20129) -#20170=@"loc,{#10000},4,25,4,24" -locations_default(#20170,#10000,4,25,4,24) -hasLocation(#20169,#20170) -successor(#20134,#20169) -successor(#20167,#20134) -successor(#20117,#20129) -#20171=* -entry_cfg_node(#20171,#20117) -hasLocation(#20171,#20157) +exit_cfg_node(#20161,#20001) +hasLocation(#20161,#20113) +successor(#20152,#20153) +successor(#20153,#20161) +#20162=* +entry_cfg_node(#20162,#20153) +#20163=@"loc,{#10000},9,1,9,0" +locations_default(#20163,#10000,9,1,9,0) +hasLocation(#20162,#20163) +#20164=* +exit_cfg_node(#20164,#20153) +#20165=@"loc,{#10000},9,18,9,17" +locations_default(#20165,#10000,9,18,9,17) +hasLocation(#20164,#20165) +successor(#20158,#20164) +successor(#20157,#20158) +successor(#20162,#20157) +successor(#20145,#20146) +successor(#20146,#20152) +#20166=* +entry_cfg_node(#20166,#20146) +#20167=@"loc,{#10000},8,1,8,0" +locations_default(#20167,#10000,8,1,8,0) +hasLocation(#20166,#20167) +#20168=* +exit_cfg_node(#20168,#20146) +#20169=@"loc,{#10000},8,26,8,25" +locations_default(#20169,#10000,8,26,8,25) +hasLocation(#20168,#20169) +successor(#20151,#20168) +successor(#20150,#20151) +successor(#20166,#20150) +successor(#20143,#20141) +successor(#20141,#20161) +successor(#20139,#20143) +successor(#20131,#20139) +#20170=* +entry_cfg_node(#20170,#20131) +#20171=@"loc,{#10000},4,1,4,0" +locations_default(#20171,#10000,4,1,4,0) +hasLocation(#20170,#20171) #20172=* -exit_cfg_node(#20172,#20117) -#20173=@"loc,{#10000},3,2,3,1" -locations_default(#20173,#10000,3,2,3,1) +exit_cfg_node(#20172,#20131) +#20173=@"loc,{#10000},4,25,4,24" +locations_default(#20173,#10000,4,25,4,24) hasLocation(#20172,#20173) -successor(#20128,#20126) -successor(#20126,#20172) -successor(#20124,#20128) -successor(#20122,#20124) -successor(#20171,#20122) -successor(#20131,#20117) -successor(#20119,#20131) -successor(#20156,#20119) +successor(#20137,#20172) +successor(#20170,#20137) +successor(#20118,#20131) +#20174=* +entry_cfg_node(#20174,#20118) +hasLocation(#20174,#20160) +#20175=* +exit_cfg_node(#20175,#20118) +#20176=@"loc,{#10000},3,2,3,1" +locations_default(#20176,#10000,3,2,3,1) +hasLocation(#20175,#20176) +successor(#20130,#20128) +successor(#20128,#20175) +successor(#20126,#20130) +successor(#20124,#20126) +successor(#20174,#20124) +successor(#20133,#20118) +successor(#20120,#20133) +successor(#20159,#20120) numlines(#10000,9,8,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/qualifiedInterface.js.trap b/javascript/extractor/tests/flow/output/trap/qualifiedInterface.js.trap index e384b03c9d32..a47417615f67 100644 --- a/javascript/extractor/tests/flow/output/trap/qualifiedInterface.js.trap +++ b/javascript/extractor/tests/flow/output/trap/qualifiedInterface.js.trap @@ -65,14 +65,16 @@ toplevels(#20001,0) #20022=@"loc,{#10000},1,1,2,0" locations_default(#20022,#10000,1,1,2,0) hasLocation(#20001,#20022) -#20023=* -entry_cfg_node(#20023,#20001) -#20024=@"loc,{#10000},1,1,1,0" -locations_default(#20024,#10000,1,1,1,0) -hasLocation(#20023,#20024) -#20025=* -exit_cfg_node(#20025,#20001) -hasLocation(#20025,#20021) -successor(#20023,#20025) +#20023=@"var;{this};{#20000}" +variables(#20023,"this",#20000) +#20024=* +entry_cfg_node(#20024,#20001) +#20025=@"loc,{#10000},1,1,1,0" +locations_default(#20025,#10000,1,1,1,0) +hasLocation(#20024,#20025) +#20026=* +exit_cfg_node(#20026,#20001) +hasLocation(#20026,#20021) +successor(#20024,#20026) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/tst.js.trap b/javascript/extractor/tests/flow/output/trap/tst.js.trap index 05f0c5ce687b..92ee708a6016 100644 --- a/javascript/extractor/tests/flow/output/trap/tst.js.trap +++ b/javascript/extractor/tests/flow/output/trap/tst.js.trap @@ -518,210 +518,220 @@ variables(#20190,"f",#20000) variables(#20191,"A",#20000) #20192=@"local_type_name;{A};{#20000}" local_type_names(#20192,"A",#20000) -#20193=* -stmts(#20193,26,#20001,0,"class A ... nt {}\n}") -#20194=@"loc,{#10000},6,1,9,1" -locations_default(#20194,#10000,6,1,9,1) -hasLocation(#20193,#20194) -stmt_containers(#20193,#20001) -#20195=* -exprs(#20195,78,#20193,0,"A") -hasLocation(#20195,#20072) -enclosing_stmt(#20195,#20193) -expr_containers(#20195,#20001) -literals("A","A",#20195) -decl(#20195,#20191) -typedecl(#20195,#20192) +#20193=@"var;{this};{#20000}" +variables(#20193,"this",#20000) +#20194=* +stmts(#20194,26,#20001,0,"class A ... nt {}\n}") +#20195=@"loc,{#10000},6,1,9,1" +locations_default(#20195,#10000,6,1,9,1) +hasLocation(#20194,#20195) +stmt_containers(#20194,#20001) #20196=* -scopes(#20196,10) -scopenodes(#20193,#20196) -scopenesting(#20196,#20000) +exprs(#20196,78,#20194,0,"A") +hasLocation(#20196,#20072) +enclosing_stmt(#20196,#20194) +expr_containers(#20196,#20001) +literals("A","A",#20196) +decl(#20196,#20191) +typedecl(#20196,#20192) #20197=* -properties(#20197,#20193,2,8,"x: T;") -#20198=@"loc,{#10000},7,3,7,7" -locations_default(#20198,#10000,7,3,7,7) -hasLocation(#20197,#20198) +scopes(#20197,10) +scopenodes(#20194,#20197) +scopenesting(#20197,#20000) +#20198=@"var;{this};{#20197}" +variables(#20198,"this",#20197) #20199=* -#20200=* -exprs(#20200,0,#20197,0,"x") -hasLocation(#20200,#20082) -expr_containers(#20200,#20199) -literals("x","x",#20200) +properties(#20199,#20194,2,8,"x: T;") +#20200=@"loc,{#10000},7,3,7,7" +locations_default(#20200,#10000,7,3,7,7) +hasLocation(#20199,#20200) #20201=* -properties(#20201,#20193,3,0,"m() : Point {}") -#20202=@"loc,{#10000},8,3,8,16" -locations_default(#20202,#10000,8,3,8,16) -hasLocation(#20201,#20202) +#20202=* +exprs(#20202,0,#20199,0,"x") +hasLocation(#20202,#20082) +expr_containers(#20202,#20201) +literals("x","x",#20202) #20203=* -exprs(#20203,0,#20201,0,"m") -hasLocation(#20203,#20090) -enclosing_stmt(#20203,#20193) -expr_containers(#20203,#20001) -literals("m","m",#20203) -#20204=* -exprs(#20204,9,#20201,1,"() : Point {}") -#20205=@"loc,{#10000},8,4,8,16" -locations_default(#20205,#10000,8,4,8,16) -hasLocation(#20204,#20205) -enclosing_stmt(#20204,#20193) -expr_containers(#20204,#20001) +properties(#20203,#20194,3,0,"m() : Point {}") +#20204=@"loc,{#10000},8,3,8,16" +locations_default(#20204,#10000,8,3,8,16) +hasLocation(#20203,#20204) +#20205=* +exprs(#20205,0,#20203,0,"m") +hasLocation(#20205,#20090) +enclosing_stmt(#20205,#20194) +expr_containers(#20205,#20001) +literals("m","m",#20205) #20206=* -scopes(#20206,1) -scopenodes(#20204,#20206) -scopenesting(#20206,#20196) -#20207=@"var;{arguments};{#20206}" -variables(#20207,"arguments",#20206) -is_arguments_object(#20207) +exprs(#20206,9,#20203,1,"() : Point {}") +#20207=@"loc,{#10000},8,4,8,16" +locations_default(#20207,#10000,8,4,8,16) +hasLocation(#20206,#20207) +enclosing_stmt(#20206,#20194) +expr_containers(#20206,#20001) #20208=* -stmts(#20208,1,#20204,-2,"{}") -#20209=@"loc,{#10000},8,15,8,16" -locations_default(#20209,#10000,8,15,8,16) -hasLocation(#20208,#20209) -stmt_containers(#20208,#20204) -is_method(#20201) -#20210=* -properties(#20210,#20193,4,0,"constructor() {}") -#20211=@"loc,{#10000},6,12,6,11" -locations_default(#20211,#10000,6,12,6,11) -hasLocation(#20210,#20211) -#20212=* -exprs(#20212,0,#20210,0,"constructor") -hasLocation(#20212,#20211) -enclosing_stmt(#20212,#20193) -expr_containers(#20212,#20001) -literals("constructor","constructor",#20212) -exprs(#20199,9,#20210,1,"() {}") -hasLocation(#20199,#20211) -enclosing_stmt(#20199,#20193) -expr_containers(#20199,#20001) +scopes(#20208,1) +scopenodes(#20206,#20208) +scopenesting(#20208,#20197) +#20209=@"var;{this};{#20208}" +variables(#20209,"this",#20208) +#20210=@"var;{arguments};{#20208}" +variables(#20210,"arguments",#20208) +is_arguments_object(#20210) +#20211=* +stmts(#20211,1,#20206,-2,"{}") +#20212=@"loc,{#10000},8,15,8,16" +locations_default(#20212,#10000,8,15,8,16) +hasLocation(#20211,#20212) +stmt_containers(#20211,#20206) +is_method(#20203) #20213=* -scopes(#20213,1) -scopenodes(#20199,#20213) -scopenesting(#20213,#20196) -#20214=@"var;{arguments};{#20213}" -variables(#20214,"arguments",#20213) -is_arguments_object(#20214) +properties(#20213,#20194,4,0,"constructor() {}") +#20214=@"loc,{#10000},6,12,6,11" +locations_default(#20214,#10000,6,12,6,11) +hasLocation(#20213,#20214) #20215=* -stmts(#20215,1,#20199,-2,"{}") -hasLocation(#20215,#20211) -stmt_containers(#20215,#20199) -is_method(#20210) +exprs(#20215,0,#20213,0,"constructor") +hasLocation(#20215,#20214) +enclosing_stmt(#20215,#20194) +expr_containers(#20215,#20001) +literals("constructor","constructor",#20215) +exprs(#20201,9,#20213,1,"() {}") +hasLocation(#20201,#20214) +enclosing_stmt(#20201,#20194) +expr_containers(#20201,#20001) #20216=* -stmts(#20216,17,#20001,1,"functio ... :\n }\n}") -#20217=@"loc,{#10000},11,1,15,1" -locations_default(#20217,#10000,11,1,15,1) -hasLocation(#20216,#20217) -stmt_containers(#20216,#20001) -#20218=* -exprs(#20218,78,#20216,-1,"f") -hasLocation(#20218,#20107) -expr_containers(#20218,#20216) -literals("f","f",#20218) -decl(#20218,#20190) +scopes(#20216,1) +scopenodes(#20201,#20216) +scopenesting(#20216,#20197) +#20217=@"var;{this};{#20216}" +variables(#20217,"this",#20216) +#20218=@"var;{arguments};{#20216}" +variables(#20218,"arguments",#20216) +is_arguments_object(#20218) #20219=* -scopes(#20219,1) -scopenodes(#20216,#20219) -scopenesting(#20219,#20000) -#20220=@"var;{arguments};{#20219}" -variables(#20220,"arguments",#20219) -is_arguments_object(#20220) -#20221=* -stmts(#20221,1,#20216,-2,"{\n swi ... :\n }\n}") -#20222=@"loc,{#10000},11,14,15,1" -locations_default(#20222,#10000,11,14,15,1) -hasLocation(#20221,#20222) -stmt_containers(#20221,#20216) +stmts(#20219,1,#20201,-2,"{}") +hasLocation(#20219,#20214) +stmt_containers(#20219,#20201) +is_method(#20213) +#20220=* +stmts(#20220,17,#20001,1,"functio ... :\n }\n}") +#20221=@"loc,{#10000},11,1,15,1" +locations_default(#20221,#10000,11,1,15,1) +hasLocation(#20220,#20221) +stmt_containers(#20220,#20001) +#20222=* +exprs(#20222,78,#20220,-1,"f") +hasLocation(#20222,#20107) +expr_containers(#20222,#20220) +literals("f","f",#20222) +decl(#20222,#20190) #20223=* -stmts(#20223,8,#20221,0,"switch( ... 2):\n }") -#20224=@"loc,{#10000},12,3,14,3" -locations_default(#20224,#10000,12,3,14,3) -hasLocation(#20223,#20224) -stmt_containers(#20223,#20216) -#20225=* -exprs(#20225,79,#20223,-1,"x") -hasLocation(#20225,#20119) -enclosing_stmt(#20225,#20223) -expr_containers(#20225,#20216) -literals("x","x",#20225) -#20226=@"var;{x};{#20000}" -variables(#20226,"x",#20000) -bind(#20225,#20226) -#20227=* -stmts(#20227,19,#20223,0,"case (42):") -#20228=@"loc,{#10000},13,3,13,12" -locations_default(#20228,#10000,13,3,13,12) -hasLocation(#20227,#20228) -stmt_containers(#20227,#20216) -#20229=* -exprs(#20229,63,#20227,-1,"(42)") -#20230=@"loc,{#10000},13,8,13,11" -locations_default(#20230,#10000,13,8,13,11) -hasLocation(#20229,#20230) -enclosing_stmt(#20229,#20227) -expr_containers(#20229,#20216) -#20231=* -exprs(#20231,3,#20229,0,"42") -hasLocation(#20231,#20129) -enclosing_stmt(#20231,#20227) -expr_containers(#20231,#20216) -literals("42","42",#20231) +scopes(#20223,1) +scopenodes(#20220,#20223) +scopenesting(#20223,#20000) +#20224=@"var;{this};{#20223}" +variables(#20224,"this",#20223) +#20225=@"var;{arguments};{#20223}" +variables(#20225,"arguments",#20223) +is_arguments_object(#20225) +#20226=* +stmts(#20226,1,#20220,-2,"{\n swi ... :\n }\n}") +#20227=@"loc,{#10000},11,14,15,1" +locations_default(#20227,#10000,11,14,15,1) +hasLocation(#20226,#20227) +stmt_containers(#20226,#20220) +#20228=* +stmts(#20228,8,#20226,0,"switch( ... 2):\n }") +#20229=@"loc,{#10000},12,3,14,3" +locations_default(#20229,#10000,12,3,14,3) +hasLocation(#20228,#20229) +stmt_containers(#20228,#20220) +#20230=* +exprs(#20230,79,#20228,-1,"x") +hasLocation(#20230,#20119) +enclosing_stmt(#20230,#20228) +expr_containers(#20230,#20220) +literals("x","x",#20230) +#20231=@"var;{x};{#20000}" +variables(#20231,"x",#20000) +bind(#20230,#20231) #20232=* -entry_cfg_node(#20232,#20001) -#20233=@"loc,{#10000},1,1,1,0" -locations_default(#20233,#10000,1,1,1,0) +stmts(#20232,19,#20228,0,"case (42):") +#20233=@"loc,{#10000},13,3,13,12" +locations_default(#20233,#10000,13,3,13,12) hasLocation(#20232,#20233) +stmt_containers(#20232,#20220) #20234=* -exit_cfg_node(#20234,#20001) -hasLocation(#20234,#20188) -successor(#20216,#20234) -#20235=* -entry_cfg_node(#20235,#20216) -#20236=@"loc,{#10000},11,1,11,0" -locations_default(#20236,#10000,11,1,11,0) -hasLocation(#20235,#20236) +exprs(#20234,63,#20232,-1,"(42)") +#20235=@"loc,{#10000},13,8,13,11" +locations_default(#20235,#10000,13,8,13,11) +hasLocation(#20234,#20235) +enclosing_stmt(#20234,#20232) +expr_containers(#20234,#20220) +#20236=* +exprs(#20236,3,#20234,0,"42") +hasLocation(#20236,#20129) +enclosing_stmt(#20236,#20232) +expr_containers(#20236,#20220) +literals("42","42",#20236) #20237=* -exit_cfg_node(#20237,#20216) -#20238=@"loc,{#10000},15,2,15,1" -locations_default(#20238,#10000,15,2,15,1) +entry_cfg_node(#20237,#20001) +#20238=@"loc,{#10000},1,1,1,0" +locations_default(#20238,#10000,1,1,1,0) hasLocation(#20237,#20238) -successor(#20223,#20225) -successor(#20225,#20227) -successor(#20227,#20229) -successor(#20229,#20231) -successor(#20231,#20237) -successor(#20221,#20223) -successor(#20235,#20221) -successor(#20200,#20197) -successor(#20199,#20210) #20239=* -entry_cfg_node(#20239,#20199) -hasLocation(#20239,#20211) -successor(#20197,#20215) +exit_cfg_node(#20239,#20001) +hasLocation(#20239,#20188) +successor(#20220,#20239) #20240=* -exit_cfg_node(#20240,#20199) -hasLocation(#20240,#20211) -successor(#20215,#20240) -successor(#20239,#20200) -successor(#20212,#20199) -successor(#20210,#20193) -successor(#20204,#20201) -#20241=* -entry_cfg_node(#20241,#20204) -#20242=@"loc,{#10000},8,4,8,3" -locations_default(#20242,#10000,8,4,8,3) -hasLocation(#20241,#20242) -#20243=* -exit_cfg_node(#20243,#20204) -#20244=@"loc,{#10000},8,17,8,16" -locations_default(#20244,#10000,8,17,8,16) -hasLocation(#20243,#20244) -successor(#20208,#20243) -successor(#20241,#20208) -successor(#20203,#20204) -successor(#20201,#20212) -successor(#20195,#20203) -successor(#20193,#20216) -successor(#20218,#20195) -successor(#20232,#20218) +entry_cfg_node(#20240,#20220) +#20241=@"loc,{#10000},11,1,11,0" +locations_default(#20241,#10000,11,1,11,0) +hasLocation(#20240,#20241) +#20242=* +exit_cfg_node(#20242,#20220) +#20243=@"loc,{#10000},15,2,15,1" +locations_default(#20243,#10000,15,2,15,1) +hasLocation(#20242,#20243) +successor(#20228,#20230) +successor(#20230,#20232) +successor(#20232,#20234) +successor(#20234,#20236) +successor(#20236,#20242) +successor(#20226,#20228) +successor(#20240,#20226) +successor(#20202,#20199) +successor(#20201,#20213) +#20244=* +entry_cfg_node(#20244,#20201) +hasLocation(#20244,#20214) +successor(#20199,#20219) +#20245=* +exit_cfg_node(#20245,#20201) +hasLocation(#20245,#20214) +successor(#20219,#20245) +successor(#20244,#20202) +successor(#20215,#20201) +successor(#20213,#20194) +successor(#20206,#20203) +#20246=* +entry_cfg_node(#20246,#20206) +#20247=@"loc,{#10000},8,4,8,3" +locations_default(#20247,#10000,8,4,8,3) +hasLocation(#20246,#20247) +#20248=* +exit_cfg_node(#20248,#20206) +#20249=@"loc,{#10000},8,17,8,16" +locations_default(#20249,#10000,8,17,8,16) +hasLocation(#20248,#20249) +successor(#20211,#20248) +successor(#20246,#20211) +successor(#20205,#20206) +successor(#20203,#20215) +successor(#20196,#20205) +successor(#20194,#20220) +successor(#20222,#20196) +successor(#20237,#20222) numlines(#10000,22,17,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/flow/output/trap/variance.js.trap b/javascript/extractor/tests/flow/output/trap/variance.js.trap index cd1ea42f2284..af2e45fd6f8c 100644 --- a/javascript/extractor/tests/flow/output/trap/variance.js.trap +++ b/javascript/extractor/tests/flow/output/trap/variance.js.trap @@ -164,85 +164,91 @@ hasLocation(#20001,#20057) variables(#20058,"Foo",#20000) #20059=@"local_type_name;{Foo};{#20000}" local_type_names(#20059,"Foo",#20000) -#20060=* -stmts(#20060,26,#20001,0,"class F ... : int\n}") -#20061=@"loc,{#10000},5,1,7,1" -locations_default(#20061,#10000,5,1,7,1) -hasLocation(#20060,#20061) -stmt_containers(#20060,#20001) -#20062=* -exprs(#20062,78,#20060,0,"Foo") -hasLocation(#20062,#20043) -enclosing_stmt(#20062,#20060) -expr_containers(#20062,#20001) -literals("Foo","Foo",#20062) -decl(#20062,#20058) -typedecl(#20062,#20059) +#20060=@"var;{this};{#20000}" +variables(#20060,"this",#20000) +#20061=* +stmts(#20061,26,#20001,0,"class F ... : int\n}") +#20062=@"loc,{#10000},5,1,7,1" +locations_default(#20062,#10000,5,1,7,1) +hasLocation(#20061,#20062) +stmt_containers(#20061,#20001) #20063=* -scopes(#20063,10) -scopenodes(#20060,#20063) -scopenesting(#20063,#20000) +exprs(#20063,78,#20061,0,"Foo") +hasLocation(#20063,#20043) +enclosing_stmt(#20063,#20061) +expr_containers(#20063,#20001) +literals("Foo","Foo",#20063) +decl(#20063,#20058) +typedecl(#20063,#20059) #20064=* -properties(#20064,#20060,2,8,"+x: int") -#20065=@"loc,{#10000},6,3,6,9" -locations_default(#20065,#10000,6,3,6,9) -hasLocation(#20064,#20065) +scopes(#20064,10) +scopenodes(#20061,#20064) +scopenesting(#20064,#20000) +#20065=@"var;{this};{#20064}" +variables(#20065,"this",#20064) #20066=* -#20067=* -exprs(#20067,0,#20064,0,"x") -hasLocation(#20067,#20049) -expr_containers(#20067,#20066) -literals("x","x",#20067) +properties(#20066,#20061,2,8,"+x: int") +#20067=@"loc,{#10000},6,3,6,9" +locations_default(#20067,#10000,6,3,6,9) +hasLocation(#20066,#20067) #20068=* -properties(#20068,#20060,3,0,"constructor() {}") -#20069=@"loc,{#10000},5,11,5,10" -locations_default(#20069,#10000,5,11,5,10) -hasLocation(#20068,#20069) +#20069=* +exprs(#20069,0,#20066,0,"x") +hasLocation(#20069,#20049) +expr_containers(#20069,#20068) +literals("x","x",#20069) #20070=* -exprs(#20070,0,#20068,0,"constructor") -hasLocation(#20070,#20069) -enclosing_stmt(#20070,#20060) -expr_containers(#20070,#20001) -literals("constructor","constructor",#20070) -exprs(#20066,9,#20068,1,"() {}") -hasLocation(#20066,#20069) -enclosing_stmt(#20066,#20060) -expr_containers(#20066,#20001) -#20071=* -scopes(#20071,1) -scopenodes(#20066,#20071) -scopenesting(#20071,#20063) -#20072=@"var;{arguments};{#20071}" -variables(#20072,"arguments",#20071) -is_arguments_object(#20072) +properties(#20070,#20061,3,0,"constructor() {}") +#20071=@"loc,{#10000},5,11,5,10" +locations_default(#20071,#10000,5,11,5,10) +hasLocation(#20070,#20071) +#20072=* +exprs(#20072,0,#20070,0,"constructor") +hasLocation(#20072,#20071) +enclosing_stmt(#20072,#20061) +expr_containers(#20072,#20001) +literals("constructor","constructor",#20072) +exprs(#20068,9,#20070,1,"() {}") +hasLocation(#20068,#20071) +enclosing_stmt(#20068,#20061) +expr_containers(#20068,#20001) #20073=* -stmts(#20073,1,#20066,-2,"{}") -hasLocation(#20073,#20069) -stmt_containers(#20073,#20066) -is_method(#20068) -#20074=* -entry_cfg_node(#20074,#20001) -#20075=@"loc,{#10000},1,1,1,0" -locations_default(#20075,#10000,1,1,1,0) -hasLocation(#20074,#20075) +scopes(#20073,1) +scopenodes(#20068,#20073) +scopenesting(#20073,#20064) +#20074=@"var;{this};{#20073}" +variables(#20074,"this",#20073) +#20075=@"var;{arguments};{#20073}" +variables(#20075,"arguments",#20073) +is_arguments_object(#20075) #20076=* -exit_cfg_node(#20076,#20001) -hasLocation(#20076,#20056) -successor(#20067,#20064) -successor(#20066,#20068) +stmts(#20076,1,#20068,-2,"{}") +hasLocation(#20076,#20071) +stmt_containers(#20076,#20068) +is_method(#20070) #20077=* -entry_cfg_node(#20077,#20066) -hasLocation(#20077,#20069) -successor(#20064,#20073) -#20078=* -exit_cfg_node(#20078,#20066) -hasLocation(#20078,#20069) -successor(#20073,#20078) -successor(#20077,#20067) -successor(#20070,#20066) -successor(#20068,#20060) -successor(#20062,#20070) -successor(#20060,#20076) -successor(#20074,#20062) +entry_cfg_node(#20077,#20001) +#20078=@"loc,{#10000},1,1,1,0" +locations_default(#20078,#10000,1,1,1,0) +hasLocation(#20077,#20078) +#20079=* +exit_cfg_node(#20079,#20001) +hasLocation(#20079,#20056) +successor(#20069,#20066) +successor(#20068,#20070) +#20080=* +entry_cfg_node(#20080,#20068) +hasLocation(#20080,#20071) +successor(#20066,#20076) +#20081=* +exit_cfg_node(#20081,#20068) +hasLocation(#20081,#20071) +successor(#20076,#20081) +successor(#20080,#20069) +successor(#20072,#20068) +successor(#20070,#20061) +successor(#20063,#20072) +successor(#20061,#20079) +successor(#20077,#20063) numlines(#10000,7,6,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/functionbind/output/trap/tst.js.trap b/javascript/extractor/tests/functionbind/output/trap/tst.js.trap index 8ec6dfe8c8af..9afdfe05de1f 100644 --- a/javascript/extractor/tests/functionbind/output/trap/tst.js.trap +++ b/javascript/extractor/tests/functionbind/output/trap/tst.js.trap @@ -237,260 +237,262 @@ hasLocation(#20001,#20088) variables(#20089,"hasOwnProp",#20000) #20090=@"var;{obj};{#20000}" variables(#20090,"obj",#20000) -#20091=* -stmts(#20091,2,#20001,0,"process ... e.log);") -hasLocation(#20091,#20003) -stmt_containers(#20091,#20001) +#20091=@"var;{this};{#20000}" +variables(#20091,"this",#20000) #20092=* -exprs(#20092,13,#20091,0,"process ... le.log)") -#20093=@"loc,{#10000},1,1,1,31" -locations_default(#20093,#10000,1,1,1,31) -hasLocation(#20092,#20093) -enclosing_stmt(#20092,#20091) -expr_containers(#20092,#20001) -#20094=* -exprs(#20094,14,#20092,-1,"process.argv.map") -#20095=@"loc,{#10000},1,1,1,16" -locations_default(#20095,#10000,1,1,1,16) -hasLocation(#20094,#20095) -enclosing_stmt(#20094,#20091) -expr_containers(#20094,#20001) -#20096=* -exprs(#20096,14,#20094,0,"process.argv") -#20097=@"loc,{#10000},1,1,1,12" -locations_default(#20097,#10000,1,1,1,12) -hasLocation(#20096,#20097) -enclosing_stmt(#20096,#20091) -expr_containers(#20096,#20001) -#20098=* -exprs(#20098,79,#20096,0,"process") -hasLocation(#20098,#20013) -enclosing_stmt(#20098,#20091) -expr_containers(#20098,#20001) -literals("process","process",#20098) -#20099=@"var;{process};{#20000}" -variables(#20099,"process",#20000) -bind(#20098,#20099) -#20100=* -exprs(#20100,0,#20096,1,"argv") -hasLocation(#20100,#20017) -enclosing_stmt(#20100,#20091) -expr_containers(#20100,#20001) -literals("argv","argv",#20100) +stmts(#20092,2,#20001,0,"process ... e.log);") +hasLocation(#20092,#20003) +stmt_containers(#20092,#20001) +#20093=* +exprs(#20093,13,#20092,0,"process ... le.log)") +#20094=@"loc,{#10000},1,1,1,31" +locations_default(#20094,#10000,1,1,1,31) +hasLocation(#20093,#20094) +enclosing_stmt(#20093,#20092) +expr_containers(#20093,#20001) +#20095=* +exprs(#20095,14,#20093,-1,"process.argv.map") +#20096=@"loc,{#10000},1,1,1,16" +locations_default(#20096,#10000,1,1,1,16) +hasLocation(#20095,#20096) +enclosing_stmt(#20095,#20092) +expr_containers(#20095,#20001) +#20097=* +exprs(#20097,14,#20095,0,"process.argv") +#20098=@"loc,{#10000},1,1,1,12" +locations_default(#20098,#10000,1,1,1,12) +hasLocation(#20097,#20098) +enclosing_stmt(#20097,#20092) +expr_containers(#20097,#20001) +#20099=* +exprs(#20099,79,#20097,0,"process") +hasLocation(#20099,#20013) +enclosing_stmt(#20099,#20092) +expr_containers(#20099,#20001) +literals("process","process",#20099) +#20100=@"var;{process};{#20000}" +variables(#20100,"process",#20000) +bind(#20099,#20100) #20101=* -exprs(#20101,0,#20094,1,"map") -hasLocation(#20101,#20021) -enclosing_stmt(#20101,#20091) +exprs(#20101,0,#20097,1,"argv") +hasLocation(#20101,#20017) +enclosing_stmt(#20101,#20092) expr_containers(#20101,#20001) -literals("map","map",#20101) +literals("argv","argv",#20101) #20102=* -exprs(#20102,97,#20092,0,"::console.log") -#20103=@"loc,{#10000},1,18,1,30" -locations_default(#20103,#10000,1,18,1,30) -hasLocation(#20102,#20103) -enclosing_stmt(#20102,#20091) +exprs(#20102,0,#20095,1,"map") +hasLocation(#20102,#20021) +enclosing_stmt(#20102,#20092) expr_containers(#20102,#20001) -#20104=* -exprs(#20104,14,#20102,1,"console.log") -#20105=@"loc,{#10000},1,20,1,30" -locations_default(#20105,#10000,1,20,1,30) -hasLocation(#20104,#20105) -enclosing_stmt(#20104,#20091) -expr_containers(#20104,#20001) -#20106=* -exprs(#20106,79,#20104,0,"console") -hasLocation(#20106,#20027) -enclosing_stmt(#20106,#20091) -expr_containers(#20106,#20001) -literals("console","console",#20106) -#20107=@"var;{console};{#20000}" -variables(#20107,"console",#20000) -bind(#20106,#20107) -#20108=* -exprs(#20108,0,#20104,1,"log") -hasLocation(#20108,#20031) -enclosing_stmt(#20108,#20091) -expr_containers(#20108,#20001) -literals("log","log",#20108) +literals("map","map",#20102) +#20103=* +exprs(#20103,97,#20093,0,"::console.log") +#20104=@"loc,{#10000},1,18,1,30" +locations_default(#20104,#10000,1,18,1,30) +hasLocation(#20103,#20104) +enclosing_stmt(#20103,#20092) +expr_containers(#20103,#20001) +#20105=* +exprs(#20105,14,#20103,1,"console.log") +#20106=@"loc,{#10000},1,20,1,30" +locations_default(#20106,#10000,1,20,1,30) +hasLocation(#20105,#20106) +enclosing_stmt(#20105,#20092) +expr_containers(#20105,#20001) +#20107=* +exprs(#20107,79,#20105,0,"console") +hasLocation(#20107,#20027) +enclosing_stmt(#20107,#20092) +expr_containers(#20107,#20001) +literals("console","console",#20107) +#20108=@"var;{console};{#20000}" +variables(#20108,"console",#20000) +bind(#20107,#20108) #20109=* -stmts(#20109,23,#20001,1,"let has ... operty;") -hasLocation(#20109,#20007) -stmt_containers(#20109,#20001) +exprs(#20109,0,#20105,1,"log") +hasLocation(#20109,#20031) +enclosing_stmt(#20109,#20092) +expr_containers(#20109,#20001) +literals("log","log",#20109) #20110=* -exprs(#20110,64,#20109,0,"hasOwnP ... roperty") -#20111=@"loc,{#10000},3,5,3,48" -locations_default(#20111,#10000,3,5,3,48) -hasLocation(#20110,#20111) -enclosing_stmt(#20110,#20109) -expr_containers(#20110,#20001) -#20112=* -exprs(#20112,78,#20110,0,"hasOwnProp") -hasLocation(#20112,#20039) -enclosing_stmt(#20112,#20109) -expr_containers(#20112,#20001) -literals("hasOwnProp","hasOwnProp",#20112) -decl(#20112,#20089) +stmts(#20110,23,#20001,1,"let has ... operty;") +hasLocation(#20110,#20007) +stmt_containers(#20110,#20001) +#20111=* +exprs(#20111,64,#20110,0,"hasOwnP ... roperty") +#20112=@"loc,{#10000},3,5,3,48" +locations_default(#20112,#10000,3,5,3,48) +hasLocation(#20111,#20112) +enclosing_stmt(#20111,#20110) +expr_containers(#20111,#20001) #20113=* -exprs(#20113,14,#20110,1,"Object. ... roperty") -#20114=@"loc,{#10000},3,18,3,48" -locations_default(#20114,#10000,3,18,3,48) -hasLocation(#20113,#20114) -enclosing_stmt(#20113,#20109) +exprs(#20113,78,#20111,0,"hasOwnProp") +hasLocation(#20113,#20039) +enclosing_stmt(#20113,#20110) expr_containers(#20113,#20001) -#20115=* -exprs(#20115,14,#20113,0,"Object.prototype") -#20116=@"loc,{#10000},3,18,3,33" -locations_default(#20116,#10000,3,18,3,33) -hasLocation(#20115,#20116) -enclosing_stmt(#20115,#20109) -expr_containers(#20115,#20001) -#20117=* -exprs(#20117,79,#20115,0,"Object") -hasLocation(#20117,#20043) -enclosing_stmt(#20117,#20109) -expr_containers(#20117,#20001) -literals("Object","Object",#20117) -#20118=@"var;{Object};{#20000}" -variables(#20118,"Object",#20000) -bind(#20117,#20118) -#20119=* -exprs(#20119,0,#20115,1,"prototype") -hasLocation(#20119,#20047) -enclosing_stmt(#20119,#20109) -expr_containers(#20119,#20001) -literals("prototype","prototype",#20119) +literals("hasOwnProp","hasOwnProp",#20113) +decl(#20113,#20089) +#20114=* +exprs(#20114,14,#20111,1,"Object. ... roperty") +#20115=@"loc,{#10000},3,18,3,48" +locations_default(#20115,#10000,3,18,3,48) +hasLocation(#20114,#20115) +enclosing_stmt(#20114,#20110) +expr_containers(#20114,#20001) +#20116=* +exprs(#20116,14,#20114,0,"Object.prototype") +#20117=@"loc,{#10000},3,18,3,33" +locations_default(#20117,#10000,3,18,3,33) +hasLocation(#20116,#20117) +enclosing_stmt(#20116,#20110) +expr_containers(#20116,#20001) +#20118=* +exprs(#20118,79,#20116,0,"Object") +hasLocation(#20118,#20043) +enclosing_stmt(#20118,#20110) +expr_containers(#20118,#20001) +literals("Object","Object",#20118) +#20119=@"var;{Object};{#20000}" +variables(#20119,"Object",#20000) +bind(#20118,#20119) #20120=* -exprs(#20120,0,#20113,1,"hasOwnProperty") -hasLocation(#20120,#20051) -enclosing_stmt(#20120,#20109) +exprs(#20120,0,#20116,1,"prototype") +hasLocation(#20120,#20047) +enclosing_stmt(#20120,#20110) expr_containers(#20120,#20001) -literals("hasOwnProperty","hasOwnProperty",#20120) +literals("prototype","prototype",#20120) #20121=* -stmts(#20121,23,#20001,2,"let obj ... 100 };") -hasLocation(#20121,#20009) -stmt_containers(#20121,#20001) +exprs(#20121,0,#20114,1,"hasOwnProperty") +hasLocation(#20121,#20051) +enclosing_stmt(#20121,#20110) +expr_containers(#20121,#20001) +literals("hasOwnProperty","hasOwnProperty",#20121) #20122=* -exprs(#20122,64,#20121,0,"obj = { x: 100 }") -#20123=@"loc,{#10000},4,5,4,20" -locations_default(#20123,#10000,4,5,4,20) -hasLocation(#20122,#20123) -enclosing_stmt(#20122,#20121) -expr_containers(#20122,#20001) -#20124=* -exprs(#20124,78,#20122,0,"obj") -hasLocation(#20124,#20057) -enclosing_stmt(#20124,#20121) -expr_containers(#20124,#20001) -literals("obj","obj",#20124) -decl(#20124,#20090) +stmts(#20122,23,#20001,2,"let obj ... 100 };") +hasLocation(#20122,#20009) +stmt_containers(#20122,#20001) +#20123=* +exprs(#20123,64,#20122,0,"obj = { x: 100 }") +#20124=@"loc,{#10000},4,5,4,20" +locations_default(#20124,#10000,4,5,4,20) +hasLocation(#20123,#20124) +enclosing_stmt(#20123,#20122) +expr_containers(#20123,#20001) #20125=* -exprs(#20125,8,#20122,1,"{ x: 100 }") -#20126=@"loc,{#10000},4,11,4,20" -locations_default(#20126,#10000,4,11,4,20) -hasLocation(#20125,#20126) -enclosing_stmt(#20125,#20121) +exprs(#20125,78,#20123,0,"obj") +hasLocation(#20125,#20057) +enclosing_stmt(#20125,#20122) expr_containers(#20125,#20001) -#20127=* -properties(#20127,#20125,0,0,"x: 100") -#20128=@"loc,{#10000},4,13,4,18" -locations_default(#20128,#10000,4,13,4,18) -hasLocation(#20127,#20128) -#20129=* -exprs(#20129,0,#20127,0,"x") -hasLocation(#20129,#20063) -enclosing_stmt(#20129,#20121) -expr_containers(#20129,#20001) -literals("x","x",#20129) +literals("obj","obj",#20125) +decl(#20125,#20090) +#20126=* +exprs(#20126,8,#20123,1,"{ x: 100 }") +#20127=@"loc,{#10000},4,11,4,20" +locations_default(#20127,#10000,4,11,4,20) +hasLocation(#20126,#20127) +enclosing_stmt(#20126,#20122) +expr_containers(#20126,#20001) +#20128=* +properties(#20128,#20126,0,0,"x: 100") +#20129=@"loc,{#10000},4,13,4,18" +locations_default(#20129,#10000,4,13,4,18) +hasLocation(#20128,#20129) #20130=* -exprs(#20130,3,#20127,1,"100") -hasLocation(#20130,#20067) -enclosing_stmt(#20130,#20121) +exprs(#20130,0,#20128,0,"x") +hasLocation(#20130,#20063) +enclosing_stmt(#20130,#20122) expr_containers(#20130,#20001) -literals("100","100",#20130) +literals("x","x",#20130) #20131=* -stmts(#20131,2,#20001,3,"obj::ha ... p(""x"");") -hasLocation(#20131,#20011) -stmt_containers(#20131,#20001) +exprs(#20131,3,#20128,1,"100") +hasLocation(#20131,#20067) +enclosing_stmt(#20131,#20122) +expr_containers(#20131,#20001) +literals("100","100",#20131) #20132=* -exprs(#20132,13,#20131,0,"obj::hasOwnProp(""x"")") -#20133=@"loc,{#10000},5,1,5,20" -locations_default(#20133,#10000,5,1,5,20) -hasLocation(#20132,#20133) -enclosing_stmt(#20132,#20131) -expr_containers(#20132,#20001) -#20134=* -exprs(#20134,97,#20132,-1,"obj::hasOwnProp") -#20135=@"loc,{#10000},5,1,5,15" -locations_default(#20135,#10000,5,1,5,15) -hasLocation(#20134,#20135) -enclosing_stmt(#20134,#20131) -expr_containers(#20134,#20001) -#20136=* -exprs(#20136,79,#20134,0,"obj") -hasLocation(#20136,#20073) -enclosing_stmt(#20136,#20131) -expr_containers(#20136,#20001) -literals("obj","obj",#20136) -bind(#20136,#20090) +stmts(#20132,2,#20001,3,"obj::ha ... p(""x"");") +hasLocation(#20132,#20011) +stmt_containers(#20132,#20001) +#20133=* +exprs(#20133,13,#20132,0,"obj::hasOwnProp(""x"")") +#20134=@"loc,{#10000},5,1,5,20" +locations_default(#20134,#10000,5,1,5,20) +hasLocation(#20133,#20134) +enclosing_stmt(#20133,#20132) +expr_containers(#20133,#20001) +#20135=* +exprs(#20135,97,#20133,-1,"obj::hasOwnProp") +#20136=@"loc,{#10000},5,1,5,15" +locations_default(#20136,#10000,5,1,5,15) +hasLocation(#20135,#20136) +enclosing_stmt(#20135,#20132) +expr_containers(#20135,#20001) #20137=* -exprs(#20137,79,#20134,1,"hasOwnProp") -hasLocation(#20137,#20077) -enclosing_stmt(#20137,#20131) +exprs(#20137,79,#20135,0,"obj") +hasLocation(#20137,#20073) +enclosing_stmt(#20137,#20132) expr_containers(#20137,#20001) -literals("hasOwnProp","hasOwnProp",#20137) -bind(#20137,#20089) +literals("obj","obj",#20137) +bind(#20137,#20090) #20138=* -exprs(#20138,4,#20132,0,"""x""") -hasLocation(#20138,#20081) -enclosing_stmt(#20138,#20131) +exprs(#20138,79,#20135,1,"hasOwnProp") +hasLocation(#20138,#20077) +enclosing_stmt(#20138,#20132) expr_containers(#20138,#20001) -literals("x","""x""",#20138) +literals("hasOwnProp","hasOwnProp",#20138) +bind(#20138,#20089) #20139=* -regexpterm(#20139,14,#20138,0,"x") -#20140=@"loc,{#10000},5,18,5,18" -locations_default(#20140,#10000,5,18,5,18) -hasLocation(#20139,#20140) -regexp_const_value(#20139,"x") -#20141=* -entry_cfg_node(#20141,#20001) -#20142=@"loc,{#10000},1,1,1,0" -locations_default(#20142,#10000,1,1,1,0) -hasLocation(#20141,#20142) -#20143=* -exit_cfg_node(#20143,#20001) -hasLocation(#20143,#20087) -successor(#20131,#20136) -successor(#20138,#20132) -successor(#20137,#20134) -successor(#20136,#20137) -successor(#20134,#20138) -successor(#20132,#20143) -successor(#20121,#20124) -successor(#20125,#20129) -successor(#20130,#20127) -successor(#20129,#20130) -successor(#20127,#20122) -successor(#20124,#20125) -successor(#20122,#20131) -successor(#20109,#20112) -successor(#20120,#20113) -successor(#20119,#20115) -successor(#20117,#20119) -successor(#20115,#20120) -successor(#20113,#20110) -successor(#20112,#20117) -successor(#20110,#20121) -successor(#20091,#20098) -successor(#20108,#20104) -successor(#20106,#20108) -successor(#20104,#20102) -successor(#20102,#20092) -successor(#20101,#20094) -successor(#20100,#20096) -successor(#20098,#20100) -successor(#20096,#20101) -successor(#20094,#20106) -successor(#20092,#20109) -successor(#20141,#20091) +exprs(#20139,4,#20133,0,"""x""") +hasLocation(#20139,#20081) +enclosing_stmt(#20139,#20132) +expr_containers(#20139,#20001) +literals("x","""x""",#20139) +#20140=* +regexpterm(#20140,14,#20139,0,"x") +#20141=@"loc,{#10000},5,18,5,18" +locations_default(#20141,#10000,5,18,5,18) +hasLocation(#20140,#20141) +regexp_const_value(#20140,"x") +#20142=* +entry_cfg_node(#20142,#20001) +#20143=@"loc,{#10000},1,1,1,0" +locations_default(#20143,#10000,1,1,1,0) +hasLocation(#20142,#20143) +#20144=* +exit_cfg_node(#20144,#20001) +hasLocation(#20144,#20087) +successor(#20132,#20137) +successor(#20139,#20133) +successor(#20138,#20135) +successor(#20137,#20138) +successor(#20135,#20139) +successor(#20133,#20144) +successor(#20122,#20125) +successor(#20126,#20130) +successor(#20131,#20128) +successor(#20130,#20131) +successor(#20128,#20123) +successor(#20125,#20126) +successor(#20123,#20132) +successor(#20110,#20113) +successor(#20121,#20114) +successor(#20120,#20116) +successor(#20118,#20120) +successor(#20116,#20121) +successor(#20114,#20111) +successor(#20113,#20118) +successor(#20111,#20122) +successor(#20092,#20099) +successor(#20109,#20105) +successor(#20107,#20109) +successor(#20105,#20103) +successor(#20103,#20093) +successor(#20102,#20095) +successor(#20101,#20097) +successor(#20099,#20101) +successor(#20097,#20102) +successor(#20095,#20107) +successor(#20093,#20110) +successor(#20142,#20092) numlines(#10000,5,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/generatedcode/output/trap/attributes.html.trap b/javascript/extractor/tests/generatedcode/output/trap/attributes.html.trap index 69857f54fdef..78bc57a43402 100644 --- a/javascript/extractor/tests/generatedcode/output/trap/attributes.html.trap +++ b/javascript/extractor/tests/generatedcode/output/trap/attributes.html.trap @@ -37,374 +37,380 @@ scopes(#20010,3) scopenodes(#20004,#20010) scopenesting(#20010,#20000) is_module(#20004) -#20011=* -stmts(#20011,2,#20004,0,"foo") -hasLocation(#20011,#20006) -stmt_containers(#20011,#20004) +#20011=@"var;{this};{#20010}" +variables(#20011,"this",#20010) #20012=* -exprs(#20012,79,#20011,0,"foo") +stmts(#20012,2,#20004,0,"foo") hasLocation(#20012,#20006) -enclosing_stmt(#20012,#20011) -expr_containers(#20012,#20004) -literals("foo","foo",#20012) -#20013=@"var;{foo};{#20010}" -variables(#20013,"foo",#20010) -bind(#20012,#20013) -#20014=* -entry_cfg_node(#20014,#20004) -#20015=@"loc,{#10000},4,16,4,15" -locations_default(#20015,#10000,4,16,4,15) -hasLocation(#20014,#20015) -#20016=* -exit_cfg_node(#20016,#20004) -hasLocation(#20016,#20009) -successor(#20011,#20012) -successor(#20012,#20016) -successor(#20014,#20011) -toplevel_parent_xml_node(#20004,#20001) +stmt_containers(#20012,#20004) +#20013=* +exprs(#20013,79,#20012,0,"foo") +hasLocation(#20013,#20006) +enclosing_stmt(#20013,#20012) +expr_containers(#20013,#20004) +literals("foo","foo",#20013) +#20014=@"var;{foo};{#20010}" +variables(#20014,"foo",#20010) +bind(#20013,#20014) +#20015=* +entry_cfg_node(#20015,#20004) +#20016=@"loc,{#10000},4,16,4,15" +locations_default(#20016,#10000,4,16,4,15) +hasLocation(#20015,#20016) #20017=* +exit_cfg_node(#20017,#20004) +hasLocation(#20017,#20009) +successor(#20012,#20013) +successor(#20013,#20017) +successor(#20015,#20012) +toplevel_parent_xml_node(#20004,#20001) #20018=* -template_placeholder_tag_info(#20017,#20018,"{{{foo}}}") -#20019=@"loc,{#10000},5,14,5,22" -locations_default(#20019,#10000,5,14,5,22) -hasLocation(#20017,#20019) +#20019=* +template_placeholder_tag_info(#20018,#20019,"{{{foo}}}") +#20020=@"loc,{#10000},5,14,5,22" +locations_default(#20020,#10000,5,14,5,22) +hasLocation(#20018,#20020) scopes(#20000,0) -#20020=@"script;{#10000},5,17" -#20021=* -lines(#20021,#20020,"foo","") -#20022=@"loc,{#10000},5,17,5,19" -locations_default(#20022,#10000,5,17,5,19) -hasLocation(#20021,#20022) -numlines(#20020,1,1,0) -#20023=* -tokeninfo(#20023,6,#20020,0,"foo") -hasLocation(#20023,#20022) +#20021=@"script;{#10000},5,17" +#20022=* +lines(#20022,#20021,"foo","") +#20023=@"loc,{#10000},5,17,5,19" +locations_default(#20023,#10000,5,17,5,19) +hasLocation(#20022,#20023) +numlines(#20021,1,1,0) #20024=* -tokeninfo(#20024,0,#20020,1,"") -#20025=@"loc,{#10000},5,20,5,19" -locations_default(#20025,#10000,5,20,5,19) -hasLocation(#20024,#20025) -toplevels(#20020,4) -hasLocation(#20020,#20022) -#20026=@"module;{#10000},5,17" -scopes(#20026,3) -scopenodes(#20020,#20026) -scopenesting(#20026,#20000) -is_module(#20020) -#20027=* -stmts(#20027,2,#20020,0,"foo") -hasLocation(#20027,#20022) -stmt_containers(#20027,#20020) -#20028=* -exprs(#20028,79,#20027,0,"foo") -hasLocation(#20028,#20022) -enclosing_stmt(#20028,#20027) -expr_containers(#20028,#20020) -literals("foo","foo",#20028) -#20029=@"var;{foo};{#20026}" -variables(#20029,"foo",#20026) -bind(#20028,#20029) +tokeninfo(#20024,6,#20021,0,"foo") +hasLocation(#20024,#20023) +#20025=* +tokeninfo(#20025,0,#20021,1,"") +#20026=@"loc,{#10000},5,20,5,19" +locations_default(#20026,#10000,5,20,5,19) +hasLocation(#20025,#20026) +toplevels(#20021,4) +hasLocation(#20021,#20023) +#20027=@"module;{#10000},5,17" +scopes(#20027,3) +scopenodes(#20021,#20027) +scopenesting(#20027,#20000) +is_module(#20021) +#20028=@"var;{this};{#20027}" +variables(#20028,"this",#20027) +#20029=* +stmts(#20029,2,#20021,0,"foo") +hasLocation(#20029,#20023) +stmt_containers(#20029,#20021) #20030=* -entry_cfg_node(#20030,#20020) -#20031=@"loc,{#10000},5,17,5,16" -locations_default(#20031,#10000,5,17,5,16) -hasLocation(#20030,#20031) +exprs(#20030,79,#20029,0,"foo") +hasLocation(#20030,#20023) +enclosing_stmt(#20030,#20029) +expr_containers(#20030,#20021) +literals("foo","foo",#20030) +#20031=@"var;{foo};{#20027}" +variables(#20031,"foo",#20027) +bind(#20030,#20031) #20032=* -exit_cfg_node(#20032,#20020) -hasLocation(#20032,#20025) -successor(#20027,#20028) -successor(#20028,#20032) -successor(#20030,#20027) -toplevel_parent_xml_node(#20020,#20017) -#20033=* -template_placeholder_tag_info(#20033,#20018,"{{/foo}}") -#20034=@"loc,{#10000},5,23,5,30" -locations_default(#20034,#10000,5,23,5,30) -hasLocation(#20033,#20034) -scopes(#20000,0) -#20035=@"script;{#10000},5,25" -toplevels(#20035,4) -#20036=@"loc,{#10000},5,25,5,25" -locations_default(#20036,#10000,5,25,5,25) +entry_cfg_node(#20032,#20021) +#20033=@"loc,{#10000},5,17,5,16" +locations_default(#20033,#10000,5,17,5,16) +hasLocation(#20032,#20033) +#20034=* +exit_cfg_node(#20034,#20021) +hasLocation(#20034,#20026) +successor(#20029,#20030) +successor(#20030,#20034) +successor(#20032,#20029) +toplevel_parent_xml_node(#20021,#20018) +#20035=* +template_placeholder_tag_info(#20035,#20019,"{{/foo}}") +#20036=@"loc,{#10000},5,23,5,30" +locations_default(#20036,#10000,5,23,5,30) hasLocation(#20035,#20036) -#20037=* -js_parse_errors(#20037,#20035,"Error: Unterminated regular expression","/foo") -#20038=@"loc,{#10000},5,26,5,26" -locations_default(#20038,#10000,5,26,5,26) +scopes(#20000,0) +#20037=@"script;{#10000},5,25" +toplevels(#20037,4) +#20038=@"loc,{#10000},5,25,5,25" +locations_default(#20038,#10000,5,25,5,25) hasLocation(#20037,#20038) #20039=* -lines(#20039,#20035,"/foo","") -#20040=@"loc,{#10000},5,25,5,28" -locations_default(#20040,#10000,5,25,5,28) +js_parse_errors(#20039,#20037,"Error: Unterminated regular expression","/foo") +#20040=@"loc,{#10000},5,26,5,26" +locations_default(#20040,#10000,5,26,5,26) hasLocation(#20039,#20040) -numlines(#20035,1,0,0) -toplevel_parent_xml_node(#20035,#20033) #20041=* -#20042=* -template_placeholder_tag_info(#20041,#20042,"{{#foo}}") -#20043=@"loc,{#10000},6,14,6,21" -locations_default(#20043,#10000,6,14,6,21) -hasLocation(#20041,#20043) +lines(#20041,#20037,"/foo","") +#20042=@"loc,{#10000},5,25,5,28" +locations_default(#20042,#10000,5,25,5,28) +hasLocation(#20041,#20042) +numlines(#20037,1,0,0) +toplevel_parent_xml_node(#20037,#20035) +#20043=* +#20044=* +template_placeholder_tag_info(#20043,#20044,"{{#foo}}") +#20045=@"loc,{#10000},6,14,6,21" +locations_default(#20045,#10000,6,14,6,21) +hasLocation(#20043,#20045) scopes(#20000,0) -#20044=@"script;{#10000},6,16" -toplevels(#20044,4) -#20045=@"loc,{#10000},6,16,6,16" -locations_default(#20045,#10000,6,16,6,16) -hasLocation(#20044,#20045) -#20046=* -js_parse_errors(#20046,#20044,"Error: Cannot use private fields outside a class","#foo") -#20047=@"loc,{#10000},6,20,6,20" -locations_default(#20047,#10000,6,20,6,20) +#20046=@"script;{#10000},6,16" +toplevels(#20046,4) +#20047=@"loc,{#10000},6,16,6,16" +locations_default(#20047,#10000,6,16,6,16) hasLocation(#20046,#20047) #20048=* -lines(#20048,#20044,"#foo","") -#20049=@"loc,{#10000},6,16,6,19" -locations_default(#20049,#10000,6,16,6,19) +js_parse_errors(#20048,#20046,"Error: Cannot use private fields outside a class","#foo") +#20049=@"loc,{#10000},6,20,6,20" +locations_default(#20049,#10000,6,20,6,20) hasLocation(#20048,#20049) -numlines(#20044,1,0,0) #20050=* -js_parse_errors(#20050,#20044,"Error: Unexpected token","#foo") -hasLocation(#20050,#20045) -#20051=* -lines(#20051,#20044,"#foo","") -hasLocation(#20051,#20049) -numlines(#20044,1,0,0) -toplevel_parent_xml_node(#20044,#20041) +lines(#20050,#20046,"#foo","") +#20051=@"loc,{#10000},6,16,6,19" +locations_default(#20051,#10000,6,16,6,19) +hasLocation(#20050,#20051) +numlines(#20046,1,0,0) #20052=* -template_placeholder_tag_info(#20052,#20042,"{{/foo}}") -#20053=@"loc,{#10000},6,22,6,29" -locations_default(#20053,#10000,6,22,6,29) -hasLocation(#20052,#20053) -scopes(#20000,0) -#20054=@"script;{#10000},6,24" -toplevels(#20054,4) -#20055=@"loc,{#10000},6,24,6,24" -locations_default(#20055,#10000,6,24,6,24) +js_parse_errors(#20052,#20046,"Error: Unexpected token","#foo") +hasLocation(#20052,#20047) +#20053=* +lines(#20053,#20046,"#foo","") +hasLocation(#20053,#20051) +numlines(#20046,1,0,0) +toplevel_parent_xml_node(#20046,#20043) +#20054=* +template_placeholder_tag_info(#20054,#20044,"{{/foo}}") +#20055=@"loc,{#10000},6,22,6,29" +locations_default(#20055,#10000,6,22,6,29) hasLocation(#20054,#20055) -#20056=* -js_parse_errors(#20056,#20054,"Error: Unterminated regular expression","/foo") -#20057=@"loc,{#10000},6,25,6,25" -locations_default(#20057,#10000,6,25,6,25) +scopes(#20000,0) +#20056=@"script;{#10000},6,24" +toplevels(#20056,4) +#20057=@"loc,{#10000},6,24,6,24" +locations_default(#20057,#10000,6,24,6,24) hasLocation(#20056,#20057) #20058=* -lines(#20058,#20054,"/foo","") -#20059=@"loc,{#10000},6,24,6,27" -locations_default(#20059,#10000,6,24,6,27) +js_parse_errors(#20058,#20056,"Error: Unterminated regular expression","/foo") +#20059=@"loc,{#10000},6,25,6,25" +locations_default(#20059,#10000,6,25,6,25) hasLocation(#20058,#20059) -numlines(#20054,1,0,0) -toplevel_parent_xml_node(#20054,#20052) #20060=* -#20061=* -template_placeholder_tag_info(#20060,#20061,"{{#foo}}") -#20062=@"loc,{#10000},8,18,8,25" -locations_default(#20062,#10000,8,18,8,25) -hasLocation(#20060,#20062) +lines(#20060,#20056,"/foo","") +#20061=@"loc,{#10000},6,24,6,27" +locations_default(#20061,#10000,6,24,6,27) +hasLocation(#20060,#20061) +numlines(#20056,1,0,0) +toplevel_parent_xml_node(#20056,#20054) +#20062=* +#20063=* +template_placeholder_tag_info(#20062,#20063,"{{#foo}}") +#20064=@"loc,{#10000},8,18,8,25" +locations_default(#20064,#10000,8,18,8,25) +hasLocation(#20062,#20064) scopes(#20000,0) -#20063=@"script;{#10000},8,20" -toplevels(#20063,4) -#20064=@"loc,{#10000},8,20,8,20" -locations_default(#20064,#10000,8,20,8,20) -hasLocation(#20063,#20064) -#20065=* -js_parse_errors(#20065,#20063,"Error: Cannot use private fields outside a class","#foo") -#20066=@"loc,{#10000},8,24,8,24" -locations_default(#20066,#10000,8,24,8,24) +#20065=@"script;{#10000},8,20" +toplevels(#20065,4) +#20066=@"loc,{#10000},8,20,8,20" +locations_default(#20066,#10000,8,20,8,20) hasLocation(#20065,#20066) #20067=* -lines(#20067,#20063,"#foo","") -#20068=@"loc,{#10000},8,20,8,23" -locations_default(#20068,#10000,8,20,8,23) +js_parse_errors(#20067,#20065,"Error: Cannot use private fields outside a class","#foo") +#20068=@"loc,{#10000},8,24,8,24" +locations_default(#20068,#10000,8,24,8,24) hasLocation(#20067,#20068) -numlines(#20063,1,0,0) #20069=* -js_parse_errors(#20069,#20063,"Error: Unexpected token","#foo") -hasLocation(#20069,#20064) -#20070=* -lines(#20070,#20063,"#foo","") -hasLocation(#20070,#20068) -numlines(#20063,1,0,0) -toplevel_parent_xml_node(#20063,#20060) +lines(#20069,#20065,"#foo","") +#20070=@"loc,{#10000},8,20,8,23" +locations_default(#20070,#10000,8,20,8,23) +hasLocation(#20069,#20070) +numlines(#20065,1,0,0) #20071=* -template_placeholder_tag_info(#20071,#20061,"{{baz}}") -#20072=@"loc,{#10000},8,30,8,36" -locations_default(#20072,#10000,8,30,8,36) -hasLocation(#20071,#20072) +js_parse_errors(#20071,#20065,"Error: Unexpected token","#foo") +hasLocation(#20071,#20066) +#20072=* +lines(#20072,#20065,"#foo","") +hasLocation(#20072,#20070) +numlines(#20065,1,0,0) +toplevel_parent_xml_node(#20065,#20062) +#20073=* +template_placeholder_tag_info(#20073,#20063,"{{baz}}") +#20074=@"loc,{#10000},8,30,8,36" +locations_default(#20074,#10000,8,30,8,36) +hasLocation(#20073,#20074) scopes(#20000,0) -#20073=@"script;{#10000},8,32" -#20074=* -lines(#20074,#20073,"baz","") -#20075=@"loc,{#10000},8,32,8,34" -locations_default(#20075,#10000,8,32,8,34) -hasLocation(#20074,#20075) -numlines(#20073,1,1,0) +#20075=@"script;{#10000},8,32" #20076=* -tokeninfo(#20076,6,#20073,0,"baz") -hasLocation(#20076,#20075) -#20077=* -tokeninfo(#20077,0,#20073,1,"") -#20078=@"loc,{#10000},8,35,8,34" -locations_default(#20078,#10000,8,35,8,34) -hasLocation(#20077,#20078) -toplevels(#20073,4) -hasLocation(#20073,#20075) -#20079=@"module;{#10000},8,32" -scopes(#20079,3) -scopenodes(#20073,#20079) -scopenesting(#20079,#20000) -is_module(#20073) -#20080=* -stmts(#20080,2,#20073,0,"baz") -hasLocation(#20080,#20075) -stmt_containers(#20080,#20073) -#20081=* -exprs(#20081,79,#20080,0,"baz") -hasLocation(#20081,#20075) -enclosing_stmt(#20081,#20080) -expr_containers(#20081,#20073) -literals("baz","baz",#20081) -#20082=@"var;{baz};{#20079}" -variables(#20082,"baz",#20079) -bind(#20081,#20082) +lines(#20076,#20075,"baz","") +#20077=@"loc,{#10000},8,32,8,34" +locations_default(#20077,#10000,8,32,8,34) +hasLocation(#20076,#20077) +numlines(#20075,1,1,0) +#20078=* +tokeninfo(#20078,6,#20075,0,"baz") +hasLocation(#20078,#20077) +#20079=* +tokeninfo(#20079,0,#20075,1,"") +#20080=@"loc,{#10000},8,35,8,34" +locations_default(#20080,#10000,8,35,8,34) +hasLocation(#20079,#20080) +toplevels(#20075,4) +hasLocation(#20075,#20077) +#20081=@"module;{#10000},8,32" +scopes(#20081,3) +scopenodes(#20075,#20081) +scopenesting(#20081,#20000) +is_module(#20075) +#20082=@"var;{this};{#20081}" +variables(#20082,"this",#20081) #20083=* -entry_cfg_node(#20083,#20073) -#20084=@"loc,{#10000},8,32,8,31" -locations_default(#20084,#10000,8,32,8,31) -hasLocation(#20083,#20084) -#20085=* -exit_cfg_node(#20085,#20073) -hasLocation(#20085,#20078) -successor(#20080,#20081) -successor(#20081,#20085) -successor(#20083,#20080) -toplevel_parent_xml_node(#20073,#20071) +stmts(#20083,2,#20075,0,"baz") +hasLocation(#20083,#20077) +stmt_containers(#20083,#20075) +#20084=* +exprs(#20084,79,#20083,0,"baz") +hasLocation(#20084,#20077) +enclosing_stmt(#20084,#20083) +expr_containers(#20084,#20075) +literals("baz","baz",#20084) +#20085=@"var;{baz};{#20081}" +variables(#20085,"baz",#20081) +bind(#20084,#20085) #20086=* -template_placeholder_tag_info(#20086,#20061,"{{/foo}}") -#20087=@"loc,{#10000},8,37,8,44" -locations_default(#20087,#10000,8,37,8,44) +entry_cfg_node(#20086,#20075) +#20087=@"loc,{#10000},8,32,8,31" +locations_default(#20087,#10000,8,32,8,31) hasLocation(#20086,#20087) +#20088=* +exit_cfg_node(#20088,#20075) +hasLocation(#20088,#20080) +successor(#20083,#20084) +successor(#20084,#20088) +successor(#20086,#20083) +toplevel_parent_xml_node(#20075,#20073) +#20089=* +template_placeholder_tag_info(#20089,#20063,"{{/foo}}") +#20090=@"loc,{#10000},8,37,8,44" +locations_default(#20090,#10000,8,37,8,44) +hasLocation(#20089,#20090) scopes(#20000,0) -#20088=@"script;{#10000},8,39" -toplevels(#20088,4) -#20089=@"loc,{#10000},8,39,8,39" -locations_default(#20089,#10000,8,39,8,39) -hasLocation(#20088,#20089) -#20090=* -js_parse_errors(#20090,#20088,"Error: Unterminated regular expression","/foo") -#20091=@"loc,{#10000},8,40,8,40" -locations_default(#20091,#10000,8,40,8,40) -hasLocation(#20090,#20091) -#20092=* -lines(#20092,#20088,"/foo","") -#20093=@"loc,{#10000},8,39,8,42" -locations_default(#20093,#10000,8,39,8,42) -hasLocation(#20092,#20093) -numlines(#20088,1,0,0) -toplevel_parent_xml_node(#20088,#20086) -#20094=* -xmlChars(#20094," +#20091=@"script;{#10000},8,39" +toplevels(#20091,4) +#20092=@"loc,{#10000},8,39,8,39" +locations_default(#20092,#10000,8,39,8,39) +hasLocation(#20091,#20092) +#20093=* +js_parse_errors(#20093,#20091,"Error: Unterminated regular expression","/foo") +#20094=@"loc,{#10000},8,40,8,40" +locations_default(#20094,#10000,8,40,8,40) +hasLocation(#20093,#20094) +#20095=* +lines(#20095,#20091,"/foo","") +#20096=@"loc,{#10000},8,39,8,42" +locations_default(#20096,#10000,8,39,8,42) +hasLocation(#20095,#20096) +numlines(#20091,1,0,0) +toplevel_parent_xml_node(#20091,#20089) +#20097=* +xmlChars(#20097," ",#10000,0,0,#10000) -#20095=@"loc,{#10000},1,16,1,16" -locations_default(#20095,#10000,1,16,1,16) -xmllocations(#20094,#20095) -#20096=* -xmlChars(#20096," +#20098=@"loc,{#10000},1,16,1,16" +locations_default(#20098,#10000,1,16,1,16) +xmllocations(#20097,#20098) +#20099=* +xmlChars(#20099," ",#10000,2,0,#10000) -#20097=@"loc,{#10000},10,8,10,8" -locations_default(#20097,#10000,10,8,10,8) -xmllocations(#20096,#20097) -#20098=* -xmlElements(#20098,"html",#10000,1,#10000) -#20099=@"loc,{#10000},2,1,10,7" -locations_default(#20099,#10000,2,1,10,7) -xmllocations(#20098,#20099) -#20100=* -xmlChars(#20100," - ",#20098,0,0,#10000) -#20101=@"loc,{#10000},2,7,3,2" -locations_default(#20101,#10000,2,7,3,2) -xmllocations(#20100,#20101) -#20102=* -xmlChars(#20102," -",#20098,2,0,#10000) -#20103=@"loc,{#10000},9,10,9,10" -locations_default(#20103,#10000,9,10,9,10) -xmllocations(#20102,#20103) -#20104=* -xmlElements(#20104,"body",#20098,1,#10000) -#20105=@"loc,{#10000},3,3,9,9" -locations_default(#20105,#10000,3,3,9,9) -xmllocations(#20104,#20105) -#20106=* -xmlChars(#20106," - ",#20104,0,0,#10000) -#20107=@"loc,{#10000},3,9,4,4" -locations_default(#20107,#10000,3,9,4,4) -xmllocations(#20106,#20107) -#20108=* -xmlChars(#20108," - ",#20104,2,0,#10000) -#20109=@"loc,{#10000},4,28,5,4" -locations_default(#20109,#10000,4,28,5,4) -xmllocations(#20108,#20109) -#20110=* -xmlChars(#20110," - ",#20104,4,0,#10000) -#20111=@"loc,{#10000},5,33,6,4" -locations_default(#20111,#10000,5,33,6,4) -xmllocations(#20110,#20111) -#20112=* -xmlChars(#20112," - ",#20104,6,0,#10000) -#20113=@"loc,{#10000},6,32,7,4" -locations_default(#20113,#10000,6,32,7,4) -xmllocations(#20112,#20113) -#20114=* -xmlChars(#20114," - ",#20104,8,0,#10000) -#20115=@"loc,{#10000},7,36,8,4" -locations_default(#20115,#10000,7,36,8,4) -xmllocations(#20114,#20115) -#20116=* -xmlChars(#20116," - ",#20104,10,0,#10000) -#20117=@"loc,{#10000},8,47,9,2" -locations_default(#20117,#10000,8,47,9,2) -xmllocations(#20116,#20117) -xmlElements(#20061,"div",#20104,9,#10000) -#20118=@"loc,{#10000},8,5,8,46" -locations_default(#20118,#10000,8,5,8,46) -xmllocations(#20061,#20118) +#20100=@"loc,{#10000},10,8,10,8" +locations_default(#20100,#10000,10,8,10,8) +xmllocations(#20099,#20100) +#20101=* +xmlElements(#20101,"html",#10000,1,#10000) +#20102=@"loc,{#10000},2,1,10,7" +locations_default(#20102,#10000,2,1,10,7) +xmllocations(#20101,#20102) +#20103=* +xmlChars(#20103," + ",#20101,0,0,#10000) +#20104=@"loc,{#10000},2,7,3,2" +locations_default(#20104,#10000,2,7,3,2) +xmllocations(#20103,#20104) +#20105=* +xmlChars(#20105," +",#20101,2,0,#10000) +#20106=@"loc,{#10000},9,10,9,10" +locations_default(#20106,#10000,9,10,9,10) +xmllocations(#20105,#20106) +#20107=* +xmlElements(#20107,"body",#20101,1,#10000) +#20108=@"loc,{#10000},3,3,9,9" +locations_default(#20108,#10000,3,3,9,9) +xmllocations(#20107,#20108) +#20109=* +xmlChars(#20109," + ",#20107,0,0,#10000) +#20110=@"loc,{#10000},3,9,4,4" +locations_default(#20110,#10000,3,9,4,4) +xmllocations(#20109,#20110) +#20111=* +xmlChars(#20111," + ",#20107,2,0,#10000) +#20112=@"loc,{#10000},4,28,5,4" +locations_default(#20112,#10000,4,28,5,4) +xmllocations(#20111,#20112) +#20113=* +xmlChars(#20113," + ",#20107,4,0,#10000) +#20114=@"loc,{#10000},5,33,6,4" +locations_default(#20114,#10000,5,33,6,4) +xmllocations(#20113,#20114) +#20115=* +xmlChars(#20115," + ",#20107,6,0,#10000) +#20116=@"loc,{#10000},6,32,7,4" +locations_default(#20116,#10000,6,32,7,4) +xmllocations(#20115,#20116) +#20117=* +xmlChars(#20117," + ",#20107,8,0,#10000) +#20118=@"loc,{#10000},7,36,8,4" +locations_default(#20118,#10000,7,36,8,4) +xmllocations(#20117,#20118) #20119=* -xmlElements(#20119,"div",#20104,7,#10000) -#20120=@"loc,{#10000},7,5,7,35" -locations_default(#20120,#10000,7,5,7,35) +xmlChars(#20119," + ",#20107,10,0,#10000) +#20120=@"loc,{#10000},8,47,9,2" +locations_default(#20120,#10000,8,47,9,2) xmllocations(#20119,#20120) -#20121=* -xmlElements(#20121,"div",#20104,5,#10000) -#20122=@"loc,{#10000},6,5,6,31" -locations_default(#20122,#10000,6,5,6,31) -xmllocations(#20121,#20122) -xmlAttrs(#20042,#20121,"foo","{{#foo}}{{/foo}}/",0,#10000) -#20123=@"loc,{#10000},6,10,6,30" -locations_default(#20123,#10000,6,10,6,30) -xmllocations(#20042,#20123) +xmlElements(#20063,"div",#20107,9,#10000) +#20121=@"loc,{#10000},8,5,8,46" +locations_default(#20121,#10000,8,5,8,46) +xmllocations(#20063,#20121) +#20122=* +xmlElements(#20122,"div",#20107,7,#10000) +#20123=@"loc,{#10000},7,5,7,35" +locations_default(#20123,#10000,7,5,7,35) +xmllocations(#20122,#20123) #20124=* -xmlElements(#20124,"div",#20104,3,#10000) -#20125=@"loc,{#10000},5,5,5,32" -locations_default(#20125,#10000,5,5,5,32) +xmlElements(#20124,"div",#20107,5,#10000) +#20125=@"loc,{#10000},6,5,6,31" +locations_default(#20125,#10000,6,5,6,31) xmllocations(#20124,#20125) -xmlAttrs(#20018,#20124,"foo","{{{foo}}}{{/foo}}/",0,#10000) -#20126=@"loc,{#10000},5,10,5,31" -locations_default(#20126,#10000,5,10,5,31) -xmllocations(#20018,#20126) +xmlAttrs(#20044,#20124,"foo","{{#foo}}{{/foo}}/",0,#10000) +#20126=@"loc,{#10000},6,10,6,30" +locations_default(#20126,#10000,6,10,6,30) +xmllocations(#20044,#20126) #20127=* -xmlElements(#20127,"div",#20104,1,#10000) -#20128=@"loc,{#10000},4,5,4,27" -locations_default(#20128,#10000,4,5,4,27) +xmlElements(#20127,"div",#20107,3,#10000) +#20128=@"loc,{#10000},5,5,5,32" +locations_default(#20128,#10000,5,5,5,32) xmllocations(#20127,#20128) -xmlAttrs(#20002,#20127,"foo","{{foo}}",0,#10000) -#20129=@"loc,{#10000},4,10,4,20" -locations_default(#20129,#10000,4,10,4,20) -xmllocations(#20002,#20129) +xmlAttrs(#20019,#20127,"foo","{{{foo}}}{{/foo}}/",0,#10000) +#20129=@"loc,{#10000},5,10,5,31" +locations_default(#20129,#10000,5,10,5,31) +xmllocations(#20019,#20129) +#20130=* +xmlElements(#20130,"div",#20107,1,#10000) +#20131=@"loc,{#10000},4,5,4,27" +locations_default(#20131,#10000,4,5,4,27) +xmllocations(#20130,#20131) +xmlAttrs(#20002,#20130,"foo","{{foo}}",0,#10000) +#20132=@"loc,{#10000},4,10,4,20" +locations_default(#20132,#10000,4,10,4,20) +xmllocations(#20002,#20132) numlines(#10000,10,3,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/generatedcode/output/trap/ejs.js.trap b/javascript/extractor/tests/generatedcode/output/trap/ejs.js.trap index ac5756b042e1..fd11d70e2582 100644 --- a/javascript/extractor/tests/generatedcode/output/trap/ejs.js.trap +++ b/javascript/extractor/tests/generatedcode/output/trap/ejs.js.trap @@ -218,193 +218,195 @@ variables(#20079,"data1",#20000) variables(#20080,"data2",#20000) #20081=@"var;{string};{#20000}" variables(#20081,"string",#20000) -#20082=* -stmts(#20082,23,#20001,0,"let dat ... ta1 %>;") -hasLocation(#20082,#20005) -stmt_containers(#20082,#20001) +#20082=@"var;{this};{#20000}" +variables(#20082,"this",#20000) #20083=* -exprs(#20083,64,#20082,0,"data1 = ... ata1 %>") -#20084=@"loc,{#10000},1,5,1,29" -locations_default(#20084,#10000,1,5,1,29) -hasLocation(#20083,#20084) -enclosing_stmt(#20083,#20082) -expr_containers(#20083,#20001) -#20085=* -exprs(#20085,78,#20083,0,"data1") -hasLocation(#20085,#20021) -enclosing_stmt(#20085,#20082) -expr_containers(#20085,#20001) -literals("data1","data1",#20085) -decl(#20085,#20079) +stmts(#20083,23,#20001,0,"let dat ... ta1 %>;") +hasLocation(#20083,#20005) +stmt_containers(#20083,#20001) +#20084=* +exprs(#20084,64,#20083,0,"data1 = ... ata1 %>") +#20085=@"loc,{#10000},1,5,1,29" +locations_default(#20085,#10000,1,5,1,29) +hasLocation(#20084,#20085) +enclosing_stmt(#20084,#20083) +expr_containers(#20084,#20001) #20086=* -exprs(#20086,120,#20083,1,"<%= user_data1 %>") -#20087=@"loc,{#10000},1,13,1,29" -locations_default(#20087,#10000,1,13,1,29) -hasLocation(#20086,#20087) -enclosing_stmt(#20086,#20082) +exprs(#20086,78,#20084,0,"data1") +hasLocation(#20086,#20021) +enclosing_stmt(#20086,#20083) expr_containers(#20086,#20001) -expr_contains_template_tag_location(#20086,#20087) -#20088=* -stmts(#20088,23,#20001,1,"let dat ... ta2 %>;") -hasLocation(#20088,#20007) -stmt_containers(#20088,#20001) +literals("data1","data1",#20086) +decl(#20086,#20079) +#20087=* +exprs(#20087,120,#20084,1,"<%= user_data1 %>") +#20088=@"loc,{#10000},1,13,1,29" +locations_default(#20088,#10000,1,13,1,29) +hasLocation(#20087,#20088) +enclosing_stmt(#20087,#20083) +expr_containers(#20087,#20001) +expr_contains_template_tag_location(#20087,#20088) #20089=* -exprs(#20089,64,#20088,0,"data2 = ... ata2 %>") -#20090=@"loc,{#10000},2,5,2,29" -locations_default(#20090,#10000,2,5,2,29) -hasLocation(#20089,#20090) -enclosing_stmt(#20089,#20088) -expr_containers(#20089,#20001) -#20091=* -exprs(#20091,78,#20089,0,"data2") -hasLocation(#20091,#20031) -enclosing_stmt(#20091,#20088) -expr_containers(#20091,#20001) -literals("data2","data2",#20091) -decl(#20091,#20080) +stmts(#20089,23,#20001,1,"let dat ... ta2 %>;") +hasLocation(#20089,#20007) +stmt_containers(#20089,#20001) +#20090=* +exprs(#20090,64,#20089,0,"data2 = ... ata2 %>") +#20091=@"loc,{#10000},2,5,2,29" +locations_default(#20091,#10000,2,5,2,29) +hasLocation(#20090,#20091) +enclosing_stmt(#20090,#20089) +expr_containers(#20090,#20001) #20092=* -exprs(#20092,120,#20089,1,"<%- user_data2 %>") -#20093=@"loc,{#10000},2,13,2,29" -locations_default(#20093,#10000,2,13,2,29) -hasLocation(#20092,#20093) -enclosing_stmt(#20092,#20088) +exprs(#20092,78,#20090,0,"data2") +hasLocation(#20092,#20031) +enclosing_stmt(#20092,#20089) expr_containers(#20092,#20001) -expr_contains_template_tag_location(#20092,#20093) -#20094=* -stmts(#20094,3,#20001,2,"if (<%s ... g%>) {}") -hasLocation(#20094,#20009) -stmt_containers(#20094,#20001) +literals("data2","data2",#20092) +decl(#20092,#20080) +#20093=* +exprs(#20093,120,#20090,1,"<%- user_data2 %>") +#20094=@"loc,{#10000},2,13,2,29" +locations_default(#20094,#10000,2,13,2,29) +hasLocation(#20093,#20094) +enclosing_stmt(#20093,#20089) +expr_containers(#20093,#20001) +expr_contains_template_tag_location(#20093,#20094) #20095=* -exprs(#20095,120,#20094,0,"<%something%>") -#20096=@"loc,{#10000},3,5,3,17" -locations_default(#20096,#10000,3,5,3,17) -hasLocation(#20095,#20096) -enclosing_stmt(#20095,#20094) -expr_containers(#20095,#20001) -expr_contains_template_tag_location(#20095,#20096) -#20097=* -stmts(#20097,1,#20094,1,"{}") -#20098=@"loc,{#10000},3,20,3,21" -locations_default(#20098,#10000,3,20,3,21) -hasLocation(#20097,#20098) -stmt_containers(#20097,#20001) -#20099=* -stmts(#20099,2,#20001,3,"foo(<%b ... baz%>);") -hasLocation(#20099,#20011) -stmt_containers(#20099,#20001) +stmts(#20095,3,#20001,2,"if (<%s ... g%>) {}") +hasLocation(#20095,#20009) +stmt_containers(#20095,#20001) +#20096=* +exprs(#20096,120,#20095,0,"<%something%>") +#20097=@"loc,{#10000},3,5,3,17" +locations_default(#20097,#10000,3,5,3,17) +hasLocation(#20096,#20097) +enclosing_stmt(#20096,#20095) +expr_containers(#20096,#20001) +expr_contains_template_tag_location(#20096,#20097) +#20098=* +stmts(#20098,1,#20095,1,"{}") +#20099=@"loc,{#10000},3,20,3,21" +locations_default(#20099,#10000,3,20,3,21) +hasLocation(#20098,#20099) +stmt_containers(#20098,#20001) #20100=* -exprs(#20100,13,#20099,0,"foo(<%b ... %baz%>)") -#20101=@"loc,{#10000},4,1,4,21" -locations_default(#20101,#10000,4,1,4,21) -hasLocation(#20100,#20101) -enclosing_stmt(#20100,#20099) -expr_containers(#20100,#20001) -#20102=* -exprs(#20102,79,#20100,-1,"foo") -hasLocation(#20102,#20051) -enclosing_stmt(#20102,#20099) -expr_containers(#20102,#20001) -literals("foo","foo",#20102) -#20103=@"var;{foo};{#20000}" -variables(#20103,"foo",#20000) -bind(#20102,#20103) -#20104=* -exprs(#20104,120,#20100,0,"<%bar%>") -#20105=@"loc,{#10000},4,5,4,11" -locations_default(#20105,#10000,4,5,4,11) -hasLocation(#20104,#20105) -enclosing_stmt(#20104,#20099) -expr_containers(#20104,#20001) -expr_contains_template_tag_location(#20104,#20105) -#20106=* -exprs(#20106,120,#20100,1,"<%baz%>") -#20107=@"loc,{#10000},4,14,4,20" -locations_default(#20107,#10000,4,14,4,20) -hasLocation(#20106,#20107) -enclosing_stmt(#20106,#20099) -expr_containers(#20106,#20001) -expr_contains_template_tag_location(#20106,#20107) -#20108=* -stmts(#20108,2,#20001,4,"<% generated_code %>") -hasLocation(#20108,#20015) -stmt_containers(#20108,#20001) +stmts(#20100,2,#20001,3,"foo(<%b ... baz%>);") +hasLocation(#20100,#20011) +stmt_containers(#20100,#20001) +#20101=* +exprs(#20101,13,#20100,0,"foo(<%b ... %baz%>)") +#20102=@"loc,{#10000},4,1,4,21" +locations_default(#20102,#10000,4,1,4,21) +hasLocation(#20101,#20102) +enclosing_stmt(#20101,#20100) +expr_containers(#20101,#20001) +#20103=* +exprs(#20103,79,#20101,-1,"foo") +hasLocation(#20103,#20051) +enclosing_stmt(#20103,#20100) +expr_containers(#20103,#20001) +literals("foo","foo",#20103) +#20104=@"var;{foo};{#20000}" +variables(#20104,"foo",#20000) +bind(#20103,#20104) +#20105=* +exprs(#20105,120,#20101,0,"<%bar%>") +#20106=@"loc,{#10000},4,5,4,11" +locations_default(#20106,#10000,4,5,4,11) +hasLocation(#20105,#20106) +enclosing_stmt(#20105,#20100) +expr_containers(#20105,#20001) +expr_contains_template_tag_location(#20105,#20106) +#20107=* +exprs(#20107,120,#20101,1,"<%baz%>") +#20108=@"loc,{#10000},4,14,4,20" +locations_default(#20108,#10000,4,14,4,20) +hasLocation(#20107,#20108) +enclosing_stmt(#20107,#20100) +expr_containers(#20107,#20001) +expr_contains_template_tag_location(#20107,#20108) #20109=* -exprs(#20109,120,#20108,0,"<% generated_code %>") +stmts(#20109,2,#20001,4,"<% generated_code %>") hasLocation(#20109,#20015) -enclosing_stmt(#20109,#20108) -expr_containers(#20109,#20001) -expr_contains_template_tag_location(#20109,#20015) +stmt_containers(#20109,#20001) #20110=* -stmts(#20110,23,#20001,5,"let str ... de %>"";") -#20111=@"loc,{#10000},7,1,7,41" -locations_default(#20111,#10000,7,1,7,41) -hasLocation(#20110,#20111) -stmt_containers(#20110,#20001) -#20112=* -exprs(#20112,64,#20110,0,"string ... ode %>""") -#20113=@"loc,{#10000},7,5,7,40" -locations_default(#20113,#10000,7,5,7,40) -hasLocation(#20112,#20113) -enclosing_stmt(#20112,#20110) -expr_containers(#20112,#20001) -#20114=* -exprs(#20114,78,#20112,0,"string") -hasLocation(#20114,#20069) -enclosing_stmt(#20114,#20110) -expr_containers(#20114,#20001) -literals("string","string",#20114) -decl(#20114,#20081) +exprs(#20110,120,#20109,0,"<% generated_code %>") +hasLocation(#20110,#20015) +enclosing_stmt(#20110,#20109) +expr_containers(#20110,#20001) +expr_contains_template_tag_location(#20110,#20015) +#20111=* +stmts(#20111,23,#20001,5,"let str ... de %>"";") +#20112=@"loc,{#10000},7,1,7,41" +locations_default(#20112,#10000,7,1,7,41) +hasLocation(#20111,#20112) +stmt_containers(#20111,#20001) +#20113=* +exprs(#20113,64,#20111,0,"string ... ode %>""") +#20114=@"loc,{#10000},7,5,7,40" +locations_default(#20114,#10000,7,5,7,40) +hasLocation(#20113,#20114) +enclosing_stmt(#20113,#20111) +expr_containers(#20113,#20001) #20115=* -exprs(#20115,4,#20112,1,"""<%= no ... ode %>""") -hasLocation(#20115,#20073) -enclosing_stmt(#20115,#20110) +exprs(#20115,78,#20113,0,"string") +hasLocation(#20115,#20069) +enclosing_stmt(#20115,#20111) expr_containers(#20115,#20001) -literals("<%= not_generated_code %>","""<%= not_generated_code %>""",#20115) +literals("string","string",#20115) +decl(#20115,#20081) #20116=* -regexpterm(#20116,14,#20115,0,"<%= not_generated_code %>") -#20117=@"loc,{#10000},7,15,7,39" -locations_default(#20117,#10000,7,15,7,39) -hasLocation(#20116,#20117) -regexp_const_value(#20116,"<%= not_generated_code %>") -#20118=* -entry_cfg_node(#20118,#20001) -#20119=@"loc,{#10000},1,1,1,0" -locations_default(#20119,#10000,1,1,1,0) -hasLocation(#20118,#20119) -#20120=* -exit_cfg_node(#20120,#20001) -hasLocation(#20120,#20077) -successor(#20110,#20114) -successor(#20115,#20112) -successor(#20114,#20115) -successor(#20112,#20120) -successor(#20108,#20109) -successor(#20109,#20110) -successor(#20099,#20102) -successor(#20106,#20100) -successor(#20104,#20106) -successor(#20102,#20104) -successor(#20100,#20108) -successor(#20094,#20095) +exprs(#20116,4,#20113,1,"""<%= no ... ode %>""") +hasLocation(#20116,#20073) +enclosing_stmt(#20116,#20111) +expr_containers(#20116,#20001) +literals("<%= not_generated_code %>","""<%= not_generated_code %>""",#20116) +#20117=* +regexpterm(#20117,14,#20116,0,"<%= not_generated_code %>") +#20118=@"loc,{#10000},7,15,7,39" +locations_default(#20118,#10000,7,15,7,39) +hasLocation(#20117,#20118) +regexp_const_value(#20117,"<%= not_generated_code %>") +#20119=* +entry_cfg_node(#20119,#20001) +#20120=@"loc,{#10000},1,1,1,0" +locations_default(#20120,#10000,1,1,1,0) +hasLocation(#20119,#20120) #20121=* -guard_node(#20121,1,#20095) -hasLocation(#20121,#20096) -successor(#20121,#20097) +exit_cfg_node(#20121,#20001) +hasLocation(#20121,#20077) +successor(#20111,#20115) +successor(#20116,#20113) +successor(#20115,#20116) +successor(#20113,#20121) +successor(#20109,#20110) +successor(#20110,#20111) +successor(#20100,#20103) +successor(#20107,#20101) +successor(#20105,#20107) +successor(#20103,#20105) +successor(#20101,#20109) +successor(#20095,#20096) #20122=* -guard_node(#20122,0,#20095) -hasLocation(#20122,#20096) -successor(#20122,#20099) -successor(#20095,#20121) -successor(#20095,#20122) -successor(#20097,#20099) -successor(#20088,#20091) -successor(#20092,#20089) -successor(#20091,#20092) -successor(#20089,#20094) -successor(#20082,#20085) -successor(#20086,#20083) -successor(#20085,#20086) -successor(#20083,#20088) -successor(#20118,#20082) +guard_node(#20122,1,#20096) +hasLocation(#20122,#20097) +successor(#20122,#20098) +#20123=* +guard_node(#20123,0,#20096) +hasLocation(#20123,#20097) +successor(#20123,#20100) +successor(#20096,#20122) +successor(#20096,#20123) +successor(#20098,#20100) +successor(#20089,#20092) +successor(#20093,#20090) +successor(#20092,#20093) +successor(#20090,#20095) +successor(#20083,#20086) +successor(#20087,#20084) +successor(#20086,#20087) +successor(#20084,#20089) +successor(#20119,#20083) numlines(#10000,7,6,1) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/generatedcode/output/trap/test.html.trap b/javascript/extractor/tests/generatedcode/output/trap/test.html.trap index 2446f220c7e9..5127101027d5 100644 --- a/javascript/extractor/tests/generatedcode/output/trap/test.html.trap +++ b/javascript/extractor/tests/generatedcode/output/trap/test.html.trap @@ -133,905 +133,929 @@ variables(#20046,"data1",#20000) variables(#20047,"data2",#20000) #20048=@"var;{data3};{#20000}" variables(#20048,"data3",#20000) -#20049=* -stmts(#20049,18,#20002,0,"var dat ... a1 }}};") -#20050=@"loc,{#10000},9,7,9,37" -locations_default(#20050,#10000,9,7,9,37) -hasLocation(#20049,#20050) -stmt_containers(#20049,#20002) -#20051=* -exprs(#20051,64,#20049,0,"data1 = ... ta1 }}}") -#20052=@"loc,{#10000},9,11,9,36" -locations_default(#20052,#10000,9,11,9,36) -hasLocation(#20051,#20052) -enclosing_stmt(#20051,#20049) -expr_containers(#20051,#20002) -#20053=* -exprs(#20053,78,#20051,0,"data1") -hasLocation(#20053,#20016) -enclosing_stmt(#20053,#20049) -expr_containers(#20053,#20002) -literals("data1","data1",#20053) -decl(#20053,#20046) +#20049=@"var;{this};{#20000}" +variables(#20049,"this",#20000) +#20050=* +stmts(#20050,18,#20002,0,"var dat ... a1 }}};") +#20051=@"loc,{#10000},9,7,9,37" +locations_default(#20051,#10000,9,7,9,37) +hasLocation(#20050,#20051) +stmt_containers(#20050,#20002) +#20052=* +exprs(#20052,64,#20050,0,"data1 = ... ta1 }}}") +#20053=@"loc,{#10000},9,11,9,36" +locations_default(#20053,#10000,9,11,9,36) +hasLocation(#20052,#20053) +enclosing_stmt(#20052,#20050) +expr_containers(#20052,#20002) #20054=* -exprs(#20054,120,#20051,1,"{{{ user_data1 }}}") -#20055=@"loc,{#10000},9,19,9,36" -locations_default(#20055,#10000,9,19,9,36) -hasLocation(#20054,#20055) -enclosing_stmt(#20054,#20049) +exprs(#20054,78,#20052,0,"data1") +hasLocation(#20054,#20016) +enclosing_stmt(#20054,#20050) expr_containers(#20054,#20002) -expr_contains_template_tag_location(#20054,#20055) -#20056=* -stmts(#20056,18,#20002,1,"var dat ... afe }};") -#20057=@"loc,{#10000},10,7,10,49" -locations_default(#20057,#10000,10,7,10,49) -hasLocation(#20056,#20057) -stmt_containers(#20056,#20002) -#20058=* -exprs(#20058,64,#20056,0,"data2 = ... safe }}") -#20059=@"loc,{#10000},10,11,10,48" -locations_default(#20059,#10000,10,11,10,48) -hasLocation(#20058,#20059) -enclosing_stmt(#20058,#20056) -expr_containers(#20058,#20002) -#20060=* -exprs(#20060,78,#20058,0,"data2") -hasLocation(#20060,#20026) -enclosing_stmt(#20060,#20056) -expr_containers(#20060,#20002) -literals("data2","data2",#20060) -decl(#20060,#20047) +literals("data1","data1",#20054) +decl(#20054,#20046) +#20055=* +exprs(#20055,120,#20052,1,"{{{ user_data1 }}}") +#20056=@"loc,{#10000},9,19,9,36" +locations_default(#20056,#10000,9,19,9,36) +hasLocation(#20055,#20056) +enclosing_stmt(#20055,#20050) +expr_containers(#20055,#20002) +expr_contains_template_tag_location(#20055,#20056) +#20057=* +stmts(#20057,18,#20002,1,"var dat ... afe }};") +#20058=@"loc,{#10000},10,7,10,49" +locations_default(#20058,#10000,10,7,10,49) +hasLocation(#20057,#20058) +stmt_containers(#20057,#20002) +#20059=* +exprs(#20059,64,#20057,0,"data2 = ... safe }}") +#20060=@"loc,{#10000},10,11,10,48" +locations_default(#20060,#10000,10,11,10,48) +hasLocation(#20059,#20060) +enclosing_stmt(#20059,#20057) +expr_containers(#20059,#20002) #20061=* -exprs(#20061,120,#20058,1,"{{ user ... safe }}") -#20062=@"loc,{#10000},10,19,10,48" -locations_default(#20062,#10000,10,19,10,48) -hasLocation(#20061,#20062) -enclosing_stmt(#20061,#20056) +exprs(#20061,78,#20059,0,"data2") +hasLocation(#20061,#20026) +enclosing_stmt(#20061,#20057) expr_containers(#20061,#20002) -expr_contains_template_tag_location(#20061,#20062) -#20063=* -stmts(#20063,18,#20002,2,"var dat ... ta3 %>;") -#20064=@"loc,{#10000},11,7,11,36" -locations_default(#20064,#10000,11,7,11,36) -hasLocation(#20063,#20064) -stmt_containers(#20063,#20002) -#20065=* -exprs(#20065,64,#20063,0,"data3 = ... ata3 %>") -#20066=@"loc,{#10000},11,11,11,35" -locations_default(#20066,#10000,11,11,11,35) -hasLocation(#20065,#20066) -enclosing_stmt(#20065,#20063) -expr_containers(#20065,#20002) -#20067=* -exprs(#20067,78,#20065,0,"data3") -hasLocation(#20067,#20036) -enclosing_stmt(#20067,#20063) -expr_containers(#20067,#20002) -literals("data3","data3",#20067) -decl(#20067,#20048) +literals("data2","data2",#20061) +decl(#20061,#20047) +#20062=* +exprs(#20062,120,#20059,1,"{{ user ... safe }}") +#20063=@"loc,{#10000},10,19,10,48" +locations_default(#20063,#10000,10,19,10,48) +hasLocation(#20062,#20063) +enclosing_stmt(#20062,#20057) +expr_containers(#20062,#20002) +expr_contains_template_tag_location(#20062,#20063) +#20064=* +stmts(#20064,18,#20002,2,"var dat ... ta3 %>;") +#20065=@"loc,{#10000},11,7,11,36" +locations_default(#20065,#10000,11,7,11,36) +hasLocation(#20064,#20065) +stmt_containers(#20064,#20002) +#20066=* +exprs(#20066,64,#20064,0,"data3 = ... ata3 %>") +#20067=@"loc,{#10000},11,11,11,35" +locations_default(#20067,#10000,11,11,11,35) +hasLocation(#20066,#20067) +enclosing_stmt(#20066,#20064) +expr_containers(#20066,#20002) #20068=* -exprs(#20068,120,#20065,1,"<%- user_data3 %>") -#20069=@"loc,{#10000},11,19,11,35" -locations_default(#20069,#10000,11,19,11,35) -hasLocation(#20068,#20069) -enclosing_stmt(#20068,#20063) +exprs(#20068,78,#20066,0,"data3") +hasLocation(#20068,#20036) +enclosing_stmt(#20068,#20064) expr_containers(#20068,#20002) -expr_contains_template_tag_location(#20068,#20069) -#20070=* -entry_cfg_node(#20070,#20002) -hasLocation(#20070,#20004) +literals("data3","data3",#20068) +decl(#20068,#20048) +#20069=* +exprs(#20069,120,#20066,1,"<%- user_data3 %>") +#20070=@"loc,{#10000},11,19,11,35" +locations_default(#20070,#10000,11,19,11,35) +hasLocation(#20069,#20070) +enclosing_stmt(#20069,#20064) +expr_containers(#20069,#20002) +expr_contains_template_tag_location(#20069,#20070) #20071=* -exit_cfg_node(#20071,#20002) -hasLocation(#20071,#20044) -successor(#20063,#20067) -successor(#20068,#20065) -successor(#20067,#20068) -successor(#20065,#20071) -successor(#20056,#20060) -successor(#20061,#20058) -successor(#20060,#20061) -successor(#20058,#20063) -successor(#20049,#20053) -successor(#20054,#20051) -successor(#20053,#20054) -successor(#20051,#20056) -successor(#20070,#20049) -toplevel_parent_xml_node(#20002,#20001) +entry_cfg_node(#20071,#20002) +hasLocation(#20071,#20004) #20072=* +exit_cfg_node(#20072,#20002) +hasLocation(#20072,#20044) +successor(#20064,#20068) +successor(#20069,#20066) +successor(#20068,#20069) +successor(#20066,#20072) +successor(#20057,#20061) +successor(#20062,#20059) +successor(#20061,#20062) +successor(#20059,#20064) +successor(#20050,#20054) +successor(#20055,#20052) +successor(#20054,#20055) +successor(#20052,#20057) +successor(#20071,#20050) +toplevel_parent_xml_node(#20002,#20001) #20073=* -template_placeholder_tag_info(#20072,#20073,"{{ attr1 }}") -#20074=@"loc,{#10000},13,14,13,24" -locations_default(#20074,#10000,13,14,13,24) -hasLocation(#20072,#20074) +#20074=* +template_placeholder_tag_info(#20073,#20074,"{{ attr1 }}") +#20075=@"loc,{#10000},13,14,13,24" +locations_default(#20075,#10000,13,14,13,24) +hasLocation(#20073,#20075) scopes(#20000,0) -#20075=@"script;{#10000},13,16" -#20076=* -lines(#20076,#20075," attr1 ","") -#20077=@"loc,{#10000},13,16,13,22" -locations_default(#20077,#10000,13,16,13,22) -hasLocation(#20076,#20077) +#20076=@"script;{#10000},13,16" +#20077=* +lines(#20077,#20076," attr1 ","") +#20078=@"loc,{#10000},13,16,13,22" +locations_default(#20078,#10000,13,16,13,22) +hasLocation(#20077,#20078) indentation(#10000,13," ",1) -numlines(#20075,1,1,0) -#20078=* -tokeninfo(#20078,6,#20075,0,"attr1") -#20079=@"loc,{#10000},13,17,13,21" -locations_default(#20079,#10000,13,17,13,21) -hasLocation(#20078,#20079) -#20080=* -tokeninfo(#20080,0,#20075,1,"") -#20081=@"loc,{#10000},13,23,13,22" -locations_default(#20081,#10000,13,23,13,22) -hasLocation(#20080,#20081) -toplevels(#20075,4) -hasLocation(#20075,#20077) -#20082=@"module;{#10000},13,16" -scopes(#20082,3) -scopenodes(#20075,#20082) -scopenesting(#20082,#20000) -is_module(#20075) -#20083=* -stmts(#20083,2,#20075,0,"attr1") -hasLocation(#20083,#20079) -stmt_containers(#20083,#20075) -#20084=* -exprs(#20084,79,#20083,0,"attr1") -hasLocation(#20084,#20079) -enclosing_stmt(#20084,#20083) -expr_containers(#20084,#20075) -literals("attr1","attr1",#20084) -#20085=@"var;{attr1};{#20082}" -variables(#20085,"attr1",#20082) -bind(#20084,#20085) +numlines(#20076,1,1,0) +#20079=* +tokeninfo(#20079,6,#20076,0,"attr1") +#20080=@"loc,{#10000},13,17,13,21" +locations_default(#20080,#10000,13,17,13,21) +hasLocation(#20079,#20080) +#20081=* +tokeninfo(#20081,0,#20076,1,"") +#20082=@"loc,{#10000},13,23,13,22" +locations_default(#20082,#10000,13,23,13,22) +hasLocation(#20081,#20082) +toplevels(#20076,4) +hasLocation(#20076,#20078) +#20083=@"module;{#10000},13,16" +scopes(#20083,3) +scopenodes(#20076,#20083) +scopenesting(#20083,#20000) +is_module(#20076) +#20084=@"var;{this};{#20083}" +variables(#20084,"this",#20083) +#20085=* +stmts(#20085,2,#20076,0,"attr1") +hasLocation(#20085,#20080) +stmt_containers(#20085,#20076) #20086=* -entry_cfg_node(#20086,#20075) -#20087=@"loc,{#10000},13,16,13,15" -locations_default(#20087,#10000,13,16,13,15) -hasLocation(#20086,#20087) +exprs(#20086,79,#20085,0,"attr1") +hasLocation(#20086,#20080) +enclosing_stmt(#20086,#20085) +expr_containers(#20086,#20076) +literals("attr1","attr1",#20086) +#20087=@"var;{attr1};{#20083}" +variables(#20087,"attr1",#20083) +bind(#20086,#20087) #20088=* -exit_cfg_node(#20088,#20075) -hasLocation(#20088,#20081) -successor(#20083,#20084) -successor(#20084,#20088) -successor(#20086,#20083) -toplevel_parent_xml_node(#20075,#20072) -#20089=* +entry_cfg_node(#20088,#20076) +#20089=@"loc,{#10000},13,16,13,15" +locations_default(#20089,#10000,13,16,13,15) +hasLocation(#20088,#20089) #20090=* -template_placeholder_tag_info(#20089,#20090,"{{{ attr2 }}}") -#20091=@"loc,{#10000},13,34,13,46" -locations_default(#20091,#10000,13,34,13,46) -hasLocation(#20089,#20091) +exit_cfg_node(#20090,#20076) +hasLocation(#20090,#20082) +successor(#20085,#20086) +successor(#20086,#20090) +successor(#20088,#20085) +toplevel_parent_xml_node(#20076,#20073) +#20091=* +#20092=* +template_placeholder_tag_info(#20091,#20092,"{{{ attr2 }}}") +#20093=@"loc,{#10000},13,34,13,46" +locations_default(#20093,#10000,13,34,13,46) +hasLocation(#20091,#20093) scopes(#20000,0) -#20092=@"script;{#10000},13,37" -#20093=* -lines(#20093,#20092," attr2 ","") -#20094=@"loc,{#10000},13,37,13,43" -locations_default(#20094,#10000,13,37,13,43) -hasLocation(#20093,#20094) -indentation(#10000,13," ",1) -numlines(#20092,1,1,0) +#20094=@"script;{#10000},13,37" #20095=* -tokeninfo(#20095,6,#20092,0,"attr2") -#20096=@"loc,{#10000},13,38,13,42" -locations_default(#20096,#10000,13,38,13,42) +lines(#20095,#20094," attr2 ","") +#20096=@"loc,{#10000},13,37,13,43" +locations_default(#20096,#10000,13,37,13,43) hasLocation(#20095,#20096) +indentation(#10000,13," ",1) +numlines(#20094,1,1,0) #20097=* -tokeninfo(#20097,0,#20092,1,"") -#20098=@"loc,{#10000},13,44,13,43" -locations_default(#20098,#10000,13,44,13,43) +tokeninfo(#20097,6,#20094,0,"attr2") +#20098=@"loc,{#10000},13,38,13,42" +locations_default(#20098,#10000,13,38,13,42) hasLocation(#20097,#20098) -toplevels(#20092,4) -hasLocation(#20092,#20094) -#20099=@"module;{#10000},13,37" -scopes(#20099,3) -scopenodes(#20092,#20099) -scopenesting(#20099,#20000) -is_module(#20092) -#20100=* -stmts(#20100,2,#20092,0,"attr2") -hasLocation(#20100,#20096) -stmt_containers(#20100,#20092) -#20101=* -exprs(#20101,79,#20100,0,"attr2") -hasLocation(#20101,#20096) -enclosing_stmt(#20101,#20100) -expr_containers(#20101,#20092) -literals("attr2","attr2",#20101) -#20102=@"var;{attr2};{#20099}" -variables(#20102,"attr2",#20099) -bind(#20101,#20102) +#20099=* +tokeninfo(#20099,0,#20094,1,"") +#20100=@"loc,{#10000},13,44,13,43" +locations_default(#20100,#10000,13,44,13,43) +hasLocation(#20099,#20100) +toplevels(#20094,4) +hasLocation(#20094,#20096) +#20101=@"module;{#10000},13,37" +scopes(#20101,3) +scopenodes(#20094,#20101) +scopenesting(#20101,#20000) +is_module(#20094) +#20102=@"var;{this};{#20101}" +variables(#20102,"this",#20101) #20103=* -entry_cfg_node(#20103,#20092) -#20104=@"loc,{#10000},13,37,13,36" -locations_default(#20104,#10000,13,37,13,36) -hasLocation(#20103,#20104) -#20105=* -exit_cfg_node(#20105,#20092) -hasLocation(#20105,#20098) -successor(#20100,#20101) -successor(#20101,#20105) -successor(#20103,#20100) -toplevel_parent_xml_node(#20092,#20089) +stmts(#20103,2,#20094,0,"attr2") +hasLocation(#20103,#20098) +stmt_containers(#20103,#20094) +#20104=* +exprs(#20104,79,#20103,0,"attr2") +hasLocation(#20104,#20098) +enclosing_stmt(#20104,#20103) +expr_containers(#20104,#20094) +literals("attr2","attr2",#20104) +#20105=@"var;{attr2};{#20101}" +variables(#20105,"attr2",#20101) +bind(#20104,#20105) #20106=* -#20107=* -template_placeholder_tag_info(#20106,#20107,"<%- attr3 %>") -#20108=@"loc,{#10000},13,59,13,70" -locations_default(#20108,#10000,13,59,13,70) -hasLocation(#20106,#20108) -scopes(#20000,0) -#20109=@"script;{#10000},13,62" +entry_cfg_node(#20106,#20094) +#20107=@"loc,{#10000},13,37,13,36" +locations_default(#20107,#10000,13,37,13,36) +hasLocation(#20106,#20107) +#20108=* +exit_cfg_node(#20108,#20094) +hasLocation(#20108,#20100) +successor(#20103,#20104) +successor(#20104,#20108) +successor(#20106,#20103) +toplevel_parent_xml_node(#20094,#20091) +#20109=* #20110=* -lines(#20110,#20109," attr3 ","") -#20111=@"loc,{#10000},13,62,13,68" -locations_default(#20111,#10000,13,62,13,68) -hasLocation(#20110,#20111) -indentation(#10000,13," ",1) -numlines(#20109,1,1,0) -#20112=* -tokeninfo(#20112,6,#20109,0,"attr3") -#20113=@"loc,{#10000},13,63,13,67" -locations_default(#20113,#10000,13,63,13,67) -hasLocation(#20112,#20113) -#20114=* -tokeninfo(#20114,0,#20109,1,"") -#20115=@"loc,{#10000},13,69,13,68" -locations_default(#20115,#10000,13,69,13,68) -hasLocation(#20114,#20115) -toplevels(#20109,4) +template_placeholder_tag_info(#20109,#20110,"<%- attr3 %>") +#20111=@"loc,{#10000},13,59,13,70" +locations_default(#20111,#10000,13,59,13,70) hasLocation(#20109,#20111) -#20116=@"module;{#10000},13,62" -scopes(#20116,3) -scopenodes(#20109,#20116) -scopenesting(#20116,#20000) -is_module(#20109) +scopes(#20000,0) +#20112=@"script;{#10000},13,62" +#20113=* +lines(#20113,#20112," attr3 ","") +#20114=@"loc,{#10000},13,62,13,68" +locations_default(#20114,#10000,13,62,13,68) +hasLocation(#20113,#20114) +indentation(#10000,13," ",1) +numlines(#20112,1,1,0) +#20115=* +tokeninfo(#20115,6,#20112,0,"attr3") +#20116=@"loc,{#10000},13,63,13,67" +locations_default(#20116,#10000,13,63,13,67) +hasLocation(#20115,#20116) #20117=* -stmts(#20117,2,#20109,0,"attr3") -hasLocation(#20117,#20113) -stmt_containers(#20117,#20109) -#20118=* -exprs(#20118,79,#20117,0,"attr3") -hasLocation(#20118,#20113) -enclosing_stmt(#20118,#20117) -expr_containers(#20118,#20109) -literals("attr3","attr3",#20118) -#20119=@"var;{attr3};{#20116}" -variables(#20119,"attr3",#20116) -bind(#20118,#20119) -#20120=* -entry_cfg_node(#20120,#20109) -#20121=@"loc,{#10000},13,62,13,61" -locations_default(#20121,#10000,13,62,13,61) -hasLocation(#20120,#20121) +tokeninfo(#20117,0,#20112,1,"") +#20118=@"loc,{#10000},13,69,13,68" +locations_default(#20118,#10000,13,69,13,68) +hasLocation(#20117,#20118) +toplevels(#20112,4) +hasLocation(#20112,#20114) +#20119=@"module;{#10000},13,62" +scopes(#20119,3) +scopenodes(#20112,#20119) +scopenesting(#20119,#20000) +is_module(#20112) +#20120=@"var;{this};{#20119}" +variables(#20120,"this",#20119) +#20121=* +stmts(#20121,2,#20112,0,"attr3") +hasLocation(#20121,#20116) +stmt_containers(#20121,#20112) #20122=* -exit_cfg_node(#20122,#20109) -hasLocation(#20122,#20115) -successor(#20117,#20118) -successor(#20118,#20122) -successor(#20120,#20117) -toplevel_parent_xml_node(#20109,#20106) -#20123=* +exprs(#20122,79,#20121,0,"attr3") +hasLocation(#20122,#20116) +enclosing_stmt(#20122,#20121) +expr_containers(#20122,#20112) +literals("attr3","attr3",#20122) +#20123=@"var;{attr3};{#20119}" +variables(#20123,"attr3",#20119) +bind(#20122,#20123) #20124=* -template_placeholder_tag_info(#20123,#20124,"{{ attr4 }}") -#20125=@"loc,{#10000},14,21,14,31" -locations_default(#20125,#10000,14,21,14,31) -hasLocation(#20123,#20125) -scopes(#20000,0) -#20126=@"script;{#10000},14,23" +entry_cfg_node(#20124,#20112) +#20125=@"loc,{#10000},13,62,13,61" +locations_default(#20125,#10000,13,62,13,61) +hasLocation(#20124,#20125) +#20126=* +exit_cfg_node(#20126,#20112) +hasLocation(#20126,#20118) +successor(#20121,#20122) +successor(#20122,#20126) +successor(#20124,#20121) +toplevel_parent_xml_node(#20112,#20109) #20127=* -lines(#20127,#20126," attr4 ","") -#20128=@"loc,{#10000},14,23,14,29" -locations_default(#20128,#10000,14,23,14,29) -hasLocation(#20127,#20128) -indentation(#10000,14," ",1) -numlines(#20126,1,1,0) -#20129=* -tokeninfo(#20129,6,#20126,0,"attr4") -#20130=@"loc,{#10000},14,24,14,28" -locations_default(#20130,#10000,14,24,14,28) -hasLocation(#20129,#20130) +#20128=* +template_placeholder_tag_info(#20127,#20128,"{{ attr4 }}") +#20129=@"loc,{#10000},14,21,14,31" +locations_default(#20129,#10000,14,21,14,31) +hasLocation(#20127,#20129) +scopes(#20000,0) +#20130=@"script;{#10000},14,23" #20131=* -tokeninfo(#20131,0,#20126,1,"") -#20132=@"loc,{#10000},14,30,14,29" -locations_default(#20132,#10000,14,30,14,29) +lines(#20131,#20130," attr4 ","") +#20132=@"loc,{#10000},14,23,14,29" +locations_default(#20132,#10000,14,23,14,29) hasLocation(#20131,#20132) -toplevels(#20126,4) -hasLocation(#20126,#20128) -#20133=@"module;{#10000},14,23" -scopes(#20133,3) -scopenodes(#20126,#20133) -scopenesting(#20133,#20000) -is_module(#20126) -#20134=* -stmts(#20134,2,#20126,0,"attr4") -hasLocation(#20134,#20130) -stmt_containers(#20134,#20126) +indentation(#10000,14," ",1) +numlines(#20130,1,1,0) +#20133=* +tokeninfo(#20133,6,#20130,0,"attr4") +#20134=@"loc,{#10000},14,24,14,28" +locations_default(#20134,#10000,14,24,14,28) +hasLocation(#20133,#20134) #20135=* -exprs(#20135,79,#20134,0,"attr4") -hasLocation(#20135,#20130) -enclosing_stmt(#20135,#20134) -expr_containers(#20135,#20126) -literals("attr4","attr4",#20135) -#20136=@"var;{attr4};{#20133}" -variables(#20136,"attr4",#20133) -bind(#20135,#20136) -#20137=* -entry_cfg_node(#20137,#20126) -#20138=@"loc,{#10000},14,23,14,22" -locations_default(#20138,#10000,14,23,14,22) -hasLocation(#20137,#20138) +tokeninfo(#20135,0,#20130,1,"") +#20136=@"loc,{#10000},14,30,14,29" +locations_default(#20136,#10000,14,30,14,29) +hasLocation(#20135,#20136) +toplevels(#20130,4) +hasLocation(#20130,#20132) +#20137=@"module;{#10000},14,23" +scopes(#20137,3) +scopenodes(#20130,#20137) +scopenesting(#20137,#20000) +is_module(#20130) +#20138=@"var;{this};{#20137}" +variables(#20138,"this",#20137) #20139=* -exit_cfg_node(#20139,#20126) -hasLocation(#20139,#20132) -successor(#20134,#20135) -successor(#20135,#20139) -successor(#20137,#20134) -toplevel_parent_xml_node(#20126,#20123) +stmts(#20139,2,#20130,0,"attr4") +hasLocation(#20139,#20134) +stmt_containers(#20139,#20130) #20140=* -xmlChars(#20140," -",#10000,0,0,#10000) -#20141=@"loc,{#10000},1,16,1,16" -locations_default(#20141,#10000,1,16,1,16) -xmllocations(#20140,#20141) +exprs(#20140,79,#20139,0,"attr4") +hasLocation(#20140,#20134) +enclosing_stmt(#20140,#20139) +expr_containers(#20140,#20130) +literals("attr4","attr4",#20140) +#20141=@"var;{attr4};{#20137}" +variables(#20141,"attr4",#20137) +bind(#20140,#20141) #20142=* -xmlElements(#20142,"html",#10000,1,#10000) -#20143=@"loc,{#10000},2,1,16,7" -locations_default(#20143,#10000,2,1,16,7) -xmllocations(#20142,#20143) +entry_cfg_node(#20142,#20130) +#20143=@"loc,{#10000},14,23,14,22" +locations_default(#20143,#10000,14,23,14,22) +hasLocation(#20142,#20143) #20144=* -xmlChars(#20144," - ",#20142,0,0,#10000) -#20145=@"loc,{#10000},2,7,3,2" -locations_default(#20145,#10000,2,7,3,2) -xmllocations(#20144,#20145) -#20146=* -xmlChars(#20146," -",#20142,2,0,#10000) -#20147=@"loc,{#10000},15,10,15,10" -locations_default(#20147,#10000,15,10,15,10) -xmllocations(#20146,#20147) -#20148=* -xmlElements(#20148,"body",#20142,1,#10000) -#20149=@"loc,{#10000},3,3,15,9" -locations_default(#20149,#10000,3,3,15,9) -xmllocations(#20148,#20149) -#20150=* -xmlChars(#20150," - ",#20148,0,0,#10000) -#20151=@"loc,{#10000},3,9,4,4" -locations_default(#20151,#10000,3,9,4,4) -xmllocations(#20150,#20151) -#20152=* -template_placeholder_tag_info(#20152,#20148,"{{{subtitle_html}}}") -#20153=@"loc,{#10000},5,5,5,23" -locations_default(#20153,#10000,5,5,5,23) -hasLocation(#20152,#20153) -scopes(#20000,0) -#20154=@"script;{#10000},5,8" +exit_cfg_node(#20144,#20130) +hasLocation(#20144,#20136) +successor(#20139,#20140) +successor(#20140,#20144) +successor(#20142,#20139) +toplevel_parent_xml_node(#20130,#20127) +#20145=* +xmlChars(#20145," +",#10000,0,0,#10000) +#20146=@"loc,{#10000},1,16,1,16" +locations_default(#20146,#10000,1,16,1,16) +xmllocations(#20145,#20146) +#20147=* +xmlElements(#20147,"html",#10000,1,#10000) +#20148=@"loc,{#10000},2,1,16,7" +locations_default(#20148,#10000,2,1,16,7) +xmllocations(#20147,#20148) +#20149=* +xmlChars(#20149," + ",#20147,0,0,#10000) +#20150=@"loc,{#10000},2,7,3,2" +locations_default(#20150,#10000,2,7,3,2) +xmllocations(#20149,#20150) +#20151=* +xmlChars(#20151," +",#20147,2,0,#10000) +#20152=@"loc,{#10000},15,10,15,10" +locations_default(#20152,#10000,15,10,15,10) +xmllocations(#20151,#20152) +#20153=* +xmlElements(#20153,"body",#20147,1,#10000) +#20154=@"loc,{#10000},3,3,15,9" +locations_default(#20154,#10000,3,3,15,9) +xmllocations(#20153,#20154) #20155=* -lines(#20155,#20154,"subtitle_html","") -#20156=@"loc,{#10000},5,8,5,20" -locations_default(#20156,#10000,5,8,5,20) -hasLocation(#20155,#20156) -numlines(#20154,1,1,0) +xmlChars(#20155," + ",#20153,0,0,#10000) +#20156=@"loc,{#10000},3,9,4,4" +locations_default(#20156,#10000,3,9,4,4) +xmllocations(#20155,#20156) #20157=* -tokeninfo(#20157,6,#20154,0,"subtitle_html") -hasLocation(#20157,#20156) -#20158=* -tokeninfo(#20158,0,#20154,1,"") -#20159=@"loc,{#10000},5,21,5,20" -locations_default(#20159,#10000,5,21,5,20) -hasLocation(#20158,#20159) -toplevels(#20154,4) -hasLocation(#20154,#20156) -#20160=@"module;{#10000},5,8" -scopes(#20160,3) -scopenodes(#20154,#20160) -scopenesting(#20160,#20000) -is_module(#20154) -#20161=* -stmts(#20161,2,#20154,0,"subtitle_html") -hasLocation(#20161,#20156) -stmt_containers(#20161,#20154) +template_placeholder_tag_info(#20157,#20153,"{{{subtitle_html}}}") +#20158=@"loc,{#10000},5,5,5,23" +locations_default(#20158,#10000,5,5,5,23) +hasLocation(#20157,#20158) +scopes(#20000,0) +#20159=@"script;{#10000},5,8" +#20160=* +lines(#20160,#20159,"subtitle_html","") +#20161=@"loc,{#10000},5,8,5,20" +locations_default(#20161,#10000,5,8,5,20) +hasLocation(#20160,#20161) +numlines(#20159,1,1,0) #20162=* -exprs(#20162,79,#20161,0,"subtitle_html") -hasLocation(#20162,#20156) -enclosing_stmt(#20162,#20161) -expr_containers(#20162,#20154) -literals("subtitle_html","subtitle_html",#20162) -#20163=@"var;{subtitle_html};{#20160}" -variables(#20163,"subtitle_html",#20160) -bind(#20162,#20163) -#20164=* -entry_cfg_node(#20164,#20154) -#20165=@"loc,{#10000},5,8,5,7" -locations_default(#20165,#10000,5,8,5,7) -hasLocation(#20164,#20165) -#20166=* -exit_cfg_node(#20166,#20154) -hasLocation(#20166,#20159) -successor(#20161,#20162) -successor(#20162,#20166) -successor(#20164,#20161) -toplevel_parent_xml_node(#20154,#20152) +tokeninfo(#20162,6,#20159,0,"subtitle_html") +hasLocation(#20162,#20161) +#20163=* +tokeninfo(#20163,0,#20159,1,"") +#20164=@"loc,{#10000},5,21,5,20" +locations_default(#20164,#10000,5,21,5,20) +hasLocation(#20163,#20164) +toplevels(#20159,4) +hasLocation(#20159,#20161) +#20165=@"module;{#10000},5,8" +scopes(#20165,3) +scopenodes(#20159,#20165) +scopenesting(#20165,#20000) +is_module(#20159) +#20166=@"var;{this};{#20165}" +variables(#20166,"this",#20165) #20167=* -xmlChars(#20167," - {{{subtitle_html}}} - ",#20148,2,0,#10000) -#20168=@"loc,{#10000},4,23,6,4" -locations_default(#20168,#10000,4,23,6,4) -xmllocations(#20167,#20168) -#20169=* -xmlChars(#20169," - ",#20148,4,0,#10000) -#20170=@"loc,{#10000},6,28,7,4" -locations_default(#20170,#10000,6,28,7,4) -xmllocations(#20169,#20170) -#20171=* -xmlChars(#20171," - ",#20148,6,0,#10000) -#20172=@"loc,{#10000},7,25,8,4" -locations_default(#20172,#10000,7,25,8,4) -xmllocations(#20171,#20172) +stmts(#20167,2,#20159,0,"subtitle_html") +hasLocation(#20167,#20161) +stmt_containers(#20167,#20159) +#20168=* +exprs(#20168,79,#20167,0,"subtitle_html") +hasLocation(#20168,#20161) +enclosing_stmt(#20168,#20167) +expr_containers(#20168,#20159) +literals("subtitle_html","subtitle_html",#20168) +#20169=@"var;{subtitle_html};{#20165}" +variables(#20169,"subtitle_html",#20165) +bind(#20168,#20169) +#20170=* +entry_cfg_node(#20170,#20159) +#20171=@"loc,{#10000},5,8,5,7" +locations_default(#20171,#10000,5,8,5,7) +hasLocation(#20170,#20171) +#20172=* +exit_cfg_node(#20172,#20159) +hasLocation(#20172,#20164) +successor(#20167,#20168) +successor(#20168,#20172) +successor(#20170,#20167) +toplevel_parent_xml_node(#20159,#20157) #20173=* xmlChars(#20173," - ",#20148,8,0,#10000) -#20174=@"loc,{#10000},12,14,13,4" -locations_default(#20174,#10000,12,14,13,4) + {{{subtitle_html}}} + ",#20153,2,0,#10000) +#20174=@"loc,{#10000},4,23,6,4" +locations_default(#20174,#10000,4,23,6,4) xmllocations(#20173,#20174) #20175=* xmlChars(#20175," - ",#20148,10,0,#10000) -#20176=@"loc,{#10000},14,39,15,2" -locations_default(#20176,#10000,14,39,15,2) + ",#20153,4,0,#10000) +#20176=@"loc,{#10000},6,28,7,4" +locations_default(#20176,#10000,6,28,7,4) xmllocations(#20175,#20176) #20177=* -xmlElements(#20177,"a",#20148,9,#10000) -#20178=@"loc,{#10000},13,5,14,38" -locations_default(#20178,#10000,13,5,14,38) +xmlChars(#20177," + ",#20153,6,0,#10000) +#20178=@"loc,{#10000},7,25,8,4" +locations_default(#20178,#10000,7,25,8,4) xmllocations(#20177,#20178) -xmlAttrs(#20073,#20177,"href","{{ attr1 }}",0,#10000) -#20179=@"loc,{#10000},13,8,13,25" -locations_default(#20179,#10000,13,8,13,25) -xmllocations(#20073,#20179) -xmlAttrs(#20090,#20177,"title","{{{ attr2 }}}",1,#10000) -#20180=@"loc,{#10000},13,27,13,47" -locations_default(#20180,#10000,13,27,13,47) -xmllocations(#20090,#20180) -xmlAttrs(#20107,#20177,"data-foo","<%- attr3 %>",2,#10000) -#20181=@"loc,{#10000},13,49,13,71" -locations_default(#20181,#10000,13,49,13,71) -xmllocations(#20107,#20181) -xmlAttrs(#20124,#20177,"data-bar"," {{ attr4 }} ",3,#10000) -#20182=@"loc,{#10000},14,8,14,33" -locations_default(#20182,#10000,14,8,14,33) -xmllocations(#20124,#20182) -xmlElements(#20001,"script",#20148,7,#10000) -#20183=@"loc,{#10000},8,5,12,13" -locations_default(#20183,#10000,8,5,12,13) -xmllocations(#20001,#20183) -#20184=* -template_placeholder_tag_info(#20184,#20001,"{{{ user_data1 }}}") -locations_default(#20055,#10000,9,19,9,36) -hasLocation(#20184,#20055) +#20179=* +xmlChars(#20179," + ",#20153,8,0,#10000) +#20180=@"loc,{#10000},12,14,13,4" +locations_default(#20180,#10000,12,14,13,4) +xmllocations(#20179,#20180) +#20181=* +xmlChars(#20181," + ",#20153,10,0,#10000) +#20182=@"loc,{#10000},14,39,15,2" +locations_default(#20182,#10000,14,39,15,2) +xmllocations(#20181,#20182) +#20183=* +xmlElements(#20183,"a",#20153,9,#10000) +#20184=@"loc,{#10000},13,5,14,38" +locations_default(#20184,#10000,13,5,14,38) +xmllocations(#20183,#20184) +xmlAttrs(#20074,#20183,"href","{{ attr1 }}",0,#10000) +#20185=@"loc,{#10000},13,8,13,25" +locations_default(#20185,#10000,13,8,13,25) +xmllocations(#20074,#20185) +xmlAttrs(#20092,#20183,"title","{{{ attr2 }}}",1,#10000) +#20186=@"loc,{#10000},13,27,13,47" +locations_default(#20186,#10000,13,27,13,47) +xmllocations(#20092,#20186) +xmlAttrs(#20110,#20183,"data-foo","<%- attr3 %>",2,#10000) +#20187=@"loc,{#10000},13,49,13,71" +locations_default(#20187,#10000,13,49,13,71) +xmllocations(#20110,#20187) +xmlAttrs(#20128,#20183,"data-bar"," {{ attr4 }} ",3,#10000) +#20188=@"loc,{#10000},14,8,14,33" +locations_default(#20188,#10000,14,8,14,33) +xmllocations(#20128,#20188) +xmlElements(#20001,"script",#20153,7,#10000) +#20189=@"loc,{#10000},8,5,12,13" +locations_default(#20189,#10000,8,5,12,13) +xmllocations(#20001,#20189) +#20190=* +template_placeholder_tag_info(#20190,#20001,"{{{ user_data1 }}}") +locations_default(#20056,#10000,9,19,9,36) +hasLocation(#20190,#20056) scopes(#20000,0) -#20185=@"script;{#10000},9,22" -#20186=* -lines(#20186,#20185," user_data1 ","") -#20187=@"loc,{#10000},9,22,9,33" -locations_default(#20187,#10000,9,22,9,33) -hasLocation(#20186,#20187) +#20191=@"script;{#10000},9,22" +#20192=* +lines(#20192,#20191," user_data1 ","") +#20193=@"loc,{#10000},9,22,9,33" +locations_default(#20193,#10000,9,22,9,33) +hasLocation(#20192,#20193) indentation(#10000,9," ",1) -numlines(#20185,1,1,0) -#20188=* -tokeninfo(#20188,6,#20185,0,"user_data1") -#20189=@"loc,{#10000},9,23,9,32" -locations_default(#20189,#10000,9,23,9,32) -hasLocation(#20188,#20189) -#20190=* -tokeninfo(#20190,0,#20185,1,"") -#20191=@"loc,{#10000},9,34,9,33" -locations_default(#20191,#10000,9,34,9,33) -hasLocation(#20190,#20191) -toplevels(#20185,4) -hasLocation(#20185,#20187) -#20192=@"module;{#10000},9,22" -scopes(#20192,3) -scopenodes(#20185,#20192) -scopenesting(#20192,#20000) -is_module(#20185) -#20193=* -stmts(#20193,2,#20185,0,"user_data1") -hasLocation(#20193,#20189) -stmt_containers(#20193,#20185) +numlines(#20191,1,1,0) #20194=* -exprs(#20194,79,#20193,0,"user_data1") -hasLocation(#20194,#20189) -enclosing_stmt(#20194,#20193) -expr_containers(#20194,#20185) -literals("user_data1","user_data1",#20194) -#20195=@"var;{user_data1};{#20192}" -variables(#20195,"user_data1",#20192) -bind(#20194,#20195) +tokeninfo(#20194,6,#20191,0,"user_data1") +#20195=@"loc,{#10000},9,23,9,32" +locations_default(#20195,#10000,9,23,9,32) +hasLocation(#20194,#20195) #20196=* -entry_cfg_node(#20196,#20185) -#20197=@"loc,{#10000},9,22,9,21" -locations_default(#20197,#10000,9,22,9,21) +tokeninfo(#20196,0,#20191,1,"") +#20197=@"loc,{#10000},9,34,9,33" +locations_default(#20197,#10000,9,34,9,33) hasLocation(#20196,#20197) -#20198=* -exit_cfg_node(#20198,#20185) -hasLocation(#20198,#20191) -successor(#20193,#20194) -successor(#20194,#20198) -successor(#20196,#20193) -toplevel_parent_xml_node(#20185,#20184) -#20199=* -template_placeholder_tag_info(#20199,#20001,"{{ user_data2 | json | safe }}") -locations_default(#20062,#10000,10,19,10,48) -hasLocation(#20199,#20062) -scopes(#20000,0) -#20200=@"script;{#10000},10,21" +toplevels(#20191,4) +hasLocation(#20191,#20193) +#20198=@"module;{#10000},9,22" +scopes(#20198,3) +scopenodes(#20191,#20198) +scopenesting(#20198,#20000) +is_module(#20191) +#20199=@"var;{this};{#20198}" +variables(#20199,"this",#20198) +#20200=* +stmts(#20200,2,#20191,0,"user_data1") +hasLocation(#20200,#20195) +stmt_containers(#20200,#20191) #20201=* -lines(#20201,#20200," user_data2 | json | safe ","") -#20202=@"loc,{#10000},10,21,10,46" -locations_default(#20202,#10000,10,21,10,46) -hasLocation(#20201,#20202) -indentation(#10000,10," ",1) -numlines(#20200,1,1,0) +exprs(#20201,79,#20200,0,"user_data1") +hasLocation(#20201,#20195) +enclosing_stmt(#20201,#20200) +expr_containers(#20201,#20191) +literals("user_data1","user_data1",#20201) +#20202=@"var;{user_data1};{#20198}" +variables(#20202,"user_data1",#20198) +bind(#20201,#20202) #20203=* -tokeninfo(#20203,6,#20200,0,"user_data2") -#20204=@"loc,{#10000},10,22,10,31" -locations_default(#20204,#10000,10,22,10,31) +entry_cfg_node(#20203,#20191) +#20204=@"loc,{#10000},9,22,9,21" +locations_default(#20204,#10000,9,22,9,21) hasLocation(#20203,#20204) #20205=* -tokeninfo(#20205,8,#20200,1,"|") -#20206=@"loc,{#10000},10,33,10,33" -locations_default(#20206,#10000,10,33,10,33) -hasLocation(#20205,#20206) -#20207=* -tokeninfo(#20207,6,#20200,2,"json") -#20208=@"loc,{#10000},10,35,10,38" -locations_default(#20208,#10000,10,35,10,38) -hasLocation(#20207,#20208) -#20209=* -tokeninfo(#20209,8,#20200,3,"|") -#20210=@"loc,{#10000},10,40,10,40" -locations_default(#20210,#10000,10,40,10,40) -hasLocation(#20209,#20210) -#20211=* -tokeninfo(#20211,6,#20200,4,"safe") -#20212=@"loc,{#10000},10,42,10,45" -locations_default(#20212,#10000,10,42,10,45) -hasLocation(#20211,#20212) -#20213=* -tokeninfo(#20213,0,#20200,5,"") -#20214=@"loc,{#10000},10,47,10,46" -locations_default(#20214,#10000,10,47,10,46) -hasLocation(#20213,#20214) -toplevels(#20200,4) -hasLocation(#20200,#20202) -#20215=@"module;{#10000},10,21" -scopes(#20215,3) -scopenodes(#20200,#20215) -scopenesting(#20215,#20000) -is_module(#20200) +exit_cfg_node(#20205,#20191) +hasLocation(#20205,#20197) +successor(#20200,#20201) +successor(#20201,#20205) +successor(#20203,#20200) +toplevel_parent_xml_node(#20191,#20190) +#20206=* +template_placeholder_tag_info(#20206,#20001,"{{ user_data2 | json | safe }}") +locations_default(#20063,#10000,10,19,10,48) +hasLocation(#20206,#20063) +scopes(#20000,0) +#20207=@"script;{#10000},10,21" +#20208=* +lines(#20208,#20207," user_data2 | json | safe ","") +#20209=@"loc,{#10000},10,21,10,46" +locations_default(#20209,#10000,10,21,10,46) +hasLocation(#20208,#20209) +indentation(#10000,10," ",1) +numlines(#20207,1,1,0) +#20210=* +tokeninfo(#20210,6,#20207,0,"user_data2") +#20211=@"loc,{#10000},10,22,10,31" +locations_default(#20211,#10000,10,22,10,31) +hasLocation(#20210,#20211) +#20212=* +tokeninfo(#20212,8,#20207,1,"|") +#20213=@"loc,{#10000},10,33,10,33" +locations_default(#20213,#10000,10,33,10,33) +hasLocation(#20212,#20213) +#20214=* +tokeninfo(#20214,6,#20207,2,"json") +#20215=@"loc,{#10000},10,35,10,38" +locations_default(#20215,#10000,10,35,10,38) +hasLocation(#20214,#20215) #20216=* -stmts(#20216,2,#20200,0,"user_da ... | safe") -#20217=@"loc,{#10000},10,22,10,45" -locations_default(#20217,#10000,10,22,10,45) +tokeninfo(#20216,8,#20207,3,"|") +#20217=@"loc,{#10000},10,40,10,40" +locations_default(#20217,#10000,10,40,10,40) hasLocation(#20216,#20217) -stmt_containers(#20216,#20200) #20218=* -exprs(#20218,13,#20216,0,"user_da ... | safe") -hasLocation(#20218,#20217) -enclosing_stmt(#20218,#20216) -expr_containers(#20218,#20200) -#20219=* -exprs(#20219,119,#20218,-1,"safe") -hasLocation(#20219,#20212) -enclosing_stmt(#20219,#20216) -expr_containers(#20219,#20200) +tokeninfo(#20218,6,#20207,4,"safe") +#20219=@"loc,{#10000},10,42,10,45" +locations_default(#20219,#10000,10,42,10,45) +hasLocation(#20218,#20219) #20220=* -exprs(#20220,0,#20219,0,"safe") -hasLocation(#20220,#20212) -enclosing_stmt(#20220,#20216) -expr_containers(#20220,#20200) -literals("safe","safe",#20220) -#20221=* -exprs(#20221,13,#20218,0,"user_data2 | json") -#20222=@"loc,{#10000},10,22,10,38" -locations_default(#20222,#10000,10,22,10,38) -hasLocation(#20221,#20222) -enclosing_stmt(#20221,#20216) -expr_containers(#20221,#20200) -#20223=* -exprs(#20223,119,#20221,-1,"json") -hasLocation(#20223,#20208) -enclosing_stmt(#20223,#20216) -expr_containers(#20223,#20200) +tokeninfo(#20220,0,#20207,5,"") +#20221=@"loc,{#10000},10,47,10,46" +locations_default(#20221,#10000,10,47,10,46) +hasLocation(#20220,#20221) +toplevels(#20207,4) +hasLocation(#20207,#20209) +#20222=@"module;{#10000},10,21" +scopes(#20222,3) +scopenodes(#20207,#20222) +scopenesting(#20222,#20000) +is_module(#20207) +#20223=@"var;{this};{#20222}" +variables(#20223,"this",#20222) #20224=* -exprs(#20224,0,#20223,0,"json") -hasLocation(#20224,#20208) -enclosing_stmt(#20224,#20216) -expr_containers(#20224,#20200) -literals("json","json",#20224) -#20225=* -exprs(#20225,79,#20221,0,"user_data2") -hasLocation(#20225,#20204) -enclosing_stmt(#20225,#20216) -expr_containers(#20225,#20200) -literals("user_data2","user_data2",#20225) -#20226=@"var;{user_data2};{#20215}" -variables(#20226,"user_data2",#20215) -bind(#20225,#20226) +stmts(#20224,2,#20207,0,"user_da ... | safe") +#20225=@"loc,{#10000},10,22,10,45" +locations_default(#20225,#10000,10,22,10,45) +hasLocation(#20224,#20225) +stmt_containers(#20224,#20207) +#20226=* +exprs(#20226,13,#20224,0,"user_da ... | safe") +hasLocation(#20226,#20225) +enclosing_stmt(#20226,#20224) +expr_containers(#20226,#20207) #20227=* -entry_cfg_node(#20227,#20200) -#20228=@"loc,{#10000},10,21,10,20" -locations_default(#20228,#10000,10,21,10,20) -hasLocation(#20227,#20228) +exprs(#20227,119,#20226,-1,"safe") +hasLocation(#20227,#20219) +enclosing_stmt(#20227,#20224) +expr_containers(#20227,#20207) +#20228=* +exprs(#20228,0,#20227,0,"safe") +hasLocation(#20228,#20219) +enclosing_stmt(#20228,#20224) +expr_containers(#20228,#20207) +literals("safe","safe",#20228) #20229=* -exit_cfg_node(#20229,#20200) -hasLocation(#20229,#20214) -successor(#20216,#20219) -successor(#20225,#20221) -successor(#20223,#20225) -successor(#20221,#20218) -successor(#20219,#20223) -successor(#20218,#20229) -successor(#20227,#20216) -toplevel_parent_xml_node(#20200,#20199) -#20230=* -template_placeholder_tag_info(#20230,#20001,"<%- user_data3 %>") -locations_default(#20069,#10000,11,19,11,35) -hasLocation(#20230,#20069) -scopes(#20000,0) -#20231=@"script;{#10000},11,22" +exprs(#20229,13,#20226,0,"user_data2 | json") +#20230=@"loc,{#10000},10,22,10,38" +locations_default(#20230,#10000,10,22,10,38) +hasLocation(#20229,#20230) +enclosing_stmt(#20229,#20224) +expr_containers(#20229,#20207) +#20231=* +exprs(#20231,119,#20229,-1,"json") +hasLocation(#20231,#20215) +enclosing_stmt(#20231,#20224) +expr_containers(#20231,#20207) #20232=* -lines(#20232,#20231," user_data3 ","") -#20233=@"loc,{#10000},11,22,11,33" -locations_default(#20233,#10000,11,22,11,33) -hasLocation(#20232,#20233) -indentation(#10000,11," ",1) -numlines(#20231,1,1,0) -#20234=* -tokeninfo(#20234,6,#20231,0,"user_data3") -#20235=@"loc,{#10000},11,23,11,32" -locations_default(#20235,#10000,11,23,11,32) -hasLocation(#20234,#20235) -#20236=* -tokeninfo(#20236,0,#20231,1,"") -#20237=@"loc,{#10000},11,34,11,33" -locations_default(#20237,#10000,11,34,11,33) -hasLocation(#20236,#20237) -toplevels(#20231,4) -hasLocation(#20231,#20233) -#20238=@"module;{#10000},11,22" -scopes(#20238,3) -scopenodes(#20231,#20238) -scopenesting(#20238,#20000) -is_module(#20231) -#20239=* -stmts(#20239,2,#20231,0,"user_data3") -hasLocation(#20239,#20235) -stmt_containers(#20239,#20231) +exprs(#20232,0,#20231,0,"json") +hasLocation(#20232,#20215) +enclosing_stmt(#20232,#20224) +expr_containers(#20232,#20207) +literals("json","json",#20232) +#20233=* +exprs(#20233,79,#20229,0,"user_data2") +hasLocation(#20233,#20211) +enclosing_stmt(#20233,#20224) +expr_containers(#20233,#20207) +literals("user_data2","user_data2",#20233) +#20234=@"var;{user_data2};{#20222}" +variables(#20234,"user_data2",#20222) +bind(#20233,#20234) +#20235=* +entry_cfg_node(#20235,#20207) +#20236=@"loc,{#10000},10,21,10,20" +locations_default(#20236,#10000,10,21,10,20) +hasLocation(#20235,#20236) +#20237=* +exit_cfg_node(#20237,#20207) +hasLocation(#20237,#20221) +successor(#20224,#20227) +successor(#20233,#20229) +successor(#20231,#20233) +successor(#20229,#20226) +successor(#20227,#20231) +successor(#20226,#20237) +successor(#20235,#20224) +toplevel_parent_xml_node(#20207,#20206) +#20238=* +template_placeholder_tag_info(#20238,#20001,"<%- user_data3 %>") +locations_default(#20070,#10000,11,19,11,35) +hasLocation(#20238,#20070) +scopes(#20000,0) +#20239=@"script;{#10000},11,22" #20240=* -exprs(#20240,79,#20239,0,"user_data3") -hasLocation(#20240,#20235) -enclosing_stmt(#20240,#20239) -expr_containers(#20240,#20231) -literals("user_data3","user_data3",#20240) -#20241=@"var;{user_data3};{#20238}" -variables(#20241,"user_data3",#20238) -bind(#20240,#20241) +lines(#20240,#20239," user_data3 ","") +#20241=@"loc,{#10000},11,22,11,33" +locations_default(#20241,#10000,11,22,11,33) +hasLocation(#20240,#20241) +indentation(#10000,11," ",1) +numlines(#20239,1,1,0) #20242=* -entry_cfg_node(#20242,#20231) -#20243=@"loc,{#10000},11,22,11,21" -locations_default(#20243,#10000,11,22,11,21) +tokeninfo(#20242,6,#20239,0,"user_data3") +#20243=@"loc,{#10000},11,23,11,32" +locations_default(#20243,#10000,11,23,11,32) hasLocation(#20242,#20243) #20244=* -exit_cfg_node(#20244,#20231) -hasLocation(#20244,#20237) -successor(#20239,#20240) -successor(#20240,#20244) -successor(#20242,#20239) -toplevel_parent_xml_node(#20231,#20230) -#20245=* -xmlChars(#20245," +tokeninfo(#20244,0,#20239,1,"") +#20245=@"loc,{#10000},11,34,11,33" +locations_default(#20245,#10000,11,34,11,33) +hasLocation(#20244,#20245) +toplevels(#20239,4) +hasLocation(#20239,#20241) +#20246=@"module;{#10000},11,22" +scopes(#20246,3) +scopenodes(#20239,#20246) +scopenesting(#20246,#20000) +is_module(#20239) +#20247=@"var;{this};{#20246}" +variables(#20247,"this",#20246) +#20248=* +stmts(#20248,2,#20239,0,"user_data3") +hasLocation(#20248,#20243) +stmt_containers(#20248,#20239) +#20249=* +exprs(#20249,79,#20248,0,"user_data3") +hasLocation(#20249,#20243) +enclosing_stmt(#20249,#20248) +expr_containers(#20249,#20239) +literals("user_data3","user_data3",#20249) +#20250=@"var;{user_data3};{#20246}" +variables(#20250,"user_data3",#20246) +bind(#20249,#20250) +#20251=* +entry_cfg_node(#20251,#20239) +#20252=@"loc,{#10000},11,22,11,21" +locations_default(#20252,#10000,11,22,11,21) +hasLocation(#20251,#20252) +#20253=* +exit_cfg_node(#20253,#20239) +hasLocation(#20253,#20245) +successor(#20248,#20249) +successor(#20249,#20253) +successor(#20251,#20248) +toplevel_parent_xml_node(#20239,#20238) +#20254=* +xmlChars(#20254," var data1 = {{{ user_data1 }}}; var data2 = {{ user_data2 | json | safe }}; var data3 = <%- user_data3 %>; ",#20001,0,0,#10000) locations_default(#20045,#10000,8,13,12,4) -xmllocations(#20245,#20045) -#20246=* -xmlElements(#20246,"p",#20148,5,#10000) -#20247=@"loc,{#10000},7,5,7,24" -locations_default(#20247,#10000,7,5,7,24) -xmllocations(#20246,#20247) -#20248=* -template_placeholder_tag_info(#20248,#20246,"<%= footer %>") -#20249=@"loc,{#10000},7,8,7,20" -locations_default(#20249,#10000,7,8,7,20) -hasLocation(#20248,#20249) +xmllocations(#20254,#20045) +#20255=* +xmlElements(#20255,"p",#20153,5,#10000) +#20256=@"loc,{#10000},7,5,7,24" +locations_default(#20256,#10000,7,5,7,24) +xmllocations(#20255,#20256) +#20257=* +template_placeholder_tag_info(#20257,#20255,"<%= footer %>") +#20258=@"loc,{#10000},7,8,7,20" +locations_default(#20258,#10000,7,8,7,20) +hasLocation(#20257,#20258) scopes(#20000,0) -#20250=@"script;{#10000},7,11" -#20251=* -lines(#20251,#20250," footer ","") -#20252=@"loc,{#10000},7,11,7,18" -locations_default(#20252,#10000,7,11,7,18) -hasLocation(#20251,#20252) +#20259=@"script;{#10000},7,11" +#20260=* +lines(#20260,#20259," footer ","") +#20261=@"loc,{#10000},7,11,7,18" +locations_default(#20261,#10000,7,11,7,18) +hasLocation(#20260,#20261) indentation(#10000,7," ",1) -numlines(#20250,1,1,0) -#20253=* -tokeninfo(#20253,6,#20250,0,"footer") -#20254=@"loc,{#10000},7,12,7,17" -locations_default(#20254,#10000,7,12,7,17) -hasLocation(#20253,#20254) -#20255=* -tokeninfo(#20255,0,#20250,1,"") -#20256=@"loc,{#10000},7,19,7,18" -locations_default(#20256,#10000,7,19,7,18) -hasLocation(#20255,#20256) -toplevels(#20250,4) -hasLocation(#20250,#20252) -#20257=@"module;{#10000},7,11" -scopes(#20257,3) -scopenodes(#20250,#20257) -scopenesting(#20257,#20000) -is_module(#20250) -#20258=* -stmts(#20258,2,#20250,0,"footer") -hasLocation(#20258,#20254) -stmt_containers(#20258,#20250) -#20259=* -exprs(#20259,79,#20258,0,"footer") -hasLocation(#20259,#20254) -enclosing_stmt(#20259,#20258) -expr_containers(#20259,#20250) -literals("footer","footer",#20259) -#20260=@"var;{footer};{#20257}" -variables(#20260,"footer",#20257) -bind(#20259,#20260) -#20261=* -entry_cfg_node(#20261,#20250) -#20262=@"loc,{#10000},7,11,7,10" -locations_default(#20262,#10000,7,11,7,10) -hasLocation(#20261,#20262) -#20263=* -exit_cfg_node(#20263,#20250) -hasLocation(#20263,#20256) -successor(#20258,#20259) -successor(#20259,#20263) -successor(#20261,#20258) -toplevel_parent_xml_node(#20250,#20248) +numlines(#20259,1,1,0) +#20262=* +tokeninfo(#20262,6,#20259,0,"footer") +#20263=@"loc,{#10000},7,12,7,17" +locations_default(#20263,#10000,7,12,7,17) +hasLocation(#20262,#20263) #20264=* -xmlChars(#20264,"<%= footer %>",#20246,0,0,#10000) -locations_default(#20249,#10000,7,8,7,20) -xmllocations(#20264,#20249) -#20265=* -xmlElements(#20265,"p",#20148,3,#10000) -#20266=@"loc,{#10000},6,5,6,27" -locations_default(#20266,#10000,6,5,6,27) -xmllocations(#20265,#20266) -#20267=* -template_placeholder_tag_info(#20267,#20265,"<%- body_html %>") -#20268=@"loc,{#10000},6,8,6,23" -locations_default(#20268,#10000,6,8,6,23) -hasLocation(#20267,#20268) -scopes(#20000,0) -#20269=@"script;{#10000},6,11" -#20270=* -lines(#20270,#20269," body_html ","") -#20271=@"loc,{#10000},6,11,6,21" -locations_default(#20271,#10000,6,11,6,21) -hasLocation(#20270,#20271) -indentation(#10000,6," ",1) -numlines(#20269,1,1,0) -#20272=* -tokeninfo(#20272,6,#20269,0,"body_html") -#20273=@"loc,{#10000},6,12,6,20" -locations_default(#20273,#10000,6,12,6,20) -hasLocation(#20272,#20273) +tokeninfo(#20264,0,#20259,1,"") +#20265=@"loc,{#10000},7,19,7,18" +locations_default(#20265,#10000,7,19,7,18) +hasLocation(#20264,#20265) +toplevels(#20259,4) +hasLocation(#20259,#20261) +#20266=@"module;{#10000},7,11" +scopes(#20266,3) +scopenodes(#20259,#20266) +scopenesting(#20266,#20000) +is_module(#20259) +#20267=@"var;{this};{#20266}" +variables(#20267,"this",#20266) +#20268=* +stmts(#20268,2,#20259,0,"footer") +hasLocation(#20268,#20263) +stmt_containers(#20268,#20259) +#20269=* +exprs(#20269,79,#20268,0,"footer") +hasLocation(#20269,#20263) +enclosing_stmt(#20269,#20268) +expr_containers(#20269,#20259) +literals("footer","footer",#20269) +#20270=@"var;{footer};{#20266}" +variables(#20270,"footer",#20266) +bind(#20269,#20270) +#20271=* +entry_cfg_node(#20271,#20259) +#20272=@"loc,{#10000},7,11,7,10" +locations_default(#20272,#10000,7,11,7,10) +hasLocation(#20271,#20272) +#20273=* +exit_cfg_node(#20273,#20259) +hasLocation(#20273,#20265) +successor(#20268,#20269) +successor(#20269,#20273) +successor(#20271,#20268) +toplevel_parent_xml_node(#20259,#20257) #20274=* -tokeninfo(#20274,0,#20269,1,"") -#20275=@"loc,{#10000},6,22,6,21" -locations_default(#20275,#10000,6,22,6,21) -hasLocation(#20274,#20275) -toplevels(#20269,4) -hasLocation(#20269,#20271) -#20276=@"module;{#10000},6,11" -scopes(#20276,3) -scopenodes(#20269,#20276) -scopenesting(#20276,#20000) -is_module(#20269) +xmlChars(#20274,"<%= footer %>",#20255,0,0,#10000) +locations_default(#20258,#10000,7,8,7,20) +xmllocations(#20274,#20258) +#20275=* +xmlElements(#20275,"p",#20153,3,#10000) +#20276=@"loc,{#10000},6,5,6,27" +locations_default(#20276,#10000,6,5,6,27) +xmllocations(#20275,#20276) #20277=* -stmts(#20277,2,#20269,0,"body_html") -hasLocation(#20277,#20273) -stmt_containers(#20277,#20269) -#20278=* -exprs(#20278,79,#20277,0,"body_html") -hasLocation(#20278,#20273) -enclosing_stmt(#20278,#20277) -expr_containers(#20278,#20269) -literals("body_html","body_html",#20278) -#20279=@"var;{body_html};{#20276}" -variables(#20279,"body_html",#20276) -bind(#20278,#20279) +template_placeholder_tag_info(#20277,#20275,"<%- body_html %>") +#20278=@"loc,{#10000},6,8,6,23" +locations_default(#20278,#10000,6,8,6,23) +hasLocation(#20277,#20278) +scopes(#20000,0) +#20279=@"script;{#10000},6,11" #20280=* -entry_cfg_node(#20280,#20269) -#20281=@"loc,{#10000},6,11,6,10" -locations_default(#20281,#10000,6,11,6,10) +lines(#20280,#20279," body_html ","") +#20281=@"loc,{#10000},6,11,6,21" +locations_default(#20281,#10000,6,11,6,21) hasLocation(#20280,#20281) +indentation(#10000,6," ",1) +numlines(#20279,1,1,0) #20282=* -exit_cfg_node(#20282,#20269) -hasLocation(#20282,#20275) -successor(#20277,#20278) -successor(#20278,#20282) -successor(#20280,#20277) -toplevel_parent_xml_node(#20269,#20267) -#20283=* -xmlChars(#20283,"<%- body_html %>",#20265,0,0,#10000) -locations_default(#20268,#10000,6,8,6,23) -xmllocations(#20283,#20268) +tokeninfo(#20282,6,#20279,0,"body_html") +#20283=@"loc,{#10000},6,12,6,20" +locations_default(#20283,#10000,6,12,6,20) +hasLocation(#20282,#20283) #20284=* -xmlElements(#20284,"h1",#20148,1,#10000) -#20285=@"loc,{#10000},4,5,4,22" -locations_default(#20285,#10000,4,5,4,22) -xmllocations(#20284,#20285) -#20286=* -template_placeholder_tag_info(#20286,#20284,"{{title}}") -#20287=@"loc,{#10000},4,9,4,17" -locations_default(#20287,#10000,4,9,4,17) -hasLocation(#20286,#20287) -scopes(#20000,0) -#20288=@"script;{#10000},4,11" +tokeninfo(#20284,0,#20279,1,"") +#20285=@"loc,{#10000},6,22,6,21" +locations_default(#20285,#10000,6,22,6,21) +hasLocation(#20284,#20285) +toplevels(#20279,4) +hasLocation(#20279,#20281) +#20286=@"module;{#10000},6,11" +scopes(#20286,3) +scopenodes(#20279,#20286) +scopenesting(#20286,#20000) +is_module(#20279) +#20287=@"var;{this};{#20286}" +variables(#20287,"this",#20286) +#20288=* +stmts(#20288,2,#20279,0,"body_html") +hasLocation(#20288,#20283) +stmt_containers(#20288,#20279) #20289=* -lines(#20289,#20288,"title","") -#20290=@"loc,{#10000},4,11,4,15" -locations_default(#20290,#10000,4,11,4,15) -hasLocation(#20289,#20290) -numlines(#20288,1,1,0) +exprs(#20289,79,#20288,0,"body_html") +hasLocation(#20289,#20283) +enclosing_stmt(#20289,#20288) +expr_containers(#20289,#20279) +literals("body_html","body_html",#20289) +#20290=@"var;{body_html};{#20286}" +variables(#20290,"body_html",#20286) +bind(#20289,#20290) #20291=* -tokeninfo(#20291,6,#20288,0,"title") -hasLocation(#20291,#20290) -#20292=* -tokeninfo(#20292,0,#20288,1,"") -#20293=@"loc,{#10000},4,16,4,15" -locations_default(#20293,#10000,4,16,4,15) -hasLocation(#20292,#20293) -toplevels(#20288,4) -hasLocation(#20288,#20290) -#20294=@"module;{#10000},4,11" -scopes(#20294,3) -scopenodes(#20288,#20294) -scopenesting(#20294,#20000) -is_module(#20288) +entry_cfg_node(#20291,#20279) +#20292=@"loc,{#10000},6,11,6,10" +locations_default(#20292,#10000,6,11,6,10) +hasLocation(#20291,#20292) +#20293=* +exit_cfg_node(#20293,#20279) +hasLocation(#20293,#20285) +successor(#20288,#20289) +successor(#20289,#20293) +successor(#20291,#20288) +toplevel_parent_xml_node(#20279,#20277) +#20294=* +xmlChars(#20294,"<%- body_html %>",#20275,0,0,#10000) +locations_default(#20278,#10000,6,8,6,23) +xmllocations(#20294,#20278) #20295=* -stmts(#20295,2,#20288,0,"title") -hasLocation(#20295,#20290) -stmt_containers(#20295,#20288) -#20296=* -exprs(#20296,79,#20295,0,"title") -hasLocation(#20296,#20290) -enclosing_stmt(#20296,#20295) -expr_containers(#20296,#20288) -literals("title","title",#20296) -#20297=@"var;{title};{#20294}" -variables(#20297,"title",#20294) -bind(#20296,#20297) -#20298=* -entry_cfg_node(#20298,#20288) -#20299=@"loc,{#10000},4,11,4,10" -locations_default(#20299,#10000,4,11,4,10) -hasLocation(#20298,#20299) +xmlElements(#20295,"h1",#20153,1,#10000) +#20296=@"loc,{#10000},4,5,4,22" +locations_default(#20296,#10000,4,5,4,22) +xmllocations(#20295,#20296) +#20297=* +template_placeholder_tag_info(#20297,#20295,"{{title}}") +#20298=@"loc,{#10000},4,9,4,17" +locations_default(#20298,#10000,4,9,4,17) +hasLocation(#20297,#20298) +scopes(#20000,0) +#20299=@"script;{#10000},4,11" #20300=* -exit_cfg_node(#20300,#20288) -hasLocation(#20300,#20293) -successor(#20295,#20296) -successor(#20296,#20300) -successor(#20298,#20295) -toplevel_parent_xml_node(#20288,#20286) -#20301=* -xmlChars(#20301,"{{title}}",#20284,0,0,#10000) -locations_default(#20287,#10000,4,9,4,17) -xmllocations(#20301,#20287) +lines(#20300,#20299,"title","") +#20301=@"loc,{#10000},4,11,4,15" +locations_default(#20301,#10000,4,11,4,15) +hasLocation(#20300,#20301) +numlines(#20299,1,1,0) +#20302=* +tokeninfo(#20302,6,#20299,0,"title") +hasLocation(#20302,#20301) +#20303=* +tokeninfo(#20303,0,#20299,1,"") +#20304=@"loc,{#10000},4,16,4,15" +locations_default(#20304,#10000,4,16,4,15) +hasLocation(#20303,#20304) +toplevels(#20299,4) +hasLocation(#20299,#20301) +#20305=@"module;{#10000},4,11" +scopes(#20305,3) +scopenodes(#20299,#20305) +scopenesting(#20305,#20000) +is_module(#20299) +#20306=@"var;{this};{#20305}" +variables(#20306,"this",#20305) +#20307=* +stmts(#20307,2,#20299,0,"title") +hasLocation(#20307,#20301) +stmt_containers(#20307,#20299) +#20308=* +exprs(#20308,79,#20307,0,"title") +hasLocation(#20308,#20301) +enclosing_stmt(#20308,#20307) +expr_containers(#20308,#20299) +literals("title","title",#20308) +#20309=@"var;{title};{#20305}" +variables(#20309,"title",#20305) +bind(#20308,#20309) +#20310=* +entry_cfg_node(#20310,#20299) +#20311=@"loc,{#10000},4,11,4,10" +locations_default(#20311,#10000,4,11,4,10) +hasLocation(#20310,#20311) +#20312=* +exit_cfg_node(#20312,#20299) +hasLocation(#20312,#20304) +successor(#20307,#20308) +successor(#20308,#20312) +successor(#20310,#20307) +toplevel_parent_xml_node(#20299,#20297) +#20313=* +xmlChars(#20313,"{{title}}",#20295,0,0,#10000) +locations_default(#20298,#10000,4,9,4,17) +xmllocations(#20313,#20298) numlines(#10000,16,14,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/generatedcode/output/trap/tst.js.trap b/javascript/extractor/tests/generatedcode/output/trap/tst.js.trap index cf70d72dc5f0..7ac0c0a8985e 100644 --- a/javascript/extractor/tests/generatedcode/output/trap/tst.js.trap +++ b/javascript/extractor/tests/generatedcode/output/trap/tst.js.trap @@ -373,314 +373,316 @@ variables(#20139,"data1",#20000) variables(#20140,"data2",#20000) #20141=@"var;{string};{#20000}" variables(#20141,"string",#20000) -#20142=* -stmts(#20142,23,#20001,0,"let dat ... ta1 }};") -hasLocation(#20142,#20011) -stmt_containers(#20142,#20001) +#20142=@"var;{this};{#20000}" +variables(#20142,"this",#20000) #20143=* -exprs(#20143,64,#20142,0,"data1 = ... ata1 }}") -#20144=@"loc,{#10000},1,5,1,28" -locations_default(#20144,#10000,1,5,1,28) -hasLocation(#20143,#20144) -enclosing_stmt(#20143,#20142) -expr_containers(#20143,#20001) -#20145=* -exprs(#20145,78,#20143,0,"data1") -hasLocation(#20145,#20031) -enclosing_stmt(#20145,#20142) -expr_containers(#20145,#20001) -literals("data1","data1",#20145) -decl(#20145,#20139) +stmts(#20143,23,#20001,0,"let dat ... ta1 }};") +hasLocation(#20143,#20011) +stmt_containers(#20143,#20001) +#20144=* +exprs(#20144,64,#20143,0,"data1 = ... ata1 }}") +#20145=@"loc,{#10000},1,5,1,28" +locations_default(#20145,#10000,1,5,1,28) +hasLocation(#20144,#20145) +enclosing_stmt(#20144,#20143) +expr_containers(#20144,#20001) #20146=* -exprs(#20146,120,#20143,1,"{{ user_data1 }}") -#20147=@"loc,{#10000},1,13,1,28" -locations_default(#20147,#10000,1,13,1,28) -hasLocation(#20146,#20147) -enclosing_stmt(#20146,#20142) +exprs(#20146,78,#20144,0,"data1") +hasLocation(#20146,#20031) +enclosing_stmt(#20146,#20143) expr_containers(#20146,#20001) -expr_contains_template_tag_location(#20146,#20147) -#20148=* -stmts(#20148,23,#20001,1,"let dat ... a2 }}};") -hasLocation(#20148,#20013) -stmt_containers(#20148,#20001) +literals("data1","data1",#20146) +decl(#20146,#20139) +#20147=* +exprs(#20147,120,#20144,1,"{{ user_data1 }}") +#20148=@"loc,{#10000},1,13,1,28" +locations_default(#20148,#10000,1,13,1,28) +hasLocation(#20147,#20148) +enclosing_stmt(#20147,#20143) +expr_containers(#20147,#20001) +expr_contains_template_tag_location(#20147,#20148) #20149=* -exprs(#20149,64,#20148,0,"data2 = ... ta2 }}}") -#20150=@"loc,{#10000},2,5,2,30" -locations_default(#20150,#10000,2,5,2,30) -hasLocation(#20149,#20150) -enclosing_stmt(#20149,#20148) -expr_containers(#20149,#20001) -#20151=* -exprs(#20151,78,#20149,0,"data2") -hasLocation(#20151,#20041) -enclosing_stmt(#20151,#20148) -expr_containers(#20151,#20001) -literals("data2","data2",#20151) -decl(#20151,#20140) +stmts(#20149,23,#20001,1,"let dat ... a2 }}};") +hasLocation(#20149,#20013) +stmt_containers(#20149,#20001) +#20150=* +exprs(#20150,64,#20149,0,"data2 = ... ta2 }}}") +#20151=@"loc,{#10000},2,5,2,30" +locations_default(#20151,#10000,2,5,2,30) +hasLocation(#20150,#20151) +enclosing_stmt(#20150,#20149) +expr_containers(#20150,#20001) #20152=* -exprs(#20152,120,#20149,1,"{{{ user_data2 }}}") -#20153=@"loc,{#10000},2,13,2,30" -locations_default(#20153,#10000,2,13,2,30) -hasLocation(#20152,#20153) -enclosing_stmt(#20152,#20148) +exprs(#20152,78,#20150,0,"data2") +hasLocation(#20152,#20041) +enclosing_stmt(#20152,#20149) expr_containers(#20152,#20001) -expr_contains_template_tag_location(#20152,#20153) -#20154=* -stmts(#20154,3,#20001,2,"if ({{s ... g}}) {}") -hasLocation(#20154,#20015) -stmt_containers(#20154,#20001) +literals("data2","data2",#20152) +decl(#20152,#20140) +#20153=* +exprs(#20153,120,#20150,1,"{{{ user_data2 }}}") +#20154=@"loc,{#10000},2,13,2,30" +locations_default(#20154,#10000,2,13,2,30) +hasLocation(#20153,#20154) +enclosing_stmt(#20153,#20149) +expr_containers(#20153,#20001) +expr_contains_template_tag_location(#20153,#20154) #20155=* -exprs(#20155,120,#20154,0,"{{something}}") -#20156=@"loc,{#10000},3,5,3,17" -locations_default(#20156,#10000,3,5,3,17) -hasLocation(#20155,#20156) -enclosing_stmt(#20155,#20154) -expr_containers(#20155,#20001) -expr_contains_template_tag_location(#20155,#20156) -#20157=* -stmts(#20157,1,#20154,1,"{}") -#20158=@"loc,{#10000},3,20,3,21" -locations_default(#20158,#10000,3,20,3,21) -hasLocation(#20157,#20158) -stmt_containers(#20157,#20001) -#20159=* -stmts(#20159,2,#20001,3,"foo({{b ... baz}});") -hasLocation(#20159,#20017) -stmt_containers(#20159,#20001) +stmts(#20155,3,#20001,2,"if ({{s ... g}}) {}") +hasLocation(#20155,#20015) +stmt_containers(#20155,#20001) +#20156=* +exprs(#20156,120,#20155,0,"{{something}}") +#20157=@"loc,{#10000},3,5,3,17" +locations_default(#20157,#10000,3,5,3,17) +hasLocation(#20156,#20157) +enclosing_stmt(#20156,#20155) +expr_containers(#20156,#20001) +expr_contains_template_tag_location(#20156,#20157) +#20158=* +stmts(#20158,1,#20155,1,"{}") +#20159=@"loc,{#10000},3,20,3,21" +locations_default(#20159,#10000,3,20,3,21) +hasLocation(#20158,#20159) +stmt_containers(#20158,#20001) #20160=* -exprs(#20160,13,#20159,0,"foo({{b ... {baz}})") -#20161=@"loc,{#10000},4,1,4,21" -locations_default(#20161,#10000,4,1,4,21) -hasLocation(#20160,#20161) -enclosing_stmt(#20160,#20159) -expr_containers(#20160,#20001) -#20162=* -exprs(#20162,79,#20160,-1,"foo") -hasLocation(#20162,#20061) -enclosing_stmt(#20162,#20159) -expr_containers(#20162,#20001) -literals("foo","foo",#20162) -#20163=@"var;{foo};{#20000}" -variables(#20163,"foo",#20000) -bind(#20162,#20163) -#20164=* -exprs(#20164,120,#20160,0,"{{bar}}") -#20165=@"loc,{#10000},4,5,4,11" -locations_default(#20165,#10000,4,5,4,11) -hasLocation(#20164,#20165) -enclosing_stmt(#20164,#20159) -expr_containers(#20164,#20001) -expr_contains_template_tag_location(#20164,#20165) -#20166=* -exprs(#20166,120,#20160,1,"{{baz}}") -#20167=@"loc,{#10000},4,14,4,20" -locations_default(#20167,#10000,4,14,4,20) -hasLocation(#20166,#20167) -enclosing_stmt(#20166,#20159) -expr_containers(#20166,#20001) -expr_contains_template_tag_location(#20166,#20167) -#20168=* -stmts(#20168,1,#20001,4,"{{not_g ... _code}}") -#20169=@"loc,{#10000},6,1,6,22" -locations_default(#20169,#10000,6,1,6,22) -hasLocation(#20168,#20169) -stmt_containers(#20168,#20001) -#20170=* -stmts(#20170,1,#20168,0,"{not_generated_code}") -#20171=@"loc,{#10000},6,2,6,21" -locations_default(#20171,#10000,6,2,6,21) -hasLocation(#20170,#20171) -stmt_containers(#20170,#20001) -#20172=* -stmts(#20172,2,#20170,0,"not_generated_code") -hasLocation(#20172,#20079) -stmt_containers(#20172,#20001) +stmts(#20160,2,#20001,3,"foo({{b ... baz}});") +hasLocation(#20160,#20017) +stmt_containers(#20160,#20001) +#20161=* +exprs(#20161,13,#20160,0,"foo({{b ... {baz}})") +#20162=@"loc,{#10000},4,1,4,21" +locations_default(#20162,#10000,4,1,4,21) +hasLocation(#20161,#20162) +enclosing_stmt(#20161,#20160) +expr_containers(#20161,#20001) +#20163=* +exprs(#20163,79,#20161,-1,"foo") +hasLocation(#20163,#20061) +enclosing_stmt(#20163,#20160) +expr_containers(#20163,#20001) +literals("foo","foo",#20163) +#20164=@"var;{foo};{#20000}" +variables(#20164,"foo",#20000) +bind(#20163,#20164) +#20165=* +exprs(#20165,120,#20161,0,"{{bar}}") +#20166=@"loc,{#10000},4,5,4,11" +locations_default(#20166,#10000,4,5,4,11) +hasLocation(#20165,#20166) +enclosing_stmt(#20165,#20160) +expr_containers(#20165,#20001) +expr_contains_template_tag_location(#20165,#20166) +#20167=* +exprs(#20167,120,#20161,1,"{{baz}}") +#20168=@"loc,{#10000},4,14,4,20" +locations_default(#20168,#10000,4,14,4,20) +hasLocation(#20167,#20168) +enclosing_stmt(#20167,#20160) +expr_containers(#20167,#20001) +expr_contains_template_tag_location(#20167,#20168) +#20169=* +stmts(#20169,1,#20001,4,"{{not_g ... _code}}") +#20170=@"loc,{#10000},6,1,6,22" +locations_default(#20170,#10000,6,1,6,22) +hasLocation(#20169,#20170) +stmt_containers(#20169,#20001) +#20171=* +stmts(#20171,1,#20169,0,"{not_generated_code}") +#20172=@"loc,{#10000},6,2,6,21" +locations_default(#20172,#10000,6,2,6,21) +hasLocation(#20171,#20172) +stmt_containers(#20171,#20001) #20173=* -exprs(#20173,79,#20172,0,"not_generated_code") +stmts(#20173,2,#20171,0,"not_generated_code") hasLocation(#20173,#20079) -enclosing_stmt(#20173,#20172) -expr_containers(#20173,#20001) -literals("not_generated_code","not_generated_code",#20173) -#20174=@"var;{not_generated_code};{#20000}" -variables(#20174,"not_generated_code",#20000) -bind(#20173,#20174) -#20175=* -stmts(#20175,1,#20001,5,"{{ if ( ... { } }}") -#20176=@"loc,{#10000},7,1,7,33" -locations_default(#20176,#10000,7,1,7,33) -hasLocation(#20175,#20176) -stmt_containers(#20175,#20001) -#20177=* -stmts(#20177,1,#20175,0,"{ if (n ... ) { } }") -#20178=@"loc,{#10000},7,2,7,32" -locations_default(#20178,#10000,7,2,7,32) -hasLocation(#20177,#20178) -stmt_containers(#20177,#20001) -#20179=* -stmts(#20179,3,#20177,0,"if (not ... de) { }") -#20180=@"loc,{#10000},7,4,7,30" -locations_default(#20180,#10000,7,4,7,30) -hasLocation(#20179,#20180) -stmt_containers(#20179,#20001) -#20181=* -exprs(#20181,79,#20179,0,"not_generated_code") -hasLocation(#20181,#20093) -enclosing_stmt(#20181,#20179) -expr_containers(#20181,#20001) -literals("not_generated_code","not_generated_code",#20181) -bind(#20181,#20174) +stmt_containers(#20173,#20001) +#20174=* +exprs(#20174,79,#20173,0,"not_generated_code") +hasLocation(#20174,#20079) +enclosing_stmt(#20174,#20173) +expr_containers(#20174,#20001) +literals("not_generated_code","not_generated_code",#20174) +#20175=@"var;{not_generated_code};{#20000}" +variables(#20175,"not_generated_code",#20000) +bind(#20174,#20175) +#20176=* +stmts(#20176,1,#20001,5,"{{ if ( ... { } }}") +#20177=@"loc,{#10000},7,1,7,33" +locations_default(#20177,#10000,7,1,7,33) +hasLocation(#20176,#20177) +stmt_containers(#20176,#20001) +#20178=* +stmts(#20178,1,#20176,0,"{ if (n ... ) { } }") +#20179=@"loc,{#10000},7,2,7,32" +locations_default(#20179,#10000,7,2,7,32) +hasLocation(#20178,#20179) +stmt_containers(#20178,#20001) +#20180=* +stmts(#20180,3,#20178,0,"if (not ... de) { }") +#20181=@"loc,{#10000},7,4,7,30" +locations_default(#20181,#10000,7,4,7,30) +hasLocation(#20180,#20181) +stmt_containers(#20180,#20001) #20182=* -stmts(#20182,1,#20179,1,"{ }") -#20183=@"loc,{#10000},7,28,7,30" -locations_default(#20183,#10000,7,28,7,30) -hasLocation(#20182,#20183) -stmt_containers(#20182,#20001) -#20184=* -stmts(#20184,3,#20001,6,"if (1 = ... _code}}") -#20185=@"loc,{#10000},8,1,8,34" -locations_default(#20185,#10000,8,1,8,34) -hasLocation(#20184,#20185) -stmt_containers(#20184,#20001) -#20186=* -exprs(#20186,23,#20184,0,"1 == 2") -#20187=@"loc,{#10000},8,5,8,10" -locations_default(#20187,#10000,8,5,8,10) -hasLocation(#20186,#20187) -enclosing_stmt(#20186,#20184) -expr_containers(#20186,#20001) -#20188=* -exprs(#20188,3,#20186,0,"1") -hasLocation(#20188,#20109) -enclosing_stmt(#20188,#20184) -expr_containers(#20188,#20001) -literals("1","1",#20188) +exprs(#20182,79,#20180,0,"not_generated_code") +hasLocation(#20182,#20093) +enclosing_stmt(#20182,#20180) +expr_containers(#20182,#20001) +literals("not_generated_code","not_generated_code",#20182) +bind(#20182,#20175) +#20183=* +stmts(#20183,1,#20180,1,"{ }") +#20184=@"loc,{#10000},7,28,7,30" +locations_default(#20184,#10000,7,28,7,30) +hasLocation(#20183,#20184) +stmt_containers(#20183,#20001) +#20185=* +stmts(#20185,3,#20001,6,"if (1 = ... _code}}") +#20186=@"loc,{#10000},8,1,8,34" +locations_default(#20186,#10000,8,1,8,34) +hasLocation(#20185,#20186) +stmt_containers(#20185,#20001) +#20187=* +exprs(#20187,23,#20185,0,"1 == 2") +#20188=@"loc,{#10000},8,5,8,10" +locations_default(#20188,#10000,8,5,8,10) +hasLocation(#20187,#20188) +enclosing_stmt(#20187,#20185) +expr_containers(#20187,#20001) #20189=* -exprs(#20189,3,#20186,1,"2") -hasLocation(#20189,#20113) -enclosing_stmt(#20189,#20184) +exprs(#20189,3,#20187,0,"1") +hasLocation(#20189,#20109) +enclosing_stmt(#20189,#20185) expr_containers(#20189,#20001) -literals("2","2",#20189) +literals("1","1",#20189) #20190=* -stmts(#20190,1,#20184,1,"{{not_g ... _code}}") -#20191=@"loc,{#10000},8,13,8,34" -locations_default(#20191,#10000,8,13,8,34) -hasLocation(#20190,#20191) -stmt_containers(#20190,#20001) -#20192=* -stmts(#20192,1,#20190,0,"{not_generated_code}") -#20193=@"loc,{#10000},8,14,8,33" -locations_default(#20193,#10000,8,14,8,33) -hasLocation(#20192,#20193) -stmt_containers(#20192,#20001) -#20194=* -stmts(#20194,2,#20192,0,"not_generated_code") -hasLocation(#20194,#20121) -stmt_containers(#20194,#20001) +exprs(#20190,3,#20187,1,"2") +hasLocation(#20190,#20113) +enclosing_stmt(#20190,#20185) +expr_containers(#20190,#20001) +literals("2","2",#20190) +#20191=* +stmts(#20191,1,#20185,1,"{{not_g ... _code}}") +#20192=@"loc,{#10000},8,13,8,34" +locations_default(#20192,#10000,8,13,8,34) +hasLocation(#20191,#20192) +stmt_containers(#20191,#20001) +#20193=* +stmts(#20193,1,#20191,0,"{not_generated_code}") +#20194=@"loc,{#10000},8,14,8,33" +locations_default(#20194,#10000,8,14,8,33) +hasLocation(#20193,#20194) +stmt_containers(#20193,#20001) #20195=* -exprs(#20195,79,#20194,0,"not_generated_code") +stmts(#20195,2,#20193,0,"not_generated_code") hasLocation(#20195,#20121) -enclosing_stmt(#20195,#20194) -expr_containers(#20195,#20001) -literals("not_generated_code","not_generated_code",#20195) -bind(#20195,#20174) +stmt_containers(#20195,#20001) #20196=* -stmts(#20196,23,#20001,7,"let str ... de }}"";") -#20197=@"loc,{#10000},9,1,9,40" -locations_default(#20197,#10000,9,1,9,40) -hasLocation(#20196,#20197) -stmt_containers(#20196,#20001) -#20198=* -exprs(#20198,64,#20196,0,"string ... ode }}""") -#20199=@"loc,{#10000},9,5,9,39" -locations_default(#20199,#10000,9,5,9,39) -hasLocation(#20198,#20199) -enclosing_stmt(#20198,#20196) -expr_containers(#20198,#20001) -#20200=* -exprs(#20200,78,#20198,0,"string") -hasLocation(#20200,#20129) -enclosing_stmt(#20200,#20196) -expr_containers(#20200,#20001) -literals("string","string",#20200) -decl(#20200,#20141) +exprs(#20196,79,#20195,0,"not_generated_code") +hasLocation(#20196,#20121) +enclosing_stmt(#20196,#20195) +expr_containers(#20196,#20001) +literals("not_generated_code","not_generated_code",#20196) +bind(#20196,#20175) +#20197=* +stmts(#20197,23,#20001,7,"let str ... de }}"";") +#20198=@"loc,{#10000},9,1,9,40" +locations_default(#20198,#10000,9,1,9,40) +hasLocation(#20197,#20198) +stmt_containers(#20197,#20001) +#20199=* +exprs(#20199,64,#20197,0,"string ... ode }}""") +#20200=@"loc,{#10000},9,5,9,39" +locations_default(#20200,#10000,9,5,9,39) +hasLocation(#20199,#20200) +enclosing_stmt(#20199,#20197) +expr_containers(#20199,#20001) #20201=* -exprs(#20201,4,#20198,1,"""{{ not ... ode }}""") -hasLocation(#20201,#20133) -enclosing_stmt(#20201,#20196) +exprs(#20201,78,#20199,0,"string") +hasLocation(#20201,#20129) +enclosing_stmt(#20201,#20197) expr_containers(#20201,#20001) -literals("{{ not_generated_code }}","""{{ not_generated_code }}""",#20201) +literals("string","string",#20201) +decl(#20201,#20141) #20202=* -entry_cfg_node(#20202,#20001) -#20203=@"loc,{#10000},1,1,1,0" -locations_default(#20203,#10000,1,1,1,0) -hasLocation(#20202,#20203) -#20204=* -exit_cfg_node(#20204,#20001) -hasLocation(#20204,#20137) -successor(#20196,#20200) -successor(#20201,#20198) -successor(#20200,#20201) -successor(#20198,#20204) -successor(#20184,#20188) -successor(#20189,#20186) -successor(#20188,#20189) +exprs(#20202,4,#20199,1,"""{{ not ... ode }}""") +hasLocation(#20202,#20133) +enclosing_stmt(#20202,#20197) +expr_containers(#20202,#20001) +literals("{{ not_generated_code }}","""{{ not_generated_code }}""",#20202) +#20203=* +entry_cfg_node(#20203,#20001) +#20204=@"loc,{#10000},1,1,1,0" +locations_default(#20204,#10000,1,1,1,0) +hasLocation(#20203,#20204) #20205=* -guard_node(#20205,1,#20186) -hasLocation(#20205,#20187) -successor(#20205,#20190) +exit_cfg_node(#20205,#20001) +hasLocation(#20205,#20137) +successor(#20197,#20201) +successor(#20202,#20199) +successor(#20201,#20202) +successor(#20199,#20205) +successor(#20185,#20189) +successor(#20190,#20187) +successor(#20189,#20190) #20206=* -guard_node(#20206,0,#20186) -hasLocation(#20206,#20187) -successor(#20206,#20196) -successor(#20186,#20205) -successor(#20186,#20206) -successor(#20194,#20195) -successor(#20195,#20196) -successor(#20192,#20194) -successor(#20190,#20192) -successor(#20179,#20181) +guard_node(#20206,1,#20187) +hasLocation(#20206,#20188) +successor(#20206,#20191) #20207=* -guard_node(#20207,1,#20181) -hasLocation(#20207,#20093) -successor(#20207,#20182) +guard_node(#20207,0,#20187) +hasLocation(#20207,#20188) +successor(#20207,#20197) +successor(#20187,#20206) +successor(#20187,#20207) +successor(#20195,#20196) +successor(#20196,#20197) +successor(#20193,#20195) +successor(#20191,#20193) +successor(#20180,#20182) #20208=* -guard_node(#20208,0,#20181) +guard_node(#20208,1,#20182) hasLocation(#20208,#20093) -successor(#20208,#20184) -successor(#20181,#20207) -successor(#20181,#20208) -successor(#20182,#20184) -successor(#20177,#20179) -successor(#20175,#20177) -successor(#20172,#20173) -successor(#20173,#20175) -successor(#20170,#20172) -successor(#20168,#20170) -successor(#20159,#20162) -successor(#20166,#20160) -successor(#20164,#20166) -successor(#20162,#20164) -successor(#20160,#20168) -successor(#20154,#20155) +successor(#20208,#20183) #20209=* -guard_node(#20209,1,#20155) -hasLocation(#20209,#20156) -successor(#20209,#20157) +guard_node(#20209,0,#20182) +hasLocation(#20209,#20093) +successor(#20209,#20185) +successor(#20182,#20208) +successor(#20182,#20209) +successor(#20183,#20185) +successor(#20178,#20180) +successor(#20176,#20178) +successor(#20173,#20174) +successor(#20174,#20176) +successor(#20171,#20173) +successor(#20169,#20171) +successor(#20160,#20163) +successor(#20167,#20161) +successor(#20165,#20167) +successor(#20163,#20165) +successor(#20161,#20169) +successor(#20155,#20156) #20210=* -guard_node(#20210,0,#20155) -hasLocation(#20210,#20156) -successor(#20210,#20159) -successor(#20155,#20209) -successor(#20155,#20210) -successor(#20157,#20159) -successor(#20148,#20151) -successor(#20152,#20149) -successor(#20151,#20152) -successor(#20149,#20154) -successor(#20142,#20145) -successor(#20146,#20143) -successor(#20145,#20146) -successor(#20143,#20148) -successor(#20202,#20142) +guard_node(#20210,1,#20156) +hasLocation(#20210,#20157) +successor(#20210,#20158) +#20211=* +guard_node(#20211,0,#20156) +hasLocation(#20211,#20157) +successor(#20211,#20160) +successor(#20156,#20210) +successor(#20156,#20211) +successor(#20158,#20160) +successor(#20149,#20152) +successor(#20153,#20150) +successor(#20152,#20153) +successor(#20150,#20155) +successor(#20143,#20146) +successor(#20147,#20144) +successor(#20146,#20147) +successor(#20144,#20149) +successor(#20203,#20143) numlines(#10000,9,8,4) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/helloworld/output/trap/hello.js.trap b/javascript/extractor/tests/helloworld/output/trap/hello.js.trap index 610ae0392b46..d365e322b102 100644 --- a/javascript/extractor/tests/helloworld/output/trap/hello.js.trap +++ b/javascript/extractor/tests/helloworld/output/trap/hello.js.trap @@ -47,50 +47,52 @@ locations_default(#20015,#10000,1,24,1,23) hasLocation(#20014,#20015) toplevels(#20001,0) hasLocation(#20001,#20003) -#20016=* -stmts(#20016,2,#20001,0,"alert("" ... rld!"");") -hasLocation(#20016,#20003) -stmt_containers(#20016,#20001) +#20016=@"var;{this};{#20000}" +variables(#20016,"this",#20000) #20017=* -exprs(#20017,13,#20016,0,"alert("" ... orld!"")") -#20018=@"loc,{#10000},1,1,1,22" -locations_default(#20018,#10000,1,1,1,22) -hasLocation(#20017,#20018) -enclosing_stmt(#20017,#20016) -expr_containers(#20017,#20001) -#20019=* -exprs(#20019,79,#20017,-1,"alert") -hasLocation(#20019,#20005) -enclosing_stmt(#20019,#20016) -expr_containers(#20019,#20001) -literals("alert","alert",#20019) -#20020=@"var;{alert};{#20000}" -variables(#20020,"alert",#20000) -bind(#20019,#20020) -#20021=* -exprs(#20021,4,#20017,0,"""Hello, world!""") -hasLocation(#20021,#20009) -enclosing_stmt(#20021,#20016) -expr_containers(#20021,#20001) -literals("Hello, world!","""Hello, world!""",#20021) +stmts(#20017,2,#20001,0,"alert("" ... rld!"");") +hasLocation(#20017,#20003) +stmt_containers(#20017,#20001) +#20018=* +exprs(#20018,13,#20017,0,"alert("" ... orld!"")") +#20019=@"loc,{#10000},1,1,1,22" +locations_default(#20019,#10000,1,1,1,22) +hasLocation(#20018,#20019) +enclosing_stmt(#20018,#20017) +expr_containers(#20018,#20001) +#20020=* +exprs(#20020,79,#20018,-1,"alert") +hasLocation(#20020,#20005) +enclosing_stmt(#20020,#20017) +expr_containers(#20020,#20001) +literals("alert","alert",#20020) +#20021=@"var;{alert};{#20000}" +variables(#20021,"alert",#20000) +bind(#20020,#20021) #20022=* -regexpterm(#20022,14,#20021,0,"Hello, world!") -#20023=@"loc,{#10000},1,8,1,20" -locations_default(#20023,#10000,1,8,1,20) -hasLocation(#20022,#20023) -regexp_const_value(#20022,"Hello, world!") -#20024=* -entry_cfg_node(#20024,#20001) -#20025=@"loc,{#10000},1,1,1,0" -locations_default(#20025,#10000,1,1,1,0) -hasLocation(#20024,#20025) -#20026=* -exit_cfg_node(#20026,#20001) -hasLocation(#20026,#20015) -successor(#20016,#20019) -successor(#20021,#20017) -successor(#20019,#20021) -successor(#20017,#20026) -successor(#20024,#20016) +exprs(#20022,4,#20018,0,"""Hello, world!""") +hasLocation(#20022,#20009) +enclosing_stmt(#20022,#20017) +expr_containers(#20022,#20001) +literals("Hello, world!","""Hello, world!""",#20022) +#20023=* +regexpterm(#20023,14,#20022,0,"Hello, world!") +#20024=@"loc,{#10000},1,8,1,20" +locations_default(#20024,#10000,1,8,1,20) +hasLocation(#20023,#20024) +regexp_const_value(#20023,"Hello, world!") +#20025=* +entry_cfg_node(#20025,#20001) +#20026=@"loc,{#10000},1,1,1,0" +locations_default(#20026,#10000,1,1,1,0) +hasLocation(#20025,#20026) +#20027=* +exit_cfg_node(#20027,#20001) +hasLocation(#20027,#20015) +successor(#20017,#20020) +successor(#20022,#20018) +successor(#20020,#20022) +successor(#20018,#20027) +successor(#20025,#20017) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/html/output/trap/entities.html.trap b/javascript/extractor/tests/html/output/trap/entities.html.trap index 2b1ad9739201..794bf948df0e 100644 --- a/javascript/extractor/tests/html/output/trap/entities.html.trap +++ b/javascript/extractor/tests/html/output/trap/entities.html.trap @@ -58,94 +58,96 @@ locations_default(#20020,#10000,6,49,6,48) hasLocation(#20019,#20020) toplevels(#20002,3) hasLocation(#20002,#20004) -#20021=* -stmts(#20021,2,#20002,0,"void(alert(""Nope!""))") -hasLocation(#20021,#20004) -stmt_containers(#20021,#20002) +#20021=@"var;{this};{#20000}" +variables(#20021,"this",#20000) #20022=* -exprs(#20022,21,#20021,0,"void(alert(""Nope!""))") +stmts(#20022,2,#20002,0,"void(alert(""Nope!""))") hasLocation(#20022,#20004) -enclosing_stmt(#20022,#20021) -expr_containers(#20022,#20002) +stmt_containers(#20022,#20002) #20023=* -exprs(#20023,63,#20022,0,"(alert(""Nope!""))") -#20024=@"loc,{#10000},6,33,6,48" -locations_default(#20024,#10000,6,33,6,48) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20021) +exprs(#20023,21,#20022,0,"void(alert(""Nope!""))") +hasLocation(#20023,#20004) +enclosing_stmt(#20023,#20022) expr_containers(#20023,#20002) -#20025=* -exprs(#20025,13,#20023,0,"alert(""Nope!"")") -#20026=@"loc,{#10000},6,34,6,47" -locations_default(#20026,#10000,6,34,6,47) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20021) -expr_containers(#20025,#20002) -#20027=* -exprs(#20027,79,#20025,-1,"alert") -hasLocation(#20027,#20010) -enclosing_stmt(#20027,#20021) -expr_containers(#20027,#20002) -literals("alert","alert",#20027) -#20028=@"var;{alert};{#20000}" -variables(#20028,"alert",#20000) -bind(#20027,#20028) -#20029=* -exprs(#20029,4,#20025,0,"""Nope!""") -hasLocation(#20029,#20014) -enclosing_stmt(#20029,#20021) -expr_containers(#20029,#20002) -literals("Nope!","""Nope!""",#20029) +#20024=* +exprs(#20024,63,#20023,0,"(alert(""Nope!""))") +#20025=@"loc,{#10000},6,33,6,48" +locations_default(#20025,#10000,6,33,6,48) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20022) +expr_containers(#20024,#20002) +#20026=* +exprs(#20026,13,#20024,0,"alert(""Nope!"")") +#20027=@"loc,{#10000},6,34,6,47" +locations_default(#20027,#10000,6,34,6,47) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20022) +expr_containers(#20026,#20002) +#20028=* +exprs(#20028,79,#20026,-1,"alert") +hasLocation(#20028,#20010) +enclosing_stmt(#20028,#20022) +expr_containers(#20028,#20002) +literals("alert","alert",#20028) +#20029=@"var;{alert};{#20000}" +variables(#20029,"alert",#20000) +bind(#20028,#20029) #20030=* -regexpterm(#20030,14,#20029,0,"Nope!") -#20031=@"loc,{#10000},6,41,6,45" -locations_default(#20031,#10000,6,41,6,45) -hasLocation(#20030,#20031) -regexp_const_value(#20030,"Nope!") -#20032=* -entry_cfg_node(#20032,#20002) -#20033=@"loc,{#10000},6,29,6,28" -locations_default(#20033,#10000,6,29,6,28) -hasLocation(#20032,#20033) -#20034=* -exit_cfg_node(#20034,#20002) -hasLocation(#20034,#20020) -successor(#20021,#20023) -successor(#20023,#20027) -successor(#20029,#20025) -successor(#20027,#20029) -successor(#20025,#20022) -successor(#20022,#20034) -successor(#20032,#20021) -toplevel_parent_xml_node(#20002,#20001) +exprs(#20030,4,#20026,0,"""Nope!""") +hasLocation(#20030,#20014) +enclosing_stmt(#20030,#20022) +expr_containers(#20030,#20002) +literals("Nope!","""Nope!""",#20030) +#20031=* +regexpterm(#20031,14,#20030,0,"Nope!") +#20032=@"loc,{#10000},6,41,6,45" +locations_default(#20032,#10000,6,41,6,45) +hasLocation(#20031,#20032) +regexp_const_value(#20031,"Nope!") +#20033=* +entry_cfg_node(#20033,#20002) +#20034=@"loc,{#10000},6,29,6,28" +locations_default(#20034,#10000,6,29,6,28) +hasLocation(#20033,#20034) #20035=* -xmlElements(#20035,"html",#10000,0,#10000) -#20036=@"loc,{#10000},1,1,8,7" -locations_default(#20036,#10000,1,1,8,7) -xmllocations(#20035,#20036) -#20037=* -xmlElements(#20037,"body",#20035,1,#10000) -#20038=@"loc,{#10000},5,5,7,11" -locations_default(#20038,#10000,5,5,7,11) -xmllocations(#20037,#20038) -#20039=* -xmlElements(#20039,"a",#20037,0,#10000) -#20040=@"loc,{#10000},6,9,6,80" -locations_default(#20040,#10000,6,9,6,80) -xmllocations(#20039,#20040) -xmlAttrs(#20001,#20039,"href","javascript:void(alert(""Nope!""))",0,#10000) -#20041=@"loc,{#10000},6,12,6,65" -locations_default(#20041,#10000,6,12,6,65) -xmllocations(#20001,#20041) -#20042=* -xmlElements(#20042,"head",#20035,0,#10000) -#20043=@"loc,{#10000},2,5,4,11" -locations_default(#20043,#10000,2,5,4,11) -xmllocations(#20042,#20043) -#20044=* -xmlElements(#20044,"title",#20042,0,#10000) -#20045=@"loc,{#10000},3,9,3,32" -locations_default(#20045,#10000,3,9,3,32) -xmllocations(#20044,#20045) +exit_cfg_node(#20035,#20002) +hasLocation(#20035,#20020) +successor(#20022,#20024) +successor(#20024,#20028) +successor(#20030,#20026) +successor(#20028,#20030) +successor(#20026,#20023) +successor(#20023,#20035) +successor(#20033,#20022) +toplevel_parent_xml_node(#20002,#20001) +#20036=* +xmlElements(#20036,"html",#10000,0,#10000) +#20037=@"loc,{#10000},1,1,8,7" +locations_default(#20037,#10000,1,1,8,7) +xmllocations(#20036,#20037) +#20038=* +xmlElements(#20038,"body",#20036,1,#10000) +#20039=@"loc,{#10000},5,5,7,11" +locations_default(#20039,#10000,5,5,7,11) +xmllocations(#20038,#20039) +#20040=* +xmlElements(#20040,"a",#20038,0,#10000) +#20041=@"loc,{#10000},6,9,6,80" +locations_default(#20041,#10000,6,9,6,80) +xmllocations(#20040,#20041) +xmlAttrs(#20001,#20040,"href","javascript:void(alert(""Nope!""))",0,#10000) +#20042=@"loc,{#10000},6,12,6,65" +locations_default(#20042,#10000,6,12,6,65) +xmllocations(#20001,#20042) +#20043=* +xmlElements(#20043,"head",#20036,0,#10000) +#20044=@"loc,{#10000},2,5,4,11" +locations_default(#20044,#10000,2,5,4,11) +xmllocations(#20043,#20044) +#20045=* +xmlElements(#20045,"title",#20043,0,#10000) +#20046=@"loc,{#10000},3,9,3,32" +locations_default(#20046,#10000,3,9,3,32) +xmllocations(#20045,#20046) numlines(#10000,8,1,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/html/output/trap/module.html.trap b/javascript/extractor/tests/html/output/trap/module.html.trap index cb4a58744291..1e8a7ccc104c 100644 --- a/javascript/extractor/tests/html/output/trap/module.html.trap +++ b/javascript/extractor/tests/html/output/trap/module.html.trap @@ -115,114 +115,116 @@ local_namespace_names(#20039,"foo",#20036) variables(#20037,"foo",#20036) local_type_names(#20038,"foo",#20036) local_namespace_names(#20039,"foo",#20036) -#20040=* -stmts(#20040,27,#20002,0,"import ... 'bar';") -#20041=@"loc,{#10000},5,13,5,34" -locations_default(#20041,#10000,5,13,5,34) -hasLocation(#20040,#20041) -stmt_containers(#20040,#20002) -#20042=* -exprs(#20042,4,#20040,-1,"'bar'") -hasLocation(#20042,#20018) -enclosing_stmt(#20042,#20040) -expr_containers(#20042,#20002) -literals("bar","'bar'",#20042) +#20040=@"var;{this};{#20036}" +variables(#20040,"this",#20036) +#20041=* +stmts(#20041,27,#20002,0,"import ... 'bar';") +#20042=@"loc,{#10000},5,13,5,34" +locations_default(#20042,#10000,5,13,5,34) +hasLocation(#20041,#20042) +stmt_containers(#20041,#20002) #20043=* -regexpterm(#20043,14,#20042,0,"bar") -#20044=@"loc,{#10000},5,30,5,32" -locations_default(#20044,#10000,5,30,5,32) -hasLocation(#20043,#20044) -regexp_const_value(#20043,"bar") -#20045=* -exprs(#20045,84,#20040,0,"foo") -hasLocation(#20045,#20014) -enclosing_stmt(#20045,#20040) -expr_containers(#20045,#20002) +exprs(#20043,4,#20041,-1,"'bar'") +hasLocation(#20043,#20018) +enclosing_stmt(#20043,#20041) +expr_containers(#20043,#20002) +literals("bar","'bar'",#20043) +#20044=* +regexpterm(#20044,14,#20043,0,"bar") +#20045=@"loc,{#10000},5,30,5,32" +locations_default(#20045,#10000,5,30,5,32) +hasLocation(#20044,#20045) +regexp_const_value(#20044,"bar") #20046=* -exprs(#20046,78,#20045,1,"foo") +exprs(#20046,84,#20041,0,"foo") hasLocation(#20046,#20014) -enclosing_stmt(#20046,#20040) +enclosing_stmt(#20046,#20041) expr_containers(#20046,#20002) -literals("foo","foo",#20046) -decl(#20046,#20037) -typedecl(#20046,#20038) -namespacedecl(#20046,#20039) #20047=* -stmts(#20047,2,#20002,1,"foo.baz();") -#20048=@"loc,{#10000},6,13,6,22" -locations_default(#20048,#10000,6,13,6,22) -hasLocation(#20047,#20048) -stmt_containers(#20047,#20002) -#20049=* -exprs(#20049,13,#20047,0,"foo.baz()") -#20050=@"loc,{#10000},6,13,6,21" -locations_default(#20050,#10000,6,13,6,21) -hasLocation(#20049,#20050) -enclosing_stmt(#20049,#20047) -expr_containers(#20049,#20002) -#20051=* -exprs(#20051,14,#20049,-1,"foo.baz") -#20052=@"loc,{#10000},6,13,6,19" -locations_default(#20052,#10000,6,13,6,19) -hasLocation(#20051,#20052) -enclosing_stmt(#20051,#20047) -expr_containers(#20051,#20002) -#20053=* -exprs(#20053,79,#20051,0,"foo") -hasLocation(#20053,#20022) -enclosing_stmt(#20053,#20047) -expr_containers(#20053,#20002) -literals("foo","foo",#20053) -bind(#20053,#20037) +exprs(#20047,78,#20046,1,"foo") +hasLocation(#20047,#20014) +enclosing_stmt(#20047,#20041) +expr_containers(#20047,#20002) +literals("foo","foo",#20047) +decl(#20047,#20037) +typedecl(#20047,#20038) +namespacedecl(#20047,#20039) +#20048=* +stmts(#20048,2,#20002,1,"foo.baz();") +#20049=@"loc,{#10000},6,13,6,22" +locations_default(#20049,#10000,6,13,6,22) +hasLocation(#20048,#20049) +stmt_containers(#20048,#20002) +#20050=* +exprs(#20050,13,#20048,0,"foo.baz()") +#20051=@"loc,{#10000},6,13,6,21" +locations_default(#20051,#10000,6,13,6,21) +hasLocation(#20050,#20051) +enclosing_stmt(#20050,#20048) +expr_containers(#20050,#20002) +#20052=* +exprs(#20052,14,#20050,-1,"foo.baz") +#20053=@"loc,{#10000},6,13,6,19" +locations_default(#20053,#10000,6,13,6,19) +hasLocation(#20052,#20053) +enclosing_stmt(#20052,#20048) +expr_containers(#20052,#20002) #20054=* -exprs(#20054,0,#20051,1,"baz") -hasLocation(#20054,#20026) -enclosing_stmt(#20054,#20047) +exprs(#20054,79,#20052,0,"foo") +hasLocation(#20054,#20022) +enclosing_stmt(#20054,#20048) expr_containers(#20054,#20002) -literals("baz","baz",#20054) +literals("foo","foo",#20054) +bind(#20054,#20037) #20055=* -entry_cfg_node(#20055,#20002) -hasLocation(#20055,#20004) +exprs(#20055,0,#20052,1,"baz") +hasLocation(#20055,#20026) +enclosing_stmt(#20055,#20048) +expr_containers(#20055,#20002) +literals("baz","baz",#20055) #20056=* -exit_cfg_node(#20056,#20002) -hasLocation(#20056,#20034) -successor(#20047,#20053) -successor(#20054,#20051) -successor(#20053,#20054) -successor(#20051,#20049) -successor(#20049,#20056) -successor(#20040,#20047) -successor(#20045,#20040) -successor(#20055,#20045) -toplevel_parent_xml_node(#20002,#20001) +entry_cfg_node(#20056,#20002) +hasLocation(#20056,#20004) #20057=* -xmlElements(#20057,"html",#10000,0,#10000) -#20058=@"loc,{#10000},1,1,11,7" -locations_default(#20058,#10000,1,1,11,7) -xmllocations(#20057,#20058) -#20059=* -xmlElements(#20059,"body",#20057,1,#10000) -#20060=@"loc,{#10000},9,5,10,11" -locations_default(#20060,#10000,9,5,10,11) -xmllocations(#20059,#20060) -#20061=* -xmlElements(#20061,"head",#20057,0,#10000) -#20062=@"loc,{#10000},2,5,8,11" -locations_default(#20062,#10000,2,5,8,11) -xmllocations(#20061,#20062) -xmlElements(#20001,"script",#20061,1,#10000) -#20063=@"loc,{#10000},4,9,7,17" -locations_default(#20063,#10000,4,9,7,17) -xmllocations(#20001,#20063) -#20064=* -xmlAttrs(#20064,#20001,"type","module",0,#10000) -#20065=@"loc,{#10000},4,17,4,29" -locations_default(#20065,#10000,4,17,4,29) -xmllocations(#20064,#20065) -#20066=* -xmlElements(#20066,"title",#20061,0,#10000) -#20067=@"loc,{#10000},3,9,3,32" -locations_default(#20067,#10000,3,9,3,32) -xmllocations(#20066,#20067) +exit_cfg_node(#20057,#20002) +hasLocation(#20057,#20034) +successor(#20048,#20054) +successor(#20055,#20052) +successor(#20054,#20055) +successor(#20052,#20050) +successor(#20050,#20057) +successor(#20041,#20048) +successor(#20046,#20041) +successor(#20056,#20046) +toplevel_parent_xml_node(#20002,#20001) +#20058=* +xmlElements(#20058,"html",#10000,0,#10000) +#20059=@"loc,{#10000},1,1,11,7" +locations_default(#20059,#10000,1,1,11,7) +xmllocations(#20058,#20059) +#20060=* +xmlElements(#20060,"body",#20058,1,#10000) +#20061=@"loc,{#10000},9,5,10,11" +locations_default(#20061,#10000,9,5,10,11) +xmllocations(#20060,#20061) +#20062=* +xmlElements(#20062,"head",#20058,0,#10000) +#20063=@"loc,{#10000},2,5,8,11" +locations_default(#20063,#10000,2,5,8,11) +xmllocations(#20062,#20063) +xmlElements(#20001,"script",#20062,1,#10000) +#20064=@"loc,{#10000},4,9,7,17" +locations_default(#20064,#10000,4,9,7,17) +xmllocations(#20001,#20064) +#20065=* +xmlAttrs(#20065,#20001,"type","module",0,#10000) +#20066=@"loc,{#10000},4,17,4,29" +locations_default(#20066,#10000,4,17,4,29) +xmllocations(#20065,#20066) +#20067=* +xmlElements(#20067,"title",#20062,0,#10000) +#20068=@"loc,{#10000},3,9,3,32" +locations_default(#20068,#10000,3,9,3,32) +xmllocations(#20067,#20068) numlines(#10000,11,2,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/html/output/trap/tst.html.trap b/javascript/extractor/tests/html/output/trap/tst.html.trap index 369947fc766d..522b97260c97 100644 --- a/javascript/extractor/tests/html/output/trap/tst.html.trap +++ b/javascript/extractor/tests/html/output/trap/tst.html.trap @@ -63,522 +63,532 @@ toplevels(#20002,1) #20021=@"loc,{#10000},5,17,7,8" locations_default(#20021,#10000,5,17,7,8) hasLocation(#20002,#20021) -#20022=* -stmts(#20022,2,#20002,0,"alert("" ... rld!"");") -#20023=@"loc,{#10000},6,13,6,35" -locations_default(#20023,#10000,6,13,6,35) -hasLocation(#20022,#20023) -stmt_containers(#20022,#20002) -#20024=* -exprs(#20024,13,#20022,0,"alert("" ... orld!"")") -#20025=@"loc,{#10000},6,13,6,34" -locations_default(#20025,#10000,6,13,6,34) -hasLocation(#20024,#20025) -enclosing_stmt(#20024,#20022) -expr_containers(#20024,#20002) -#20026=* -exprs(#20026,79,#20024,-1,"alert") -hasLocation(#20026,#20010) -enclosing_stmt(#20026,#20022) -expr_containers(#20026,#20002) -literals("alert","alert",#20026) -#20027=@"var;{alert};{#20000}" -variables(#20027,"alert",#20000) -bind(#20026,#20027) -#20028=* -exprs(#20028,4,#20024,0,"""Hello, world!""") -hasLocation(#20028,#20014) -enclosing_stmt(#20028,#20022) -expr_containers(#20028,#20002) -literals("Hello, world!","""Hello, world!""",#20028) +#20022=@"var;{this};{#20000}" +variables(#20022,"this",#20000) +#20023=* +stmts(#20023,2,#20002,0,"alert("" ... rld!"");") +#20024=@"loc,{#10000},6,13,6,35" +locations_default(#20024,#10000,6,13,6,35) +hasLocation(#20023,#20024) +stmt_containers(#20023,#20002) +#20025=* +exprs(#20025,13,#20023,0,"alert("" ... orld!"")") +#20026=@"loc,{#10000},6,13,6,34" +locations_default(#20026,#10000,6,13,6,34) +hasLocation(#20025,#20026) +enclosing_stmt(#20025,#20023) +expr_containers(#20025,#20002) +#20027=* +exprs(#20027,79,#20025,-1,"alert") +hasLocation(#20027,#20010) +enclosing_stmt(#20027,#20023) +expr_containers(#20027,#20002) +literals("alert","alert",#20027) +#20028=@"var;{alert};{#20000}" +variables(#20028,"alert",#20000) +bind(#20027,#20028) #20029=* -regexpterm(#20029,14,#20028,0,"Hello, world!") -#20030=@"loc,{#10000},6,20,6,32" -locations_default(#20030,#10000,6,20,6,32) -hasLocation(#20029,#20030) -regexp_const_value(#20029,"Hello, world!") -#20031=* -entry_cfg_node(#20031,#20002) -hasLocation(#20031,#20004) +exprs(#20029,4,#20025,0,"""Hello, world!""") +hasLocation(#20029,#20014) +enclosing_stmt(#20029,#20023) +expr_containers(#20029,#20002) +literals("Hello, world!","""Hello, world!""",#20029) +#20030=* +regexpterm(#20030,14,#20029,0,"Hello, world!") +#20031=@"loc,{#10000},6,20,6,32" +locations_default(#20031,#10000,6,20,6,32) +hasLocation(#20030,#20031) +regexp_const_value(#20030,"Hello, world!") #20032=* -exit_cfg_node(#20032,#20002) -hasLocation(#20032,#20020) -successor(#20022,#20026) -successor(#20028,#20024) -successor(#20026,#20028) -successor(#20024,#20032) -successor(#20031,#20022) -toplevel_parent_xml_node(#20002,#20001) +entry_cfg_node(#20032,#20002) +hasLocation(#20032,#20004) #20033=* -#20034=@"script;{#10000},8,17" -#20035=* -lines(#20035,#20034,";","") -#20036=@"loc,{#10000},8,17,8,17" -locations_default(#20036,#10000,8,17,8,17) -hasLocation(#20035,#20036) -numlines(#20034,1,1,0) -#20037=* -tokeninfo(#20037,8,#20034,0,";") -hasLocation(#20037,#20036) +exit_cfg_node(#20033,#20002) +hasLocation(#20033,#20020) +successor(#20023,#20027) +successor(#20029,#20025) +successor(#20027,#20029) +successor(#20025,#20033) +successor(#20032,#20023) +toplevel_parent_xml_node(#20002,#20001) +#20034=* +#20035=@"script;{#10000},8,17" +#20036=* +lines(#20036,#20035,";","") +#20037=@"loc,{#10000},8,17,8,17" +locations_default(#20037,#10000,8,17,8,17) +hasLocation(#20036,#20037) +numlines(#20035,1,1,0) #20038=* -tokeninfo(#20038,0,#20034,1,"") -#20039=@"loc,{#10000},8,18,8,17" -locations_default(#20039,#10000,8,18,8,17) -hasLocation(#20038,#20039) -toplevels(#20034,1) -hasLocation(#20034,#20036) -#20040=* -stmts(#20040,0,#20034,0,";") -hasLocation(#20040,#20036) -stmt_containers(#20040,#20034) +tokeninfo(#20038,8,#20035,0,";") +hasLocation(#20038,#20037) +#20039=* +tokeninfo(#20039,0,#20035,1,"") +#20040=@"loc,{#10000},8,18,8,17" +locations_default(#20040,#10000,8,18,8,17) +hasLocation(#20039,#20040) +toplevels(#20035,1) +hasLocation(#20035,#20037) +variables(#20022,"this",#20000) #20041=* -entry_cfg_node(#20041,#20034) -#20042=@"loc,{#10000},8,17,8,16" -locations_default(#20042,#10000,8,17,8,16) -hasLocation(#20041,#20042) -#20043=* -exit_cfg_node(#20043,#20034) -hasLocation(#20043,#20039) -successor(#20040,#20043) -successor(#20041,#20040) -toplevel_parent_xml_node(#20034,#20033) +stmts(#20041,0,#20035,0,";") +hasLocation(#20041,#20037) +stmt_containers(#20041,#20035) +#20042=* +entry_cfg_node(#20042,#20035) +#20043=@"loc,{#10000},8,17,8,16" +locations_default(#20043,#10000,8,17,8,16) +hasLocation(#20042,#20043) #20044=* -#20045=@"script;{#10000},11,29" -#20046=* -lines(#20046,#20045,"void(alert('Nope!'))","") -#20047=@"loc,{#10000},11,29,11,48" -locations_default(#20047,#10000,11,29,11,48) -hasLocation(#20046,#20047) -numlines(#20045,1,1,0) -#20048=* -tokeninfo(#20048,7,#20045,0,"void") -#20049=@"loc,{#10000},11,29,11,32" -locations_default(#20049,#10000,11,29,11,32) -hasLocation(#20048,#20049) -#20050=* -tokeninfo(#20050,8,#20045,1,"(") -#20051=@"loc,{#10000},11,33,11,33" -locations_default(#20051,#10000,11,33,11,33) -hasLocation(#20050,#20051) -#20052=* -tokeninfo(#20052,6,#20045,2,"alert") -#20053=@"loc,{#10000},11,34,11,38" -locations_default(#20053,#10000,11,34,11,38) -hasLocation(#20052,#20053) -#20054=* -tokeninfo(#20054,8,#20045,3,"(") -#20055=@"loc,{#10000},11,39,11,39" -locations_default(#20055,#10000,11,39,11,39) -hasLocation(#20054,#20055) -#20056=* -tokeninfo(#20056,4,#20045,4,"'Nope!'") -#20057=@"loc,{#10000},11,40,11,46" -locations_default(#20057,#10000,11,40,11,46) -hasLocation(#20056,#20057) -#20058=* -tokeninfo(#20058,8,#20045,5,")") -#20059=@"loc,{#10000},11,47,11,47" -locations_default(#20059,#10000,11,47,11,47) -hasLocation(#20058,#20059) -#20060=* -tokeninfo(#20060,8,#20045,6,")") -#20061=@"loc,{#10000},11,48,11,48" -locations_default(#20061,#10000,11,48,11,48) -hasLocation(#20060,#20061) -#20062=* -tokeninfo(#20062,0,#20045,7,"") -#20063=@"loc,{#10000},11,49,11,48" -locations_default(#20063,#10000,11,49,11,48) -hasLocation(#20062,#20063) -toplevels(#20045,3) -hasLocation(#20045,#20047) -#20064=* -stmts(#20064,2,#20045,0,"void(alert('Nope!'))") -hasLocation(#20064,#20047) -stmt_containers(#20064,#20045) +exit_cfg_node(#20044,#20035) +hasLocation(#20044,#20040) +successor(#20041,#20044) +successor(#20042,#20041) +toplevel_parent_xml_node(#20035,#20034) +#20045=* +#20046=@"script;{#10000},11,29" +#20047=* +lines(#20047,#20046,"void(alert('Nope!'))","") +#20048=@"loc,{#10000},11,29,11,48" +locations_default(#20048,#10000,11,29,11,48) +hasLocation(#20047,#20048) +numlines(#20046,1,1,0) +#20049=* +tokeninfo(#20049,7,#20046,0,"void") +#20050=@"loc,{#10000},11,29,11,32" +locations_default(#20050,#10000,11,29,11,32) +hasLocation(#20049,#20050) +#20051=* +tokeninfo(#20051,8,#20046,1,"(") +#20052=@"loc,{#10000},11,33,11,33" +locations_default(#20052,#10000,11,33,11,33) +hasLocation(#20051,#20052) +#20053=* +tokeninfo(#20053,6,#20046,2,"alert") +#20054=@"loc,{#10000},11,34,11,38" +locations_default(#20054,#10000,11,34,11,38) +hasLocation(#20053,#20054) +#20055=* +tokeninfo(#20055,8,#20046,3,"(") +#20056=@"loc,{#10000},11,39,11,39" +locations_default(#20056,#10000,11,39,11,39) +hasLocation(#20055,#20056) +#20057=* +tokeninfo(#20057,4,#20046,4,"'Nope!'") +#20058=@"loc,{#10000},11,40,11,46" +locations_default(#20058,#10000,11,40,11,46) +hasLocation(#20057,#20058) +#20059=* +tokeninfo(#20059,8,#20046,5,")") +#20060=@"loc,{#10000},11,47,11,47" +locations_default(#20060,#10000,11,47,11,47) +hasLocation(#20059,#20060) +#20061=* +tokeninfo(#20061,8,#20046,6,")") +#20062=@"loc,{#10000},11,48,11,48" +locations_default(#20062,#10000,11,48,11,48) +hasLocation(#20061,#20062) +#20063=* +tokeninfo(#20063,0,#20046,7,"") +#20064=@"loc,{#10000},11,49,11,48" +locations_default(#20064,#10000,11,49,11,48) +hasLocation(#20063,#20064) +toplevels(#20046,3) +hasLocation(#20046,#20048) +variables(#20022,"this",#20000) #20065=* -exprs(#20065,21,#20064,0,"void(alert('Nope!'))") -hasLocation(#20065,#20047) -enclosing_stmt(#20065,#20064) -expr_containers(#20065,#20045) +stmts(#20065,2,#20046,0,"void(alert('Nope!'))") +hasLocation(#20065,#20048) +stmt_containers(#20065,#20046) #20066=* -exprs(#20066,63,#20065,0,"(alert('Nope!'))") -#20067=@"loc,{#10000},11,33,11,48" -locations_default(#20067,#10000,11,33,11,48) -hasLocation(#20066,#20067) -enclosing_stmt(#20066,#20064) -expr_containers(#20066,#20045) -#20068=* -exprs(#20068,13,#20066,0,"alert('Nope!')") -#20069=@"loc,{#10000},11,34,11,47" -locations_default(#20069,#10000,11,34,11,47) -hasLocation(#20068,#20069) -enclosing_stmt(#20068,#20064) -expr_containers(#20068,#20045) -#20070=* -exprs(#20070,79,#20068,-1,"alert") -hasLocation(#20070,#20053) -enclosing_stmt(#20070,#20064) -expr_containers(#20070,#20045) -literals("alert","alert",#20070) -bind(#20070,#20027) +exprs(#20066,21,#20065,0,"void(alert('Nope!'))") +hasLocation(#20066,#20048) +enclosing_stmt(#20066,#20065) +expr_containers(#20066,#20046) +#20067=* +exprs(#20067,63,#20066,0,"(alert('Nope!'))") +#20068=@"loc,{#10000},11,33,11,48" +locations_default(#20068,#10000,11,33,11,48) +hasLocation(#20067,#20068) +enclosing_stmt(#20067,#20065) +expr_containers(#20067,#20046) +#20069=* +exprs(#20069,13,#20067,0,"alert('Nope!')") +#20070=@"loc,{#10000},11,34,11,47" +locations_default(#20070,#10000,11,34,11,47) +hasLocation(#20069,#20070) +enclosing_stmt(#20069,#20065) +expr_containers(#20069,#20046) #20071=* -exprs(#20071,4,#20068,0,"'Nope!'") -hasLocation(#20071,#20057) -enclosing_stmt(#20071,#20064) -expr_containers(#20071,#20045) -literals("Nope!","'Nope!'",#20071) +exprs(#20071,79,#20069,-1,"alert") +hasLocation(#20071,#20054) +enclosing_stmt(#20071,#20065) +expr_containers(#20071,#20046) +literals("alert","alert",#20071) +bind(#20071,#20028) #20072=* -regexpterm(#20072,14,#20071,0,"Nope!") -#20073=@"loc,{#10000},11,41,11,45" -locations_default(#20073,#10000,11,41,11,45) -hasLocation(#20072,#20073) -regexp_const_value(#20072,"Nope!") -#20074=* -entry_cfg_node(#20074,#20045) -#20075=@"loc,{#10000},11,29,11,28" -locations_default(#20075,#10000,11,29,11,28) -hasLocation(#20074,#20075) -#20076=* -exit_cfg_node(#20076,#20045) -hasLocation(#20076,#20063) -successor(#20064,#20066) -successor(#20066,#20070) -successor(#20071,#20068) -successor(#20070,#20071) -successor(#20068,#20065) -successor(#20065,#20076) -successor(#20074,#20064) -toplevel_parent_xml_node(#20045,#20044) +exprs(#20072,4,#20069,0,"'Nope!'") +hasLocation(#20072,#20058) +enclosing_stmt(#20072,#20065) +expr_containers(#20072,#20046) +literals("Nope!","'Nope!'",#20072) +#20073=* +regexpterm(#20073,14,#20072,0,"Nope!") +#20074=@"loc,{#10000},11,41,11,45" +locations_default(#20074,#10000,11,41,11,45) +hasLocation(#20073,#20074) +regexp_const_value(#20073,"Nope!") +#20075=* +entry_cfg_node(#20075,#20046) +#20076=@"loc,{#10000},11,29,11,28" +locations_default(#20076,#10000,11,29,11,28) +hasLocation(#20075,#20076) #20077=* -#20078=@"script;{#10000},12,23" -#20079=* -lines(#20079,#20078,"alert('I said don\'t click!')","") -#20080=@"loc,{#10000},12,23,12,51" -locations_default(#20080,#10000,12,23,12,51) -hasLocation(#20079,#20080) -numlines(#20078,1,1,0) -#20081=* -tokeninfo(#20081,6,#20078,0,"alert") -#20082=@"loc,{#10000},12,23,12,27" -locations_default(#20082,#10000,12,23,12,27) -hasLocation(#20081,#20082) -#20083=* -tokeninfo(#20083,8,#20078,1,"(") -#20084=@"loc,{#10000},12,28,12,28" -locations_default(#20084,#10000,12,28,12,28) -hasLocation(#20083,#20084) -#20085=* -tokeninfo(#20085,4,#20078,2,"'I said don\'t click!'") -#20086=@"loc,{#10000},12,29,12,50" -locations_default(#20086,#10000,12,29,12,50) -hasLocation(#20085,#20086) -#20087=* -tokeninfo(#20087,8,#20078,3,")") -#20088=@"loc,{#10000},12,51,12,51" -locations_default(#20088,#10000,12,51,12,51) -hasLocation(#20087,#20088) -#20089=* -tokeninfo(#20089,0,#20078,4,"") -#20090=@"loc,{#10000},12,52,12,51" -locations_default(#20090,#10000,12,52,12,51) -hasLocation(#20089,#20090) -toplevels(#20078,2) -hasLocation(#20078,#20080) -#20091=* -stmts(#20091,2,#20078,0,"alert(' ... lick!')") -hasLocation(#20091,#20080) -stmt_containers(#20091,#20078) +exit_cfg_node(#20077,#20046) +hasLocation(#20077,#20064) +successor(#20065,#20067) +successor(#20067,#20071) +successor(#20072,#20069) +successor(#20071,#20072) +successor(#20069,#20066) +successor(#20066,#20077) +successor(#20075,#20065) +toplevel_parent_xml_node(#20046,#20045) +#20078=* +#20079=@"script;{#10000},12,23" +#20080=* +lines(#20080,#20079,"alert('I said don\'t click!')","") +#20081=@"loc,{#10000},12,23,12,51" +locations_default(#20081,#10000,12,23,12,51) +hasLocation(#20080,#20081) +numlines(#20079,1,1,0) +#20082=* +tokeninfo(#20082,6,#20079,0,"alert") +#20083=@"loc,{#10000},12,23,12,27" +locations_default(#20083,#10000,12,23,12,27) +hasLocation(#20082,#20083) +#20084=* +tokeninfo(#20084,8,#20079,1,"(") +#20085=@"loc,{#10000},12,28,12,28" +locations_default(#20085,#10000,12,28,12,28) +hasLocation(#20084,#20085) +#20086=* +tokeninfo(#20086,4,#20079,2,"'I said don\'t click!'") +#20087=@"loc,{#10000},12,29,12,50" +locations_default(#20087,#10000,12,29,12,50) +hasLocation(#20086,#20087) +#20088=* +tokeninfo(#20088,8,#20079,3,")") +#20089=@"loc,{#10000},12,51,12,51" +locations_default(#20089,#10000,12,51,12,51) +hasLocation(#20088,#20089) +#20090=* +tokeninfo(#20090,0,#20079,4,"") +#20091=@"loc,{#10000},12,52,12,51" +locations_default(#20091,#10000,12,52,12,51) +hasLocation(#20090,#20091) +toplevels(#20079,2) +hasLocation(#20079,#20081) +variables(#20022,"this",#20000) #20092=* -exprs(#20092,13,#20091,0,"alert(' ... lick!')") -hasLocation(#20092,#20080) -enclosing_stmt(#20092,#20091) -expr_containers(#20092,#20078) +stmts(#20092,2,#20079,0,"alert(' ... lick!')") +hasLocation(#20092,#20081) +stmt_containers(#20092,#20079) #20093=* -exprs(#20093,79,#20092,-1,"alert") -hasLocation(#20093,#20082) -enclosing_stmt(#20093,#20091) -expr_containers(#20093,#20078) -literals("alert","alert",#20093) -bind(#20093,#20027) +exprs(#20093,13,#20092,0,"alert(' ... lick!')") +hasLocation(#20093,#20081) +enclosing_stmt(#20093,#20092) +expr_containers(#20093,#20079) #20094=* -exprs(#20094,4,#20092,0,"'I said ... click!'") -hasLocation(#20094,#20086) -enclosing_stmt(#20094,#20091) -expr_containers(#20094,#20078) -literals("I said don't click!","'I said don\'t click!'",#20094) +exprs(#20094,79,#20093,-1,"alert") +hasLocation(#20094,#20083) +enclosing_stmt(#20094,#20092) +expr_containers(#20094,#20079) +literals("alert","alert",#20094) +bind(#20094,#20028) #20095=* -regexpterm(#20095,14,#20094,0,"I said don't click!") -#20096=@"loc,{#10000},12,30,12,49" -locations_default(#20096,#10000,12,30,12,49) -hasLocation(#20095,#20096) -regexp_const_value(#20095,"I said don't click!") -#20097=* -entry_cfg_node(#20097,#20078) -#20098=@"loc,{#10000},12,23,12,22" -locations_default(#20098,#10000,12,23,12,22) -hasLocation(#20097,#20098) -#20099=* -exit_cfg_node(#20099,#20078) -hasLocation(#20099,#20090) -successor(#20091,#20093) -successor(#20094,#20092) -successor(#20093,#20094) -successor(#20092,#20099) -successor(#20097,#20091) -toplevel_parent_xml_node(#20078,#20077) +exprs(#20095,4,#20093,0,"'I said ... click!'") +hasLocation(#20095,#20087) +enclosing_stmt(#20095,#20092) +expr_containers(#20095,#20079) +literals("I said don't click!","'I said don\'t click!'",#20095) +#20096=* +regexpterm(#20096,14,#20095,0,"I said don't click!") +#20097=@"loc,{#10000},12,30,12,49" +locations_default(#20097,#10000,12,30,12,49) +hasLocation(#20096,#20097) +regexp_const_value(#20096,"I said don't click!") +#20098=* +entry_cfg_node(#20098,#20079) +#20099=@"loc,{#10000},12,23,12,22" +locations_default(#20099,#10000,12,23,12,22) +hasLocation(#20098,#20099) #20100=* -#20101=@"script;{#10000},13,21" -#20102=* -lines(#20102,#20101,"return false;","") -#20103=@"loc,{#10000},13,21,13,33" -locations_default(#20103,#10000,13,21,13,33) -hasLocation(#20102,#20103) -numlines(#20101,1,1,0) -#20104=* -tokeninfo(#20104,7,#20101,0,"return") -#20105=@"loc,{#10000},13,21,13,26" -locations_default(#20105,#10000,13,21,13,26) -hasLocation(#20104,#20105) -#20106=* -tokeninfo(#20106,2,#20101,1,"false") -#20107=@"loc,{#10000},13,28,13,32" -locations_default(#20107,#10000,13,28,13,32) -hasLocation(#20106,#20107) -#20108=* -tokeninfo(#20108,8,#20101,2,";") -#20109=@"loc,{#10000},13,33,13,33" -locations_default(#20109,#10000,13,33,13,33) -hasLocation(#20108,#20109) -#20110=* -tokeninfo(#20110,0,#20101,3,"") -#20111=@"loc,{#10000},13,34,13,33" -locations_default(#20111,#10000,13,34,13,33) -hasLocation(#20110,#20111) -toplevels(#20101,2) -hasLocation(#20101,#20103) -#20112=* -stmts(#20112,9,#20101,0,"return false;") -hasLocation(#20112,#20103) -stmt_containers(#20112,#20101) +exit_cfg_node(#20100,#20079) +hasLocation(#20100,#20091) +successor(#20092,#20094) +successor(#20095,#20093) +successor(#20094,#20095) +successor(#20093,#20100) +successor(#20098,#20092) +toplevel_parent_xml_node(#20079,#20078) +#20101=* +#20102=@"script;{#10000},13,21" +#20103=* +lines(#20103,#20102,"return false;","") +#20104=@"loc,{#10000},13,21,13,33" +locations_default(#20104,#10000,13,21,13,33) +hasLocation(#20103,#20104) +numlines(#20102,1,1,0) +#20105=* +tokeninfo(#20105,7,#20102,0,"return") +#20106=@"loc,{#10000},13,21,13,26" +locations_default(#20106,#10000,13,21,13,26) +hasLocation(#20105,#20106) +#20107=* +tokeninfo(#20107,2,#20102,1,"false") +#20108=@"loc,{#10000},13,28,13,32" +locations_default(#20108,#10000,13,28,13,32) +hasLocation(#20107,#20108) +#20109=* +tokeninfo(#20109,8,#20102,2,";") +#20110=@"loc,{#10000},13,33,13,33" +locations_default(#20110,#10000,13,33,13,33) +hasLocation(#20109,#20110) +#20111=* +tokeninfo(#20111,0,#20102,3,"") +#20112=@"loc,{#10000},13,34,13,33" +locations_default(#20112,#10000,13,34,13,33) +hasLocation(#20111,#20112) +toplevels(#20102,2) +hasLocation(#20102,#20104) +variables(#20022,"this",#20000) #20113=* -exprs(#20113,2,#20112,0,"false") -hasLocation(#20113,#20107) -enclosing_stmt(#20113,#20112) -expr_containers(#20113,#20101) -literals("false","false",#20113) +stmts(#20113,9,#20102,0,"return false;") +hasLocation(#20113,#20104) +stmt_containers(#20113,#20102) #20114=* -entry_cfg_node(#20114,#20101) -#20115=@"loc,{#10000},13,21,13,20" -locations_default(#20115,#10000,13,21,13,20) -hasLocation(#20114,#20115) -#20116=* -exit_cfg_node(#20116,#20101) -hasLocation(#20116,#20111) -successor(#20113,#20112) -successor(#20112,#20116) -successor(#20114,#20113) -toplevel_parent_xml_node(#20101,#20100) +exprs(#20114,2,#20113,0,"false") +hasLocation(#20114,#20108) +enclosing_stmt(#20114,#20113) +expr_containers(#20114,#20102) +literals("false","false",#20114) +#20115=* +entry_cfg_node(#20115,#20102) +#20116=@"loc,{#10000},13,21,13,20" +locations_default(#20116,#10000,13,21,13,20) +hasLocation(#20115,#20116) #20117=* -xmlElements(#20117,"html",#10000,0,#10000) -#20118=@"loc,{#10000},1,1,18,7" -locations_default(#20118,#10000,1,1,18,7) -xmllocations(#20117,#20118) -#20119=* -xmlElements(#20119,"script",#20117,4,#10000) -#20120=@"loc,{#10000},17,5,17,29" -locations_default(#20120,#10000,17,5,17,29) -xmllocations(#20119,#20120) -#20121=* -xmlAttrs(#20121,#20119,"type","",0,#10000) -#20122=@"loc,{#10000},17,13,17,19" -locations_default(#20122,#10000,17,13,17,19) -xmllocations(#20121,#20122) -#20123=* -xmlElements(#20123,"script",#20117,3,#10000) -#20124=@"loc,{#10000},16,5,16,71" -locations_default(#20124,#10000,16,5,16,71) -xmllocations(#20123,#20124) -#20125=* -xmlAttrs(#20125,#20123,"TYPE","text/x-handlebars-template",0,#10000) -#20126=@"loc,{#10000},16,13,16,45" -locations_default(#20126,#10000,16,13,16,45) -xmllocations(#20125,#20126) -#20127=* -template_placeholder_tag_info(#20127,#20123,"{{name}}") -#20128=@"loc,{#10000},16,54,16,61" -locations_default(#20128,#10000,16,54,16,61) -hasLocation(#20127,#20128) +exit_cfg_node(#20117,#20102) +hasLocation(#20117,#20112) +successor(#20114,#20113) +successor(#20113,#20117) +successor(#20115,#20114) +toplevel_parent_xml_node(#20102,#20101) +#20118=* +xmlElements(#20118,"html",#10000,0,#10000) +#20119=@"loc,{#10000},1,1,18,7" +locations_default(#20119,#10000,1,1,18,7) +xmllocations(#20118,#20119) +#20120=* +xmlElements(#20120,"script",#20118,4,#10000) +#20121=@"loc,{#10000},17,5,17,29" +locations_default(#20121,#10000,17,5,17,29) +xmllocations(#20120,#20121) +#20122=* +xmlAttrs(#20122,#20120,"type","",0,#10000) +#20123=@"loc,{#10000},17,13,17,19" +locations_default(#20123,#10000,17,13,17,19) +xmllocations(#20122,#20123) +#20124=* +xmlElements(#20124,"script",#20118,3,#10000) +#20125=@"loc,{#10000},16,5,16,71" +locations_default(#20125,#10000,16,5,16,71) +xmllocations(#20124,#20125) +#20126=* +xmlAttrs(#20126,#20124,"TYPE","text/x-handlebars-template",0,#10000) +#20127=@"loc,{#10000},16,13,16,45" +locations_default(#20127,#10000,16,13,16,45) +xmllocations(#20126,#20127) +#20128=* +template_placeholder_tag_info(#20128,#20124,"{{name}}") +#20129=@"loc,{#10000},16,54,16,61" +locations_default(#20129,#10000,16,54,16,61) +hasLocation(#20128,#20129) scopes(#20000,0) -#20129=@"script;{#10000},16,56" -#20130=* -lines(#20130,#20129,"name","") -#20131=@"loc,{#10000},16,56,16,59" -locations_default(#20131,#10000,16,56,16,59) -hasLocation(#20130,#20131) -numlines(#20129,1,1,0) -#20132=* -tokeninfo(#20132,6,#20129,0,"name") -hasLocation(#20132,#20131) +#20130=@"script;{#10000},16,56" +#20131=* +lines(#20131,#20130,"name","") +#20132=@"loc,{#10000},16,56,16,59" +locations_default(#20132,#10000,16,56,16,59) +hasLocation(#20131,#20132) +numlines(#20130,1,1,0) #20133=* -tokeninfo(#20133,0,#20129,1,"") -#20134=@"loc,{#10000},16,60,16,59" -locations_default(#20134,#10000,16,60,16,59) -hasLocation(#20133,#20134) -toplevels(#20129,4) -hasLocation(#20129,#20131) -#20135=@"module;{#10000},16,56" -scopes(#20135,3) -scopenodes(#20129,#20135) -scopenesting(#20135,#20000) -is_module(#20129) -#20136=* -stmts(#20136,2,#20129,0,"name") -hasLocation(#20136,#20131) -stmt_containers(#20136,#20129) -#20137=* -exprs(#20137,79,#20136,0,"name") -hasLocation(#20137,#20131) -enclosing_stmt(#20137,#20136) -expr_containers(#20137,#20129) -literals("name","name",#20137) -#20138=@"var;{name};{#20135}" -variables(#20138,"name",#20135) -bind(#20137,#20138) +tokeninfo(#20133,6,#20130,0,"name") +hasLocation(#20133,#20132) +#20134=* +tokeninfo(#20134,0,#20130,1,"") +#20135=@"loc,{#10000},16,60,16,59" +locations_default(#20135,#10000,16,60,16,59) +hasLocation(#20134,#20135) +toplevels(#20130,4) +hasLocation(#20130,#20132) +#20136=@"module;{#10000},16,56" +scopes(#20136,3) +scopenodes(#20130,#20136) +scopenesting(#20136,#20000) +is_module(#20130) +#20137=@"var;{this};{#20136}" +variables(#20137,"this",#20136) +#20138=* +stmts(#20138,2,#20130,0,"name") +hasLocation(#20138,#20132) +stmt_containers(#20138,#20130) #20139=* -entry_cfg_node(#20139,#20129) -#20140=@"loc,{#10000},16,56,16,55" -locations_default(#20140,#10000,16,56,16,55) -hasLocation(#20139,#20140) +exprs(#20139,79,#20138,0,"name") +hasLocation(#20139,#20132) +enclosing_stmt(#20139,#20138) +expr_containers(#20139,#20130) +literals("name","name",#20139) +#20140=@"var;{name};{#20136}" +variables(#20140,"name",#20136) +bind(#20139,#20140) #20141=* -exit_cfg_node(#20141,#20129) -hasLocation(#20141,#20134) -successor(#20136,#20137) -successor(#20137,#20141) -successor(#20139,#20136) -toplevel_parent_xml_node(#20129,#20127) -#20142=* -xmlElements(#20142,"script",#20117,2,#10000) -#20143=@"loc,{#10000},15,5,15,71" -locations_default(#20143,#10000,15,5,15,71) -xmllocations(#20142,#20143) +entry_cfg_node(#20141,#20130) +#20142=@"loc,{#10000},16,56,16,55" +locations_default(#20142,#10000,16,56,16,55) +hasLocation(#20141,#20142) +#20143=* +exit_cfg_node(#20143,#20130) +hasLocation(#20143,#20135) +successor(#20138,#20139) +successor(#20139,#20143) +successor(#20141,#20138) +toplevel_parent_xml_node(#20130,#20128) #20144=* -xmlAttrs(#20144,#20142,"type","text/x-handlebars-template",0,#10000) -#20145=@"loc,{#10000},15,13,15,45" -locations_default(#20145,#10000,15,13,15,45) +xmlElements(#20144,"script",#20118,2,#10000) +#20145=@"loc,{#10000},15,5,15,71" +locations_default(#20145,#10000,15,5,15,71) xmllocations(#20144,#20145) #20146=* -template_placeholder_tag_info(#20146,#20142,"{{name}}") -#20147=@"loc,{#10000},15,54,15,61" -locations_default(#20147,#10000,15,54,15,61) -hasLocation(#20146,#20147) +xmlAttrs(#20146,#20144,"type","text/x-handlebars-template",0,#10000) +#20147=@"loc,{#10000},15,13,15,45" +locations_default(#20147,#10000,15,13,15,45) +xmllocations(#20146,#20147) +#20148=* +template_placeholder_tag_info(#20148,#20144,"{{name}}") +#20149=@"loc,{#10000},15,54,15,61" +locations_default(#20149,#10000,15,54,15,61) +hasLocation(#20148,#20149) scopes(#20000,0) -#20148=@"script;{#10000},15,56" -#20149=* -lines(#20149,#20148,"name","") -#20150=@"loc,{#10000},15,56,15,59" -locations_default(#20150,#10000,15,56,15,59) -hasLocation(#20149,#20150) -numlines(#20148,1,1,0) +#20150=@"script;{#10000},15,56" #20151=* -tokeninfo(#20151,6,#20148,0,"name") -hasLocation(#20151,#20150) -#20152=* -tokeninfo(#20152,0,#20148,1,"") -#20153=@"loc,{#10000},15,60,15,59" -locations_default(#20153,#10000,15,60,15,59) -hasLocation(#20152,#20153) -toplevels(#20148,4) -hasLocation(#20148,#20150) -#20154=@"module;{#10000},15,56" -scopes(#20154,3) -scopenodes(#20148,#20154) -scopenesting(#20154,#20000) -is_module(#20148) -#20155=* -stmts(#20155,2,#20148,0,"name") -hasLocation(#20155,#20150) -stmt_containers(#20155,#20148) -#20156=* -exprs(#20156,79,#20155,0,"name") -hasLocation(#20156,#20150) -enclosing_stmt(#20156,#20155) -expr_containers(#20156,#20148) -literals("name","name",#20156) -#20157=@"var;{name};{#20154}" -variables(#20157,"name",#20154) -bind(#20156,#20157) +lines(#20151,#20150,"name","") +#20152=@"loc,{#10000},15,56,15,59" +locations_default(#20152,#10000,15,56,15,59) +hasLocation(#20151,#20152) +numlines(#20150,1,1,0) +#20153=* +tokeninfo(#20153,6,#20150,0,"name") +hasLocation(#20153,#20152) +#20154=* +tokeninfo(#20154,0,#20150,1,"") +#20155=@"loc,{#10000},15,60,15,59" +locations_default(#20155,#10000,15,60,15,59) +hasLocation(#20154,#20155) +toplevels(#20150,4) +hasLocation(#20150,#20152) +#20156=@"module;{#10000},15,56" +scopes(#20156,3) +scopenodes(#20150,#20156) +scopenesting(#20156,#20000) +is_module(#20150) +#20157=@"var;{this};{#20156}" +variables(#20157,"this",#20156) #20158=* -entry_cfg_node(#20158,#20148) -#20159=@"loc,{#10000},15,56,15,55" -locations_default(#20159,#10000,15,56,15,55) -hasLocation(#20158,#20159) -#20160=* -exit_cfg_node(#20160,#20148) -hasLocation(#20160,#20153) -successor(#20155,#20156) -successor(#20156,#20160) -successor(#20158,#20155) -toplevel_parent_xml_node(#20148,#20146) +stmts(#20158,2,#20150,0,"name") +hasLocation(#20158,#20152) +stmt_containers(#20158,#20150) +#20159=* +exprs(#20159,79,#20158,0,"name") +hasLocation(#20159,#20152) +enclosing_stmt(#20159,#20158) +expr_containers(#20159,#20150) +literals("name","name",#20159) +#20160=@"var;{name};{#20156}" +variables(#20160,"name",#20156) +bind(#20159,#20160) #20161=* -xmlElements(#20161,"body",#20117,1,#10000) -#20162=@"loc,{#10000},10,5,14,11" -locations_default(#20162,#10000,10,5,14,11) -xmllocations(#20161,#20162) +entry_cfg_node(#20161,#20150) +#20162=@"loc,{#10000},15,56,15,55" +locations_default(#20162,#10000,15,56,15,55) +hasLocation(#20161,#20162) #20163=* -xmlElements(#20163,"a",#20161,2,#10000) -#20164=@"loc,{#10000},13,9,13,59" -locations_default(#20164,#10000,13,9,13,59) -xmllocations(#20163,#20164) -xmlAttrs(#20100,#20163,"onclick","return false;",0,#10000) -#20165=@"loc,{#10000},13,12,13,34" -locations_default(#20165,#10000,13,12,13,34) -xmllocations(#20100,#20165) +exit_cfg_node(#20163,#20150) +hasLocation(#20163,#20155) +successor(#20158,#20159) +successor(#20159,#20163) +successor(#20161,#20158) +toplevel_parent_xml_node(#20150,#20148) +#20164=* +xmlElements(#20164,"body",#20118,1,#10000) +#20165=@"loc,{#10000},10,5,14,11" +locations_default(#20165,#10000,10,5,14,11) +xmllocations(#20164,#20165) #20166=* -xmlElements(#20166,"div",#20161,1,#10000) -#20167=@"loc,{#10000},12,9,12,75" -locations_default(#20167,#10000,12,9,12,75) +xmlElements(#20166,"a",#20164,2,#10000) +#20167=@"loc,{#10000},13,9,13,59" +locations_default(#20167,#10000,13,9,13,59) xmllocations(#20166,#20167) -xmlAttrs(#20077,#20166,"onclick","alert('I said don\'t click!')",0,#10000) -#20168=@"loc,{#10000},12,14,12,52" -locations_default(#20168,#10000,12,14,12,52) -xmllocations(#20077,#20168) +xmlAttrs(#20101,#20166,"onclick","return false;",0,#10000) +#20168=@"loc,{#10000},13,12,13,34" +locations_default(#20168,#10000,13,12,13,34) +xmllocations(#20101,#20168) #20169=* -xmlElements(#20169,"a",#20161,0,#10000) -#20170=@"loc,{#10000},11,9,11,64" -locations_default(#20170,#10000,11,9,11,64) +xmlElements(#20169,"div",#20164,1,#10000) +#20170=@"loc,{#10000},12,9,12,75" +locations_default(#20170,#10000,12,9,12,75) xmllocations(#20169,#20170) -xmlAttrs(#20044,#20169,"href","javascript:void(alert('Nope!'))",0,#10000) -#20171=@"loc,{#10000},11,12,11,49" -locations_default(#20171,#10000,11,12,11,49) -xmllocations(#20044,#20171) +xmlAttrs(#20078,#20169,"onclick","alert('I said don\'t click!')",0,#10000) +#20171=@"loc,{#10000},12,14,12,52" +locations_default(#20171,#10000,12,14,12,52) +xmllocations(#20078,#20171) #20172=* -xmlElements(#20172,"head",#20117,0,#10000) -#20173=@"loc,{#10000},2,5,9,11" -locations_default(#20173,#10000,2,5,9,11) +xmlElements(#20172,"a",#20164,0,#10000) +#20173=@"loc,{#10000},11,9,11,64" +locations_default(#20173,#10000,11,9,11,64) xmllocations(#20172,#20173) -xmlElements(#20033,"script",#20172,3,#10000) -#20174=@"loc,{#10000},8,9,8,26" -locations_default(#20174,#10000,8,9,8,26) -xmllocations(#20033,#20174) -xmlElements(#20001,"script",#20172,2,#10000) -#20175=@"loc,{#10000},5,9,7,17" -locations_default(#20175,#10000,5,9,7,17) -xmllocations(#20001,#20175) -#20176=* -xmlElements(#20176,"script",#20172,1,#10000) -#20177=@"loc,{#10000},4,9,4,43" -locations_default(#20177,#10000,4,9,4,43) -xmllocations(#20176,#20177) -#20178=* -xmlAttrs(#20178,#20176,"src","external.js",0,#10000) -#20179=@"loc,{#10000},4,17,4,33" -locations_default(#20179,#10000,4,17,4,33) -xmllocations(#20178,#20179) -#20180=* -xmlElements(#20180,"title",#20172,0,#10000) -#20181=@"loc,{#10000},3,9,3,32" -locations_default(#20181,#10000,3,9,3,32) -xmllocations(#20180,#20181) +xmlAttrs(#20045,#20172,"href","javascript:void(alert('Nope!'))",0,#10000) +#20174=@"loc,{#10000},11,12,11,49" +locations_default(#20174,#10000,11,12,11,49) +xmllocations(#20045,#20174) +#20175=* +xmlElements(#20175,"head",#20118,0,#10000) +#20176=@"loc,{#10000},2,5,9,11" +locations_default(#20176,#10000,2,5,9,11) +xmllocations(#20175,#20176) +xmlElements(#20034,"script",#20175,3,#10000) +#20177=@"loc,{#10000},8,9,8,26" +locations_default(#20177,#10000,8,9,8,26) +xmllocations(#20034,#20177) +xmlElements(#20001,"script",#20175,2,#10000) +#20178=@"loc,{#10000},5,9,7,17" +locations_default(#20178,#10000,5,9,7,17) +xmllocations(#20001,#20178) +#20179=* +xmlElements(#20179,"script",#20175,1,#10000) +#20180=@"loc,{#10000},4,9,4,43" +locations_default(#20180,#10000,4,9,4,43) +xmllocations(#20179,#20180) +#20181=* +xmlAttrs(#20181,#20179,"src","external.js",0,#10000) +#20182=@"loc,{#10000},4,17,4,33" +locations_default(#20182,#10000,4,17,4,33) +xmllocations(#20181,#20182) +#20183=* +xmlElements(#20183,"title",#20175,0,#10000) +#20184=@"loc,{#10000},3,9,3,32" +locations_default(#20184,#10000,3,9,3,32) +xmllocations(#20183,#20184) numlines(#10000,18,7,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/html/output/trap/tst.xhtml.trap b/javascript/extractor/tests/html/output/trap/tst.xhtml.trap index def8d3b124d1..ffee48a246c4 100644 --- a/javascript/extractor/tests/html/output/trap/tst.xhtml.trap +++ b/javascript/extractor/tests/html/output/trap/tst.xhtml.trap @@ -54,66 +54,68 @@ toplevels(#20002,1) #20017=@"loc,{#10000},7,43,10,7" locations_default(#20017,#10000,7,43,10,7) hasLocation(#20002,#20017) -#20018=* -stmts(#20018,2,#20002,0,"42;") -#20019=@"loc,{#10000},9,5,9,7" -locations_default(#20019,#10000,9,5,9,7) -hasLocation(#20018,#20019) -stmt_containers(#20018,#20002) -#20020=* -exprs(#20020,3,#20018,0,"42") -hasLocation(#20020,#20012) -enclosing_stmt(#20020,#20018) -expr_containers(#20020,#20002) -literals("42","42",#20020) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) +#20019=* +stmts(#20019,2,#20002,0,"42;") +#20020=@"loc,{#10000},9,5,9,7" +locations_default(#20020,#10000,9,5,9,7) +hasLocation(#20019,#20020) +stmt_containers(#20019,#20002) #20021=* -entry_cfg_node(#20021,#20002) -hasLocation(#20021,#20004) +exprs(#20021,3,#20019,0,"42") +hasLocation(#20021,#20012) +enclosing_stmt(#20021,#20019) +expr_containers(#20021,#20002) +literals("42","42",#20021) #20022=* -exit_cfg_node(#20022,#20002) -hasLocation(#20022,#20016) -successor(#20018,#20020) -successor(#20020,#20022) -successor(#20021,#20018) -toplevel_parent_xml_node(#20002,#20001) +entry_cfg_node(#20022,#20002) +hasLocation(#20022,#20004) #20023=* -xmlElements(#20023,"html",#10000,0,#10000) -#20024=@"loc,{#10000},2,1,12,7" -locations_default(#20024,#10000,2,1,12,7) -xmllocations(#20023,#20024) -#20025=* -xmlAttrs(#20025,#20023,"xmlns","http://www.w3.org/1999/xhtml",0,#10000) -#20026=@"loc,{#10000},2,7,2,42" -locations_default(#20026,#10000,2,7,2,42) -xmllocations(#20025,#20026) -#20027=* -xmlAttrs(#20027,#20023,"xml:lang","en",1,#10000) -#20028=@"loc,{#10000},2,44,2,56" -locations_default(#20028,#10000,2,44,2,56) -xmllocations(#20027,#20028) -#20029=* -xmlElements(#20029,"body",#20023,1,#10000) -#20030=@"loc,{#10000},6,1,11,7" -locations_default(#20030,#10000,6,1,11,7) -xmllocations(#20029,#20030) -xmlElements(#20001,"script",#20029,0,#10000) -#20031=@"loc,{#10000},7,5,10,16" -locations_default(#20031,#10000,7,5,10,16) -xmllocations(#20001,#20031) -#20032=* -xmlAttrs(#20032,#20001,"type","application/javascript",0,#10000) -#20033=@"loc,{#10000},7,13,7,41" -locations_default(#20033,#10000,7,13,7,41) -xmllocations(#20032,#20033) -#20034=* -xmlElements(#20034,"head",#20023,0,#10000) -#20035=@"loc,{#10000},3,1,5,7" -locations_default(#20035,#10000,3,1,5,7) -xmllocations(#20034,#20035) -#20036=* -xmlElements(#20036,"title",#20034,0,#10000) -#20037=@"loc,{#10000},4,5,4,31" -locations_default(#20037,#10000,4,5,4,31) -xmllocations(#20036,#20037) +exit_cfg_node(#20023,#20002) +hasLocation(#20023,#20016) +successor(#20019,#20021) +successor(#20021,#20023) +successor(#20022,#20019) +toplevel_parent_xml_node(#20002,#20001) +#20024=* +xmlElements(#20024,"html",#10000,0,#10000) +#20025=@"loc,{#10000},2,1,12,7" +locations_default(#20025,#10000,2,1,12,7) +xmllocations(#20024,#20025) +#20026=* +xmlAttrs(#20026,#20024,"xmlns","http://www.w3.org/1999/xhtml",0,#10000) +#20027=@"loc,{#10000},2,7,2,42" +locations_default(#20027,#10000,2,7,2,42) +xmllocations(#20026,#20027) +#20028=* +xmlAttrs(#20028,#20024,"xml:lang","en",1,#10000) +#20029=@"loc,{#10000},2,44,2,56" +locations_default(#20029,#10000,2,44,2,56) +xmllocations(#20028,#20029) +#20030=* +xmlElements(#20030,"body",#20024,1,#10000) +#20031=@"loc,{#10000},6,1,11,7" +locations_default(#20031,#10000,6,1,11,7) +xmllocations(#20030,#20031) +xmlElements(#20001,"script",#20030,0,#10000) +#20032=@"loc,{#10000},7,5,10,16" +locations_default(#20032,#10000,7,5,10,16) +xmllocations(#20001,#20032) +#20033=* +xmlAttrs(#20033,#20001,"type","application/javascript",0,#10000) +#20034=@"loc,{#10000},7,13,7,41" +locations_default(#20034,#10000,7,13,7,41) +xmllocations(#20033,#20034) +#20035=* +xmlElements(#20035,"head",#20024,0,#10000) +#20036=@"loc,{#10000},3,1,5,7" +locations_default(#20036,#10000,3,1,5,7) +xmllocations(#20035,#20036) +#20037=* +xmlElements(#20037,"title",#20035,0,#10000) +#20038=@"loc,{#10000},4,5,4,31" +locations_default(#20038,#10000,4,5,4,31) +xmllocations(#20037,#20038) numlines(#10000,12,1,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/html/output/trap/tst2.html.trap b/javascript/extractor/tests/html/output/trap/tst2.html.trap index bff75920f0b3..60921287f850 100644 --- a/javascript/extractor/tests/html/output/trap/tst2.html.trap +++ b/javascript/extractor/tests/html/output/trap/tst2.html.trap @@ -40,335 +40,342 @@ toplevels(#20002,1) hasLocation(#20002,#20004) #20013=@"var;{hello};{#20000}" variables(#20013,"hello",#20000) -#20014=* -stmts(#20014,18,#20002,0,"var hello;") -hasLocation(#20014,#20004) -stmt_containers(#20014,#20002) +#20014=@"var;{this};{#20000}" +variables(#20014,"this",#20000) #20015=* -exprs(#20015,64,#20014,0,"hello") -hasLocation(#20015,#20008) -enclosing_stmt(#20015,#20014) -expr_containers(#20015,#20002) +stmts(#20015,18,#20002,0,"var hello;") +hasLocation(#20015,#20004) +stmt_containers(#20015,#20002) #20016=* -exprs(#20016,78,#20015,0,"hello") +exprs(#20016,64,#20015,0,"hello") hasLocation(#20016,#20008) -enclosing_stmt(#20016,#20014) +enclosing_stmt(#20016,#20015) expr_containers(#20016,#20002) -literals("hello","hello",#20016) -decl(#20016,#20013) #20017=* -entry_cfg_node(#20017,#20002) -#20018=@"loc,{#10000},2,31,2,30" -locations_default(#20018,#10000,2,31,2,30) -hasLocation(#20017,#20018) -#20019=* -exit_cfg_node(#20019,#20002) -hasLocation(#20019,#20012) -successor(#20014,#20016) -successor(#20016,#20015) -successor(#20015,#20019) -successor(#20017,#20014) -toplevel_parent_xml_node(#20002,#20001) +exprs(#20017,78,#20016,0,"hello") +hasLocation(#20017,#20008) +enclosing_stmt(#20017,#20015) +expr_containers(#20017,#20002) +literals("hello","hello",#20017) +decl(#20017,#20013) +#20018=* +entry_cfg_node(#20018,#20002) +#20019=@"loc,{#10000},2,31,2,30" +locations_default(#20019,#10000,2,31,2,30) +hasLocation(#20018,#20019) #20020=* -#20021=@"script;{#10000},3,29" -#20022=* -lines(#20022,#20021,"var world;","") -#20023=@"loc,{#10000},3,29,3,38" -locations_default(#20023,#10000,3,29,3,38) -hasLocation(#20022,#20023) -numlines(#20021,1,1,0) -#20024=* -tokeninfo(#20024,7,#20021,0,"var") -#20025=@"loc,{#10000},3,29,3,31" -locations_default(#20025,#10000,3,29,3,31) -hasLocation(#20024,#20025) -#20026=* -tokeninfo(#20026,6,#20021,1,"world") -#20027=@"loc,{#10000},3,33,3,37" -locations_default(#20027,#10000,3,33,3,37) -hasLocation(#20026,#20027) -#20028=* -tokeninfo(#20028,8,#20021,2,";") -#20029=@"loc,{#10000},3,38,3,38" -locations_default(#20029,#10000,3,38,3,38) -hasLocation(#20028,#20029) -#20030=* -tokeninfo(#20030,0,#20021,3,"") -#20031=@"loc,{#10000},3,39,3,38" -locations_default(#20031,#10000,3,39,3,38) -hasLocation(#20030,#20031) -toplevels(#20021,1) -hasLocation(#20021,#20023) -#20032=@"var;{world};{#20000}" -variables(#20032,"world",#20000) -#20033=* -stmts(#20033,18,#20021,0,"var world;") -hasLocation(#20033,#20023) -stmt_containers(#20033,#20021) +exit_cfg_node(#20020,#20002) +hasLocation(#20020,#20012) +successor(#20015,#20017) +successor(#20017,#20016) +successor(#20016,#20020) +successor(#20018,#20015) +toplevel_parent_xml_node(#20002,#20001) +#20021=* +#20022=@"script;{#10000},3,29" +#20023=* +lines(#20023,#20022,"var world;","") +#20024=@"loc,{#10000},3,29,3,38" +locations_default(#20024,#10000,3,29,3,38) +hasLocation(#20023,#20024) +numlines(#20022,1,1,0) +#20025=* +tokeninfo(#20025,7,#20022,0,"var") +#20026=@"loc,{#10000},3,29,3,31" +locations_default(#20026,#10000,3,29,3,31) +hasLocation(#20025,#20026) +#20027=* +tokeninfo(#20027,6,#20022,1,"world") +#20028=@"loc,{#10000},3,33,3,37" +locations_default(#20028,#10000,3,33,3,37) +hasLocation(#20027,#20028) +#20029=* +tokeninfo(#20029,8,#20022,2,";") +#20030=@"loc,{#10000},3,38,3,38" +locations_default(#20030,#10000,3,38,3,38) +hasLocation(#20029,#20030) +#20031=* +tokeninfo(#20031,0,#20022,3,"") +#20032=@"loc,{#10000},3,39,3,38" +locations_default(#20032,#10000,3,39,3,38) +hasLocation(#20031,#20032) +toplevels(#20022,1) +hasLocation(#20022,#20024) +#20033=@"var;{world};{#20000}" +variables(#20033,"world",#20000) +variables(#20014,"this",#20000) #20034=* -exprs(#20034,64,#20033,0,"world") -hasLocation(#20034,#20027) -enclosing_stmt(#20034,#20033) -expr_containers(#20034,#20021) +stmts(#20034,18,#20022,0,"var world;") +hasLocation(#20034,#20024) +stmt_containers(#20034,#20022) #20035=* -exprs(#20035,78,#20034,0,"world") -hasLocation(#20035,#20027) -enclosing_stmt(#20035,#20033) -expr_containers(#20035,#20021) -literals("world","world",#20035) -decl(#20035,#20032) +exprs(#20035,64,#20034,0,"world") +hasLocation(#20035,#20028) +enclosing_stmt(#20035,#20034) +expr_containers(#20035,#20022) #20036=* -entry_cfg_node(#20036,#20021) -#20037=@"loc,{#10000},3,29,3,28" -locations_default(#20037,#10000,3,29,3,28) -hasLocation(#20036,#20037) -#20038=* -exit_cfg_node(#20038,#20021) -hasLocation(#20038,#20031) -successor(#20033,#20035) -successor(#20035,#20034) -successor(#20034,#20038) -successor(#20036,#20033) -toplevel_parent_xml_node(#20021,#20020) +exprs(#20036,78,#20035,0,"world") +hasLocation(#20036,#20028) +enclosing_stmt(#20036,#20034) +expr_containers(#20036,#20022) +literals("world","world",#20036) +decl(#20036,#20033) +#20037=* +entry_cfg_node(#20037,#20022) +#20038=@"loc,{#10000},3,29,3,28" +locations_default(#20038,#10000,3,29,3,28) +hasLocation(#20037,#20038) #20039=* -#20040=@"script;{#10000},4,75" -#20041=* -lines(#20041,#20040,""," +exit_cfg_node(#20039,#20022) +hasLocation(#20039,#20032) +successor(#20034,#20036) +successor(#20036,#20035) +successor(#20035,#20039) +successor(#20037,#20034) +toplevel_parent_xml_node(#20022,#20021) +#20040=* +#20041=@"script;{#10000},4,75" +#20042=* +lines(#20042,#20041,""," ") -#20042=@"loc,{#10000},4,75,4,74" -locations_default(#20042,#10000,4,75,4,74) -hasLocation(#20041,#20042) -#20043=* -lines(#20043,#20040," var inAModule;"," +#20043=@"loc,{#10000},4,75,4,74" +locations_default(#20043,#10000,4,75,4,74) +hasLocation(#20042,#20043) +#20044=* +lines(#20044,#20041," var inAModule;"," ") -#20044=@"loc,{#10000},5,1,5,20" -locations_default(#20044,#10000,5,1,5,20) -hasLocation(#20043,#20044) +#20045=@"loc,{#10000},5,1,5,20" +locations_default(#20045,#10000,5,1,5,20) +hasLocation(#20044,#20045) indentation(#10000,5," ",6) -#20045=* -lines(#20045,#20040," ","") -#20046=@"loc,{#10000},6,1,6,4" -locations_default(#20046,#10000,6,1,6,4) -hasLocation(#20045,#20046) -numlines(#20040,3,1,0) -#20047=* -tokeninfo(#20047,7,#20040,0,"var") -#20048=@"loc,{#10000},5,7,5,9" -locations_default(#20048,#10000,5,7,5,9) -hasLocation(#20047,#20048) -#20049=* -tokeninfo(#20049,6,#20040,1,"inAModule") -#20050=@"loc,{#10000},5,11,5,19" -locations_default(#20050,#10000,5,11,5,19) -hasLocation(#20049,#20050) -#20051=* -tokeninfo(#20051,8,#20040,2,";") -#20052=@"loc,{#10000},5,20,5,20" -locations_default(#20052,#10000,5,20,5,20) -hasLocation(#20051,#20052) -#20053=* -tokeninfo(#20053,0,#20040,3,"") -#20054=@"loc,{#10000},6,5,6,4" -locations_default(#20054,#10000,6,5,6,4) -hasLocation(#20053,#20054) -toplevels(#20040,1) -#20055=@"loc,{#10000},4,75,6,4" -locations_default(#20055,#10000,4,75,6,4) -hasLocation(#20040,#20055) -#20056=@"module;{#10000},4,75" -scopes(#20056,3) -scopenodes(#20040,#20056) -scopenesting(#20056,#20000) -is_module(#20040) -is_es2015_module(#20040) -#20057=@"var;{inAModule};{#20056}" -variables(#20057,"inAModule",#20056) -#20058=* -stmts(#20058,18,#20040,0,"var inAModule;") -#20059=@"loc,{#10000},5,7,5,20" -locations_default(#20059,#10000,5,7,5,20) -hasLocation(#20058,#20059) -stmt_containers(#20058,#20040) +#20046=* +lines(#20046,#20041," ","") +#20047=@"loc,{#10000},6,1,6,4" +locations_default(#20047,#10000,6,1,6,4) +hasLocation(#20046,#20047) +numlines(#20041,3,1,0) +#20048=* +tokeninfo(#20048,7,#20041,0,"var") +#20049=@"loc,{#10000},5,7,5,9" +locations_default(#20049,#10000,5,7,5,9) +hasLocation(#20048,#20049) +#20050=* +tokeninfo(#20050,6,#20041,1,"inAModule") +#20051=@"loc,{#10000},5,11,5,19" +locations_default(#20051,#10000,5,11,5,19) +hasLocation(#20050,#20051) +#20052=* +tokeninfo(#20052,8,#20041,2,";") +#20053=@"loc,{#10000},5,20,5,20" +locations_default(#20053,#10000,5,20,5,20) +hasLocation(#20052,#20053) +#20054=* +tokeninfo(#20054,0,#20041,3,"") +#20055=@"loc,{#10000},6,5,6,4" +locations_default(#20055,#10000,6,5,6,4) +hasLocation(#20054,#20055) +toplevels(#20041,1) +#20056=@"loc,{#10000},4,75,6,4" +locations_default(#20056,#10000,4,75,6,4) +hasLocation(#20041,#20056) +#20057=@"module;{#10000},4,75" +scopes(#20057,3) +scopenodes(#20041,#20057) +scopenesting(#20057,#20000) +is_module(#20041) +is_es2015_module(#20041) +#20058=@"var;{inAModule};{#20057}" +variables(#20058,"inAModule",#20057) +#20059=@"var;{this};{#20057}" +variables(#20059,"this",#20057) #20060=* -exprs(#20060,64,#20058,0,"inAModule") -hasLocation(#20060,#20050) -enclosing_stmt(#20060,#20058) -expr_containers(#20060,#20040) -#20061=* -exprs(#20061,78,#20060,0,"inAModule") -hasLocation(#20061,#20050) -enclosing_stmt(#20061,#20058) -expr_containers(#20061,#20040) -literals("inAModule","inAModule",#20061) -decl(#20061,#20057) +stmts(#20060,18,#20041,0,"var inAModule;") +#20061=@"loc,{#10000},5,7,5,20" +locations_default(#20061,#10000,5,7,5,20) +hasLocation(#20060,#20061) +stmt_containers(#20060,#20041) #20062=* -entry_cfg_node(#20062,#20040) -hasLocation(#20062,#20042) +exprs(#20062,64,#20060,0,"inAModule") +hasLocation(#20062,#20051) +enclosing_stmt(#20062,#20060) +expr_containers(#20062,#20041) #20063=* -exit_cfg_node(#20063,#20040) -hasLocation(#20063,#20054) -successor(#20058,#20061) -successor(#20061,#20060) -successor(#20060,#20063) -successor(#20062,#20058) -toplevel_parent_xml_node(#20040,#20039) +exprs(#20063,78,#20062,0,"inAModule") +hasLocation(#20063,#20051) +enclosing_stmt(#20063,#20060) +expr_containers(#20063,#20041) +literals("inAModule","inAModule",#20063) +decl(#20063,#20058) #20064=* -#20065=@"script;{#10000},7,75" +entry_cfg_node(#20064,#20041) +hasLocation(#20064,#20043) +#20065=* +exit_cfg_node(#20065,#20041) +hasLocation(#20065,#20055) +successor(#20060,#20063) +successor(#20063,#20062) +successor(#20062,#20065) +successor(#20064,#20060) +toplevel_parent_xml_node(#20041,#20040) #20066=* -lines(#20066,#20065,""," -") -#20067=@"loc,{#10000},7,75,7,74" -locations_default(#20067,#10000,7,75,7,74) -hasLocation(#20066,#20067) +#20067=@"script;{#10000},7,75" #20068=* -lines(#20068,#20065," import f from ""f"""," +lines(#20068,#20067,""," ") -#20069=@"loc,{#10000},8,1,8,23" -locations_default(#20069,#10000,8,1,8,23) +#20069=@"loc,{#10000},7,75,7,74" +locations_default(#20069,#10000,7,75,7,74) hasLocation(#20068,#20069) -indentation(#10000,8," ",6) #20070=* -lines(#20070,#20065," ","") -#20071=@"loc,{#10000},9,1,9,4" -locations_default(#20071,#10000,9,1,9,4) +lines(#20070,#20067," import f from ""f"""," +") +#20071=@"loc,{#10000},8,1,8,23" +locations_default(#20071,#10000,8,1,8,23) hasLocation(#20070,#20071) -numlines(#20065,3,1,0) +indentation(#10000,8," ",6) #20072=* -tokeninfo(#20072,7,#20065,0,"import") -#20073=@"loc,{#10000},8,7,8,12" -locations_default(#20073,#10000,8,7,8,12) +lines(#20072,#20067," ","") +#20073=@"loc,{#10000},9,1,9,4" +locations_default(#20073,#10000,9,1,9,4) hasLocation(#20072,#20073) +numlines(#20067,3,1,0) #20074=* -tokeninfo(#20074,6,#20065,1,"f") -#20075=@"loc,{#10000},8,14,8,14" -locations_default(#20075,#10000,8,14,8,14) +tokeninfo(#20074,7,#20067,0,"import") +#20075=@"loc,{#10000},8,7,8,12" +locations_default(#20075,#10000,8,7,8,12) hasLocation(#20074,#20075) #20076=* -tokeninfo(#20076,6,#20065,2,"from") -#20077=@"loc,{#10000},8,16,8,19" -locations_default(#20077,#10000,8,16,8,19) +tokeninfo(#20076,6,#20067,1,"f") +#20077=@"loc,{#10000},8,14,8,14" +locations_default(#20077,#10000,8,14,8,14) hasLocation(#20076,#20077) #20078=* -tokeninfo(#20078,4,#20065,3,"""f""") -#20079=@"loc,{#10000},8,21,8,23" -locations_default(#20079,#10000,8,21,8,23) +tokeninfo(#20078,6,#20067,2,"from") +#20079=@"loc,{#10000},8,16,8,19" +locations_default(#20079,#10000,8,16,8,19) hasLocation(#20078,#20079) #20080=* -tokeninfo(#20080,0,#20065,4,"") -#20081=@"loc,{#10000},9,5,9,4" -locations_default(#20081,#10000,9,5,9,4) +tokeninfo(#20080,4,#20067,3,"""f""") +#20081=@"loc,{#10000},8,21,8,23" +locations_default(#20081,#10000,8,21,8,23) hasLocation(#20080,#20081) -toplevels(#20065,1) -#20082=@"loc,{#10000},7,75,9,4" -locations_default(#20082,#10000,7,75,9,4) -hasLocation(#20065,#20082) -#20083=@"module;{#10000},7,75" -scopes(#20083,3) -scopenodes(#20065,#20083) -scopenesting(#20083,#20000) -is_module(#20065) -is_es2015_module(#20065) -#20084=@"var;{f};{#20083}" -variables(#20084,"f",#20083) -#20085=@"local_type_name;{f};{#20083}" -local_type_names(#20085,"f",#20083) -#20086=@"local_namespace_name;{f};{#20083}" -local_namespace_names(#20086,"f",#20083) -variables(#20084,"f",#20083) -local_type_names(#20085,"f",#20083) -local_namespace_names(#20086,"f",#20083) -#20087=* -stmts(#20087,27,#20065,0,"import f from ""f""") -#20088=@"loc,{#10000},8,7,8,23" -locations_default(#20088,#10000,8,7,8,23) -hasLocation(#20087,#20088) -stmt_containers(#20087,#20065) -#20089=* -exprs(#20089,4,#20087,-1,"""f""") -hasLocation(#20089,#20079) -enclosing_stmt(#20089,#20087) -expr_containers(#20089,#20065) -literals("f","""f""",#20089) +#20082=* +tokeninfo(#20082,0,#20067,4,"") +#20083=@"loc,{#10000},9,5,9,4" +locations_default(#20083,#10000,9,5,9,4) +hasLocation(#20082,#20083) +toplevels(#20067,1) +#20084=@"loc,{#10000},7,75,9,4" +locations_default(#20084,#10000,7,75,9,4) +hasLocation(#20067,#20084) +#20085=@"module;{#10000},7,75" +scopes(#20085,3) +scopenodes(#20067,#20085) +scopenesting(#20085,#20000) +is_module(#20067) +is_es2015_module(#20067) +#20086=@"var;{f};{#20085}" +variables(#20086,"f",#20085) +#20087=@"local_type_name;{f};{#20085}" +local_type_names(#20087,"f",#20085) +#20088=@"local_namespace_name;{f};{#20085}" +local_namespace_names(#20088,"f",#20085) +variables(#20086,"f",#20085) +local_type_names(#20087,"f",#20085) +local_namespace_names(#20088,"f",#20085) +#20089=@"var;{this};{#20085}" +variables(#20089,"this",#20085) #20090=* -regexpterm(#20090,14,#20089,0,"f") -#20091=@"loc,{#10000},8,22,8,22" -locations_default(#20091,#10000,8,22,8,22) +stmts(#20090,27,#20067,0,"import f from ""f""") +#20091=@"loc,{#10000},8,7,8,23" +locations_default(#20091,#10000,8,7,8,23) hasLocation(#20090,#20091) -regexp_const_value(#20090,"f") +stmt_containers(#20090,#20067) #20092=* -exprs(#20092,84,#20087,0,"f") -hasLocation(#20092,#20075) -enclosing_stmt(#20092,#20087) -expr_containers(#20092,#20065) +exprs(#20092,4,#20090,-1,"""f""") +hasLocation(#20092,#20081) +enclosing_stmt(#20092,#20090) +expr_containers(#20092,#20067) +literals("f","""f""",#20092) #20093=* -exprs(#20093,78,#20092,1,"f") -hasLocation(#20093,#20075) -enclosing_stmt(#20093,#20087) -expr_containers(#20093,#20065) -literals("f","f",#20093) -decl(#20093,#20084) -typedecl(#20093,#20085) -namespacedecl(#20093,#20086) -#20094=* -entry_cfg_node(#20094,#20065) -hasLocation(#20094,#20067) +regexpterm(#20093,14,#20092,0,"f") +#20094=@"loc,{#10000},8,22,8,22" +locations_default(#20094,#10000,8,22,8,22) +hasLocation(#20093,#20094) +regexp_const_value(#20093,"f") #20095=* -exit_cfg_node(#20095,#20065) -hasLocation(#20095,#20081) -successor(#20087,#20095) -successor(#20092,#20087) -successor(#20094,#20092) -toplevel_parent_xml_node(#20065,#20064) +exprs(#20095,84,#20090,0,"f") +hasLocation(#20095,#20077) +enclosing_stmt(#20095,#20090) +expr_containers(#20095,#20067) #20096=* -xmlElements(#20096,"html",#10000,0,#10000) -#20097=@"loc,{#10000},1,1,10,7" -locations_default(#20097,#10000,1,1,10,7) -xmllocations(#20096,#20097) -xmlElements(#20064,"script",#20096,3,#10000) -#20098=@"loc,{#10000},7,5,9,13" -locations_default(#20098,#10000,7,5,9,13) -xmllocations(#20064,#20098) +exprs(#20096,78,#20095,1,"f") +hasLocation(#20096,#20077) +enclosing_stmt(#20096,#20090) +expr_containers(#20096,#20067) +literals("f","f",#20096) +decl(#20096,#20086) +typedecl(#20096,#20087) +namespacedecl(#20096,#20088) +#20097=* +entry_cfg_node(#20097,#20067) +hasLocation(#20097,#20069) +#20098=* +exit_cfg_node(#20098,#20067) +hasLocation(#20098,#20083) +successor(#20090,#20098) +successor(#20095,#20090) +successor(#20097,#20095) +toplevel_parent_xml_node(#20067,#20066) #20099=* -xmlAttrs(#20099,#20064,"type","text/babel",0,#10000) -#20100=@"loc,{#10000},7,13,7,29" -locations_default(#20100,#10000,7,13,7,29) +xmlElements(#20099,"html",#10000,0,#10000) +#20100=@"loc,{#10000},1,1,10,7" +locations_default(#20100,#10000,1,1,10,7) xmllocations(#20099,#20100) -#20101=* -xmlAttrs(#20101,#20064,"data-plugins","transform-es2015-modules-umd",1,#10000) -#20102=@"loc,{#10000},7,31,7,73" -locations_default(#20102,#10000,7,31,7,73) -xmllocations(#20101,#20102) -xmlElements(#20039,"script",#20096,2,#10000) -#20103=@"loc,{#10000},4,5,6,13" -locations_default(#20103,#10000,4,5,6,13) -xmllocations(#20039,#20103) +xmlElements(#20066,"script",#20099,3,#10000) +#20101=@"loc,{#10000},7,5,9,13" +locations_default(#20101,#10000,7,5,9,13) +xmllocations(#20066,#20101) +#20102=* +xmlAttrs(#20102,#20066,"type","text/babel",0,#10000) +#20103=@"loc,{#10000},7,13,7,29" +locations_default(#20103,#10000,7,13,7,29) +xmllocations(#20102,#20103) #20104=* -xmlAttrs(#20104,#20039,"type","text/babel",0,#10000) -#20105=@"loc,{#10000},4,13,4,29" -locations_default(#20105,#10000,4,13,4,29) +xmlAttrs(#20104,#20066,"data-plugins","transform-es2015-modules-umd",1,#10000) +#20105=@"loc,{#10000},7,31,7,73" +locations_default(#20105,#10000,7,31,7,73) xmllocations(#20104,#20105) -#20106=* -xmlAttrs(#20106,#20039,"data-plugins","transform-es2015-modules-umd",1,#10000) -#20107=@"loc,{#10000},4,31,4,73" -locations_default(#20107,#10000,4,31,4,73) -xmllocations(#20106,#20107) -xmlElements(#20020,"script",#20096,1,#10000) -#20108=@"loc,{#10000},3,5,3,47" -locations_default(#20108,#10000,3,5,3,47) -xmllocations(#20020,#20108) +xmlElements(#20040,"script",#20099,2,#10000) +#20106=@"loc,{#10000},4,5,6,13" +locations_default(#20106,#10000,4,5,6,13) +xmllocations(#20040,#20106) +#20107=* +xmlAttrs(#20107,#20040,"type","text/babel",0,#10000) +#20108=@"loc,{#10000},4,13,4,29" +locations_default(#20108,#10000,4,13,4,29) +xmllocations(#20107,#20108) #20109=* -xmlAttrs(#20109,#20020,"type","text/jsx",0,#10000) -#20110=@"loc,{#10000},3,13,3,27" -locations_default(#20110,#10000,3,13,3,27) +xmlAttrs(#20109,#20040,"data-plugins","transform-es2015-modules-umd",1,#10000) +#20110=@"loc,{#10000},4,31,4,73" +locations_default(#20110,#10000,4,31,4,73) xmllocations(#20109,#20110) -xmlElements(#20001,"script",#20096,0,#10000) -#20111=@"loc,{#10000},2,5,2,49" -locations_default(#20111,#10000,2,5,2,49) -xmllocations(#20001,#20111) +xmlElements(#20021,"script",#20099,1,#10000) +#20111=@"loc,{#10000},3,5,3,47" +locations_default(#20111,#10000,3,5,3,47) +xmllocations(#20021,#20111) #20112=* -xmlAttrs(#20112,#20001,"type","text/babel",0,#10000) -#20113=@"loc,{#10000},2,13,2,29" -locations_default(#20113,#10000,2,13,2,29) +xmlAttrs(#20112,#20021,"type","text/jsx",0,#10000) +#20113=@"loc,{#10000},3,13,3,27" +locations_default(#20113,#10000,3,13,3,27) xmllocations(#20112,#20113) +xmlElements(#20001,"script",#20099,0,#10000) +#20114=@"loc,{#10000},2,5,2,49" +locations_default(#20114,#10000,2,5,2,49) +xmllocations(#20001,#20114) +#20115=* +xmlAttrs(#20115,#20001,"type","text/babel",0,#10000) +#20116=@"loc,{#10000},2,13,2,29" +locations_default(#20116,#10000,2,13,2,29) +xmllocations(#20115,#20116) numlines(#10000,10,4,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/jscript/output/trap/tst.js.trap b/javascript/extractor/tests/jscript/output/trap/tst.js.trap index 91510d288bb8..dec05f029119 100644 --- a/javascript/extractor/tests/jscript/output/trap/tst.js.trap +++ b/javascript/extractor/tests/jscript/output/trap/tst.js.trap @@ -77,104 +77,108 @@ locations_default(#20027,#10000,1,53,1,52) hasLocation(#20026,#20027) toplevels(#20001,0) hasLocation(#20001,#20003) -#20028=* -stmts(#20028,2,#20001,0,"functio ... es) { }") -hasLocation(#20028,#20003) -stmt_containers(#20028,#20001) +#20028=@"var;{this};{#20000}" +variables(#20028,"this",#20000) #20029=* -exprs(#20029,47,#20028,0,"functio ... es) { }") +stmts(#20029,2,#20001,0,"functio ... es) { }") hasLocation(#20029,#20003) -enclosing_stmt(#20029,#20028) -expr_containers(#20029,#20001) +stmt_containers(#20029,#20001) #20030=* -exprs(#20030,14,#20029,0,"ISMTPOn ... Arrival") -#20031=@"loc,{#10000},1,10,1,34" -locations_default(#20031,#10000,1,10,1,34) -hasLocation(#20030,#20031) -enclosing_stmt(#20030,#20028) +exprs(#20030,47,#20029,0,"functio ... es) { }") +hasLocation(#20030,#20003) +enclosing_stmt(#20030,#20029) expr_containers(#20030,#20001) -#20032=* -exprs(#20032,79,#20030,0,"ISMTPOnArrival") -hasLocation(#20032,#20007) -enclosing_stmt(#20032,#20028) -expr_containers(#20032,#20001) -literals("ISMTPOnArrival","ISMTPOnArrival",#20032) -#20033=@"var;{ISMTPOnArrival};{#20000}" -variables(#20033,"ISMTPOnArrival",#20000) -bind(#20032,#20033) -#20034=* -exprs(#20034,0,#20030,1,"OnArrival") -hasLocation(#20034,#20011) -enclosing_stmt(#20034,#20028) -expr_containers(#20034,#20001) -literals("OnArrival","OnArrival",#20034) +#20031=* +exprs(#20031,14,#20030,0,"ISMTPOn ... Arrival") +#20032=@"loc,{#10000},1,10,1,34" +locations_default(#20032,#10000,1,10,1,34) +hasLocation(#20031,#20032) +enclosing_stmt(#20031,#20029) +expr_containers(#20031,#20001) +#20033=* +exprs(#20033,79,#20031,0,"ISMTPOnArrival") +hasLocation(#20033,#20007) +enclosing_stmt(#20033,#20029) +expr_containers(#20033,#20001) +literals("ISMTPOnArrival","ISMTPOnArrival",#20033) +#20034=@"var;{ISMTPOnArrival};{#20000}" +variables(#20034,"ISMTPOnArrival",#20000) +bind(#20033,#20034) #20035=* -exprs(#20035,9,#20029,1,"functio ... es) { }") -hasLocation(#20035,#20003) -enclosing_stmt(#20035,#20028) +exprs(#20035,0,#20031,1,"OnArrival") +hasLocation(#20035,#20011) +enclosing_stmt(#20035,#20029) expr_containers(#20035,#20001) +literals("OnArrival","OnArrival",#20035) #20036=* -scopes(#20036,1) -scopenodes(#20035,#20036) -scopenesting(#20036,#20000) -#20037=@"var;{OnArrival};{#20036}" -variables(#20037,"OnArrival",#20036) -#20038=* -exprs(#20038,78,#20035,-1,"OnArrival") -hasLocation(#20038,#20011) -expr_containers(#20038,#20035) -literals("OnArrival","OnArrival",#20038) -decl(#20038,#20037) -#20039=@"var;{Msg};{#20036}" -variables(#20039,"Msg",#20036) +exprs(#20036,9,#20030,1,"functio ... es) { }") +hasLocation(#20036,#20003) +enclosing_stmt(#20036,#20029) +expr_containers(#20036,#20001) +#20037=* +scopes(#20037,1) +scopenodes(#20036,#20037) +scopenesting(#20037,#20000) +#20038=@"var;{this};{#20037}" +variables(#20038,"this",#20037) +#20039=@"var;{OnArrival};{#20037}" +variables(#20039,"OnArrival",#20037) #20040=* -exprs(#20040,78,#20035,0,"Msg") -hasLocation(#20040,#20015) -expr_containers(#20040,#20035) -literals("Msg","Msg",#20040) +exprs(#20040,78,#20036,-1,"OnArrival") +hasLocation(#20040,#20011) +expr_containers(#20040,#20036) +literals("OnArrival","OnArrival",#20040) decl(#20040,#20039) -#20041=@"var;{States};{#20036}" -variables(#20041,"States",#20036) +#20041=@"var;{Msg};{#20037}" +variables(#20041,"Msg",#20037) #20042=* -exprs(#20042,78,#20035,1,"States") -hasLocation(#20042,#20019) -expr_containers(#20042,#20035) -literals("States","States",#20042) +exprs(#20042,78,#20036,0,"Msg") +hasLocation(#20042,#20015) +expr_containers(#20042,#20036) +literals("Msg","Msg",#20042) decl(#20042,#20041) -#20043=@"var;{arguments};{#20036}" -variables(#20043,"arguments",#20036) -is_arguments_object(#20043) +#20043=@"var;{States};{#20037}" +variables(#20043,"States",#20037) #20044=* -stmts(#20044,1,#20035,-2,"{ }") -#20045=@"loc,{#10000},1,50,1,52" -locations_default(#20045,#10000,1,50,1,52) -hasLocation(#20044,#20045) -stmt_containers(#20044,#20035) +exprs(#20044,78,#20036,1,"States") +hasLocation(#20044,#20019) +expr_containers(#20044,#20036) +literals("States","States",#20044) +decl(#20044,#20043) +#20045=@"var;{arguments};{#20037}" +variables(#20045,"arguments",#20037) +is_arguments_object(#20045) #20046=* -entry_cfg_node(#20046,#20001) -#20047=@"loc,{#10000},1,1,1,0" -locations_default(#20047,#10000,1,1,1,0) +stmts(#20046,1,#20036,-2,"{ }") +#20047=@"loc,{#10000},1,50,1,52" +locations_default(#20047,#10000,1,50,1,52) hasLocation(#20046,#20047) +stmt_containers(#20046,#20036) #20048=* -exit_cfg_node(#20048,#20001) -hasLocation(#20048,#20027) -successor(#20028,#20032) -successor(#20035,#20029) -#20049=* -entry_cfg_node(#20049,#20035) -hasLocation(#20049,#20047) +entry_cfg_node(#20048,#20001) +#20049=@"loc,{#10000},1,1,1,0" +locations_default(#20049,#10000,1,1,1,0) +hasLocation(#20048,#20049) #20050=* -exit_cfg_node(#20050,#20035) +exit_cfg_node(#20050,#20001) hasLocation(#20050,#20027) -successor(#20044,#20050) +successor(#20029,#20033) +successor(#20036,#20030) +#20051=* +entry_cfg_node(#20051,#20036) +hasLocation(#20051,#20049) +#20052=* +exit_cfg_node(#20052,#20036) +hasLocation(#20052,#20027) +successor(#20046,#20052) +successor(#20044,#20046) successor(#20042,#20044) successor(#20040,#20042) -successor(#20038,#20040) -successor(#20049,#20038) -successor(#20034,#20030) -successor(#20032,#20034) -successor(#20030,#20035) -successor(#20029,#20048) -successor(#20046,#20028) +successor(#20051,#20040) +successor(#20035,#20031) +successor(#20033,#20035) +successor(#20031,#20036) +successor(#20030,#20050) +successor(#20048,#20029) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/jsx/output/trap/repro1.jsx.trap b/javascript/extractor/tests/jsx/output/trap/repro1.jsx.trap index 387b6e4d0ad8..a6a3e63def78 100644 --- a/javascript/extractor/tests/jsx/output/trap/repro1.jsx.trap +++ b/javascript/extractor/tests/jsx/output/trap/repro1.jsx.trap @@ -200,186 +200,190 @@ locations_default(#20073,#10000,1,1,5,0) hasLocation(#20001,#20073) #20074=@"var;{foo};{#20000}" variables(#20074,"foo",#20000) -#20075=* -stmts(#20075,17,#20001,0,"functio ... { };\n}") -#20076=@"loc,{#10000},1,1,4,1" -locations_default(#20076,#10000,1,1,4,1) -hasLocation(#20075,#20076) -stmt_containers(#20075,#20001) -#20077=* -exprs(#20077,78,#20075,-1,"foo") -hasLocation(#20077,#20013) -expr_containers(#20077,#20075) -literals("foo","foo",#20077) -decl(#20077,#20074) +#20075=@"var;{this};{#20000}" +variables(#20075,"this",#20000) +#20076=* +stmts(#20076,17,#20001,0,"functio ... { };\n}") +#20077=@"loc,{#10000},1,1,4,1" +locations_default(#20077,#10000,1,1,4,1) +hasLocation(#20076,#20077) +stmt_containers(#20076,#20001) #20078=* -scopes(#20078,1) -scopenodes(#20075,#20078) -scopenesting(#20078,#20000) -#20079=@"var;{arguments};{#20078}" -variables(#20079,"arguments",#20078) -is_arguments_object(#20079) -#20080=* -stmts(#20080,1,#20075,-2,"{\n l ... { };\n}") -#20081=@"loc,{#10000},1,16,4,1" -locations_default(#20081,#10000,1,16,4,1) -hasLocation(#20080,#20081) -stmt_containers(#20080,#20075) +exprs(#20078,78,#20076,-1,"foo") +hasLocation(#20078,#20013) +expr_containers(#20078,#20076) +literals("foo","foo",#20078) +decl(#20078,#20074) +#20079=* +scopes(#20079,1) +scopenodes(#20076,#20079) +scopenesting(#20079,#20000) +#20080=@"var;{this};{#20079}" +variables(#20080,"this",#20079) +#20081=@"var;{arguments};{#20079}" +variables(#20081,"arguments",#20079) +is_arguments_object(#20081) #20082=* -scopes(#20082,4) -scopenodes(#20080,#20082) -scopenesting(#20082,#20078) -#20083=@"var;{x};{#20082}" -variables(#20083,"x",#20082) +stmts(#20082,1,#20076,-2,"{\n l ... { };\n}") +#20083=@"loc,{#10000},1,16,4,1" +locations_default(#20083,#10000,1,16,4,1) +hasLocation(#20082,#20083) +stmt_containers(#20082,#20076) #20084=* -stmts(#20084,23,#20080,0,"let x =
;") -#20085=@"loc,{#10000},2,5,2,24" -locations_default(#20085,#10000,2,5,2,24) -hasLocation(#20084,#20085) -stmt_containers(#20084,#20075) +scopes(#20084,4) +scopenodes(#20082,#20084) +scopenesting(#20084,#20079) +#20085=@"var;{x};{#20084}" +variables(#20085,"x",#20084) #20086=* -exprs(#20086,64,#20084,0,"x =
") -#20087=@"loc,{#10000},2,9,2,23" -locations_default(#20087,#10000,2,9,2,23) +stmts(#20086,23,#20082,0,"let x =
;") +#20087=@"loc,{#10000},2,5,2,24" +locations_default(#20087,#10000,2,5,2,24) hasLocation(#20086,#20087) -enclosing_stmt(#20086,#20084) -expr_containers(#20086,#20075) +stmt_containers(#20086,#20076) #20088=* -exprs(#20088,78,#20086,0,"x") -hasLocation(#20088,#20023) -enclosing_stmt(#20088,#20084) -expr_containers(#20088,#20075) -literals("x","x",#20088) -decl(#20088,#20083) -#20089=* -exprs(#20089,89,#20086,1,"
") -#20090=@"loc,{#10000},2,13,2,23" -locations_default(#20090,#10000,2,13,2,23) -hasLocation(#20089,#20090) -enclosing_stmt(#20089,#20084) -expr_containers(#20089,#20075) +exprs(#20088,64,#20086,0,"x =
") +#20089=@"loc,{#10000},2,9,2,23" +locations_default(#20089,#10000,2,9,2,23) +hasLocation(#20088,#20089) +enclosing_stmt(#20088,#20086) +expr_containers(#20088,#20076) +#20090=* +exprs(#20090,78,#20088,0,"x") +hasLocation(#20090,#20023) +enclosing_stmt(#20090,#20086) +expr_containers(#20090,#20076) +literals("x","x",#20090) +decl(#20090,#20085) #20091=* -exprs(#20091,0,#20089,-1,"div") -hasLocation(#20091,#20029) -enclosing_stmt(#20091,#20084) -expr_containers(#20091,#20075) -literals("div","div",#20091) -#20092=* -stmts(#20092,9,#20080,1,"return ... => { };") -#20093=@"loc,{#10000},3,5,3,42" -locations_default(#20093,#10000,3,5,3,42) -hasLocation(#20092,#20093) -stmt_containers(#20092,#20075) +exprs(#20091,89,#20088,1,"
") +#20092=@"loc,{#10000},2,13,2,23" +locations_default(#20092,#10000,2,13,2,23) +hasLocation(#20091,#20092) +enclosing_stmt(#20091,#20086) +expr_containers(#20091,#20076) +#20093=* +exprs(#20093,0,#20091,-1,"div") +hasLocation(#20093,#20029) +enclosing_stmt(#20093,#20086) +expr_containers(#20093,#20076) +literals("div","div",#20093) #20094=* -exprs(#20094,11,#20092,0,"true ? ... => { }") -#20095=@"loc,{#10000},3,12,3,41" -locations_default(#20095,#10000,3,12,3,41) +stmts(#20094,9,#20082,1,"return ... => { };") +#20095=@"loc,{#10000},3,5,3,42" +locations_default(#20095,#10000,3,5,3,42) hasLocation(#20094,#20095) -enclosing_stmt(#20094,#20092) -expr_containers(#20094,#20075) +stmt_containers(#20094,#20076) #20096=* -exprs(#20096,2,#20094,0,"true") -hasLocation(#20096,#20045) -enclosing_stmt(#20096,#20092) -expr_containers(#20096,#20075) -literals("true","true",#20096) -#20097=* -exprs(#20097,63,#20094,1,"(null, null)") -#20098=@"loc,{#10000},3,19,3,30" -locations_default(#20098,#10000,3,19,3,30) -hasLocation(#20097,#20098) -enclosing_stmt(#20097,#20092) -expr_containers(#20097,#20075) +exprs(#20096,11,#20094,0,"true ? ... => { }") +#20097=@"loc,{#10000},3,12,3,41" +locations_default(#20097,#10000,3,12,3,41) +hasLocation(#20096,#20097) +enclosing_stmt(#20096,#20094) +expr_containers(#20096,#20076) +#20098=* +exprs(#20098,2,#20096,0,"true") +hasLocation(#20098,#20045) +enclosing_stmt(#20098,#20094) +expr_containers(#20098,#20076) +literals("true","true",#20098) #20099=* -exprs(#20099,10,#20097,0,"null, null") -#20100=@"loc,{#10000},3,20,3,29" -locations_default(#20100,#10000,3,20,3,29) +exprs(#20099,63,#20096,1,"(null, null)") +#20100=@"loc,{#10000},3,19,3,30" +locations_default(#20100,#10000,3,19,3,30) hasLocation(#20099,#20100) -enclosing_stmt(#20099,#20092) -expr_containers(#20099,#20075) +enclosing_stmt(#20099,#20094) +expr_containers(#20099,#20076) #20101=* -exprs(#20101,1,#20099,0,"null") -hasLocation(#20101,#20051) -enclosing_stmt(#20101,#20092) -expr_containers(#20101,#20075) -literals("null","null",#20101) -#20102=* -exprs(#20102,1,#20099,1,"null") -hasLocation(#20102,#20055) -enclosing_stmt(#20102,#20092) -expr_containers(#20102,#20075) -literals("null","null",#20102) +exprs(#20101,10,#20099,0,"null, null") +#20102=@"loc,{#10000},3,20,3,29" +locations_default(#20102,#10000,3,20,3,29) +hasLocation(#20101,#20102) +enclosing_stmt(#20101,#20094) +expr_containers(#20101,#20076) #20103=* -exprs(#20103,65,#20094,2,"e => { }") -#20104=@"loc,{#10000},3,34,3,41" -locations_default(#20104,#10000,3,34,3,41) -hasLocation(#20103,#20104) -enclosing_stmt(#20103,#20092) -expr_containers(#20103,#20075) +exprs(#20103,1,#20101,0,"null") +hasLocation(#20103,#20051) +enclosing_stmt(#20103,#20094) +expr_containers(#20103,#20076) +literals("null","null",#20103) +#20104=* +exprs(#20104,1,#20101,1,"null") +hasLocation(#20104,#20055) +enclosing_stmt(#20104,#20094) +expr_containers(#20104,#20076) +literals("null","null",#20104) #20105=* -scopes(#20105,1) -scopenodes(#20103,#20105) -scopenesting(#20105,#20082) -#20106=@"var;{e};{#20105}" -variables(#20106,"e",#20105) +exprs(#20105,65,#20096,2,"e => { }") +#20106=@"loc,{#10000},3,34,3,41" +locations_default(#20106,#10000,3,34,3,41) +hasLocation(#20105,#20106) +enclosing_stmt(#20105,#20094) +expr_containers(#20105,#20076) #20107=* -exprs(#20107,78,#20103,0,"e") -hasLocation(#20107,#20061) -expr_containers(#20107,#20103) -literals("e","e",#20107) -decl(#20107,#20106) -#20108=* -stmts(#20108,1,#20103,-2,"{ }") -#20109=@"loc,{#10000},3,39,3,41" -locations_default(#20109,#10000,3,39,3,41) -hasLocation(#20108,#20109) -stmt_containers(#20108,#20103) +scopes(#20107,1) +scopenodes(#20105,#20107) +scopenesting(#20107,#20084) +#20108=@"var;{e};{#20107}" +variables(#20108,"e",#20107) +#20109=* +exprs(#20109,78,#20105,0,"e") +hasLocation(#20109,#20061) +expr_containers(#20109,#20105) +literals("e","e",#20109) +decl(#20109,#20108) #20110=* -entry_cfg_node(#20110,#20001) -#20111=@"loc,{#10000},1,1,1,0" -locations_default(#20111,#10000,1,1,1,0) +stmts(#20110,1,#20105,-2,"{ }") +#20111=@"loc,{#10000},3,39,3,41" +locations_default(#20111,#10000,3,39,3,41) hasLocation(#20110,#20111) +stmt_containers(#20110,#20105) #20112=* -exit_cfg_node(#20112,#20001) -hasLocation(#20112,#20072) -successor(#20075,#20112) -#20113=* -entry_cfg_node(#20113,#20075) -hasLocation(#20113,#20111) +entry_cfg_node(#20112,#20001) +#20113=@"loc,{#10000},1,1,1,0" +locations_default(#20113,#10000,1,1,1,0) +hasLocation(#20112,#20113) #20114=* -exit_cfg_node(#20114,#20075) -#20115=@"loc,{#10000},4,2,4,1" -locations_default(#20115,#10000,4,2,4,1) -hasLocation(#20114,#20115) -successor(#20094,#20096) -successor(#20096,#20097) -successor(#20097,#20099) -successor(#20099,#20101) -successor(#20102,#20092) -successor(#20101,#20102) -successor(#20103,#20092) +exit_cfg_node(#20114,#20001) +hasLocation(#20114,#20072) +successor(#20076,#20114) +#20115=* +entry_cfg_node(#20115,#20076) +hasLocation(#20115,#20113) #20116=* -entry_cfg_node(#20116,#20103) -#20117=@"loc,{#10000},3,34,3,33" -locations_default(#20117,#10000,3,34,3,33) +exit_cfg_node(#20116,#20076) +#20117=@"loc,{#10000},4,2,4,1" +locations_default(#20117,#10000,4,2,4,1) hasLocation(#20116,#20117) +successor(#20096,#20098) +successor(#20098,#20099) +successor(#20099,#20101) +successor(#20101,#20103) +successor(#20104,#20094) +successor(#20103,#20104) +successor(#20105,#20094) #20118=* -exit_cfg_node(#20118,#20103) -#20119=@"loc,{#10000},3,42,3,41" -locations_default(#20119,#10000,3,42,3,41) +entry_cfg_node(#20118,#20105) +#20119=@"loc,{#10000},3,34,3,33" +locations_default(#20119,#10000,3,34,3,33) hasLocation(#20118,#20119) -successor(#20108,#20118) -successor(#20107,#20108) -successor(#20116,#20107) -successor(#20092,#20114) -successor(#20084,#20088) -successor(#20091,#20089) -successor(#20089,#20086) -successor(#20088,#20091) -successor(#20086,#20094) -successor(#20080,#20084) -successor(#20113,#20080) -successor(#20077,#20075) -successor(#20110,#20077) +#20120=* +exit_cfg_node(#20120,#20105) +#20121=@"loc,{#10000},3,42,3,41" +locations_default(#20121,#10000,3,42,3,41) +hasLocation(#20120,#20121) +successor(#20110,#20120) +successor(#20109,#20110) +successor(#20118,#20109) +successor(#20094,#20116) +successor(#20086,#20090) +successor(#20093,#20091) +successor(#20091,#20088) +successor(#20090,#20093) +successor(#20088,#20096) +successor(#20082,#20086) +successor(#20115,#20082) +successor(#20078,#20076) +successor(#20112,#20078) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/jsx/output/trap/tst.js.trap b/javascript/extractor/tests/jsx/output/trap/tst.js.trap index 2a2bfa4689fe..13ea33ba3966 100644 --- a/javascript/extractor/tests/jsx/output/trap/tst.js.trap +++ b/javascript/extractor/tests/jsx/output/trap/tst.js.trap @@ -424,341 +424,343 @@ toplevels(#20001,0) #20164=@"loc,{#10000},1,1,6,0" locations_default(#20164,#10000,1,1,6,0) hasLocation(#20001,#20164) -#20165=* -stmts(#20165,2,#20001,0,"
;") -hasLocation(#20165,#20003) -stmt_containers(#20165,#20001) +#20165=@"var;{this};{#20000}" +variables(#20165,"this",#20000) #20166=* -exprs(#20166,89,#20165,0,"") -#20167=@"loc,{#10000},1,1,1,4" -locations_default(#20167,#10000,1,1,1,4) -hasLocation(#20166,#20167) -enclosing_stmt(#20166,#20165) -expr_containers(#20166,#20001) -#20168=* -exprs(#20168,0,#20166,-1,"a") -hasLocation(#20168,#20015) -enclosing_stmt(#20168,#20165) -expr_containers(#20168,#20001) -literals("a","a",#20168) +stmts(#20166,2,#20001,0,";") +hasLocation(#20166,#20003) +stmt_containers(#20166,#20001) +#20167=* +exprs(#20167,89,#20166,0,"") +#20168=@"loc,{#10000},1,1,1,4" +locations_default(#20168,#10000,1,1,1,4) +hasLocation(#20167,#20168) +enclosing_stmt(#20167,#20166) +expr_containers(#20167,#20001) #20169=* -stmts(#20169,2,#20001,1,";") -hasLocation(#20169,#20005) -stmt_containers(#20169,#20001) +exprs(#20169,0,#20167,-1,"a") +hasLocation(#20169,#20015) +enclosing_stmt(#20169,#20166) +expr_containers(#20169,#20001) +literals("a","a",#20169) #20170=* -exprs(#20170,89,#20169,0,"") -#20171=@"loc,{#10000},2,1,2,10" -locations_default(#20171,#10000,2,1,2,10) -hasLocation(#20170,#20171) -enclosing_stmt(#20170,#20169) -expr_containers(#20170,#20001) -#20172=* -exprs(#20172,90,#20170,-1,"b:c") -#20173=@"loc,{#10000},2,2,2,4" -locations_default(#20173,#10000,2,2,2,4) -hasLocation(#20172,#20173) -enclosing_stmt(#20172,#20169) -expr_containers(#20172,#20001) -#20174=* -exprs(#20174,0,#20172,0,"b") -hasLocation(#20174,#20025) -enclosing_stmt(#20174,#20169) -expr_containers(#20174,#20001) -literals("b","b",#20174) +stmts(#20170,2,#20001,1,";") +hasLocation(#20170,#20005) +stmt_containers(#20170,#20001) +#20171=* +exprs(#20171,89,#20170,0,"") +#20172=@"loc,{#10000},2,1,2,10" +locations_default(#20172,#10000,2,1,2,10) +hasLocation(#20171,#20172) +enclosing_stmt(#20171,#20170) +expr_containers(#20171,#20001) +#20173=* +exprs(#20173,90,#20171,-1,"b:c") +#20174=@"loc,{#10000},2,2,2,4" +locations_default(#20174,#10000,2,2,2,4) +hasLocation(#20173,#20174) +enclosing_stmt(#20173,#20170) +expr_containers(#20173,#20001) #20175=* -exprs(#20175,0,#20172,1,"c") -hasLocation(#20175,#20029) -enclosing_stmt(#20175,#20169) +exprs(#20175,0,#20173,0,"b") +hasLocation(#20175,#20025) +enclosing_stmt(#20175,#20170) expr_containers(#20175,#20001) -literals("c","c",#20175) +literals("b","b",#20175) #20176=* -properties(#20176,#20170,0,3,"d:e") -#20177=@"loc,{#10000},2,6,2,8" -locations_default(#20177,#10000,2,6,2,8) -hasLocation(#20176,#20177) -#20178=* -exprs(#20178,90,#20176,0,"d:e") -hasLocation(#20178,#20177) -enclosing_stmt(#20178,#20169) -expr_containers(#20178,#20001) +exprs(#20176,0,#20173,1,"c") +hasLocation(#20176,#20029) +enclosing_stmt(#20176,#20170) +expr_containers(#20176,#20001) +literals("c","c",#20176) +#20177=* +properties(#20177,#20171,0,3,"d:e") +#20178=@"loc,{#10000},2,6,2,8" +locations_default(#20178,#10000,2,6,2,8) +hasLocation(#20177,#20178) #20179=* -exprs(#20179,0,#20178,0,"d") -hasLocation(#20179,#20031) -enclosing_stmt(#20179,#20169) +exprs(#20179,90,#20177,0,"d:e") +hasLocation(#20179,#20178) +enclosing_stmt(#20179,#20170) expr_containers(#20179,#20001) -literals("d","d",#20179) #20180=* -exprs(#20180,0,#20178,1,"e") -hasLocation(#20180,#20035) -enclosing_stmt(#20180,#20169) +exprs(#20180,0,#20179,0,"d") +hasLocation(#20180,#20031) +enclosing_stmt(#20180,#20170) expr_containers(#20180,#20001) -literals("e","e",#20180) +literals("d","d",#20180) #20181=* -stmts(#20181,2,#20001,2,";") -hasLocation(#20181,#20007) -stmt_containers(#20181,#20001) +exprs(#20181,0,#20179,1,"e") +hasLocation(#20181,#20035) +enclosing_stmt(#20181,#20170) +expr_containers(#20181,#20001) +literals("e","e",#20181) #20182=* -exprs(#20182,89,#20181,0,"") -#20183=@"loc,{#10000},3,1,3,51" -locations_default(#20183,#10000,3,1,3,51) -hasLocation(#20182,#20183) -enclosing_stmt(#20182,#20181) -expr_containers(#20182,#20001) -#20184=* -exprs(#20184,0,#20182,-1,"f") -hasLocation(#20184,#20045) -enclosing_stmt(#20184,#20181) -expr_containers(#20184,#20001) -literals("f","f",#20184) +stmts(#20182,2,#20001,2,";") +hasLocation(#20182,#20007) +stmt_containers(#20182,#20001) +#20183=* +exprs(#20183,89,#20182,0,"") +#20184=@"loc,{#10000},3,1,3,51" +locations_default(#20184,#10000,3,1,3,51) +hasLocation(#20183,#20184) +enclosing_stmt(#20183,#20182) +expr_containers(#20183,#20001) #20185=* -properties(#20185,#20182,0,3,"g:h=""b&r""") -#20186=@"loc,{#10000},3,4,3,16" -locations_default(#20186,#10000,3,4,3,16) -hasLocation(#20185,#20186) -#20187=* -exprs(#20187,90,#20185,0,"g:h") -#20188=@"loc,{#10000},3,4,3,6" -locations_default(#20188,#10000,3,4,3,6) -hasLocation(#20187,#20188) -enclosing_stmt(#20187,#20181) -expr_containers(#20187,#20001) -#20189=* -exprs(#20189,0,#20187,0,"g") -hasLocation(#20189,#20047) -enclosing_stmt(#20189,#20181) -expr_containers(#20189,#20001) -literals("g","g",#20189) +exprs(#20185,0,#20183,-1,"f") +hasLocation(#20185,#20045) +enclosing_stmt(#20185,#20182) +expr_containers(#20185,#20001) +literals("f","f",#20185) +#20186=* +properties(#20186,#20183,0,3,"g:h=""b&r""") +#20187=@"loc,{#10000},3,4,3,16" +locations_default(#20187,#10000,3,4,3,16) +hasLocation(#20186,#20187) +#20188=* +exprs(#20188,90,#20186,0,"g:h") +#20189=@"loc,{#10000},3,4,3,6" +locations_default(#20189,#10000,3,4,3,6) +hasLocation(#20188,#20189) +enclosing_stmt(#20188,#20182) +expr_containers(#20188,#20001) #20190=* -exprs(#20190,0,#20187,1,"h") -hasLocation(#20190,#20051) -enclosing_stmt(#20190,#20181) +exprs(#20190,0,#20188,0,"g") +hasLocation(#20190,#20047) +enclosing_stmt(#20190,#20182) expr_containers(#20190,#20001) -literals("h","h",#20190) +literals("g","g",#20190) #20191=* -exprs(#20191,4,#20185,1,"""b&r""") -hasLocation(#20191,#20055) -enclosing_stmt(#20191,#20181) +exprs(#20191,0,#20188,1,"h") +hasLocation(#20191,#20051) +enclosing_stmt(#20191,#20182) expr_containers(#20191,#20001) -literals("b&r","""b&r""",#20191) +literals("h","h",#20191) #20192=* -regexpterm(#20192,14,#20191,0,"b&r") -#20193=@"loc,{#10000},3,9,3,11" -locations_default(#20193,#10000,3,9,3,11) -hasLocation(#20192,#20193) -regexp_const_value(#20192,"b&r") -#20194=* -properties(#20194,#20182,1,3,"i={""a""+""b""}") -#20195=@"loc,{#10000},3,18,3,28" -locations_default(#20195,#10000,3,18,3,28) -hasLocation(#20194,#20195) -#20196=* -exprs(#20196,0,#20194,0,"i") -hasLocation(#20196,#20057) -enclosing_stmt(#20196,#20181) -expr_containers(#20196,#20001) -literals("i","i",#20196) +exprs(#20192,4,#20186,1,"""b&r""") +hasLocation(#20192,#20055) +enclosing_stmt(#20192,#20182) +expr_containers(#20192,#20001) +literals("b&r","""b&r""",#20192) +#20193=* +regexpterm(#20193,14,#20192,0,"b&r") +#20194=@"loc,{#10000},3,9,3,11" +locations_default(#20194,#10000,3,9,3,11) +hasLocation(#20193,#20194) +regexp_const_value(#20193,"b&r") +#20195=* +properties(#20195,#20183,1,3,"i={""a""+""b""}") +#20196=@"loc,{#10000},3,18,3,28" +locations_default(#20196,#10000,3,18,3,28) +hasLocation(#20195,#20196) #20197=* -exprs(#20197,34,#20194,1,"""a""+""b""") -#20198=@"loc,{#10000},3,21,3,27" -locations_default(#20198,#10000,3,21,3,27) -hasLocation(#20197,#20198) -enclosing_stmt(#20197,#20181) +exprs(#20197,0,#20195,0,"i") +hasLocation(#20197,#20057) +enclosing_stmt(#20197,#20182) expr_containers(#20197,#20001) -#20199=* -exprs(#20199,4,#20197,0,"""a""") -hasLocation(#20199,#20063) -enclosing_stmt(#20199,#20181) -expr_containers(#20199,#20001) -literals("a","""a""",#20199) +literals("i","i",#20197) +#20198=* +exprs(#20198,34,#20195,1,"""a""+""b""") +#20199=@"loc,{#10000},3,21,3,27" +locations_default(#20199,#10000,3,21,3,27) +hasLocation(#20198,#20199) +enclosing_stmt(#20198,#20182) +expr_containers(#20198,#20001) #20200=* -exprs(#20200,4,#20197,1,"""b""") -hasLocation(#20200,#20067) -enclosing_stmt(#20200,#20181) +exprs(#20200,4,#20198,0,"""a""") +hasLocation(#20200,#20063) +enclosing_stmt(#20200,#20182) expr_containers(#20200,#20001) -literals("b","""b""",#20200) +literals("a","""a""",#20200) #20201=* -regexpterm(#20201,14,#20197,0,"ab") -#20202=@"loc,{#10000},3,22,3,26" -locations_default(#20202,#10000,3,22,3,26) -hasLocation(#20201,#20202) -regexp_const_value(#20201,"ab") -#20203=* -exprs(#20203,79,#20182,-2,"j") -hasLocation(#20203,#20075) -enclosing_stmt(#20203,#20181) -expr_containers(#20203,#20001) -literals("j","j",#20203) -#20204=@"var;{j};{#20000}" -variables(#20204,"j",#20000) -bind(#20203,#20204) -#20205=* -exprs(#20205,89,#20182,-3,"") -#20206=@"loc,{#10000},3,33,3,47" -locations_default(#20206,#10000,3,33,3,47) -hasLocation(#20205,#20206) -enclosing_stmt(#20205,#20181) -expr_containers(#20205,#20001) -#20207=* -exprs(#20207,14,#20205,-1,"k.l") -#20208=@"loc,{#10000},3,34,3,36" -locations_default(#20208,#10000,3,34,3,36) -hasLocation(#20207,#20208) -enclosing_stmt(#20207,#20181) -expr_containers(#20207,#20001) -#20209=* -exprs(#20209,79,#20207,0,"k") -hasLocation(#20209,#20081) -enclosing_stmt(#20209,#20181) -expr_containers(#20209,#20001) -literals("k","k",#20209) -#20210=@"var;{k};{#20000}" -variables(#20210,"k",#20000) -bind(#20209,#20210) -#20211=* -exprs(#20211,0,#20207,1,"l") -hasLocation(#20211,#20085) -enclosing_stmt(#20211,#20181) -expr_containers(#20211,#20001) -literals("l","l",#20211) +exprs(#20201,4,#20198,1,"""b""") +hasLocation(#20201,#20067) +enclosing_stmt(#20201,#20182) +expr_containers(#20201,#20001) +literals("b","""b""",#20201) +#20202=* +regexpterm(#20202,14,#20198,0,"ab") +#20203=@"loc,{#10000},3,22,3,26" +locations_default(#20203,#10000,3,22,3,26) +hasLocation(#20202,#20203) +regexp_const_value(#20202,"ab") +#20204=* +exprs(#20204,79,#20183,-2,"j") +hasLocation(#20204,#20075) +enclosing_stmt(#20204,#20182) +expr_containers(#20204,#20001) +literals("j","j",#20204) +#20205=@"var;{j};{#20000}" +variables(#20205,"j",#20000) +bind(#20204,#20205) +#20206=* +exprs(#20206,89,#20183,-3,"") +#20207=@"loc,{#10000},3,33,3,47" +locations_default(#20207,#10000,3,33,3,47) +hasLocation(#20206,#20207) +enclosing_stmt(#20206,#20182) +expr_containers(#20206,#20001) +#20208=* +exprs(#20208,14,#20206,-1,"k.l") +#20209=@"loc,{#10000},3,34,3,36" +locations_default(#20209,#10000,3,34,3,36) +hasLocation(#20208,#20209) +enclosing_stmt(#20208,#20182) +expr_containers(#20208,#20001) +#20210=* +exprs(#20210,79,#20208,0,"k") +hasLocation(#20210,#20081) +enclosing_stmt(#20210,#20182) +expr_containers(#20210,#20001) +literals("k","k",#20210) +#20211=@"var;{k};{#20000}" +variables(#20211,"k",#20000) +bind(#20210,#20211) #20212=* -exprs(#20212,89,#20205,-2,"") -#20213=@"loc,{#10000},3,38,3,41" -locations_default(#20213,#10000,3,38,3,41) -hasLocation(#20212,#20213) -enclosing_stmt(#20212,#20181) +exprs(#20212,0,#20208,1,"l") +hasLocation(#20212,#20085) +enclosing_stmt(#20212,#20182) expr_containers(#20212,#20001) -#20214=* -exprs(#20214,79,#20212,-1,"M") -hasLocation(#20214,#20091) -enclosing_stmt(#20214,#20181) -expr_containers(#20214,#20001) -literals("M","M",#20214) -#20215=@"var;{M};{#20000}" -variables(#20215,"M",#20000) -bind(#20214,#20215) -#20216=* -stmts(#20216,2,#20001,3,";") -hasLocation(#20216,#20009) -stmt_containers(#20216,#20001) +literals("l","l",#20212) +#20213=* +exprs(#20213,89,#20206,-2,"") +#20214=@"loc,{#10000},3,38,3,41" +locations_default(#20214,#10000,3,38,3,41) +hasLocation(#20213,#20214) +enclosing_stmt(#20213,#20182) +expr_containers(#20213,#20001) +#20215=* +exprs(#20215,79,#20213,-1,"M") +hasLocation(#20215,#20091) +enclosing_stmt(#20215,#20182) +expr_containers(#20215,#20001) +literals("M","M",#20215) +#20216=@"var;{M};{#20000}" +variables(#20216,"M",#20000) +bind(#20215,#20216) #20217=* -exprs(#20217,89,#20216,0,"") -#20218=@"loc,{#10000},4,1,4,15" -locations_default(#20218,#10000,4,1,4,15) -hasLocation(#20217,#20218) -enclosing_stmt(#20217,#20216) -expr_containers(#20217,#20001) -#20219=* -exprs(#20219,0,#20217,-1,"n") -hasLocation(#20219,#20121) -enclosing_stmt(#20219,#20216) -expr_containers(#20219,#20001) -literals("n","n",#20219) +stmts(#20217,2,#20001,3,";") +hasLocation(#20217,#20009) +stmt_containers(#20217,#20001) +#20218=* +exprs(#20218,89,#20217,0,"") +#20219=@"loc,{#10000},4,1,4,15" +locations_default(#20219,#10000,4,1,4,15) +hasLocation(#20218,#20219) +enclosing_stmt(#20218,#20217) +expr_containers(#20218,#20001) #20220=* -properties(#20220,#20217,0,3,"{...props}") -#20221=@"loc,{#10000},4,4,4,13" -locations_default(#20221,#10000,4,4,4,13) -hasLocation(#20220,#20221) -#20222=* -exprs(#20222,66,#20220,1,"...props") -hasLocation(#20222,#20221) -enclosing_stmt(#20222,#20216) -expr_containers(#20222,#20001) +exprs(#20220,0,#20218,-1,"n") +hasLocation(#20220,#20121) +enclosing_stmt(#20220,#20217) +expr_containers(#20220,#20001) +literals("n","n",#20220) +#20221=* +properties(#20221,#20218,0,3,"{...props}") +#20222=@"loc,{#10000},4,4,4,13" +locations_default(#20222,#10000,4,4,4,13) +hasLocation(#20221,#20222) #20223=* -exprs(#20223,79,#20222,0,"props") -hasLocation(#20223,#20127) -enclosing_stmt(#20223,#20216) +exprs(#20223,66,#20221,1,"...props") +hasLocation(#20223,#20222) +enclosing_stmt(#20223,#20217) expr_containers(#20223,#20001) -literals("props","props",#20223) -#20224=@"var;{props};{#20000}" -variables(#20224,"props",#20000) -bind(#20223,#20224) -#20225=* -stmts(#20225,2,#20001,4,"<>") -hasLocation(#20225,#20011) -stmt_containers(#20225,#20001) +#20224=* +exprs(#20224,79,#20223,0,"props") +hasLocation(#20224,#20127) +enclosing_stmt(#20224,#20217) +expr_containers(#20224,#20001) +literals("props","props",#20224) +#20225=@"var;{props};{#20000}" +variables(#20225,"props",#20000) +bind(#20224,#20225) #20226=* -exprs(#20226,89,#20225,0,"<>") +stmts(#20226,2,#20001,4,"<>") hasLocation(#20226,#20011) -enclosing_stmt(#20226,#20225) -expr_containers(#20226,#20001) +stmt_containers(#20226,#20001) #20227=* -exprs(#20227,89,#20226,-2,"") -#20228=@"loc,{#10000},5,3,5,6" -locations_default(#20228,#10000,5,3,5,6) -hasLocation(#20227,#20228) -enclosing_stmt(#20227,#20225) +exprs(#20227,89,#20226,0,"<>") +hasLocation(#20227,#20011) +enclosing_stmt(#20227,#20226) expr_containers(#20227,#20001) -#20229=* -exprs(#20229,0,#20227,-1,"a") -hasLocation(#20229,#20143) -enclosing_stmt(#20229,#20225) -expr_containers(#20229,#20001) -literals("a","a",#20229) +#20228=* +exprs(#20228,89,#20227,-2,"") +#20229=@"loc,{#10000},5,3,5,6" +locations_default(#20229,#10000,5,3,5,6) +hasLocation(#20228,#20229) +enclosing_stmt(#20228,#20226) +expr_containers(#20228,#20001) #20230=* -exprs(#20230,89,#20226,-3,"") -#20231=@"loc,{#10000},5,7,5,10" -locations_default(#20231,#10000,5,7,5,10) -hasLocation(#20230,#20231) -enclosing_stmt(#20230,#20225) +exprs(#20230,0,#20228,-1,"a") +hasLocation(#20230,#20143) +enclosing_stmt(#20230,#20226) expr_containers(#20230,#20001) -#20232=* -exprs(#20232,0,#20230,-1,"b") -hasLocation(#20232,#20151) -enclosing_stmt(#20232,#20225) -expr_containers(#20232,#20001) -literals("b","b",#20232) +literals("a","a",#20230) +#20231=* +exprs(#20231,89,#20227,-3,"") +#20232=@"loc,{#10000},5,7,5,10" +locations_default(#20232,#10000,5,7,5,10) +hasLocation(#20231,#20232) +enclosing_stmt(#20231,#20226) +expr_containers(#20231,#20001) #20233=* -entry_cfg_node(#20233,#20001) -#20234=@"loc,{#10000},1,1,1,0" -locations_default(#20234,#10000,1,1,1,0) -hasLocation(#20233,#20234) -#20235=* -exit_cfg_node(#20235,#20001) -hasLocation(#20235,#20163) -successor(#20225,#20229) -successor(#20232,#20230) -successor(#20230,#20226) -successor(#20229,#20227) -successor(#20227,#20232) -successor(#20226,#20235) -successor(#20216,#20219) -successor(#20223,#20222) -successor(#20222,#20220) -successor(#20220,#20217) -successor(#20219,#20223) -successor(#20217,#20225) -successor(#20181,#20184) -successor(#20214,#20212) -successor(#20212,#20205) -successor(#20211,#20207) -successor(#20209,#20211) -successor(#20207,#20214) -successor(#20205,#20182) -successor(#20203,#20209) -successor(#20200,#20197) -successor(#20199,#20200) -successor(#20197,#20194) -successor(#20196,#20199) -successor(#20194,#20203) -successor(#20191,#20185) -successor(#20190,#20187) -successor(#20189,#20190) -successor(#20187,#20191) -successor(#20185,#20196) -successor(#20184,#20189) -successor(#20182,#20216) -successor(#20169,#20174) -successor(#20180,#20178) -successor(#20179,#20180) -successor(#20178,#20176) -successor(#20176,#20170) -successor(#20175,#20172) -successor(#20174,#20175) -successor(#20172,#20179) -successor(#20170,#20181) -successor(#20165,#20168) -successor(#20168,#20166) +exprs(#20233,0,#20231,-1,"b") +hasLocation(#20233,#20151) +enclosing_stmt(#20233,#20226) +expr_containers(#20233,#20001) +literals("b","b",#20233) +#20234=* +entry_cfg_node(#20234,#20001) +#20235=@"loc,{#10000},1,1,1,0" +locations_default(#20235,#10000,1,1,1,0) +hasLocation(#20234,#20235) +#20236=* +exit_cfg_node(#20236,#20001) +hasLocation(#20236,#20163) +successor(#20226,#20230) +successor(#20233,#20231) +successor(#20231,#20227) +successor(#20230,#20228) +successor(#20228,#20233) +successor(#20227,#20236) +successor(#20217,#20220) +successor(#20224,#20223) +successor(#20223,#20221) +successor(#20221,#20218) +successor(#20220,#20224) +successor(#20218,#20226) +successor(#20182,#20185) +successor(#20215,#20213) +successor(#20213,#20206) +successor(#20212,#20208) +successor(#20210,#20212) +successor(#20208,#20215) +successor(#20206,#20183) +successor(#20204,#20210) +successor(#20201,#20198) +successor(#20200,#20201) +successor(#20198,#20195) +successor(#20197,#20200) +successor(#20195,#20204) +successor(#20192,#20186) +successor(#20191,#20188) +successor(#20190,#20191) +successor(#20188,#20192) +successor(#20186,#20197) +successor(#20185,#20190) +successor(#20183,#20217) +successor(#20170,#20175) +successor(#20181,#20179) +successor(#20180,#20181) +successor(#20179,#20177) +successor(#20177,#20171) +successor(#20176,#20173) +successor(#20175,#20176) +successor(#20173,#20180) +successor(#20171,#20182) successor(#20166,#20169) -successor(#20233,#20165) +successor(#20169,#20167) +successor(#20167,#20170) +successor(#20234,#20166) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/jsx/output/trap/tst.jsx.trap b/javascript/extractor/tests/jsx/output/trap/tst.jsx.trap index 2f5d17f2332d..2ee59b797f5c 100644 --- a/javascript/extractor/tests/jsx/output/trap/tst.jsx.trap +++ b/javascript/extractor/tests/jsx/output/trap/tst.jsx.trap @@ -17,12 +17,14 @@ locations_default(#20003,#10000,1,1,1,0) hasLocation(#20002,#20003) toplevels(#20001,0) hasLocation(#20001,#20003) -#20004=* -entry_cfg_node(#20004,#20001) -hasLocation(#20004,#20003) +#20004=@"var;{this};{#20000}" +variables(#20004,"this",#20000) #20005=* -exit_cfg_node(#20005,#20001) +entry_cfg_node(#20005,#20001) hasLocation(#20005,#20003) -successor(#20004,#20005) +#20006=* +exit_cfg_node(#20006,#20001) +hasLocation(#20006,#20003) +successor(#20005,#20006) numlines(#10000,0,0,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/jsx/output/trap/tst2.js.trap b/javascript/extractor/tests/jsx/output/trap/tst2.js.trap index 48e8891b95d9..343362903852 100644 --- a/javascript/extractor/tests/jsx/output/trap/tst2.js.trap +++ b/javascript/extractor/tests/jsx/output/trap/tst2.js.trap @@ -62,39 +62,41 @@ locations_default(#20021,#10000,1,14,1,13) hasLocation(#20020,#20021) toplevels(#20001,0) hasLocation(#20001,#20003) -#20022=* -stmts(#20022,2,#20001,0,"/b>") -hasLocation(#20022,#20003) -stmt_containers(#20022,#20001) +#20022=@"var;{this};{#20000}" +variables(#20022,"this",#20000) #20023=* -exprs(#20023,89,#20022,0,"/b>") +stmts(#20023,2,#20001,0,"/b>") hasLocation(#20023,#20003) -enclosing_stmt(#20023,#20022) -expr_containers(#20023,#20001) +stmt_containers(#20023,#20001) #20024=* -exprs(#20024,0,#20023,-1,"a") -hasLocation(#20024,#20007) -enclosing_stmt(#20024,#20022) +exprs(#20024,89,#20023,0,"/b>") +hasLocation(#20024,#20003) +enclosing_stmt(#20024,#20023) expr_containers(#20024,#20001) -literals("a","a",#20024) #20025=* -exprs(#20025,4,#20023,-2,"/b>") -hasLocation(#20025,#20011) -enclosing_stmt(#20025,#20022) +exprs(#20025,0,#20024,-1,"a") +hasLocation(#20025,#20007) +enclosing_stmt(#20025,#20023) expr_containers(#20025,#20001) -literals("/b>","/b>",#20025) +literals("a","a",#20025) #20026=* -entry_cfg_node(#20026,#20001) -#20027=@"loc,{#10000},1,1,1,0" -locations_default(#20027,#10000,1,1,1,0) -hasLocation(#20026,#20027) -#20028=* -exit_cfg_node(#20028,#20001) -hasLocation(#20028,#20021) -successor(#20022,#20024) -successor(#20025,#20023) -successor(#20024,#20025) -successor(#20023,#20028) -successor(#20026,#20022) +exprs(#20026,4,#20024,-2,"/b>") +hasLocation(#20026,#20011) +enclosing_stmt(#20026,#20023) +expr_containers(#20026,#20001) +literals("/b>","/b>",#20026) +#20027=* +entry_cfg_node(#20027,#20001) +#20028=@"loc,{#10000},1,1,1,0" +locations_default(#20028,#10000,1,1,1,0) +hasLocation(#20027,#20028) +#20029=* +exit_cfg_node(#20029,#20001) +hasLocation(#20029,#20021) +successor(#20023,#20025) +successor(#20026,#20024) +successor(#20025,#20026) +successor(#20024,#20029) +successor(#20027,#20023) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/keywords/output/trap/tst.js.trap b/javascript/extractor/tests/keywords/output/trap/tst.js.trap index 9526d353d8f7..b3d158dfed19 100644 --- a/javascript/extractor/tests/keywords/output/trap/tst.js.trap +++ b/javascript/extractor/tests/keywords/output/trap/tst.js.trap @@ -129,145 +129,147 @@ toplevels(#20001,0) #20047=@"loc,{#10000},1,1,3,0" locations_default(#20047,#10000,1,1,3,0) hasLocation(#20001,#20047) -#20048=* -stmts(#20048,14,#20001,0,"for (le ... ++) {\n}") -#20049=@"loc,{#10000},1,1,2,1" -locations_default(#20049,#10000,1,1,2,1) -hasLocation(#20048,#20049) -stmt_containers(#20048,#20001) -#20050=* -scopes(#20050,5) -scopenodes(#20048,#20050) -scopenesting(#20050,#20000) -#20051=@"var;{i};{#20050}" -variables(#20051,"i",#20050) -#20052=* -exprs(#20052,27,#20048,1,"i < spe ... .length") -#20053=@"loc,{#10000},1,17,1,38" -locations_default(#20053,#10000,1,17,1,38) -hasLocation(#20052,#20053) -enclosing_stmt(#20052,#20048) -expr_containers(#20052,#20001) -#20054=* -exprs(#20054,79,#20052,0,"i") -hasLocation(#20054,#20021) -enclosing_stmt(#20054,#20048) -expr_containers(#20054,#20001) -literals("i","i",#20054) -bind(#20054,#20051) +#20048=@"var;{this};{#20000}" +variables(#20048,"this",#20000) +#20049=* +stmts(#20049,14,#20001,0,"for (le ... ++) {\n}") +#20050=@"loc,{#10000},1,1,2,1" +locations_default(#20050,#10000,1,1,2,1) +hasLocation(#20049,#20050) +stmt_containers(#20049,#20001) +#20051=* +scopes(#20051,5) +scopenodes(#20049,#20051) +scopenesting(#20051,#20000) +#20052=@"var;{i};{#20051}" +variables(#20052,"i",#20051) +#20053=* +exprs(#20053,27,#20049,1,"i < spe ... .length") +#20054=@"loc,{#10000},1,17,1,38" +locations_default(#20054,#10000,1,17,1,38) +hasLocation(#20053,#20054) +enclosing_stmt(#20053,#20049) +expr_containers(#20053,#20001) #20055=* -exprs(#20055,14,#20052,1,"spec.switch.length") -#20056=@"loc,{#10000},1,21,1,38" -locations_default(#20056,#10000,1,21,1,38) -hasLocation(#20055,#20056) -enclosing_stmt(#20055,#20048) +exprs(#20055,79,#20053,0,"i") +hasLocation(#20055,#20021) +enclosing_stmt(#20055,#20049) expr_containers(#20055,#20001) -#20057=* -exprs(#20057,14,#20055,0,"spec.switch") -#20058=@"loc,{#10000},1,21,1,31" -locations_default(#20058,#10000,1,21,1,31) -hasLocation(#20057,#20058) -enclosing_stmt(#20057,#20048) -expr_containers(#20057,#20001) -#20059=* -exprs(#20059,79,#20057,0,"spec") -hasLocation(#20059,#20025) -enclosing_stmt(#20059,#20048) -expr_containers(#20059,#20001) -literals("spec","spec",#20059) -#20060=@"var;{spec};{#20000}" -variables(#20060,"spec",#20000) -bind(#20059,#20060) -#20061=* -exprs(#20061,0,#20057,1,"switch") -hasLocation(#20061,#20029) -enclosing_stmt(#20061,#20048) -expr_containers(#20061,#20001) -literals("switch","switch",#20061) +literals("i","i",#20055) +bind(#20055,#20052) +#20056=* +exprs(#20056,14,#20053,1,"spec.switch.length") +#20057=@"loc,{#10000},1,21,1,38" +locations_default(#20057,#10000,1,21,1,38) +hasLocation(#20056,#20057) +enclosing_stmt(#20056,#20049) +expr_containers(#20056,#20001) +#20058=* +exprs(#20058,14,#20056,0,"spec.switch") +#20059=@"loc,{#10000},1,21,1,31" +locations_default(#20059,#10000,1,21,1,31) +hasLocation(#20058,#20059) +enclosing_stmt(#20058,#20049) +expr_containers(#20058,#20001) +#20060=* +exprs(#20060,79,#20058,0,"spec") +hasLocation(#20060,#20025) +enclosing_stmt(#20060,#20049) +expr_containers(#20060,#20001) +literals("spec","spec",#20060) +#20061=@"var;{spec};{#20000}" +variables(#20061,"spec",#20000) +bind(#20060,#20061) #20062=* -exprs(#20062,0,#20055,1,"length") -hasLocation(#20062,#20033) -enclosing_stmt(#20062,#20048) +exprs(#20062,0,#20058,1,"switch") +hasLocation(#20062,#20029) +enclosing_stmt(#20062,#20049) expr_containers(#20062,#20001) -literals("length","length",#20062) +literals("switch","switch",#20062) #20063=* -exprs(#20063,60,#20048,2,"i++") -#20064=@"loc,{#10000},1,41,1,43" -locations_default(#20064,#10000,1,41,1,43) -hasLocation(#20063,#20064) -enclosing_stmt(#20063,#20048) +exprs(#20063,0,#20056,1,"length") +hasLocation(#20063,#20033) +enclosing_stmt(#20063,#20049) expr_containers(#20063,#20001) -#20065=* -exprs(#20065,79,#20063,0,"i") -hasLocation(#20065,#20037) -enclosing_stmt(#20065,#20048) -expr_containers(#20065,#20001) -literals("i","i",#20065) -bind(#20065,#20051) +literals("length","length",#20063) +#20064=* +exprs(#20064,60,#20049,2,"i++") +#20065=@"loc,{#10000},1,41,1,43" +locations_default(#20065,#10000,1,41,1,43) +hasLocation(#20064,#20065) +enclosing_stmt(#20064,#20049) +expr_containers(#20064,#20001) #20066=* -stmts(#20066,23,#20048,0,"let i = 0") -#20067=@"loc,{#10000},1,6,1,14" -locations_default(#20067,#10000,1,6,1,14) -hasLocation(#20066,#20067) -stmt_containers(#20066,#20001) -#20068=* -exprs(#20068,64,#20066,0,"i = 0") -#20069=@"loc,{#10000},1,10,1,14" -locations_default(#20069,#10000,1,10,1,14) -hasLocation(#20068,#20069) -enclosing_stmt(#20068,#20066) -expr_containers(#20068,#20001) -#20070=* -exprs(#20070,78,#20068,0,"i") -hasLocation(#20070,#20013) -enclosing_stmt(#20070,#20066) -expr_containers(#20070,#20001) -literals("i","i",#20070) -decl(#20070,#20051) +exprs(#20066,79,#20064,0,"i") +hasLocation(#20066,#20037) +enclosing_stmt(#20066,#20049) +expr_containers(#20066,#20001) +literals("i","i",#20066) +bind(#20066,#20052) +#20067=* +stmts(#20067,23,#20049,0,"let i = 0") +#20068=@"loc,{#10000},1,6,1,14" +locations_default(#20068,#10000,1,6,1,14) +hasLocation(#20067,#20068) +stmt_containers(#20067,#20001) +#20069=* +exprs(#20069,64,#20067,0,"i = 0") +#20070=@"loc,{#10000},1,10,1,14" +locations_default(#20070,#10000,1,10,1,14) +hasLocation(#20069,#20070) +enclosing_stmt(#20069,#20067) +expr_containers(#20069,#20001) #20071=* -exprs(#20071,3,#20068,1,"0") -hasLocation(#20071,#20017) -enclosing_stmt(#20071,#20066) +exprs(#20071,78,#20069,0,"i") +hasLocation(#20071,#20013) +enclosing_stmt(#20071,#20067) expr_containers(#20071,#20001) -literals("0","0",#20071) +literals("i","i",#20071) +decl(#20071,#20052) #20072=* -stmts(#20072,1,#20048,3,"{\n}") -#20073=@"loc,{#10000},1,46,2,1" -locations_default(#20073,#10000,1,46,2,1) -hasLocation(#20072,#20073) -stmt_containers(#20072,#20001) -#20074=* -entry_cfg_node(#20074,#20001) -#20075=@"loc,{#10000},1,1,1,0" -locations_default(#20075,#10000,1,1,1,0) -hasLocation(#20074,#20075) -#20076=* -exit_cfg_node(#20076,#20001) -hasLocation(#20076,#20046) -successor(#20048,#20066) -successor(#20066,#20070) -successor(#20071,#20068) -successor(#20070,#20071) -successor(#20068,#20054) -successor(#20062,#20055) -successor(#20061,#20057) -successor(#20059,#20061) -successor(#20057,#20062) -successor(#20055,#20052) -successor(#20054,#20059) +exprs(#20072,3,#20069,1,"0") +hasLocation(#20072,#20017) +enclosing_stmt(#20072,#20067) +expr_containers(#20072,#20001) +literals("0","0",#20072) +#20073=* +stmts(#20073,1,#20049,3,"{\n}") +#20074=@"loc,{#10000},1,46,2,1" +locations_default(#20074,#10000,1,46,2,1) +hasLocation(#20073,#20074) +stmt_containers(#20073,#20001) +#20075=* +entry_cfg_node(#20075,#20001) +#20076=@"loc,{#10000},1,1,1,0" +locations_default(#20076,#10000,1,1,1,0) +hasLocation(#20075,#20076) #20077=* -guard_node(#20077,1,#20052) -hasLocation(#20077,#20053) -successor(#20077,#20072) +exit_cfg_node(#20077,#20001) +hasLocation(#20077,#20046) +successor(#20049,#20067) +successor(#20067,#20071) +successor(#20072,#20069) +successor(#20071,#20072) +successor(#20069,#20055) +successor(#20063,#20056) +successor(#20062,#20058) +successor(#20060,#20062) +successor(#20058,#20063) +successor(#20056,#20053) +successor(#20055,#20060) #20078=* -guard_node(#20078,0,#20052) -hasLocation(#20078,#20053) -successor(#20078,#20076) -successor(#20052,#20077) -successor(#20052,#20078) -successor(#20065,#20063) -successor(#20063,#20054) -successor(#20072,#20065) -successor(#20074,#20048) +guard_node(#20078,1,#20053) +hasLocation(#20078,#20054) +successor(#20078,#20073) +#20079=* +guard_node(#20079,0,#20053) +hasLocation(#20079,#20054) +successor(#20079,#20077) +successor(#20053,#20078) +successor(#20053,#20079) +successor(#20066,#20064) +successor(#20064,#20055) +successor(#20073,#20066) +successor(#20075,#20049) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/moduleTypes1/output/trap/tst.js.trap b/javascript/extractor/tests/moduleTypes1/output/trap/tst.js.trap index 1896ecff4b3c..7f03b082cd60 100644 --- a/javascript/extractor/tests/moduleTypes1/output/trap/tst.js.trap +++ b/javascript/extractor/tests/moduleTypes1/output/trap/tst.js.trap @@ -17,12 +17,14 @@ locations_default(#20003,#10000,1,1,1,0) hasLocation(#20002,#20003) toplevels(#20001,0) hasLocation(#20001,#20003) -#20004=* -entry_cfg_node(#20004,#20001) -hasLocation(#20004,#20003) +#20004=@"var;{this};{#20000}" +variables(#20004,"this",#20000) #20005=* -exit_cfg_node(#20005,#20001) +entry_cfg_node(#20005,#20001) hasLocation(#20005,#20003) -successor(#20004,#20005) +#20006=* +exit_cfg_node(#20006,#20001) +hasLocation(#20006,#20003) +successor(#20005,#20006) numlines(#10000,0,0,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/moduleTypes2/output/trap/tst2.js.trap b/javascript/extractor/tests/moduleTypes2/output/trap/tst2.js.trap index 84299e502793..cacbeb0a264e 100644 --- a/javascript/extractor/tests/moduleTypes2/output/trap/tst2.js.trap +++ b/javascript/extractor/tests/moduleTypes2/output/trap/tst2.js.trap @@ -17,12 +17,14 @@ locations_default(#20003,#10000,1,1,1,0) hasLocation(#20002,#20003) toplevels(#20001,0) hasLocation(#20001,#20003) -#20004=* -entry_cfg_node(#20004,#20001) -hasLocation(#20004,#20003) +#20004=@"var;{this};{#20000}" +variables(#20004,"this",#20000) #20005=* -exit_cfg_node(#20005,#20001) +entry_cfg_node(#20005,#20001) hasLocation(#20005,#20003) -successor(#20004,#20005) +#20006=* +exit_cfg_node(#20006,#20001) +hasLocation(#20006,#20003) +successor(#20005,#20006) numlines(#10000,0,0,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/moduleTypes3/output/trap/tst.js.trap b/javascript/extractor/tests/moduleTypes3/output/trap/tst.js.trap index 1896ecff4b3c..7f03b082cd60 100644 --- a/javascript/extractor/tests/moduleTypes3/output/trap/tst.js.trap +++ b/javascript/extractor/tests/moduleTypes3/output/trap/tst.js.trap @@ -17,12 +17,14 @@ locations_default(#20003,#10000,1,1,1,0) hasLocation(#20002,#20003) toplevels(#20001,0) hasLocation(#20001,#20003) -#20004=* -entry_cfg_node(#20004,#20001) -hasLocation(#20004,#20003) +#20004=@"var;{this};{#20000}" +variables(#20004,"this",#20000) #20005=* -exit_cfg_node(#20005,#20001) +entry_cfg_node(#20005,#20001) hasLocation(#20005,#20003) -successor(#20004,#20005) +#20006=* +exit_cfg_node(#20006,#20001) +hasLocation(#20006,#20003) +successor(#20005,#20006) numlines(#10000,0,0,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/mozilla/output/trap/array_comprehensions.js.trap b/javascript/extractor/tests/mozilla/output/trap/array_comprehensions.js.trap index ab2e9e4a1abf..a59ecc64e82c 100644 --- a/javascript/extractor/tests/mozilla/output/trap/array_comprehensions.js.trap +++ b/javascript/extractor/tests/mozilla/output/trap/array_comprehensions.js.trap @@ -404,413 +404,415 @@ toplevels(#20001,0) #20156=@"loc,{#10000},1,1,6,0" locations_default(#20156,#10000,1,1,6,0) hasLocation(#20001,#20156) -#20157=* -stmts(#20157,2,#20001,0,"[for (y ... year];") -hasLocation(#20157,#20003) -stmt_containers(#20157,#20001) +#20157=@"var;{this};{#20000}" +variables(#20157,"this",#20000) #20158=* -exprs(#20158,73,#20157,0,"[for (y ... ) year]") -#20159=@"loc,{#10000},1,1,1,43" -locations_default(#20159,#10000,1,1,1,43) -hasLocation(#20158,#20159) -enclosing_stmt(#20158,#20157) -expr_containers(#20158,#20001) -#20160=* -exprs(#20160,76,#20158,1,"for (year of years)") -#20161=@"loc,{#10000},1,2,1,20" -locations_default(#20161,#10000,1,2,1,20) -hasLocation(#20160,#20161) -enclosing_stmt(#20160,#20157) -expr_containers(#20160,#20001) -#20162=* -scopes(#20162,7) -scopenodes(#20160,#20162) -scopenesting(#20162,#20000) -#20163=@"var;{year};{#20162}" -variables(#20163,"year",#20162) -#20164=* -exprs(#20164,78,#20160,0,"year") -hasLocation(#20164,#20019) -enclosing_stmt(#20164,#20157) -expr_containers(#20164,#20001) -literals("year","year",#20164) -decl(#20164,#20163) +stmts(#20158,2,#20001,0,"[for (y ... year];") +hasLocation(#20158,#20003) +stmt_containers(#20158,#20001) +#20159=* +exprs(#20159,73,#20158,0,"[for (y ... ) year]") +#20160=@"loc,{#10000},1,1,1,43" +locations_default(#20160,#10000,1,1,1,43) +hasLocation(#20159,#20160) +enclosing_stmt(#20159,#20158) +expr_containers(#20159,#20001) +#20161=* +exprs(#20161,76,#20159,1,"for (year of years)") +#20162=@"loc,{#10000},1,2,1,20" +locations_default(#20162,#10000,1,2,1,20) +hasLocation(#20161,#20162) +enclosing_stmt(#20161,#20158) +expr_containers(#20161,#20001) +#20163=* +scopes(#20163,7) +scopenodes(#20161,#20163) +scopenesting(#20163,#20000) +#20164=@"var;{year};{#20163}" +variables(#20164,"year",#20163) #20165=* -exprs(#20165,79,#20160,1,"years") -hasLocation(#20165,#20023) -enclosing_stmt(#20165,#20157) +exprs(#20165,78,#20161,0,"year") +hasLocation(#20165,#20019) +enclosing_stmt(#20165,#20158) expr_containers(#20165,#20001) -literals("years","years",#20165) -#20166=@"var;{years};{#20000}" -variables(#20166,"years",#20000) -bind(#20165,#20166) -#20167=* -exprs(#20167,29,#20158,-1,"year > 2000") -#20168=@"loc,{#10000},1,26,1,36" -locations_default(#20168,#10000,1,26,1,36) -hasLocation(#20167,#20168) -enclosing_stmt(#20167,#20157) -expr_containers(#20167,#20001) -#20169=* -exprs(#20169,79,#20167,0,"year") -hasLocation(#20169,#20031) -enclosing_stmt(#20169,#20157) -expr_containers(#20169,#20001) -literals("year","year",#20169) -bind(#20169,#20163) +literals("year","year",#20165) +decl(#20165,#20164) +#20166=* +exprs(#20166,79,#20161,1,"years") +hasLocation(#20166,#20023) +enclosing_stmt(#20166,#20158) +expr_containers(#20166,#20001) +literals("years","years",#20166) +#20167=@"var;{years};{#20000}" +variables(#20167,"years",#20000) +bind(#20166,#20167) +#20168=* +exprs(#20168,29,#20159,-1,"year > 2000") +#20169=@"loc,{#10000},1,26,1,36" +locations_default(#20169,#10000,1,26,1,36) +hasLocation(#20168,#20169) +enclosing_stmt(#20168,#20158) +expr_containers(#20168,#20001) #20170=* -exprs(#20170,3,#20167,1,"2000") -hasLocation(#20170,#20035) -enclosing_stmt(#20170,#20157) +exprs(#20170,79,#20168,0,"year") +hasLocation(#20170,#20031) +enclosing_stmt(#20170,#20158) expr_containers(#20170,#20001) -literals("2000","2000",#20170) +literals("year","year",#20170) +bind(#20170,#20164) #20171=* -exprs(#20171,79,#20158,0,"year") -hasLocation(#20171,#20039) -enclosing_stmt(#20171,#20157) +exprs(#20171,3,#20168,1,"2000") +hasLocation(#20171,#20035) +enclosing_stmt(#20171,#20158) expr_containers(#20171,#20001) -literals("year","year",#20171) -bind(#20171,#20163) +literals("2000","2000",#20171) #20172=* -stmts(#20172,2,#20001,1,"year;") -hasLocation(#20172,#20005) -stmt_containers(#20172,#20001) +exprs(#20172,79,#20159,0,"year") +hasLocation(#20172,#20039) +enclosing_stmt(#20172,#20158) +expr_containers(#20172,#20001) +literals("year","year",#20172) +bind(#20172,#20164) #20173=* -exprs(#20173,79,#20172,0,"year") -hasLocation(#20173,#20045) -enclosing_stmt(#20173,#20172) -expr_containers(#20173,#20001) -literals("year","year",#20173) -#20174=@"var;{year};{#20000}" -variables(#20174,"year",#20000) -bind(#20173,#20174) -#20175=* -stmts(#20175,2,#20001,2,"[for (i ... ) i+j];") -hasLocation(#20175,#20007) -stmt_containers(#20175,#20001) +stmts(#20173,2,#20001,1,"year;") +hasLocation(#20173,#20005) +stmt_containers(#20173,#20001) +#20174=* +exprs(#20174,79,#20173,0,"year") +hasLocation(#20174,#20045) +enclosing_stmt(#20174,#20173) +expr_containers(#20174,#20001) +literals("year","year",#20174) +#20175=@"var;{year};{#20000}" +variables(#20175,"year",#20000) +bind(#20174,#20175) #20176=* -exprs(#20176,73,#20175,0,"[for (i ... s) i+j]") -#20177=@"loc,{#10000},3,1,3,43" -locations_default(#20177,#10000,3,1,3,43) -hasLocation(#20176,#20177) -enclosing_stmt(#20176,#20175) -expr_containers(#20176,#20001) -#20178=* -exprs(#20178,76,#20176,1,"for (i of numbers)") -#20179=@"loc,{#10000},3,2,3,19" -locations_default(#20179,#10000,3,2,3,19) -hasLocation(#20178,#20179) -enclosing_stmt(#20178,#20175) -expr_containers(#20178,#20001) -#20180=* -scopes(#20180,7) -scopenodes(#20178,#20180) -scopenesting(#20180,#20000) -#20181=@"var;{i};{#20180}" -variables(#20181,"i",#20180) -#20182=* -exprs(#20182,78,#20178,0,"i") -hasLocation(#20182,#20055) -enclosing_stmt(#20182,#20175) -expr_containers(#20182,#20001) -literals("i","i",#20182) -decl(#20182,#20181) +stmts(#20176,2,#20001,2,"[for (i ... ) i+j];") +hasLocation(#20176,#20007) +stmt_containers(#20176,#20001) +#20177=* +exprs(#20177,73,#20176,0,"[for (i ... s) i+j]") +#20178=@"loc,{#10000},3,1,3,43" +locations_default(#20178,#10000,3,1,3,43) +hasLocation(#20177,#20178) +enclosing_stmt(#20177,#20176) +expr_containers(#20177,#20001) +#20179=* +exprs(#20179,76,#20177,1,"for (i of numbers)") +#20180=@"loc,{#10000},3,2,3,19" +locations_default(#20180,#10000,3,2,3,19) +hasLocation(#20179,#20180) +enclosing_stmt(#20179,#20176) +expr_containers(#20179,#20001) +#20181=* +scopes(#20181,7) +scopenodes(#20179,#20181) +scopenesting(#20181,#20000) +#20182=@"var;{i};{#20181}" +variables(#20182,"i",#20181) #20183=* -exprs(#20183,79,#20178,1,"numbers") -hasLocation(#20183,#20059) -enclosing_stmt(#20183,#20175) +exprs(#20183,78,#20179,0,"i") +hasLocation(#20183,#20055) +enclosing_stmt(#20183,#20176) expr_containers(#20183,#20001) -literals("numbers","numbers",#20183) -#20184=@"var;{numbers};{#20000}" -variables(#20184,"numbers",#20000) -bind(#20183,#20184) -#20185=* -exprs(#20185,76,#20176,2,"for (j of letters)") -#20186=@"loc,{#10000},3,21,3,38" -locations_default(#20186,#10000,3,21,3,38) -hasLocation(#20185,#20186) -enclosing_stmt(#20185,#20175) -expr_containers(#20185,#20001) -#20187=* -scopes(#20187,7) -scopenodes(#20185,#20187) -scopenesting(#20187,#20180) -#20188=@"var;{j};{#20187}" -variables(#20188,"j",#20187) -#20189=* -exprs(#20189,78,#20185,0,"j") -hasLocation(#20189,#20067) -enclosing_stmt(#20189,#20175) -expr_containers(#20189,#20001) -literals("j","j",#20189) -decl(#20189,#20188) +literals("i","i",#20183) +decl(#20183,#20182) +#20184=* +exprs(#20184,79,#20179,1,"numbers") +hasLocation(#20184,#20059) +enclosing_stmt(#20184,#20176) +expr_containers(#20184,#20001) +literals("numbers","numbers",#20184) +#20185=@"var;{numbers};{#20000}" +variables(#20185,"numbers",#20000) +bind(#20184,#20185) +#20186=* +exprs(#20186,76,#20177,2,"for (j of letters)") +#20187=@"loc,{#10000},3,21,3,38" +locations_default(#20187,#10000,3,21,3,38) +hasLocation(#20186,#20187) +enclosing_stmt(#20186,#20176) +expr_containers(#20186,#20001) +#20188=* +scopes(#20188,7) +scopenodes(#20186,#20188) +scopenesting(#20188,#20181) +#20189=@"var;{j};{#20188}" +variables(#20189,"j",#20188) #20190=* -exprs(#20190,79,#20185,1,"letters") -hasLocation(#20190,#20071) -enclosing_stmt(#20190,#20175) +exprs(#20190,78,#20186,0,"j") +hasLocation(#20190,#20067) +enclosing_stmt(#20190,#20176) expr_containers(#20190,#20001) -literals("letters","letters",#20190) -#20191=@"var;{letters};{#20000}" -variables(#20191,"letters",#20000) -bind(#20190,#20191) -#20192=* -exprs(#20192,34,#20176,0,"i+j") -#20193=@"loc,{#10000},3,40,3,42" -locations_default(#20193,#10000,3,40,3,42) -hasLocation(#20192,#20193) -enclosing_stmt(#20192,#20175) -expr_containers(#20192,#20001) -#20194=* -exprs(#20194,79,#20192,0,"i") -hasLocation(#20194,#20075) -enclosing_stmt(#20194,#20175) -expr_containers(#20194,#20001) -literals("i","i",#20194) -bind(#20194,#20181) +literals("j","j",#20190) +decl(#20190,#20189) +#20191=* +exprs(#20191,79,#20186,1,"letters") +hasLocation(#20191,#20071) +enclosing_stmt(#20191,#20176) +expr_containers(#20191,#20001) +literals("letters","letters",#20191) +#20192=@"var;{letters};{#20000}" +variables(#20192,"letters",#20000) +bind(#20191,#20192) +#20193=* +exprs(#20193,34,#20177,0,"i+j") +#20194=@"loc,{#10000},3,40,3,42" +locations_default(#20194,#10000,3,40,3,42) +hasLocation(#20193,#20194) +enclosing_stmt(#20193,#20176) +expr_containers(#20193,#20001) #20195=* -exprs(#20195,79,#20192,1,"j") -hasLocation(#20195,#20079) -enclosing_stmt(#20195,#20175) +exprs(#20195,79,#20193,0,"i") +hasLocation(#20195,#20075) +enclosing_stmt(#20195,#20176) expr_containers(#20195,#20001) -literals("j","j",#20195) -bind(#20195,#20188) +literals("i","i",#20195) +bind(#20195,#20182) #20196=* -stmts(#20196,2,#20001,3,"[for (i ... ) i+j];") -hasLocation(#20196,#20009) -stmt_containers(#20196,#20001) +exprs(#20196,79,#20193,1,"j") +hasLocation(#20196,#20079) +enclosing_stmt(#20196,#20176) +expr_containers(#20196,#20001) +literals("j","j",#20196) +bind(#20196,#20189) #20197=* -exprs(#20197,73,#20196,0,"[for (i ... j) i+j]") -#20198=@"loc,{#10000},4,1,4,52" -locations_default(#20198,#10000,4,1,4,52) -hasLocation(#20197,#20198) -enclosing_stmt(#20197,#20196) -expr_containers(#20197,#20001) -#20199=* -exprs(#20199,76,#20197,1,"for (i of numbers)") -#20200=@"loc,{#10000},4,2,4,19" -locations_default(#20200,#10000,4,2,4,19) -hasLocation(#20199,#20200) -enclosing_stmt(#20199,#20196) -expr_containers(#20199,#20001) -#20201=* -scopes(#20201,7) -scopenodes(#20199,#20201) -scopenesting(#20201,#20000) -#20202=@"var;{i};{#20201}" -variables(#20202,"i",#20201) -#20203=* -exprs(#20203,78,#20199,0,"i") -hasLocation(#20203,#20091) -enclosing_stmt(#20203,#20196) -expr_containers(#20203,#20001) -literals("i","i",#20203) -decl(#20203,#20202) +stmts(#20197,2,#20001,3,"[for (i ... ) i+j];") +hasLocation(#20197,#20009) +stmt_containers(#20197,#20001) +#20198=* +exprs(#20198,73,#20197,0,"[for (i ... j) i+j]") +#20199=@"loc,{#10000},4,1,4,52" +locations_default(#20199,#10000,4,1,4,52) +hasLocation(#20198,#20199) +enclosing_stmt(#20198,#20197) +expr_containers(#20198,#20001) +#20200=* +exprs(#20200,76,#20198,1,"for (i of numbers)") +#20201=@"loc,{#10000},4,2,4,19" +locations_default(#20201,#10000,4,2,4,19) +hasLocation(#20200,#20201) +enclosing_stmt(#20200,#20197) +expr_containers(#20200,#20001) +#20202=* +scopes(#20202,7) +scopenodes(#20200,#20202) +scopenesting(#20202,#20000) +#20203=@"var;{i};{#20202}" +variables(#20203,"i",#20202) #20204=* -exprs(#20204,79,#20199,1,"numbers") -hasLocation(#20204,#20095) -enclosing_stmt(#20204,#20196) +exprs(#20204,78,#20200,0,"i") +hasLocation(#20204,#20091) +enclosing_stmt(#20204,#20197) expr_containers(#20204,#20001) -literals("numbers","numbers",#20204) -bind(#20204,#20184) +literals("i","i",#20204) +decl(#20204,#20203) #20205=* -exprs(#20205,76,#20197,2,"for (j of letters)") -#20206=@"loc,{#10000},4,21,4,38" -locations_default(#20206,#10000,4,21,4,38) -hasLocation(#20205,#20206) -enclosing_stmt(#20205,#20196) +exprs(#20205,79,#20200,1,"numbers") +hasLocation(#20205,#20095) +enclosing_stmt(#20205,#20197) expr_containers(#20205,#20001) -#20207=* -scopes(#20207,7) -scopenodes(#20205,#20207) -scopenesting(#20207,#20201) -#20208=@"var;{j};{#20207}" -variables(#20208,"j",#20207) -#20209=* -exprs(#20209,78,#20205,0,"j") -hasLocation(#20209,#20103) -enclosing_stmt(#20209,#20196) -expr_containers(#20209,#20001) -literals("j","j",#20209) -decl(#20209,#20208) +literals("numbers","numbers",#20205) +bind(#20205,#20185) +#20206=* +exprs(#20206,76,#20198,2,"for (j of letters)") +#20207=@"loc,{#10000},4,21,4,38" +locations_default(#20207,#10000,4,21,4,38) +hasLocation(#20206,#20207) +enclosing_stmt(#20206,#20197) +expr_containers(#20206,#20001) +#20208=* +scopes(#20208,7) +scopenodes(#20206,#20208) +scopenesting(#20208,#20202) +#20209=@"var;{j};{#20208}" +variables(#20209,"j",#20208) #20210=* -exprs(#20210,79,#20205,1,"letters") -hasLocation(#20210,#20107) -enclosing_stmt(#20210,#20196) +exprs(#20210,78,#20206,0,"j") +hasLocation(#20210,#20103) +enclosing_stmt(#20210,#20197) expr_containers(#20210,#20001) -literals("letters","letters",#20210) -bind(#20210,#20191) +literals("j","j",#20210) +decl(#20210,#20209) #20211=* -exprs(#20211,27,#20197,-1,"i 2000") -#20198=@"loc,{#10000},1,26,1,36" -locations_default(#20198,#10000,1,26,1,36) -hasLocation(#20197,#20198) -enclosing_stmt(#20197,#20187) -expr_containers(#20197,#20001) -#20199=* -exprs(#20199,79,#20197,0,"year") -hasLocation(#20199,#20033) -enclosing_stmt(#20199,#20187) -expr_containers(#20199,#20001) -literals("year","year",#20199) -bind(#20199,#20193) +literals("year","year",#20195) +decl(#20195,#20194) +#20196=* +exprs(#20196,79,#20191,1,"years") +hasLocation(#20196,#20025) +enclosing_stmt(#20196,#20188) +expr_containers(#20196,#20001) +literals("years","years",#20196) +#20197=@"var;{years};{#20000}" +variables(#20197,"years",#20000) +bind(#20196,#20197) +#20198=* +exprs(#20198,29,#20189,-1,"year > 2000") +#20199=@"loc,{#10000},1,26,1,36" +locations_default(#20199,#10000,1,26,1,36) +hasLocation(#20198,#20199) +enclosing_stmt(#20198,#20188) +expr_containers(#20198,#20001) #20200=* -exprs(#20200,3,#20197,1,"2000") -hasLocation(#20200,#20037) -enclosing_stmt(#20200,#20187) +exprs(#20200,79,#20198,0,"year") +hasLocation(#20200,#20033) +enclosing_stmt(#20200,#20188) expr_containers(#20200,#20001) -literals("2000","2000",#20200) +literals("year","year",#20200) +bind(#20200,#20194) #20201=* -exprs(#20201,79,#20188,0,"year") -hasLocation(#20201,#20041) -enclosing_stmt(#20201,#20187) +exprs(#20201,3,#20198,1,"2000") +hasLocation(#20201,#20037) +enclosing_stmt(#20201,#20188) expr_containers(#20201,#20001) -literals("year","year",#20201) -bind(#20201,#20193) +literals("2000","2000",#20201) #20202=* -stmts(#20202,2,#20001,1,"year;") -hasLocation(#20202,#20005) -stmt_containers(#20202,#20001) +exprs(#20202,79,#20189,0,"year") +hasLocation(#20202,#20041) +enclosing_stmt(#20202,#20188) +expr_containers(#20202,#20001) +literals("year","year",#20202) +bind(#20202,#20194) #20203=* -exprs(#20203,79,#20202,0,"year") -hasLocation(#20203,#20047) -enclosing_stmt(#20203,#20202) -expr_containers(#20203,#20001) -literals("year","year",#20203) -#20204=@"var;{year};{#20000}" -variables(#20204,"year",#20000) -bind(#20203,#20204) -#20205=* -stmts(#20205,2,#20001,2,"(for (i ... ) i+j);") -hasLocation(#20205,#20007) -stmt_containers(#20205,#20001) +stmts(#20203,2,#20001,1,"year;") +hasLocation(#20203,#20005) +stmt_containers(#20203,#20001) +#20204=* +exprs(#20204,79,#20203,0,"year") +hasLocation(#20204,#20047) +enclosing_stmt(#20204,#20203) +expr_containers(#20204,#20001) +literals("year","year",#20204) +#20205=@"var;{year};{#20000}" +variables(#20205,"year",#20000) +bind(#20204,#20205) #20206=* -exprs(#20206,74,#20205,0,"(for (i ... s) i+j)") -#20207=@"loc,{#10000},3,1,3,43" -locations_default(#20207,#10000,3,1,3,43) -hasLocation(#20206,#20207) -enclosing_stmt(#20206,#20205) -expr_containers(#20206,#20001) -#20208=* -exprs(#20208,76,#20206,1,"for (i of numbers)") -#20209=@"loc,{#10000},3,2,3,19" -locations_default(#20209,#10000,3,2,3,19) -hasLocation(#20208,#20209) -enclosing_stmt(#20208,#20205) -expr_containers(#20208,#20001) -#20210=* -scopes(#20210,7) -scopenodes(#20208,#20210) -scopenesting(#20210,#20000) -#20211=@"var;{i};{#20210}" -variables(#20211,"i",#20210) -#20212=* -exprs(#20212,78,#20208,0,"i") -hasLocation(#20212,#20057) -enclosing_stmt(#20212,#20205) -expr_containers(#20212,#20001) -literals("i","i",#20212) -decl(#20212,#20211) +stmts(#20206,2,#20001,2,"(for (i ... ) i+j);") +hasLocation(#20206,#20007) +stmt_containers(#20206,#20001) +#20207=* +exprs(#20207,74,#20206,0,"(for (i ... s) i+j)") +#20208=@"loc,{#10000},3,1,3,43" +locations_default(#20208,#10000,3,1,3,43) +hasLocation(#20207,#20208) +enclosing_stmt(#20207,#20206) +expr_containers(#20207,#20001) +#20209=* +exprs(#20209,76,#20207,1,"for (i of numbers)") +#20210=@"loc,{#10000},3,2,3,19" +locations_default(#20210,#10000,3,2,3,19) +hasLocation(#20209,#20210) +enclosing_stmt(#20209,#20206) +expr_containers(#20209,#20001) +#20211=* +scopes(#20211,7) +scopenodes(#20209,#20211) +scopenesting(#20211,#20000) +#20212=@"var;{i};{#20211}" +variables(#20212,"i",#20211) #20213=* -exprs(#20213,79,#20208,1,"numbers") -hasLocation(#20213,#20061) -enclosing_stmt(#20213,#20205) +exprs(#20213,78,#20209,0,"i") +hasLocation(#20213,#20057) +enclosing_stmt(#20213,#20206) expr_containers(#20213,#20001) -literals("numbers","numbers",#20213) -#20214=@"var;{numbers};{#20000}" -variables(#20214,"numbers",#20000) -bind(#20213,#20214) -#20215=* -exprs(#20215,76,#20206,2,"for (j of letters)") -#20216=@"loc,{#10000},3,21,3,38" -locations_default(#20216,#10000,3,21,3,38) -hasLocation(#20215,#20216) -enclosing_stmt(#20215,#20205) -expr_containers(#20215,#20001) -#20217=* -scopes(#20217,7) -scopenodes(#20215,#20217) -scopenesting(#20217,#20210) -#20218=@"var;{j};{#20217}" -variables(#20218,"j",#20217) -#20219=* -exprs(#20219,78,#20215,0,"j") -hasLocation(#20219,#20069) -enclosing_stmt(#20219,#20205) -expr_containers(#20219,#20001) -literals("j","j",#20219) -decl(#20219,#20218) +literals("i","i",#20213) +decl(#20213,#20212) +#20214=* +exprs(#20214,79,#20209,1,"numbers") +hasLocation(#20214,#20061) +enclosing_stmt(#20214,#20206) +expr_containers(#20214,#20001) +literals("numbers","numbers",#20214) +#20215=@"var;{numbers};{#20000}" +variables(#20215,"numbers",#20000) +bind(#20214,#20215) +#20216=* +exprs(#20216,76,#20207,2,"for (j of letters)") +#20217=@"loc,{#10000},3,21,3,38" +locations_default(#20217,#10000,3,21,3,38) +hasLocation(#20216,#20217) +enclosing_stmt(#20216,#20206) +expr_containers(#20216,#20001) +#20218=* +scopes(#20218,7) +scopenodes(#20216,#20218) +scopenesting(#20218,#20211) +#20219=@"var;{j};{#20218}" +variables(#20219,"j",#20218) #20220=* -exprs(#20220,79,#20215,1,"letters") -hasLocation(#20220,#20073) -enclosing_stmt(#20220,#20205) +exprs(#20220,78,#20216,0,"j") +hasLocation(#20220,#20069) +enclosing_stmt(#20220,#20206) expr_containers(#20220,#20001) -literals("letters","letters",#20220) -#20221=@"var;{letters};{#20000}" -variables(#20221,"letters",#20000) -bind(#20220,#20221) -#20222=* -exprs(#20222,34,#20206,0,"i+j") -#20223=@"loc,{#10000},3,40,3,42" -locations_default(#20223,#10000,3,40,3,42) -hasLocation(#20222,#20223) -enclosing_stmt(#20222,#20205) -expr_containers(#20222,#20001) -#20224=* -exprs(#20224,79,#20222,0,"i") -hasLocation(#20224,#20077) -enclosing_stmt(#20224,#20205) -expr_containers(#20224,#20001) -literals("i","i",#20224) -bind(#20224,#20211) +literals("j","j",#20220) +decl(#20220,#20219) +#20221=* +exprs(#20221,79,#20216,1,"letters") +hasLocation(#20221,#20073) +enclosing_stmt(#20221,#20206) +expr_containers(#20221,#20001) +literals("letters","letters",#20221) +#20222=@"var;{letters};{#20000}" +variables(#20222,"letters",#20000) +bind(#20221,#20222) +#20223=* +exprs(#20223,34,#20207,0,"i+j") +#20224=@"loc,{#10000},3,40,3,42" +locations_default(#20224,#10000,3,40,3,42) +hasLocation(#20223,#20224) +enclosing_stmt(#20223,#20206) +expr_containers(#20223,#20001) #20225=* -exprs(#20225,79,#20222,1,"j") -hasLocation(#20225,#20081) -enclosing_stmt(#20225,#20205) +exprs(#20225,79,#20223,0,"i") +hasLocation(#20225,#20077) +enclosing_stmt(#20225,#20206) expr_containers(#20225,#20001) -literals("j","j",#20225) -bind(#20225,#20218) +literals("i","i",#20225) +bind(#20225,#20212) #20226=* -stmts(#20226,2,#20001,3,"(for (i ... ) i+j);") -hasLocation(#20226,#20009) -stmt_containers(#20226,#20001) +exprs(#20226,79,#20223,1,"j") +hasLocation(#20226,#20081) +enclosing_stmt(#20226,#20206) +expr_containers(#20226,#20001) +literals("j","j",#20226) +bind(#20226,#20219) #20227=* -exprs(#20227,74,#20226,0,"(for (i ... j) i+j)") -#20228=@"loc,{#10000},4,1,4,52" -locations_default(#20228,#10000,4,1,4,52) -hasLocation(#20227,#20228) -enclosing_stmt(#20227,#20226) -expr_containers(#20227,#20001) -#20229=* -exprs(#20229,76,#20227,1,"for (i of numbers)") -#20230=@"loc,{#10000},4,2,4,19" -locations_default(#20230,#10000,4,2,4,19) -hasLocation(#20229,#20230) -enclosing_stmt(#20229,#20226) -expr_containers(#20229,#20001) -#20231=* -scopes(#20231,7) -scopenodes(#20229,#20231) -scopenesting(#20231,#20000) -#20232=@"var;{i};{#20231}" -variables(#20232,"i",#20231) -#20233=* -exprs(#20233,78,#20229,0,"i") -hasLocation(#20233,#20093) -enclosing_stmt(#20233,#20226) -expr_containers(#20233,#20001) -literals("i","i",#20233) -decl(#20233,#20232) +stmts(#20227,2,#20001,3,"(for (i ... ) i+j);") +hasLocation(#20227,#20009) +stmt_containers(#20227,#20001) +#20228=* +exprs(#20228,74,#20227,0,"(for (i ... j) i+j)") +#20229=@"loc,{#10000},4,1,4,52" +locations_default(#20229,#10000,4,1,4,52) +hasLocation(#20228,#20229) +enclosing_stmt(#20228,#20227) +expr_containers(#20228,#20001) +#20230=* +exprs(#20230,76,#20228,1,"for (i of numbers)") +#20231=@"loc,{#10000},4,2,4,19" +locations_default(#20231,#10000,4,2,4,19) +hasLocation(#20230,#20231) +enclosing_stmt(#20230,#20227) +expr_containers(#20230,#20001) +#20232=* +scopes(#20232,7) +scopenodes(#20230,#20232) +scopenesting(#20232,#20000) +#20233=@"var;{i};{#20232}" +variables(#20233,"i",#20232) #20234=* -exprs(#20234,79,#20229,1,"numbers") -hasLocation(#20234,#20097) -enclosing_stmt(#20234,#20226) +exprs(#20234,78,#20230,0,"i") +hasLocation(#20234,#20093) +enclosing_stmt(#20234,#20227) expr_containers(#20234,#20001) -literals("numbers","numbers",#20234) -bind(#20234,#20214) +literals("i","i",#20234) +decl(#20234,#20233) #20235=* -exprs(#20235,76,#20227,2,"for (j of letters)") -#20236=@"loc,{#10000},4,21,4,38" -locations_default(#20236,#10000,4,21,4,38) -hasLocation(#20235,#20236) -enclosing_stmt(#20235,#20226) +exprs(#20235,79,#20230,1,"numbers") +hasLocation(#20235,#20097) +enclosing_stmt(#20235,#20227) expr_containers(#20235,#20001) -#20237=* -scopes(#20237,7) -scopenodes(#20235,#20237) -scopenesting(#20237,#20231) -#20238=@"var;{j};{#20237}" -variables(#20238,"j",#20237) -#20239=* -exprs(#20239,78,#20235,0,"j") -hasLocation(#20239,#20105) -enclosing_stmt(#20239,#20226) -expr_containers(#20239,#20001) -literals("j","j",#20239) -decl(#20239,#20238) +literals("numbers","numbers",#20235) +bind(#20235,#20215) +#20236=* +exprs(#20236,76,#20228,2,"for (j of letters)") +#20237=@"loc,{#10000},4,21,4,38" +locations_default(#20237,#10000,4,21,4,38) +hasLocation(#20236,#20237) +enclosing_stmt(#20236,#20227) +expr_containers(#20236,#20001) +#20238=* +scopes(#20238,7) +scopenodes(#20236,#20238) +scopenesting(#20238,#20232) +#20239=@"var;{j};{#20238}" +variables(#20239,"j",#20238) #20240=* -exprs(#20240,79,#20235,1,"letters") -hasLocation(#20240,#20109) -enclosing_stmt(#20240,#20226) +exprs(#20240,78,#20236,0,"j") +hasLocation(#20240,#20105) +enclosing_stmt(#20240,#20227) expr_containers(#20240,#20001) -literals("letters","letters",#20240) -bind(#20240,#20221) +literals("j","j",#20240) +decl(#20240,#20239) #20241=* -exprs(#20241,27,#20227,-1,"i\n\t`\n})") -#20088=@"loc,{#10000},3,1,9,2" -locations_default(#20088,#10000,3,1,9,2) -hasLocation(#20087,#20088) -enclosing_stmt(#20087,#20085) -expr_containers(#20087,#20001) -#20089=* -exprs(#20089,13,#20087,0,"Compone ... >\n\t`\n})") -#20090=@"loc,{#10000},3,2,9,2" -locations_default(#20090,#10000,3,2,9,2) -hasLocation(#20089,#20090) -enclosing_stmt(#20089,#20085) -expr_containers(#20089,#20001) -#20091=* -exprs(#20091,79,#20089,-1,"Component") -hasLocation(#20091,#20039) -enclosing_stmt(#20091,#20085) -expr_containers(#20091,#20001) -literals("Component","Component",#20091) -bind(#20091,#20072) +#20086=* +stmts(#20086,26,#20085,-1,"class MyComponent {}") +#20087=@"loc,{#10000},10,8,10,27" +locations_default(#20087,#10000,10,8,10,27) +hasLocation(#20086,#20087) +stmt_containers(#20086,#20001) +#20088=* +exprs(#20088,94,#20086,-2,"@Compon ... >\n\t`\n})") +#20089=@"loc,{#10000},3,1,9,2" +locations_default(#20089,#10000,3,1,9,2) +hasLocation(#20088,#20089) +enclosing_stmt(#20088,#20086) +expr_containers(#20088,#20001) +#20090=* +exprs(#20090,13,#20088,0,"Compone ... >\n\t`\n})") +#20091=@"loc,{#10000},3,2,9,2" +locations_default(#20091,#10000,3,2,9,2) +hasLocation(#20090,#20091) +enclosing_stmt(#20090,#20086) +expr_containers(#20090,#20001) #20092=* -exprs(#20092,8,#20089,0,"{\n\ttemp ... />\n\t`\n}") -#20093=@"loc,{#10000},3,12,9,1" -locations_default(#20093,#10000,3,12,9,1) -hasLocation(#20092,#20093) -enclosing_stmt(#20092,#20085) +exprs(#20092,79,#20090,-1,"Component") +hasLocation(#20092,#20039) +enclosing_stmt(#20092,#20086) expr_containers(#20092,#20001) -#20094=* -properties(#20094,#20092,0,0,"templat ... "" />\n\t`") -#20095=@"loc,{#10000},4,2,8,2" -locations_default(#20095,#10000,4,2,8,2) -hasLocation(#20094,#20095) -#20096=* -exprs(#20096,0,#20094,0,"template") -hasLocation(#20096,#20045) -enclosing_stmt(#20096,#20085) -expr_containers(#20096,#20001) -literals("template","template",#20096) +literals("Component","Component",#20092) +bind(#20092,#20072) +#20093=* +exprs(#20093,8,#20090,0,"{\n\ttemp ... />\n\t`\n}") +#20094=@"loc,{#10000},3,12,9,1" +locations_default(#20094,#10000,3,12,9,1) +hasLocation(#20093,#20094) +enclosing_stmt(#20093,#20086) +expr_containers(#20093,#20001) +#20095=* +properties(#20095,#20093,0,0,"templat ... "" />\n\t`") +#20096=@"loc,{#10000},4,2,8,2" +locations_default(#20096,#10000,4,2,8,2) +hasLocation(#20095,#20096) #20097=* -exprs(#20097,71,#20094,1,"`\n\t\n\t`") -#20098=@"loc,{#10000},4,12,8,2" -locations_default(#20098,#10000,4,12,8,2) -hasLocation(#20097,#20098) -enclosing_stmt(#20097,#20085) +exprs(#20097,0,#20095,0,"template") +hasLocation(#20097,#20045) +enclosing_stmt(#20097,#20086) expr_containers(#20097,#20001) -#20099=* -exprs(#20099,72,#20097,0,"\n\t\n\t") -hasLocation(#20099,#20051) -enclosing_stmt(#20099,#20085) -expr_containers(#20099,#20001) +literals("template","template",#20097) +#20098=* +exprs(#20098,71,#20095,1,"`\n\t\n\t`") +#20099=@"loc,{#10000},4,12,8,2" +locations_default(#20099,#10000,4,12,8,2) +hasLocation(#20098,#20099) +enclosing_stmt(#20098,#20086) +expr_containers(#20098,#20001) +#20100=* +exprs(#20100,72,#20098,0,"\n\t\n\t") +hasLocation(#20100,#20051) +enclosing_stmt(#20100,#20086) +expr_containers(#20100,#20001) literals(" @@ -327,344 +329,354 @@ literals(" - ",#20099) + ",#20100) scopes(#20000,0) -#20100=* -#20101=@"script;{#10000},5,15" -#20102=* -lines(#20102,#20101,"expr + expr","") -#20103=@"loc,{#10000},5,15,5,25" -locations_default(#20103,#10000,5,15,5,25) -hasLocation(#20102,#20103) -numlines(#20101,1,1,0) -#20104=* -tokeninfo(#20104,6,#20101,0,"expr") -#20105=@"loc,{#10000},5,15,5,18" -locations_default(#20105,#10000,5,15,5,18) -hasLocation(#20104,#20105) -#20106=* -tokeninfo(#20106,8,#20101,1,"+") -#20107=@"loc,{#10000},5,20,5,20" -locations_default(#20107,#10000,5,20,5,20) -hasLocation(#20106,#20107) -#20108=* -tokeninfo(#20108,6,#20101,2,"expr") -#20109=@"loc,{#10000},5,22,5,25" -locations_default(#20109,#10000,5,22,5,25) -hasLocation(#20108,#20109) -#20110=* -tokeninfo(#20110,0,#20101,3,"") -#20111=@"loc,{#10000},5,26,5,25" -locations_default(#20111,#10000,5,26,5,25) -hasLocation(#20110,#20111) -toplevels(#20101,4) -hasLocation(#20101,#20103) -#20112=@"module;{#10000},5,15" -scopes(#20112,3) -scopenodes(#20101,#20112) -scopenesting(#20112,#20000) -is_module(#20101) -#20113=* -stmts(#20113,2,#20101,0,"expr + expr") -hasLocation(#20113,#20103) -stmt_containers(#20113,#20101) -#20114=* -exprs(#20114,34,#20113,0,"expr + expr") -hasLocation(#20114,#20103) -enclosing_stmt(#20114,#20113) -expr_containers(#20114,#20101) +#20101=* +#20102=@"script;{#10000},5,15" +#20103=* +lines(#20103,#20102,"expr + expr","") +#20104=@"loc,{#10000},5,15,5,25" +locations_default(#20104,#10000,5,15,5,25) +hasLocation(#20103,#20104) +numlines(#20102,1,1,0) +#20105=* +tokeninfo(#20105,6,#20102,0,"expr") +#20106=@"loc,{#10000},5,15,5,18" +locations_default(#20106,#10000,5,15,5,18) +hasLocation(#20105,#20106) +#20107=* +tokeninfo(#20107,8,#20102,1,"+") +#20108=@"loc,{#10000},5,20,5,20" +locations_default(#20108,#10000,5,20,5,20) +hasLocation(#20107,#20108) +#20109=* +tokeninfo(#20109,6,#20102,2,"expr") +#20110=@"loc,{#10000},5,22,5,25" +locations_default(#20110,#10000,5,22,5,25) +hasLocation(#20109,#20110) +#20111=* +tokeninfo(#20111,0,#20102,3,"") +#20112=@"loc,{#10000},5,26,5,25" +locations_default(#20112,#10000,5,26,5,25) +hasLocation(#20111,#20112) +toplevels(#20102,4) +hasLocation(#20102,#20104) +#20113=@"module;{#10000},5,15" +scopes(#20113,3) +scopenodes(#20102,#20113) +scopenesting(#20113,#20000) +is_module(#20102) +#20114=@"var;{this};{#20113}" +variables(#20114,"this",#20113) #20115=* -exprs(#20115,79,#20114,0,"expr") -hasLocation(#20115,#20105) -enclosing_stmt(#20115,#20113) -expr_containers(#20115,#20101) -literals("expr","expr",#20115) -#20116=@"var;{expr};{#20112}" -variables(#20116,"expr",#20112) -bind(#20115,#20116) +stmts(#20115,2,#20102,0,"expr + expr") +hasLocation(#20115,#20104) +stmt_containers(#20115,#20102) +#20116=* +exprs(#20116,34,#20115,0,"expr + expr") +hasLocation(#20116,#20104) +enclosing_stmt(#20116,#20115) +expr_containers(#20116,#20102) #20117=* -exprs(#20117,79,#20114,1,"expr") -hasLocation(#20117,#20109) -enclosing_stmt(#20117,#20113) -expr_containers(#20117,#20101) +exprs(#20117,79,#20116,0,"expr") +hasLocation(#20117,#20106) +enclosing_stmt(#20117,#20115) +expr_containers(#20117,#20102) literals("expr","expr",#20117) -bind(#20117,#20116) -#20118=* -entry_cfg_node(#20118,#20101) -#20119=@"loc,{#10000},5,15,5,14" -locations_default(#20119,#10000,5,15,5,14) -hasLocation(#20118,#20119) +#20118=@"var;{expr};{#20113}" +variables(#20118,"expr",#20113) +bind(#20117,#20118) +#20119=* +exprs(#20119,79,#20116,1,"expr") +hasLocation(#20119,#20110) +enclosing_stmt(#20119,#20115) +expr_containers(#20119,#20102) +literals("expr","expr",#20119) +bind(#20119,#20118) #20120=* -exit_cfg_node(#20120,#20101) -hasLocation(#20120,#20111) -successor(#20113,#20115) -successor(#20117,#20114) +entry_cfg_node(#20120,#20102) +#20121=@"loc,{#10000},5,15,5,14" +locations_default(#20121,#10000,5,15,5,14) +hasLocation(#20120,#20121) +#20122=* +exit_cfg_node(#20122,#20102) +hasLocation(#20122,#20112) successor(#20115,#20117) -successor(#20114,#20120) -successor(#20118,#20113) -toplevel_parent_xml_node(#20101,#20100) -#20121=* -#20122=@"script;{#10000},6,14" +successor(#20119,#20116) +successor(#20117,#20119) +successor(#20116,#20122) +successor(#20120,#20115) +toplevel_parent_xml_node(#20102,#20101) #20123=* -lines(#20123,#20122,"expr!","") -#20124=@"loc,{#10000},6,14,6,18" -locations_default(#20124,#10000,6,14,6,18) -hasLocation(#20123,#20124) -numlines(#20122,1,1,0) +#20124=@"script;{#10000},6,14" #20125=* -tokeninfo(#20125,6,#20122,0,"expr") -#20126=@"loc,{#10000},6,14,6,17" -locations_default(#20126,#10000,6,14,6,17) +lines(#20125,#20124,"expr!","") +#20126=@"loc,{#10000},6,14,6,18" +locations_default(#20126,#10000,6,14,6,18) hasLocation(#20125,#20126) +numlines(#20124,1,1,0) #20127=* -tokeninfo(#20127,8,#20122,1,"!") -#20128=@"loc,{#10000},6,18,6,18" -locations_default(#20128,#10000,6,18,6,18) +tokeninfo(#20127,6,#20124,0,"expr") +#20128=@"loc,{#10000},6,14,6,17" +locations_default(#20128,#10000,6,14,6,17) hasLocation(#20127,#20128) #20129=* -tokeninfo(#20129,0,#20122,2,"") -#20130=@"loc,{#10000},6,19,6,18" -locations_default(#20130,#10000,6,19,6,18) +tokeninfo(#20129,8,#20124,1,"!") +#20130=@"loc,{#10000},6,18,6,18" +locations_default(#20130,#10000,6,18,6,18) hasLocation(#20129,#20130) -toplevels(#20122,4) -hasLocation(#20122,#20124) -#20131=@"module;{#10000},6,14" -scopes(#20131,3) -scopenodes(#20122,#20131) -scopenesting(#20131,#20000) -is_module(#20122) -#20132=* -stmts(#20132,2,#20122,0,"expr!") -hasLocation(#20132,#20124) -stmt_containers(#20132,#20122) -#20133=* -exprs(#20133,105,#20132,0,"expr!") -hasLocation(#20133,#20124) -enclosing_stmt(#20133,#20132) -expr_containers(#20133,#20122) -#20134=* -exprs(#20134,79,#20133,0,"expr") -hasLocation(#20134,#20126) -enclosing_stmt(#20134,#20132) -expr_containers(#20134,#20122) -literals("expr","expr",#20134) -#20135=@"var;{expr};{#20131}" -variables(#20135,"expr",#20131) -bind(#20134,#20135) +#20131=* +tokeninfo(#20131,0,#20124,2,"") +#20132=@"loc,{#10000},6,19,6,18" +locations_default(#20132,#10000,6,19,6,18) +hasLocation(#20131,#20132) +toplevels(#20124,4) +hasLocation(#20124,#20126) +#20133=@"module;{#10000},6,14" +scopes(#20133,3) +scopenodes(#20124,#20133) +scopenesting(#20133,#20000) +is_module(#20124) +#20134=@"var;{this};{#20133}" +variables(#20134,"this",#20133) +#20135=* +stmts(#20135,2,#20124,0,"expr!") +hasLocation(#20135,#20126) +stmt_containers(#20135,#20124) #20136=* -entry_cfg_node(#20136,#20122) -#20137=@"loc,{#10000},6,14,6,13" -locations_default(#20137,#10000,6,14,6,13) -hasLocation(#20136,#20137) -#20138=* -exit_cfg_node(#20138,#20122) -hasLocation(#20138,#20130) -successor(#20132,#20134) -successor(#20134,#20133) -successor(#20133,#20138) -successor(#20136,#20132) -toplevel_parent_xml_node(#20122,#20121) +exprs(#20136,105,#20135,0,"expr!") +hasLocation(#20136,#20126) +enclosing_stmt(#20136,#20135) +expr_containers(#20136,#20124) +#20137=* +exprs(#20137,79,#20136,0,"expr") +hasLocation(#20137,#20128) +enclosing_stmt(#20137,#20135) +expr_containers(#20137,#20124) +literals("expr","expr",#20137) +#20138=@"var;{expr};{#20133}" +variables(#20138,"expr",#20133) +bind(#20137,#20138) #20139=* -#20140=@"script;{#10000},7,14" +entry_cfg_node(#20139,#20124) +#20140=@"loc,{#10000},6,14,6,13" +locations_default(#20140,#10000,6,14,6,13) +hasLocation(#20139,#20140) #20141=* -lines(#20141,#20140,"expr?.bar","") -#20142=@"loc,{#10000},7,14,7,22" -locations_default(#20142,#10000,7,14,7,22) -hasLocation(#20141,#20142) -numlines(#20140,1,1,0) -#20143=* -tokeninfo(#20143,6,#20140,0,"expr") -#20144=@"loc,{#10000},7,14,7,17" -locations_default(#20144,#10000,7,14,7,17) -hasLocation(#20143,#20144) -#20145=* -tokeninfo(#20145,8,#20140,1,"?.") -#20146=@"loc,{#10000},7,18,7,19" -locations_default(#20146,#10000,7,18,7,19) -hasLocation(#20145,#20146) -#20147=* -tokeninfo(#20147,6,#20140,2,"bar") -#20148=@"loc,{#10000},7,20,7,22" -locations_default(#20148,#10000,7,20,7,22) -hasLocation(#20147,#20148) -#20149=* -tokeninfo(#20149,0,#20140,3,"") -#20150=@"loc,{#10000},7,23,7,22" -locations_default(#20150,#10000,7,23,7,22) -hasLocation(#20149,#20150) -toplevels(#20140,4) -hasLocation(#20140,#20142) -#20151=@"module;{#10000},7,14" -scopes(#20151,3) -scopenodes(#20140,#20151) -scopenesting(#20151,#20000) -is_module(#20140) +exit_cfg_node(#20141,#20124) +hasLocation(#20141,#20132) +successor(#20135,#20137) +successor(#20137,#20136) +successor(#20136,#20141) +successor(#20139,#20135) +toplevel_parent_xml_node(#20124,#20123) +#20142=* +#20143=@"script;{#10000},7,14" +#20144=* +lines(#20144,#20143,"expr?.bar","") +#20145=@"loc,{#10000},7,14,7,22" +locations_default(#20145,#10000,7,14,7,22) +hasLocation(#20144,#20145) +numlines(#20143,1,1,0) +#20146=* +tokeninfo(#20146,6,#20143,0,"expr") +#20147=@"loc,{#10000},7,14,7,17" +locations_default(#20147,#10000,7,14,7,17) +hasLocation(#20146,#20147) +#20148=* +tokeninfo(#20148,8,#20143,1,"?.") +#20149=@"loc,{#10000},7,18,7,19" +locations_default(#20149,#10000,7,18,7,19) +hasLocation(#20148,#20149) +#20150=* +tokeninfo(#20150,6,#20143,2,"bar") +#20151=@"loc,{#10000},7,20,7,22" +locations_default(#20151,#10000,7,20,7,22) +hasLocation(#20150,#20151) #20152=* -stmts(#20152,2,#20140,0,"expr?.bar") -hasLocation(#20152,#20142) -stmt_containers(#20152,#20140) -#20153=* -exprs(#20153,14,#20152,0,"expr?.bar") -hasLocation(#20153,#20142) -enclosing_stmt(#20153,#20152) -expr_containers(#20153,#20140) -#20154=* -exprs(#20154,79,#20153,0,"expr") -hasLocation(#20154,#20144) -enclosing_stmt(#20154,#20152) -expr_containers(#20154,#20140) -literals("expr","expr",#20154) -#20155=@"var;{expr};{#20151}" -variables(#20155,"expr",#20151) -bind(#20154,#20155) +tokeninfo(#20152,0,#20143,3,"") +#20153=@"loc,{#10000},7,23,7,22" +locations_default(#20153,#10000,7,23,7,22) +hasLocation(#20152,#20153) +toplevels(#20143,4) +hasLocation(#20143,#20145) +#20154=@"module;{#10000},7,14" +scopes(#20154,3) +scopenodes(#20143,#20154) +scopenesting(#20154,#20000) +is_module(#20143) +#20155=@"var;{this};{#20154}" +variables(#20155,"this",#20154) #20156=* -exprs(#20156,0,#20153,1,"bar") -hasLocation(#20156,#20148) -enclosing_stmt(#20156,#20152) -expr_containers(#20156,#20140) -literals("bar","bar",#20156) -isOptionalChaining(#20153) +stmts(#20156,2,#20143,0,"expr?.bar") +hasLocation(#20156,#20145) +stmt_containers(#20156,#20143) #20157=* -entry_cfg_node(#20157,#20140) -#20158=@"loc,{#10000},7,14,7,13" -locations_default(#20158,#10000,7,14,7,13) -hasLocation(#20157,#20158) -#20159=* -exit_cfg_node(#20159,#20140) -hasLocation(#20159,#20150) -successor(#20152,#20154) -successor(#20156,#20153) -successor(#20154,#20156) -successor(#20153,#20159) -successor(#20154,#20159) -successor(#20157,#20152) -toplevel_parent_xml_node(#20140,#20139) +exprs(#20157,14,#20156,0,"expr?.bar") +hasLocation(#20157,#20145) +enclosing_stmt(#20157,#20156) +expr_containers(#20157,#20143) +#20158=* +exprs(#20158,79,#20157,0,"expr") +hasLocation(#20158,#20147) +enclosing_stmt(#20158,#20156) +expr_containers(#20158,#20143) +literals("expr","expr",#20158) +#20159=@"var;{expr};{#20154}" +variables(#20159,"expr",#20154) +bind(#20158,#20159) #20160=* -xmlChars(#20160," - ",#10000,0,0,#10000) -#20161=@"loc,{#10000},4,13,5,1" -locations_default(#20161,#10000,4,13,5,1) -xmllocations(#20160,#20161) -#20162=* -xmlChars(#20162," - ",#10000,2,0,#10000) -#20163=@"loc,{#10000},5,29,6,1" -locations_default(#20163,#10000,5,29,6,1) -xmllocations(#20162,#20163) +exprs(#20160,0,#20157,1,"bar") +hasLocation(#20160,#20151) +enclosing_stmt(#20160,#20156) +expr_containers(#20160,#20143) +literals("bar","bar",#20160) +isOptionalChaining(#20157) +#20161=* +entry_cfg_node(#20161,#20143) +#20162=@"loc,{#10000},7,14,7,13" +locations_default(#20162,#10000,7,14,7,13) +hasLocation(#20161,#20162) +#20163=* +exit_cfg_node(#20163,#20143) +hasLocation(#20163,#20153) +successor(#20156,#20158) +successor(#20160,#20157) +successor(#20158,#20160) +successor(#20157,#20163) +successor(#20158,#20163) +successor(#20161,#20156) +toplevel_parent_xml_node(#20143,#20142) #20164=* xmlChars(#20164," - ",#10000,4,0,#10000) -#20165=@"loc,{#10000},6,23,7,1" -locations_default(#20165,#10000,6,23,7,1) + ",#10000,0,0,#10000) +#20165=@"loc,{#10000},4,13,5,1" +locations_default(#20165,#10000,4,13,5,1) xmllocations(#20164,#20165) #20166=* xmlChars(#20166," - ",#10000,6,0,#10000) -#20167=@"loc,{#10000},7,27,8,1" -locations_default(#20167,#10000,7,27,8,1) + ",#10000,2,0,#10000) +#20167=@"loc,{#10000},5,29,6,1" +locations_default(#20167,#10000,5,29,6,1) xmllocations(#20166,#20167) #20168=* -xmlElements(#20168,"foo",#10000,5,#10000) -#20169=@"loc,{#10000},7,2,7,26" -locations_default(#20169,#10000,7,2,7,26) +xmlChars(#20168," + ",#10000,4,0,#10000) +#20169=@"loc,{#10000},6,23,7,1" +locations_default(#20169,#10000,6,23,7,1) xmllocations(#20168,#20169) -xmlAttrs(#20139,#20168,"[baz]","expr?.bar",0,#10000) -#20170=@"loc,{#10000},7,7,7,23" -locations_default(#20170,#10000,7,7,7,23) -xmllocations(#20139,#20170) -#20171=* -xmlElements(#20171,"foo",#10000,3,#10000) -#20172=@"loc,{#10000},6,2,6,22" -locations_default(#20172,#10000,6,2,6,22) -xmllocations(#20171,#20172) -xmlAttrs(#20121,#20171,"[baz]","expr!",0,#10000) -#20173=@"loc,{#10000},6,7,6,19" -locations_default(#20173,#10000,6,7,6,19) -xmllocations(#20121,#20173) -#20174=* -xmlElements(#20174,"foo",#10000,1,#10000) -#20175=@"loc,{#10000},5,2,5,28" -locations_default(#20175,#10000,5,2,5,28) -xmllocations(#20174,#20175) -xmlAttrs(#20100,#20174,"[prop]","expr + expr",0,#10000) -#20176=@"loc,{#10000},5,7,5,26" -locations_default(#20176,#10000,5,7,5,26) -xmllocations(#20100,#20176) -xml_element_parent_expression(#20174,#20097,0) -xml_element_parent_expression(#20171,#20097,1) -xml_element_parent_expression(#20168,#20097,2) -#20177=* -exprs(#20177,78,#20085,0,"MyComponent") -hasLocation(#20177,#20063) -enclosing_stmt(#20177,#20085) -expr_containers(#20177,#20001) -literals("MyComponent","MyComponent",#20177) -decl(#20177,#20075) -typedecl(#20177,#20076) +#20170=* +xmlChars(#20170," + ",#10000,6,0,#10000) +#20171=@"loc,{#10000},7,27,8,1" +locations_default(#20171,#10000,7,27,8,1) +xmllocations(#20170,#20171) +#20172=* +xmlElements(#20172,"foo",#10000,5,#10000) +#20173=@"loc,{#10000},7,2,7,26" +locations_default(#20173,#10000,7,2,7,26) +xmllocations(#20172,#20173) +xmlAttrs(#20142,#20172,"[baz]","expr?.bar",0,#10000) +#20174=@"loc,{#10000},7,7,7,23" +locations_default(#20174,#10000,7,7,7,23) +xmllocations(#20142,#20174) +#20175=* +xmlElements(#20175,"foo",#10000,3,#10000) +#20176=@"loc,{#10000},6,2,6,22" +locations_default(#20176,#10000,6,2,6,22) +xmllocations(#20175,#20176) +xmlAttrs(#20123,#20175,"[baz]","expr!",0,#10000) +#20177=@"loc,{#10000},6,7,6,19" +locations_default(#20177,#10000,6,7,6,19) +xmllocations(#20123,#20177) #20178=* -scopes(#20178,10) -scopenodes(#20085,#20178) -scopenesting(#20178,#20071) -#20179=* -properties(#20179,#20085,2,0,"constructor() {}") -#20180=@"loc,{#10000},10,26,10,25" -locations_default(#20180,#10000,10,26,10,25) -hasLocation(#20179,#20180) +xmlElements(#20178,"foo",#10000,1,#10000) +#20179=@"loc,{#10000},5,2,5,28" +locations_default(#20179,#10000,5,2,5,28) +xmllocations(#20178,#20179) +xmlAttrs(#20101,#20178,"[prop]","expr + expr",0,#10000) +#20180=@"loc,{#10000},5,7,5,26" +locations_default(#20180,#10000,5,7,5,26) +xmllocations(#20101,#20180) +xml_element_parent_expression(#20178,#20098,0) +xml_element_parent_expression(#20175,#20098,1) +xml_element_parent_expression(#20172,#20098,2) #20181=* -exprs(#20181,0,#20179,0,"constructor") -hasLocation(#20181,#20180) -enclosing_stmt(#20181,#20085) +exprs(#20181,78,#20086,0,"MyComponent") +hasLocation(#20181,#20063) +enclosing_stmt(#20181,#20086) expr_containers(#20181,#20001) -literals("constructor","constructor",#20181) +literals("MyComponent","MyComponent",#20181) +decl(#20181,#20075) +typedecl(#20181,#20076) #20182=* -exprs(#20182,9,#20179,1,"() {}") -hasLocation(#20182,#20180) -enclosing_stmt(#20182,#20085) -expr_containers(#20182,#20001) -#20183=* -scopes(#20183,1) -scopenodes(#20182,#20183) -scopenesting(#20183,#20178) -#20184=@"var;{arguments};{#20183}" -variables(#20184,"arguments",#20183) -is_arguments_object(#20184) -#20185=* -stmts(#20185,1,#20182,-2,"{}") -hasLocation(#20185,#20180) -stmt_containers(#20185,#20182) -is_method(#20179) +scopes(#20182,10) +scopenodes(#20086,#20182) +scopenesting(#20182,#20071) +#20183=@"var;{this};{#20182}" +variables(#20183,"this",#20182) +#20184=* +properties(#20184,#20086,2,0,"constructor() {}") +#20185=@"loc,{#10000},10,26,10,25" +locations_default(#20185,#10000,10,26,10,25) +hasLocation(#20184,#20185) #20186=* -entry_cfg_node(#20186,#20001) -#20187=@"loc,{#10000},1,1,1,0" -locations_default(#20187,#10000,1,1,1,0) -hasLocation(#20186,#20187) +exprs(#20186,0,#20184,0,"constructor") +hasLocation(#20186,#20185) +enclosing_stmt(#20186,#20086) +expr_containers(#20186,#20001) +literals("constructor","constructor",#20186) +#20187=* +exprs(#20187,9,#20184,1,"() {}") +hasLocation(#20187,#20185) +enclosing_stmt(#20187,#20086) +expr_containers(#20187,#20001) #20188=* -exit_cfg_node(#20188,#20001) -hasLocation(#20188,#20069) -successor(#20084,#20177) -successor(#20182,#20179) -#20189=* -entry_cfg_node(#20189,#20182) -hasLocation(#20189,#20180) -#20190=* -exit_cfg_node(#20190,#20182) -hasLocation(#20190,#20180) -successor(#20185,#20190) -successor(#20189,#20185) -successor(#20181,#20182) -successor(#20179,#20085) -successor(#20177,#20181) -successor(#20092,#20096) -successor(#20097,#20099) -successor(#20099,#20094) -successor(#20096,#20097) -successor(#20094,#20089) -successor(#20091,#20092) -successor(#20089,#20087) -successor(#20087,#20188) -successor(#20085,#20091) -successor(#20077,#20084) -successor(#20081,#20077) -successor(#20186,#20081) +scopes(#20188,1) +scopenodes(#20187,#20188) +scopenesting(#20188,#20182) +#20189=@"var;{this};{#20188}" +variables(#20189,"this",#20188) +#20190=@"var;{arguments};{#20188}" +variables(#20190,"arguments",#20188) +is_arguments_object(#20190) +#20191=* +stmts(#20191,1,#20187,-2,"{}") +hasLocation(#20191,#20185) +stmt_containers(#20191,#20187) +is_method(#20184) +#20192=* +entry_cfg_node(#20192,#20001) +#20193=@"loc,{#10000},1,1,1,0" +locations_default(#20193,#10000,1,1,1,0) +hasLocation(#20192,#20193) +#20194=* +exit_cfg_node(#20194,#20001) +hasLocation(#20194,#20069) +successor(#20085,#20181) +successor(#20187,#20184) +#20195=* +entry_cfg_node(#20195,#20187) +hasLocation(#20195,#20185) +#20196=* +exit_cfg_node(#20196,#20187) +hasLocation(#20196,#20185) +successor(#20191,#20196) +successor(#20195,#20191) +successor(#20186,#20187) +successor(#20184,#20086) +successor(#20181,#20186) +successor(#20093,#20097) +successor(#20098,#20100) +successor(#20100,#20095) +successor(#20097,#20098) +successor(#20095,#20090) +successor(#20092,#20093) +successor(#20090,#20088) +successor(#20088,#20194) +successor(#20086,#20092) +successor(#20078,#20085) +successor(#20082,#20078) +successor(#20192,#20082) numlines(#10000,10,9,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/node/output/trap/constlet.js.trap b/javascript/extractor/tests/node/output/trap/constlet.js.trap index c7080134983c..07cb90ee5ca1 100644 --- a/javascript/extractor/tests/node/output/trap/constlet.js.trap +++ b/javascript/extractor/tests/node/output/trap/constlet.js.trap @@ -109,71 +109,73 @@ is_module(#20001) variables(#20040,"x",#20033) #20041=@"var;{y};{#20033}" variables(#20041,"y",#20033) -#20042=* -stmts(#20042,22,#20001,0,"const x = 23;") -hasLocation(#20042,#20003) -stmt_containers(#20042,#20001) +#20042=@"var;{this};{#20033}" +variables(#20042,"this",#20033) #20043=* -exprs(#20043,64,#20042,0,"x = 23") -#20044=@"loc,{#10000},1,7,1,12" -locations_default(#20044,#10000,1,7,1,12) -hasLocation(#20043,#20044) -enclosing_stmt(#20043,#20042) -expr_containers(#20043,#20001) -#20045=* -exprs(#20045,78,#20043,0,"x") -hasLocation(#20045,#20009) -enclosing_stmt(#20045,#20042) -expr_containers(#20045,#20001) -literals("x","x",#20045) -decl(#20045,#20040) +stmts(#20043,22,#20001,0,"const x = 23;") +hasLocation(#20043,#20003) +stmt_containers(#20043,#20001) +#20044=* +exprs(#20044,64,#20043,0,"x = 23") +#20045=@"loc,{#10000},1,7,1,12" +locations_default(#20045,#10000,1,7,1,12) +hasLocation(#20044,#20045) +enclosing_stmt(#20044,#20043) +expr_containers(#20044,#20001) #20046=* -exprs(#20046,3,#20043,1,"23") -hasLocation(#20046,#20013) -enclosing_stmt(#20046,#20042) +exprs(#20046,78,#20044,0,"x") +hasLocation(#20046,#20009) +enclosing_stmt(#20046,#20043) expr_containers(#20046,#20001) -literals("23","23",#20046) +literals("x","x",#20046) +decl(#20046,#20040) #20047=* -stmts(#20047,23,#20001,1,"let y = 42;") -hasLocation(#20047,#20005) -stmt_containers(#20047,#20001) +exprs(#20047,3,#20044,1,"23") +hasLocation(#20047,#20013) +enclosing_stmt(#20047,#20043) +expr_containers(#20047,#20001) +literals("23","23",#20047) #20048=* -exprs(#20048,64,#20047,0,"y = 42") -#20049=@"loc,{#10000},2,5,2,10" -locations_default(#20049,#10000,2,5,2,10) -hasLocation(#20048,#20049) -enclosing_stmt(#20048,#20047) -expr_containers(#20048,#20001) -#20050=* -exprs(#20050,78,#20048,0,"y") -hasLocation(#20050,#20019) -enclosing_stmt(#20050,#20047) -expr_containers(#20050,#20001) -literals("y","y",#20050) -decl(#20050,#20041) +stmts(#20048,23,#20001,1,"let y = 42;") +hasLocation(#20048,#20005) +stmt_containers(#20048,#20001) +#20049=* +exprs(#20049,64,#20048,0,"y = 42") +#20050=@"loc,{#10000},2,5,2,10" +locations_default(#20050,#10000,2,5,2,10) +hasLocation(#20049,#20050) +enclosing_stmt(#20049,#20048) +expr_containers(#20049,#20001) #20051=* -exprs(#20051,3,#20048,1,"42") -hasLocation(#20051,#20023) -enclosing_stmt(#20051,#20047) +exprs(#20051,78,#20049,0,"y") +hasLocation(#20051,#20019) +enclosing_stmt(#20051,#20048) expr_containers(#20051,#20001) -literals("42","42",#20051) +literals("y","y",#20051) +decl(#20051,#20041) #20052=* -entry_cfg_node(#20052,#20001) -#20053=@"loc,{#10000},1,1,1,0" -locations_default(#20053,#10000,1,1,1,0) -hasLocation(#20052,#20053) -#20054=* -exit_cfg_node(#20054,#20001) -hasLocation(#20054,#20027) -successor(#20047,#20050) -successor(#20051,#20048) -successor(#20050,#20051) -successor(#20048,#20054) -successor(#20042,#20045) -successor(#20046,#20043) -successor(#20045,#20046) -successor(#20043,#20047) -successor(#20052,#20042) +exprs(#20052,3,#20049,1,"42") +hasLocation(#20052,#20023) +enclosing_stmt(#20052,#20048) +expr_containers(#20052,#20001) +literals("42","42",#20052) +#20053=* +entry_cfg_node(#20053,#20001) +#20054=@"loc,{#10000},1,1,1,0" +locations_default(#20054,#10000,1,1,1,0) +hasLocation(#20053,#20054) +#20055=* +exit_cfg_node(#20055,#20001) +hasLocation(#20055,#20027) +successor(#20048,#20051) +successor(#20052,#20049) +successor(#20051,#20052) +successor(#20049,#20055) +successor(#20043,#20046) +successor(#20047,#20044) +successor(#20046,#20047) +successor(#20044,#20048) +successor(#20053,#20043) is_nodejs(#20001) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/node/output/trap/detection.js.trap b/javascript/extractor/tests/node/output/trap/detection.js.trap index 81e56c20609b..7006e50342e9 100644 --- a/javascript/extractor/tests/node/output/trap/detection.js.trap +++ b/javascript/extractor/tests/node/output/trap/detection.js.trap @@ -139,65 +139,67 @@ variables(#20047,"arguments",#20041) is_module(#20001) #20048=@"var;{fs};{#20041}" variables(#20048,"fs",#20041) -#20049=* -stmts(#20049,22,#20001,0,"const f ... ('fs');") -hasLocation(#20049,#20017) -stmt_containers(#20049,#20001) +#20049=@"var;{this};{#20041}" +variables(#20049,"this",#20041) #20050=* -exprs(#20050,64,#20049,0,"fs = require('fs')") -#20051=@"loc,{#10000},6,7,6,24" -locations_default(#20051,#10000,6,7,6,24) -hasLocation(#20050,#20051) -enclosing_stmt(#20050,#20049) -expr_containers(#20050,#20001) -#20052=* -exprs(#20052,78,#20050,0,"fs") -hasLocation(#20052,#20021) -enclosing_stmt(#20052,#20049) -expr_containers(#20052,#20001) -literals("fs","fs",#20052) -decl(#20052,#20048) +stmts(#20050,22,#20001,0,"const f ... ('fs');") +hasLocation(#20050,#20017) +stmt_containers(#20050,#20001) +#20051=* +exprs(#20051,64,#20050,0,"fs = require('fs')") +#20052=@"loc,{#10000},6,7,6,24" +locations_default(#20052,#10000,6,7,6,24) +hasLocation(#20051,#20052) +enclosing_stmt(#20051,#20050) +expr_containers(#20051,#20001) #20053=* -exprs(#20053,13,#20050,1,"require('fs')") -#20054=@"loc,{#10000},6,12,6,24" -locations_default(#20054,#10000,6,12,6,24) -hasLocation(#20053,#20054) -enclosing_stmt(#20053,#20049) +exprs(#20053,78,#20051,0,"fs") +hasLocation(#20053,#20021) +enclosing_stmt(#20053,#20050) expr_containers(#20053,#20001) -#20055=* -exprs(#20055,79,#20053,-1,"require") -hasLocation(#20055,#20025) -enclosing_stmt(#20055,#20049) -expr_containers(#20055,#20001) -literals("require","require",#20055) -bind(#20055,#20042) +literals("fs","fs",#20053) +decl(#20053,#20048) +#20054=* +exprs(#20054,13,#20051,1,"require('fs')") +#20055=@"loc,{#10000},6,12,6,24" +locations_default(#20055,#10000,6,12,6,24) +hasLocation(#20054,#20055) +enclosing_stmt(#20054,#20050) +expr_containers(#20054,#20001) #20056=* -exprs(#20056,4,#20053,0,"'fs'") -hasLocation(#20056,#20029) -enclosing_stmt(#20056,#20049) +exprs(#20056,79,#20054,-1,"require") +hasLocation(#20056,#20025) +enclosing_stmt(#20056,#20050) expr_containers(#20056,#20001) -literals("fs","'fs'",#20056) +literals("require","require",#20056) +bind(#20056,#20042) #20057=* -regexpterm(#20057,14,#20056,0,"fs") -#20058=@"loc,{#10000},6,21,6,22" -locations_default(#20058,#10000,6,21,6,22) -hasLocation(#20057,#20058) -regexp_const_value(#20057,"fs") -#20059=* -entry_cfg_node(#20059,#20001) -#20060=@"loc,{#10000},1,1,1,0" -locations_default(#20060,#10000,1,1,1,0) -hasLocation(#20059,#20060) -#20061=* -exit_cfg_node(#20061,#20001) -hasLocation(#20061,#20035) -successor(#20049,#20052) -successor(#20056,#20053) -successor(#20055,#20056) -successor(#20053,#20050) -successor(#20052,#20055) -successor(#20050,#20061) -successor(#20059,#20049) +exprs(#20057,4,#20054,0,"'fs'") +hasLocation(#20057,#20029) +enclosing_stmt(#20057,#20050) +expr_containers(#20057,#20001) +literals("fs","'fs'",#20057) +#20058=* +regexpterm(#20058,14,#20057,0,"fs") +#20059=@"loc,{#10000},6,21,6,22" +locations_default(#20059,#10000,6,21,6,22) +hasLocation(#20058,#20059) +regexp_const_value(#20058,"fs") +#20060=* +entry_cfg_node(#20060,#20001) +#20061=@"loc,{#10000},1,1,1,0" +locations_default(#20061,#10000,1,1,1,0) +hasLocation(#20060,#20061) +#20062=* +exit_cfg_node(#20062,#20001) +hasLocation(#20062,#20035) +successor(#20050,#20053) +successor(#20057,#20054) +successor(#20056,#20057) +successor(#20054,#20051) +successor(#20053,#20056) +successor(#20051,#20062) +successor(#20060,#20050) is_nodejs(#20001) numlines(#10000,6,1,5) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/node/output/trap/hello.trap b/javascript/extractor/tests/node/output/trap/hello.trap index 8c0838794375..08bade526f1b 100644 --- a/javascript/extractor/tests/node/output/trap/hello.trap +++ b/javascript/extractor/tests/node/output/trap/hello.trap @@ -85,70 +85,72 @@ variables(#20029,"__dirname",#20024) #20030=@"var;{arguments};{#20024}" variables(#20030,"arguments",#20024) is_module(#20001) -#20031=* -stmts(#20031,2,#20001,0,"console ... rld!"");") -hasLocation(#20031,#20003) -stmt_containers(#20031,#20001) +#20031=@"var;{this};{#20024}" +variables(#20031,"this",#20024) #20032=* -exprs(#20032,13,#20031,0,"console ... orld!"")") -#20033=@"loc,{#10000},2,1,2,28" -locations_default(#20033,#10000,2,1,2,28) -hasLocation(#20032,#20033) -enclosing_stmt(#20032,#20031) -expr_containers(#20032,#20001) -#20034=* -exprs(#20034,14,#20032,-1,"console.log") -#20035=@"loc,{#10000},2,1,2,11" -locations_default(#20035,#10000,2,1,2,11) -hasLocation(#20034,#20035) -enclosing_stmt(#20034,#20031) -expr_containers(#20034,#20001) -#20036=* -exprs(#20036,79,#20034,0,"console") -hasLocation(#20036,#20005) -enclosing_stmt(#20036,#20031) -expr_containers(#20036,#20001) -literals("console","console",#20036) -bind(#20036,#20022) +stmts(#20032,2,#20001,0,"console ... rld!"");") +hasLocation(#20032,#20003) +stmt_containers(#20032,#20001) +#20033=* +exprs(#20033,13,#20032,0,"console ... orld!"")") +#20034=@"loc,{#10000},2,1,2,28" +locations_default(#20034,#10000,2,1,2,28) +hasLocation(#20033,#20034) +enclosing_stmt(#20033,#20032) +expr_containers(#20033,#20001) +#20035=* +exprs(#20035,14,#20033,-1,"console.log") +#20036=@"loc,{#10000},2,1,2,11" +locations_default(#20036,#10000,2,1,2,11) +hasLocation(#20035,#20036) +enclosing_stmt(#20035,#20032) +expr_containers(#20035,#20001) #20037=* -exprs(#20037,0,#20034,1,"log") -hasLocation(#20037,#20009) -enclosing_stmt(#20037,#20031) +exprs(#20037,79,#20035,0,"console") +hasLocation(#20037,#20005) +enclosing_stmt(#20037,#20032) expr_containers(#20037,#20001) -literals("log","log",#20037) +literals("console","console",#20037) +bind(#20037,#20022) #20038=* -exprs(#20038,4,#20032,0,"""Hello, world!""") -hasLocation(#20038,#20013) -enclosing_stmt(#20038,#20031) +exprs(#20038,0,#20035,1,"log") +hasLocation(#20038,#20009) +enclosing_stmt(#20038,#20032) expr_containers(#20038,#20001) -literals("Hello, world!","""Hello, world!""",#20038) +literals("log","log",#20038) #20039=* -regexpterm(#20039,14,#20038,0,"Hello, world!") -#20040=@"loc,{#10000},2,14,2,26" -locations_default(#20040,#10000,2,14,2,26) -hasLocation(#20039,#20040) -regexp_const_value(#20039,"Hello, world!") -#20041=* -entry_cfg_node(#20041,#20001) -#20042=@"loc,{#10000},2,1,2,0" -locations_default(#20042,#10000,2,1,2,0) -hasLocation(#20041,#20042) -#20043=* -exit_cfg_node(#20043,#20001) -hasLocation(#20043,#20019) -successor(#20031,#20036) -successor(#20038,#20032) -successor(#20037,#20034) -successor(#20036,#20037) -successor(#20034,#20038) -successor(#20032,#20043) -successor(#20041,#20031) -is_nodejs(#20001) +exprs(#20039,4,#20033,0,"""Hello, world!""") +hasLocation(#20039,#20013) +enclosing_stmt(#20039,#20032) +expr_containers(#20039,#20001) +literals("Hello, world!","""Hello, world!""",#20039) +#20040=* +regexpterm(#20040,14,#20039,0,"Hello, world!") +#20041=@"loc,{#10000},2,14,2,26" +locations_default(#20041,#10000,2,14,2,26) +hasLocation(#20040,#20041) +regexp_const_value(#20040,"Hello, world!") +#20042=* +entry_cfg_node(#20042,#20001) +#20043=@"loc,{#10000},2,1,2,0" +locations_default(#20043,#10000,2,1,2,0) +hasLocation(#20042,#20043) #20044=* -lines(#20044,#20001,"#!/usr/bin/env node"," +exit_cfg_node(#20044,#20001) +hasLocation(#20044,#20019) +successor(#20032,#20037) +successor(#20039,#20033) +successor(#20038,#20035) +successor(#20037,#20038) +successor(#20035,#20039) +successor(#20033,#20044) +successor(#20042,#20032) +is_nodejs(#20001) +#20045=* +lines(#20045,#20001,"#!/usr/bin/env node"," ") -#20045=@"loc,{#10000},1,1,1,19" -locations_default(#20045,#10000,1,1,1,19) -hasLocation(#20044,#20045) +#20046=@"loc,{#10000},1,1,1,19" +locations_default(#20046,#10000,1,1,1,19) +hasLocation(#20045,#20046) numlines(#10000,2,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/node/output/trap/tst.html.trap b/javascript/extractor/tests/node/output/trap/tst.html.trap index 56817f8f03a0..ea6d7e94de48 100644 --- a/javascript/extractor/tests/node/output/trap/tst.html.trap +++ b/javascript/extractor/tests/node/output/trap/tst.html.trap @@ -50,72 +50,74 @@ toplevels(#20002,2) hasLocation(#20002,#20004) #20017=@"var;{x};{#20000}" variables(#20017,"x",#20000) -#20018=* -stmts(#20018,18,#20002,0,"var x = 42;") -hasLocation(#20018,#20004) -stmt_containers(#20018,#20002) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,64,#20018,0,"x = 42") -#20020=@"loc,{#10000},6,17,6,22" -locations_default(#20020,#10000,6,17,6,22) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20002) -#20021=* -exprs(#20021,78,#20019,0,"x") -hasLocation(#20021,#20008) -enclosing_stmt(#20021,#20018) -expr_containers(#20021,#20002) -literals("x","x",#20021) -decl(#20021,#20017) +stmts(#20019,18,#20002,0,"var x = 42;") +hasLocation(#20019,#20004) +stmt_containers(#20019,#20002) +#20020=* +exprs(#20020,64,#20019,0,"x = 42") +#20021=@"loc,{#10000},6,17,6,22" +locations_default(#20021,#10000,6,17,6,22) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20002) #20022=* -exprs(#20022,3,#20019,1,"42") -hasLocation(#20022,#20012) -enclosing_stmt(#20022,#20018) +exprs(#20022,78,#20020,0,"x") +hasLocation(#20022,#20008) +enclosing_stmt(#20022,#20019) expr_containers(#20022,#20002) -literals("42","42",#20022) +literals("x","x",#20022) +decl(#20022,#20017) #20023=* -entry_cfg_node(#20023,#20002) -#20024=@"loc,{#10000},6,13,6,12" -locations_default(#20024,#10000,6,13,6,12) -hasLocation(#20023,#20024) -#20025=* -exit_cfg_node(#20025,#20002) -hasLocation(#20025,#20016) -successor(#20018,#20021) -successor(#20022,#20019) -successor(#20021,#20022) -successor(#20019,#20025) -successor(#20023,#20018) -toplevel_parent_xml_node(#20002,#20001) +exprs(#20023,3,#20020,1,"42") +hasLocation(#20023,#20012) +enclosing_stmt(#20023,#20019) +expr_containers(#20023,#20002) +literals("42","42",#20023) +#20024=* +entry_cfg_node(#20024,#20002) +#20025=@"loc,{#10000},6,13,6,12" +locations_default(#20025,#10000,6,13,6,12) +hasLocation(#20024,#20025) #20026=* -xmlElements(#20026,"html",#10000,0,#10000) -#20027=@"loc,{#10000},1,1,8,7" -locations_default(#20027,#10000,1,1,8,7) -xmllocations(#20026,#20027) -#20028=* -xmlElements(#20028,"body",#20026,1,#10000) -#20029=@"loc,{#10000},5,1,7,7" -locations_default(#20029,#10000,5,1,7,7) -xmllocations(#20028,#20029) -#20030=* -xmlElements(#20030,"a",#20028,0,#10000) -#20031=@"loc,{#10000},6,1,6,29" -locations_default(#20031,#10000,6,1,6,29) -xmllocations(#20030,#20031) -xmlAttrs(#20001,#20030,"onclick","var x = 42;",0,#10000) -#20032=@"loc,{#10000},6,4,6,24" -locations_default(#20032,#10000,6,4,6,24) -xmllocations(#20001,#20032) -#20033=* -xmlElements(#20033,"head",#20026,0,#10000) -#20034=@"loc,{#10000},2,1,4,7" -locations_default(#20034,#10000,2,1,4,7) -xmllocations(#20033,#20034) -#20035=* -xmlElements(#20035,"title",#20033,0,#10000) -#20036=@"loc,{#10000},3,1,3,15" -locations_default(#20036,#10000,3,1,3,15) -xmllocations(#20035,#20036) +exit_cfg_node(#20026,#20002) +hasLocation(#20026,#20016) +successor(#20019,#20022) +successor(#20023,#20020) +successor(#20022,#20023) +successor(#20020,#20026) +successor(#20024,#20019) +toplevel_parent_xml_node(#20002,#20001) +#20027=* +xmlElements(#20027,"html",#10000,0,#10000) +#20028=@"loc,{#10000},1,1,8,7" +locations_default(#20028,#10000,1,1,8,7) +xmllocations(#20027,#20028) +#20029=* +xmlElements(#20029,"body",#20027,1,#10000) +#20030=@"loc,{#10000},5,1,7,7" +locations_default(#20030,#10000,5,1,7,7) +xmllocations(#20029,#20030) +#20031=* +xmlElements(#20031,"a",#20029,0,#10000) +#20032=@"loc,{#10000},6,1,6,29" +locations_default(#20032,#10000,6,1,6,29) +xmllocations(#20031,#20032) +xmlAttrs(#20001,#20031,"onclick","var x = 42;",0,#10000) +#20033=@"loc,{#10000},6,4,6,24" +locations_default(#20033,#10000,6,4,6,24) +xmllocations(#20001,#20033) +#20034=* +xmlElements(#20034,"head",#20027,0,#10000) +#20035=@"loc,{#10000},2,1,4,7" +locations_default(#20035,#10000,2,1,4,7) +xmllocations(#20034,#20035) +#20036=* +xmlElements(#20036,"title",#20034,0,#10000) +#20037=@"loc,{#10000},3,1,3,15" +locations_default(#20037,#10000,3,1,3,15) +xmllocations(#20036,#20037) numlines(#10000,8,1,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/node/output/trap/tst.js.trap b/javascript/extractor/tests/node/output/trap/tst.js.trap index 58f71f4717b5..7617be96cc0d 100644 --- a/javascript/extractor/tests/node/output/trap/tst.js.trap +++ b/javascript/extractor/tests/node/output/trap/tst.js.trap @@ -194,167 +194,169 @@ variables(#20073,"arguments",#20067) is_module(#20001) #20074=@"var;{fs};{#20067}" variables(#20074,"fs",#20067) -#20075=* -stmts(#20075,18,#20001,0,"var fs ... ('fs');") -hasLocation(#20075,#20003) -stmt_containers(#20075,#20001) +#20075=@"var;{this};{#20067}" +variables(#20075,"this",#20067) #20076=* -exprs(#20076,64,#20075,0,"fs = require('fs')") -#20077=@"loc,{#10000},1,5,1,22" -locations_default(#20077,#10000,1,5,1,22) -hasLocation(#20076,#20077) -enclosing_stmt(#20076,#20075) -expr_containers(#20076,#20001) -#20078=* -exprs(#20078,78,#20076,0,"fs") -hasLocation(#20078,#20013) -enclosing_stmt(#20078,#20075) -expr_containers(#20078,#20001) -literals("fs","fs",#20078) -decl(#20078,#20074) +stmts(#20076,18,#20001,0,"var fs ... ('fs');") +hasLocation(#20076,#20003) +stmt_containers(#20076,#20001) +#20077=* +exprs(#20077,64,#20076,0,"fs = require('fs')") +#20078=@"loc,{#10000},1,5,1,22" +locations_default(#20078,#10000,1,5,1,22) +hasLocation(#20077,#20078) +enclosing_stmt(#20077,#20076) +expr_containers(#20077,#20001) #20079=* -exprs(#20079,13,#20076,1,"require('fs')") -#20080=@"loc,{#10000},1,10,1,22" -locations_default(#20080,#10000,1,10,1,22) -hasLocation(#20079,#20080) -enclosing_stmt(#20079,#20075) +exprs(#20079,78,#20077,0,"fs") +hasLocation(#20079,#20013) +enclosing_stmt(#20079,#20076) expr_containers(#20079,#20001) -#20081=* -exprs(#20081,79,#20079,-1,"require") -hasLocation(#20081,#20017) -enclosing_stmt(#20081,#20075) -expr_containers(#20081,#20001) -literals("require","require",#20081) -bind(#20081,#20068) +literals("fs","fs",#20079) +decl(#20079,#20074) +#20080=* +exprs(#20080,13,#20077,1,"require('fs')") +#20081=@"loc,{#10000},1,10,1,22" +locations_default(#20081,#10000,1,10,1,22) +hasLocation(#20080,#20081) +enclosing_stmt(#20080,#20076) +expr_containers(#20080,#20001) #20082=* -exprs(#20082,4,#20079,0,"'fs'") -hasLocation(#20082,#20021) -enclosing_stmt(#20082,#20075) +exprs(#20082,79,#20080,-1,"require") +hasLocation(#20082,#20017) +enclosing_stmt(#20082,#20076) expr_containers(#20082,#20001) -literals("fs","'fs'",#20082) +literals("require","require",#20082) +bind(#20082,#20068) #20083=* -regexpterm(#20083,14,#20082,0,"fs") -#20084=@"loc,{#10000},1,19,1,20" -locations_default(#20084,#10000,1,19,1,20) -hasLocation(#20083,#20084) -regexp_const_value(#20083,"fs") -#20085=* -stmts(#20085,2,#20001,1,"y = 42;") -hasLocation(#20085,#20005) -stmt_containers(#20085,#20001) +exprs(#20083,4,#20080,0,"'fs'") +hasLocation(#20083,#20021) +enclosing_stmt(#20083,#20076) +expr_containers(#20083,#20001) +literals("fs","'fs'",#20083) +#20084=* +regexpterm(#20084,14,#20083,0,"fs") +#20085=@"loc,{#10000},1,19,1,20" +locations_default(#20085,#10000,1,19,1,20) +hasLocation(#20084,#20085) +regexp_const_value(#20084,"fs") #20086=* -exprs(#20086,47,#20085,0,"y = 42") -#20087=@"loc,{#10000},2,1,2,6" -locations_default(#20087,#10000,2,1,2,6) -hasLocation(#20086,#20087) -enclosing_stmt(#20086,#20085) -expr_containers(#20086,#20001) -#20088=* -exprs(#20088,79,#20086,0,"y") -hasLocation(#20088,#20027) -enclosing_stmt(#20088,#20085) -expr_containers(#20088,#20001) -literals("y","y",#20088) -#20089=@"var;{y};{#20000}" -variables(#20089,"y",#20000) -bind(#20088,#20089) -#20090=* -exprs(#20090,3,#20086,1,"42") -hasLocation(#20090,#20031) -enclosing_stmt(#20090,#20085) -expr_containers(#20090,#20001) -literals("42","42",#20090) +stmts(#20086,2,#20001,1,"y = 42;") +hasLocation(#20086,#20005) +stmt_containers(#20086,#20001) +#20087=* +exprs(#20087,47,#20086,0,"y = 42") +#20088=@"loc,{#10000},2,1,2,6" +locations_default(#20088,#10000,2,1,2,6) +hasLocation(#20087,#20088) +enclosing_stmt(#20087,#20086) +expr_containers(#20087,#20001) +#20089=* +exprs(#20089,79,#20087,0,"y") +hasLocation(#20089,#20027) +enclosing_stmt(#20089,#20086) +expr_containers(#20089,#20001) +literals("y","y",#20089) +#20090=@"var;{y};{#20000}" +variables(#20090,"y",#20000) +bind(#20089,#20090) #20091=* -stmts(#20091,2,#20001,2,"console ... ename);") -hasLocation(#20091,#20007) -stmt_containers(#20091,#20001) +exprs(#20091,3,#20087,1,"42") +hasLocation(#20091,#20031) +enclosing_stmt(#20091,#20086) +expr_containers(#20091,#20001) +literals("42","42",#20091) #20092=* -exprs(#20092,13,#20091,0,"console ... lename)") -#20093=@"loc,{#10000},3,1,3,23" -locations_default(#20093,#10000,3,1,3,23) -hasLocation(#20092,#20093) -enclosing_stmt(#20092,#20091) -expr_containers(#20092,#20001) -#20094=* -exprs(#20094,14,#20092,-1,"console.log") -#20095=@"loc,{#10000},3,1,3,11" -locations_default(#20095,#10000,3,1,3,11) -hasLocation(#20094,#20095) -enclosing_stmt(#20094,#20091) -expr_containers(#20094,#20001) -#20096=* -exprs(#20096,79,#20094,0,"console") -hasLocation(#20096,#20035) -enclosing_stmt(#20096,#20091) -expr_containers(#20096,#20001) -literals("console","console",#20096) -bind(#20096,#20065) +stmts(#20092,2,#20001,2,"console ... ename);") +hasLocation(#20092,#20007) +stmt_containers(#20092,#20001) +#20093=* +exprs(#20093,13,#20092,0,"console ... lename)") +#20094=@"loc,{#10000},3,1,3,23" +locations_default(#20094,#10000,3,1,3,23) +hasLocation(#20093,#20094) +enclosing_stmt(#20093,#20092) +expr_containers(#20093,#20001) +#20095=* +exprs(#20095,14,#20093,-1,"console.log") +#20096=@"loc,{#10000},3,1,3,11" +locations_default(#20096,#10000,3,1,3,11) +hasLocation(#20095,#20096) +enclosing_stmt(#20095,#20092) +expr_containers(#20095,#20001) #20097=* -exprs(#20097,0,#20094,1,"log") -hasLocation(#20097,#20039) -enclosing_stmt(#20097,#20091) +exprs(#20097,79,#20095,0,"console") +hasLocation(#20097,#20035) +enclosing_stmt(#20097,#20092) expr_containers(#20097,#20001) -literals("log","log",#20097) +literals("console","console",#20097) +bind(#20097,#20065) #20098=* -exprs(#20098,79,#20092,0,"__filename") -hasLocation(#20098,#20043) -enclosing_stmt(#20098,#20091) +exprs(#20098,0,#20095,1,"log") +hasLocation(#20098,#20039) +enclosing_stmt(#20098,#20092) expr_containers(#20098,#20001) -literals("__filename","__filename",#20098) -bind(#20098,#20071) +literals("log","log",#20098) #20099=* -stmts(#20099,9,#20001,3,"return arguments[0];") -hasLocation(#20099,#20009) -stmt_containers(#20099,#20001) +exprs(#20099,79,#20093,0,"__filename") +hasLocation(#20099,#20043) +enclosing_stmt(#20099,#20092) +expr_containers(#20099,#20001) +literals("__filename","__filename",#20099) +bind(#20099,#20071) #20100=* -exprs(#20100,15,#20099,0,"arguments[0]") -#20101=@"loc,{#10000},4,8,4,19" -locations_default(#20101,#10000,4,8,4,19) -hasLocation(#20100,#20101) -enclosing_stmt(#20100,#20099) -expr_containers(#20100,#20001) -#20102=* -exprs(#20102,79,#20100,0,"arguments") -hasLocation(#20102,#20051) -enclosing_stmt(#20102,#20099) -expr_containers(#20102,#20001) -literals("arguments","arguments",#20102) -bind(#20102,#20073) +stmts(#20100,9,#20001,3,"return arguments[0];") +hasLocation(#20100,#20009) +stmt_containers(#20100,#20001) +#20101=* +exprs(#20101,15,#20100,0,"arguments[0]") +#20102=@"loc,{#10000},4,8,4,19" +locations_default(#20102,#10000,4,8,4,19) +hasLocation(#20101,#20102) +enclosing_stmt(#20101,#20100) +expr_containers(#20101,#20001) #20103=* -exprs(#20103,3,#20100,1,"0") -hasLocation(#20103,#20055) -enclosing_stmt(#20103,#20099) +exprs(#20103,79,#20101,0,"arguments") +hasLocation(#20103,#20051) +enclosing_stmt(#20103,#20100) expr_containers(#20103,#20001) -literals("0","0",#20103) +literals("arguments","arguments",#20103) +bind(#20103,#20073) #20104=* -entry_cfg_node(#20104,#20001) -#20105=@"loc,{#10000},1,1,1,0" -locations_default(#20105,#10000,1,1,1,0) -hasLocation(#20104,#20105) -#20106=* -exit_cfg_node(#20106,#20001) -hasLocation(#20106,#20061) -successor(#20103,#20100) -successor(#20102,#20103) -successor(#20100,#20099) -successor(#20099,#20106) -successor(#20091,#20096) -successor(#20098,#20092) -successor(#20097,#20094) -successor(#20096,#20097) -successor(#20094,#20098) -successor(#20092,#20102) -successor(#20085,#20088) -successor(#20090,#20086) -successor(#20088,#20090) -successor(#20086,#20091) -successor(#20075,#20078) -successor(#20082,#20079) -successor(#20081,#20082) -successor(#20079,#20076) -successor(#20078,#20081) -successor(#20076,#20085) -successor(#20104,#20075) +exprs(#20104,3,#20101,1,"0") +hasLocation(#20104,#20055) +enclosing_stmt(#20104,#20100) +expr_containers(#20104,#20001) +literals("0","0",#20104) +#20105=* +entry_cfg_node(#20105,#20001) +#20106=@"loc,{#10000},1,1,1,0" +locations_default(#20106,#10000,1,1,1,0) +hasLocation(#20105,#20106) +#20107=* +exit_cfg_node(#20107,#20001) +hasLocation(#20107,#20061) +successor(#20104,#20101) +successor(#20103,#20104) +successor(#20101,#20100) +successor(#20100,#20107) +successor(#20092,#20097) +successor(#20099,#20093) +successor(#20098,#20095) +successor(#20097,#20098) +successor(#20095,#20099) +successor(#20093,#20103) +successor(#20086,#20089) +successor(#20091,#20087) +successor(#20089,#20091) +successor(#20087,#20092) +successor(#20076,#20079) +successor(#20083,#20080) +successor(#20082,#20083) +successor(#20080,#20077) +successor(#20079,#20082) +successor(#20077,#20086) +successor(#20105,#20076) is_nodejs(#20001) numlines(#10000,4,4,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/node/output/trap/tst.mjs.trap b/javascript/extractor/tests/node/output/trap/tst.mjs.trap index f097709a21aa..c1c2041402fc 100644 --- a/javascript/extractor/tests/node/output/trap/tst.mjs.trap +++ b/javascript/extractor/tests/node/output/trap/tst.mjs.trap @@ -53,33 +53,35 @@ is_module(#20001) is_es2015_module(#20001) #20017=@"var;{x};{#20016}" variables(#20017,"x",#20016) -#20018=* -stmts(#20018,18,#20001,0,"var x;") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20016}" +variables(#20018,"this",#20016) #20019=* -exprs(#20019,64,#20018,0,"x") -hasLocation(#20019,#20007) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) +stmts(#20019,18,#20001,0,"var x;") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) #20020=* -exprs(#20020,78,#20019,0,"x") +exprs(#20020,64,#20019,0,"x") hasLocation(#20020,#20007) -enclosing_stmt(#20020,#20018) +enclosing_stmt(#20020,#20019) expr_containers(#20020,#20001) -literals("x","x",#20020) -decl(#20020,#20017) #20021=* -entry_cfg_node(#20021,#20001) -#20022=@"loc,{#10000},1,1,1,0" -locations_default(#20022,#10000,1,1,1,0) -hasLocation(#20021,#20022) -#20023=* -exit_cfg_node(#20023,#20001) -hasLocation(#20023,#20011) -successor(#20018,#20020) -successor(#20020,#20019) -successor(#20019,#20023) -successor(#20021,#20018) +exprs(#20021,78,#20020,0,"x") +hasLocation(#20021,#20007) +enclosing_stmt(#20021,#20019) +expr_containers(#20021,#20001) +literals("x","x",#20021) +decl(#20021,#20017) +#20022=* +entry_cfg_node(#20022,#20001) +#20023=@"loc,{#10000},1,1,1,0" +locations_default(#20023,#10000,1,1,1,0) +hasLocation(#20022,#20023) +#20024=* +exit_cfg_node(#20024,#20001) +hasLocation(#20024,#20011) +successor(#20019,#20021) +successor(#20021,#20020) +successor(#20020,#20024) +successor(#20022,#20019) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/regexp/output/trap/es2018.js.trap b/javascript/extractor/tests/regexp/output/trap/es2018.js.trap index 0e4dbc5d3aa7..606e4e66bfd2 100644 --- a/javascript/extractor/tests/regexp/output/trap/es2018.js.trap +++ b/javascript/extractor/tests/regexp/output/trap/es2018.js.trap @@ -115,187 +115,189 @@ toplevels(#20001,0) #20040=@"loc,{#10000},1,1,7,0" locations_default(#20040,#10000,1,1,7,0) hasLocation(#20001,#20040) -#20041=* -stmts(#20041,2,#20001,0,"/^(?$/;") -hasLocation(#20041,#20003) -stmt_containers(#20041,#20001) +#20041=@"var;{this};{#20000}" +variables(#20041,"this",#20000) #20042=* -exprs(#20042,5,#20041,0,"/^(?$/") -hasLocation(#20042,#20015) -enclosing_stmt(#20042,#20041) -expr_containers(#20042,#20001) -literals("/^(?\s+)\w+\k$/","/^(?\s+)\w+\k$/",#20042) +stmts(#20042,2,#20001,0,"/^(?$/;") +hasLocation(#20042,#20003) +stmt_containers(#20042,#20001) #20043=* -regexpterm(#20043,1,#20042,0,"^(?\s+)\w+\k$") -#20044=@"loc,{#10000},1,2,1,22" -locations_default(#20044,#10000,1,2,1,22) -hasLocation(#20043,#20044) -#20045=* -regexpterm(#20045,2,#20043,0,"^") -#20046=@"loc,{#10000},1,2,1,2" -locations_default(#20046,#10000,1,2,1,2) -hasLocation(#20045,#20046) -#20047=* -regexpterm(#20047,13,#20043,1,"(?\s+)") -#20048=@"loc,{#10000},1,3,1,12" -locations_default(#20048,#10000,1,3,1,12) -hasLocation(#20047,#20048) -is_capture(#20047,1) -is_named_capture(#20047,"ws") -#20049=* -regexpterm(#20049,9,#20047,0,"\s+") -#20050=@"loc,{#10000},1,9,1,11" -locations_default(#20050,#10000,1,9,1,11) -hasLocation(#20049,#20050) -is_greedy(#20049) -#20051=* -regexpterm(#20051,20,#20049,0,"\s") -#20052=@"loc,{#10000},1,9,1,10" -locations_default(#20052,#10000,1,9,1,10) -hasLocation(#20051,#20052) -char_class_escape(#20051,"s") -#20053=* -regexpterm(#20053,9,#20043,2,"\w+") -#20054=@"loc,{#10000},1,13,1,15" -locations_default(#20054,#10000,1,13,1,15) -hasLocation(#20053,#20054) -is_greedy(#20053) -#20055=* -regexpterm(#20055,20,#20053,0,"\w") -#20056=@"loc,{#10000},1,13,1,14" -locations_default(#20056,#10000,1,13,1,14) -hasLocation(#20055,#20056) -char_class_escape(#20055,"w") -#20057=* -regexpterm(#20057,22,#20043,3,"\k") -#20058=@"loc,{#10000},1,16,1,21" -locations_default(#20058,#10000,1,16,1,21) -hasLocation(#20057,#20058) -named_backref(#20057,"ws") -#20059=* -regexpterm(#20059,3,#20043,4,"$") -#20060=@"loc,{#10000},1,22,1,22" -locations_default(#20060,#10000,1,22,1,22) -hasLocation(#20059,#20060) -#20061=* -stmts(#20061,2,#20001,1,"/(?<=.)/;") -hasLocation(#20061,#20005) -stmt_containers(#20061,#20001) +exprs(#20043,5,#20042,0,"/^(?$/") +hasLocation(#20043,#20015) +enclosing_stmt(#20043,#20042) +expr_containers(#20043,#20001) +literals("/^(?\s+)\w+\k$/","/^(?\s+)\w+\k$/",#20043) +#20044=* +regexpterm(#20044,1,#20043,0,"^(?\s+)\w+\k$") +#20045=@"loc,{#10000},1,2,1,22" +locations_default(#20045,#10000,1,2,1,22) +hasLocation(#20044,#20045) +#20046=* +regexpterm(#20046,2,#20044,0,"^") +#20047=@"loc,{#10000},1,2,1,2" +locations_default(#20047,#10000,1,2,1,2) +hasLocation(#20046,#20047) +#20048=* +regexpterm(#20048,13,#20044,1,"(?\s+)") +#20049=@"loc,{#10000},1,3,1,12" +locations_default(#20049,#10000,1,3,1,12) +hasLocation(#20048,#20049) +is_capture(#20048,1) +is_named_capture(#20048,"ws") +#20050=* +regexpterm(#20050,9,#20048,0,"\s+") +#20051=@"loc,{#10000},1,9,1,11" +locations_default(#20051,#10000,1,9,1,11) +hasLocation(#20050,#20051) +is_greedy(#20050) +#20052=* +regexpterm(#20052,20,#20050,0,"\s") +#20053=@"loc,{#10000},1,9,1,10" +locations_default(#20053,#10000,1,9,1,10) +hasLocation(#20052,#20053) +char_class_escape(#20052,"s") +#20054=* +regexpterm(#20054,9,#20044,2,"\w+") +#20055=@"loc,{#10000},1,13,1,15" +locations_default(#20055,#10000,1,13,1,15) +hasLocation(#20054,#20055) +is_greedy(#20054) +#20056=* +regexpterm(#20056,20,#20054,0,"\w") +#20057=@"loc,{#10000},1,13,1,14" +locations_default(#20057,#10000,1,13,1,14) +hasLocation(#20056,#20057) +char_class_escape(#20056,"w") +#20058=* +regexpterm(#20058,22,#20044,3,"\k") +#20059=@"loc,{#10000},1,16,1,21" +locations_default(#20059,#10000,1,16,1,21) +hasLocation(#20058,#20059) +named_backref(#20058,"ws") +#20060=* +regexpterm(#20060,3,#20044,4,"$") +#20061=@"loc,{#10000},1,22,1,22" +locations_default(#20061,#10000,1,22,1,22) +hasLocation(#20060,#20061) #20062=* -exprs(#20062,5,#20061,0,"/(?<=.)/") -hasLocation(#20062,#20019) -enclosing_stmt(#20062,#20061) -expr_containers(#20062,#20001) -literals("/(?<=.)/","/(?<=.)/",#20062) +stmts(#20062,2,#20001,1,"/(?<=.)/;") +hasLocation(#20062,#20005) +stmt_containers(#20062,#20001) #20063=* -regexpterm(#20063,25,#20062,0,"(?<=.)") -#20064=@"loc,{#10000},2,2,2,7" -locations_default(#20064,#10000,2,2,2,7) -hasLocation(#20063,#20064) -#20065=* -regexpterm(#20065,12,#20063,0,".") -#20066=@"loc,{#10000},2,6,2,6" -locations_default(#20066,#10000,2,6,2,6) -hasLocation(#20065,#20066) -#20067=* -stmts(#20067,2,#20001,2,"/(?'") -#20088=@"loc,{#10000},6,4,6,4" -locations_default(#20088,#10000,6,4,6,4) -hasLocation(#20087,#20088) -#20089=* -entry_cfg_node(#20089,#20001) -#20090=@"loc,{#10000},1,1,1,0" -locations_default(#20090,#10000,1,1,1,0) -hasLocation(#20089,#20090) -#20091=* -exit_cfg_node(#20091,#20001) -hasLocation(#20091,#20039) -successor(#20081,#20082) -successor(#20082,#20091) -successor(#20077,#20078) -successor(#20078,#20081) -successor(#20073,#20074) -successor(#20074,#20077) -successor(#20067,#20068) -successor(#20068,#20073) -successor(#20061,#20062) -successor(#20062,#20067) -successor(#20041,#20042) -successor(#20042,#20061) -successor(#20089,#20041) +exprs(#20083,5,#20082,0,"/\k'") +#20089=@"loc,{#10000},6,4,6,4" +locations_default(#20089,#10000,6,4,6,4) +hasLocation(#20088,#20089) +#20090=* +entry_cfg_node(#20090,#20001) +#20091=@"loc,{#10000},1,1,1,0" +locations_default(#20091,#10000,1,1,1,0) +hasLocation(#20090,#20091) +#20092=* +exit_cfg_node(#20092,#20001) +hasLocation(#20092,#20039) +successor(#20082,#20083) +successor(#20083,#20092) +successor(#20078,#20079) +successor(#20079,#20082) +successor(#20074,#20075) +successor(#20075,#20078) +successor(#20068,#20069) +successor(#20069,#20074) +successor(#20062,#20063) +successor(#20063,#20068) +successor(#20042,#20043) +successor(#20043,#20062) +successor(#20090,#20042) numlines(#10000,6,6,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/regexp/output/trap/multipart.js.trap b/javascript/extractor/tests/regexp/output/trap/multipart.js.trap index 4039d782b266..a63c883c8a04 100644 --- a/javascript/extractor/tests/regexp/output/trap/multipart.js.trap +++ b/javascript/extractor/tests/regexp/output/trap/multipart.js.trap @@ -689,774 +689,776 @@ variables(#20253,"bad95",#20000) variables(#20254,"bad96",#20000) #20255=@"var;{bad97};{#20000}" variables(#20255,"bad97",#20000) -#20256=* -stmts(#20256,18,#20001,0,"var reg ... ""bar"");") -hasLocation(#20256,#20003) -stmt_containers(#20256,#20001) +#20256=@"var;{this};{#20000}" +variables(#20256,"this",#20000) #20257=* -exprs(#20257,64,#20256,0,"reg = n ... ""bar"")") -#20258=@"loc,{#10000},1,5,1,35" -locations_default(#20258,#10000,1,5,1,35) -hasLocation(#20257,#20258) -enclosing_stmt(#20257,#20256) -expr_containers(#20257,#20001) -#20259=* -exprs(#20259,78,#20257,0,"reg") -hasLocation(#20259,#20067) -enclosing_stmt(#20259,#20256) -expr_containers(#20259,#20001) -literals("reg","reg",#20259) -decl(#20259,#20249) +stmts(#20257,18,#20001,0,"var reg ... ""bar"");") +hasLocation(#20257,#20003) +stmt_containers(#20257,#20001) +#20258=* +exprs(#20258,64,#20257,0,"reg = n ... ""bar"")") +#20259=@"loc,{#10000},1,5,1,35" +locations_default(#20259,#10000,1,5,1,35) +hasLocation(#20258,#20259) +enclosing_stmt(#20258,#20257) +expr_containers(#20258,#20001) #20260=* -exprs(#20260,12,#20257,1,"new Reg ... ""bar"")") -#20261=@"loc,{#10000},1,11,1,35" -locations_default(#20261,#10000,1,11,1,35) -hasLocation(#20260,#20261) -enclosing_stmt(#20260,#20256) +exprs(#20260,78,#20258,0,"reg") +hasLocation(#20260,#20067) +enclosing_stmt(#20260,#20257) expr_containers(#20260,#20001) -#20262=* -exprs(#20262,79,#20260,-1,"RegExp") -hasLocation(#20262,#20073) -enclosing_stmt(#20262,#20256) -expr_containers(#20262,#20001) -literals("RegExp","RegExp",#20262) -#20263=@"var;{RegExp};{#20000}" -variables(#20263,"RegExp",#20000) -bind(#20262,#20263) -#20264=* -exprs(#20264,34,#20260,0,"""foo"" + ""bar""") -#20265=@"loc,{#10000},1,22,1,34" -locations_default(#20265,#10000,1,22,1,34) -hasLocation(#20264,#20265) -enclosing_stmt(#20264,#20256) -expr_containers(#20264,#20001) -#20266=* -exprs(#20266,4,#20264,0,"""foo""") -hasLocation(#20266,#20077) -enclosing_stmt(#20266,#20256) -expr_containers(#20266,#20001) -literals("foo","""foo""",#20266) +literals("reg","reg",#20260) +decl(#20260,#20249) +#20261=* +exprs(#20261,12,#20258,1,"new Reg ... ""bar"")") +#20262=@"loc,{#10000},1,11,1,35" +locations_default(#20262,#10000,1,11,1,35) +hasLocation(#20261,#20262) +enclosing_stmt(#20261,#20257) +expr_containers(#20261,#20001) +#20263=* +exprs(#20263,79,#20261,-1,"RegExp") +hasLocation(#20263,#20073) +enclosing_stmt(#20263,#20257) +expr_containers(#20263,#20001) +literals("RegExp","RegExp",#20263) +#20264=@"var;{RegExp};{#20000}" +variables(#20264,"RegExp",#20000) +bind(#20263,#20264) +#20265=* +exprs(#20265,34,#20261,0,"""foo"" + ""bar""") +#20266=@"loc,{#10000},1,22,1,34" +locations_default(#20266,#10000,1,22,1,34) +hasLocation(#20265,#20266) +enclosing_stmt(#20265,#20257) +expr_containers(#20265,#20001) #20267=* -exprs(#20267,4,#20264,1,"""bar""") -hasLocation(#20267,#20081) -enclosing_stmt(#20267,#20256) +exprs(#20267,4,#20265,0,"""foo""") +hasLocation(#20267,#20077) +enclosing_stmt(#20267,#20257) expr_containers(#20267,#20001) -literals("bar","""bar""",#20267) +literals("foo","""foo""",#20267) #20268=* -regexpterm(#20268,14,#20264,0,"foobar") -#20269=@"loc,{#10000},1,23,1,33" -locations_default(#20269,#10000,1,23,1,33) -hasLocation(#20268,#20269) -regexp_const_value(#20268,"foobar") -#20270=* -stmts(#20270,18,#20001,1,"var reg ... ""bar"");") -#20271=@"loc,{#10000},3,1,4,13" -locations_default(#20271,#10000,3,1,4,13) -hasLocation(#20270,#20271) -stmt_containers(#20270,#20001) -#20272=* -exprs(#20272,64,#20270,0,"reg2 = ... ""bar"")") -#20273=@"loc,{#10000},3,5,4,12" -locations_default(#20273,#10000,3,5,4,12) -hasLocation(#20272,#20273) -enclosing_stmt(#20272,#20270) -expr_containers(#20272,#20001) -#20274=* -exprs(#20274,78,#20272,0,"reg2") -hasLocation(#20274,#20089) -enclosing_stmt(#20274,#20270) -expr_containers(#20274,#20001) -literals("reg2","reg2",#20274) -decl(#20274,#20250) +exprs(#20268,4,#20265,1,"""bar""") +hasLocation(#20268,#20081) +enclosing_stmt(#20268,#20257) +expr_containers(#20268,#20001) +literals("bar","""bar""",#20268) +#20269=* +regexpterm(#20269,14,#20265,0,"foobar") +#20270=@"loc,{#10000},1,23,1,33" +locations_default(#20270,#10000,1,23,1,33) +hasLocation(#20269,#20270) +regexp_const_value(#20269,"foobar") +#20271=* +stmts(#20271,18,#20001,1,"var reg ... ""bar"");") +#20272=@"loc,{#10000},3,1,4,13" +locations_default(#20272,#10000,3,1,4,13) +hasLocation(#20271,#20272) +stmt_containers(#20271,#20001) +#20273=* +exprs(#20273,64,#20271,0,"reg2 = ... ""bar"")") +#20274=@"loc,{#10000},3,5,4,12" +locations_default(#20274,#10000,3,5,4,12) +hasLocation(#20273,#20274) +enclosing_stmt(#20273,#20271) +expr_containers(#20273,#20001) #20275=* -exprs(#20275,12,#20272,1,"new Reg ... ""bar"")") -#20276=@"loc,{#10000},3,12,4,12" -locations_default(#20276,#10000,3,12,4,12) -hasLocation(#20275,#20276) -enclosing_stmt(#20275,#20270) +exprs(#20275,78,#20273,0,"reg2") +hasLocation(#20275,#20089) +enclosing_stmt(#20275,#20271) expr_containers(#20275,#20001) -#20277=* -exprs(#20277,79,#20275,-1,"RegExp") -hasLocation(#20277,#20095) -enclosing_stmt(#20277,#20270) -expr_containers(#20277,#20001) -literals("RegExp","RegExp",#20277) -bind(#20277,#20263) +literals("reg2","reg2",#20275) +decl(#20275,#20250) +#20276=* +exprs(#20276,12,#20273,1,"new Reg ... ""bar"")") +#20277=@"loc,{#10000},3,12,4,12" +locations_default(#20277,#10000,3,12,4,12) +hasLocation(#20276,#20277) +enclosing_stmt(#20276,#20271) +expr_containers(#20276,#20001) #20278=* -exprs(#20278,34,#20275,0,"""foo""\n + ""bar""") -#20279=@"loc,{#10000},3,23,4,11" -locations_default(#20279,#10000,3,23,4,11) -hasLocation(#20278,#20279) -enclosing_stmt(#20278,#20270) +exprs(#20278,79,#20276,-1,"RegExp") +hasLocation(#20278,#20095) +enclosing_stmt(#20278,#20271) expr_containers(#20278,#20001) -#20280=* -exprs(#20280,4,#20278,0,"""foo""") -hasLocation(#20280,#20099) -enclosing_stmt(#20280,#20270) -expr_containers(#20280,#20001) -literals("foo","""foo""",#20280) +literals("RegExp","RegExp",#20278) +bind(#20278,#20264) +#20279=* +exprs(#20279,34,#20276,0,"""foo""\n + ""bar""") +#20280=@"loc,{#10000},3,23,4,11" +locations_default(#20280,#10000,3,23,4,11) +hasLocation(#20279,#20280) +enclosing_stmt(#20279,#20271) +expr_containers(#20279,#20001) #20281=* -exprs(#20281,4,#20278,1,"""bar""") -hasLocation(#20281,#20103) -enclosing_stmt(#20281,#20270) +exprs(#20281,4,#20279,0,"""foo""") +hasLocation(#20281,#20099) +enclosing_stmt(#20281,#20271) expr_containers(#20281,#20001) -literals("bar","""bar""",#20281) +literals("foo","""foo""",#20281) #20282=* -regexpterm(#20282,14,#20278,0,"foobar") -#20283=@"loc,{#10000},3,24,4,10" -locations_default(#20283,#10000,3,24,4,10) -hasLocation(#20282,#20283) -regexp_const_value(#20282,"foobar") -#20284=* -stmts(#20284,18,#20001,2,"var reg ... ""bar"");") -#20285=@"loc,{#10000},6,1,7,19" -locations_default(#20285,#10000,6,1,7,19) -hasLocation(#20284,#20285) -stmt_containers(#20284,#20001) -#20286=* -exprs(#20286,64,#20284,0,"reg3 = ... ""bar"")") -#20287=@"loc,{#10000},6,5,7,18" -locations_default(#20287,#10000,6,5,7,18) -hasLocation(#20286,#20287) -enclosing_stmt(#20286,#20284) -expr_containers(#20286,#20001) -#20288=* -exprs(#20288,78,#20286,0,"reg3") -hasLocation(#20288,#20111) -enclosing_stmt(#20288,#20284) -expr_containers(#20288,#20001) -literals("reg3","reg3",#20288) -decl(#20288,#20251) +exprs(#20282,4,#20279,1,"""bar""") +hasLocation(#20282,#20103) +enclosing_stmt(#20282,#20271) +expr_containers(#20282,#20001) +literals("bar","""bar""",#20282) +#20283=* +regexpterm(#20283,14,#20279,0,"foobar") +#20284=@"loc,{#10000},3,24,4,10" +locations_default(#20284,#10000,3,24,4,10) +hasLocation(#20283,#20284) +regexp_const_value(#20283,"foobar") +#20285=* +stmts(#20285,18,#20001,2,"var reg ... ""bar"");") +#20286=@"loc,{#10000},6,1,7,19" +locations_default(#20286,#10000,6,1,7,19) +hasLocation(#20285,#20286) +stmt_containers(#20285,#20001) +#20287=* +exprs(#20287,64,#20285,0,"reg3 = ... ""bar"")") +#20288=@"loc,{#10000},6,5,7,18" +locations_default(#20288,#10000,6,5,7,18) +hasLocation(#20287,#20288) +enclosing_stmt(#20287,#20285) +expr_containers(#20287,#20001) #20289=* -exprs(#20289,12,#20286,1,"new Reg ... ""bar"")") -#20290=@"loc,{#10000},6,12,7,18" -locations_default(#20290,#10000,6,12,7,18) -hasLocation(#20289,#20290) -enclosing_stmt(#20289,#20284) +exprs(#20289,78,#20287,0,"reg3") +hasLocation(#20289,#20111) +enclosing_stmt(#20289,#20285) expr_containers(#20289,#20001) -#20291=* -exprs(#20291,79,#20289,-1,"RegExp") -hasLocation(#20291,#20117) -enclosing_stmt(#20291,#20284) -expr_containers(#20291,#20001) -literals("RegExp","RegExp",#20291) -bind(#20291,#20263) +literals("reg3","reg3",#20289) +decl(#20289,#20251) +#20290=* +exprs(#20290,12,#20287,1,"new Reg ... ""bar"")") +#20291=@"loc,{#10000},6,12,7,18" +locations_default(#20291,#10000,6,12,7,18) +hasLocation(#20290,#20291) +enclosing_stmt(#20290,#20285) +expr_containers(#20290,#20001) #20292=* -exprs(#20292,34,#20289,0,"""foo"" + ""bar""") -#20293=@"loc,{#10000},7,5,7,17" -locations_default(#20293,#10000,7,5,7,17) -hasLocation(#20292,#20293) -enclosing_stmt(#20292,#20284) +exprs(#20292,79,#20290,-1,"RegExp") +hasLocation(#20292,#20117) +enclosing_stmt(#20292,#20285) expr_containers(#20292,#20001) -#20294=* -exprs(#20294,4,#20292,0,"""foo""") -hasLocation(#20294,#20121) -enclosing_stmt(#20294,#20284) -expr_containers(#20294,#20001) -literals("foo","""foo""",#20294) +literals("RegExp","RegExp",#20292) +bind(#20292,#20264) +#20293=* +exprs(#20293,34,#20290,0,"""foo"" + ""bar""") +#20294=@"loc,{#10000},7,5,7,17" +locations_default(#20294,#10000,7,5,7,17) +hasLocation(#20293,#20294) +enclosing_stmt(#20293,#20285) +expr_containers(#20293,#20001) #20295=* -exprs(#20295,4,#20292,1,"""bar""") -hasLocation(#20295,#20125) -enclosing_stmt(#20295,#20284) +exprs(#20295,4,#20293,0,"""foo""") +hasLocation(#20295,#20121) +enclosing_stmt(#20295,#20285) expr_containers(#20295,#20001) -literals("bar","""bar""",#20295) +literals("foo","""foo""",#20295) #20296=* -regexpterm(#20296,14,#20292,0,"foobar") -#20297=@"loc,{#10000},7,6,7,16" -locations_default(#20297,#10000,7,6,7,16) -hasLocation(#20296,#20297) -regexp_const_value(#20296,"foobar") -#20298=* -stmts(#20298,18,#20001,3,"var reg ... qux""\n);") -#20299=@"loc,{#10000},9,1,14,2" -locations_default(#20299,#10000,9,1,14,2) -hasLocation(#20298,#20299) -stmt_containers(#20298,#20001) -#20300=* -exprs(#20300,64,#20298,0,"reg4 = ... ""qux""\n)") -#20301=@"loc,{#10000},9,5,14,1" -locations_default(#20301,#10000,9,5,14,1) -hasLocation(#20300,#20301) -enclosing_stmt(#20300,#20298) -expr_containers(#20300,#20001) -#20302=* -exprs(#20302,78,#20300,0,"reg4") -hasLocation(#20302,#20133) -enclosing_stmt(#20302,#20298) -expr_containers(#20302,#20001) -literals("reg4","reg4",#20302) -decl(#20302,#20252) +exprs(#20296,4,#20293,1,"""bar""") +hasLocation(#20296,#20125) +enclosing_stmt(#20296,#20285) +expr_containers(#20296,#20001) +literals("bar","""bar""",#20296) +#20297=* +regexpterm(#20297,14,#20293,0,"foobar") +#20298=@"loc,{#10000},7,6,7,16" +locations_default(#20298,#10000,7,6,7,16) +hasLocation(#20297,#20298) +regexp_const_value(#20297,"foobar") +#20299=* +stmts(#20299,18,#20001,3,"var reg ... qux""\n);") +#20300=@"loc,{#10000},9,1,14,2" +locations_default(#20300,#10000,9,1,14,2) +hasLocation(#20299,#20300) +stmt_containers(#20299,#20001) +#20301=* +exprs(#20301,64,#20299,0,"reg4 = ... ""qux""\n)") +#20302=@"loc,{#10000},9,5,14,1" +locations_default(#20302,#10000,9,5,14,1) +hasLocation(#20301,#20302) +enclosing_stmt(#20301,#20299) +expr_containers(#20301,#20001) #20303=* -exprs(#20303,12,#20300,1,"new Reg ... ""qux""\n)") -#20304=@"loc,{#10000},9,12,14,1" -locations_default(#20304,#10000,9,12,14,1) -hasLocation(#20303,#20304) -enclosing_stmt(#20303,#20298) +exprs(#20303,78,#20301,0,"reg4") +hasLocation(#20303,#20133) +enclosing_stmt(#20303,#20299) expr_containers(#20303,#20001) -#20305=* -exprs(#20305,79,#20303,-1,"RegExp") -hasLocation(#20305,#20139) -enclosing_stmt(#20305,#20298) -expr_containers(#20305,#20001) -literals("RegExp","RegExp",#20305) -bind(#20305,#20263) +literals("reg4","reg4",#20303) +decl(#20303,#20252) +#20304=* +exprs(#20304,12,#20301,1,"new Reg ... ""qux""\n)") +#20305=@"loc,{#10000},9,12,14,1" +locations_default(#20305,#10000,9,12,14,1) +hasLocation(#20304,#20305) +enclosing_stmt(#20304,#20299) +expr_containers(#20304,#20001) #20306=* -exprs(#20306,34,#20303,0,"""foo"" + ... ""qux""") -#20307=@"loc,{#10000},10,5,13,9" -locations_default(#20307,#10000,10,5,13,9) -hasLocation(#20306,#20307) -enclosing_stmt(#20306,#20298) +exprs(#20306,79,#20304,-1,"RegExp") +hasLocation(#20306,#20139) +enclosing_stmt(#20306,#20299) expr_containers(#20306,#20001) -#20308=* -exprs(#20308,34,#20306,0,"""foo"" + ... ""baz""") -#20309=@"loc,{#10000},10,5,12,9" -locations_default(#20309,#10000,10,5,12,9) -hasLocation(#20308,#20309) -enclosing_stmt(#20308,#20298) -expr_containers(#20308,#20001) -#20310=* -exprs(#20310,34,#20308,0,"""foo"" + \n ""bar""") -#20311=@"loc,{#10000},10,5,11,9" -locations_default(#20311,#10000,10,5,11,9) -hasLocation(#20310,#20311) -enclosing_stmt(#20310,#20298) -expr_containers(#20310,#20001) -#20312=* -exprs(#20312,4,#20310,0,"""foo""") -hasLocation(#20312,#20143) -enclosing_stmt(#20312,#20298) -expr_containers(#20312,#20001) -literals("foo","""foo""",#20312) +literals("RegExp","RegExp",#20306) +bind(#20306,#20264) +#20307=* +exprs(#20307,34,#20304,0,"""foo"" + ... ""qux""") +#20308=@"loc,{#10000},10,5,13,9" +locations_default(#20308,#10000,10,5,13,9) +hasLocation(#20307,#20308) +enclosing_stmt(#20307,#20299) +expr_containers(#20307,#20001) +#20309=* +exprs(#20309,34,#20307,0,"""foo"" + ... ""baz""") +#20310=@"loc,{#10000},10,5,12,9" +locations_default(#20310,#10000,10,5,12,9) +hasLocation(#20309,#20310) +enclosing_stmt(#20309,#20299) +expr_containers(#20309,#20001) +#20311=* +exprs(#20311,34,#20309,0,"""foo"" + \n ""bar""") +#20312=@"loc,{#10000},10,5,11,9" +locations_default(#20312,#10000,10,5,11,9) +hasLocation(#20311,#20312) +enclosing_stmt(#20311,#20299) +expr_containers(#20311,#20001) #20313=* -exprs(#20313,4,#20310,1,"""bar""") -hasLocation(#20313,#20147) -enclosing_stmt(#20313,#20298) +exprs(#20313,4,#20311,0,"""foo""") +hasLocation(#20313,#20143) +enclosing_stmt(#20313,#20299) expr_containers(#20313,#20001) -literals("bar","""bar""",#20313) +literals("foo","""foo""",#20313) #20314=* -exprs(#20314,4,#20308,1,"""baz""") -hasLocation(#20314,#20151) -enclosing_stmt(#20314,#20298) +exprs(#20314,4,#20311,1,"""bar""") +hasLocation(#20314,#20147) +enclosing_stmt(#20314,#20299) expr_containers(#20314,#20001) -literals("baz","""baz""",#20314) +literals("bar","""bar""",#20314) #20315=* -exprs(#20315,4,#20306,1,"""qux""") -hasLocation(#20315,#20155) -enclosing_stmt(#20315,#20298) +exprs(#20315,4,#20309,1,"""baz""") +hasLocation(#20315,#20151) +enclosing_stmt(#20315,#20299) expr_containers(#20315,#20001) -literals("qux","""qux""",#20315) +literals("baz","""baz""",#20315) #20316=* -regexpterm(#20316,14,#20306,0,"foobarbazqux") -#20317=@"loc,{#10000},10,6,13,8" -locations_default(#20317,#10000,10,6,13,8) -hasLocation(#20316,#20317) -regexp_const_value(#20316,"foobarbazqux") -#20318=* -stmts(#20318,18,#20001,4,"var bad ... ""b$""\n);") -#20319=@"loc,{#10000},16,1,21,2" -locations_default(#20319,#10000,16,1,21,2) -hasLocation(#20318,#20319) -stmt_containers(#20318,#20001) -#20320=* -exprs(#20320,64,#20318,0,"bad95 = ... ""b$""\n)") -#20321=@"loc,{#10000},16,5,21,1" -locations_default(#20321,#10000,16,5,21,1) -hasLocation(#20320,#20321) -enclosing_stmt(#20320,#20318) -expr_containers(#20320,#20001) -#20322=* -exprs(#20322,78,#20320,0,"bad95") -hasLocation(#20322,#20163) -enclosing_stmt(#20322,#20318) -expr_containers(#20322,#20001) -literals("bad95","bad95",#20322) -decl(#20322,#20253) +exprs(#20316,4,#20307,1,"""qux""") +hasLocation(#20316,#20155) +enclosing_stmt(#20316,#20299) +expr_containers(#20316,#20001) +literals("qux","""qux""",#20316) +#20317=* +regexpterm(#20317,14,#20307,0,"foobarbazqux") +#20318=@"loc,{#10000},10,6,13,8" +locations_default(#20318,#10000,10,6,13,8) +hasLocation(#20317,#20318) +regexp_const_value(#20317,"foobarbazqux") +#20319=* +stmts(#20319,18,#20001,4,"var bad ... ""b$""\n);") +#20320=@"loc,{#10000},16,1,21,2" +locations_default(#20320,#10000,16,1,21,2) +hasLocation(#20319,#20320) +stmt_containers(#20319,#20001) +#20321=* +exprs(#20321,64,#20319,0,"bad95 = ... ""b$""\n)") +#20322=@"loc,{#10000},16,5,21,1" +locations_default(#20322,#10000,16,5,21,1) +hasLocation(#20321,#20322) +enclosing_stmt(#20321,#20319) +expr_containers(#20321,#20001) #20323=* -exprs(#20323,12,#20320,1,"new Reg ... ""b$""\n)") -#20324=@"loc,{#10000},16,13,21,1" -locations_default(#20324,#10000,16,13,21,1) -hasLocation(#20323,#20324) -enclosing_stmt(#20323,#20318) +exprs(#20323,78,#20321,0,"bad95") +hasLocation(#20323,#20163) +enclosing_stmt(#20323,#20319) expr_containers(#20323,#20001) -#20325=* -exprs(#20325,79,#20323,-1,"RegExp") -hasLocation(#20325,#20169) -enclosing_stmt(#20325,#20318) -expr_containers(#20325,#20001) -literals("RegExp","RegExp",#20325) -bind(#20325,#20263) +literals("bad95","bad95",#20323) +decl(#20323,#20253) +#20324=* +exprs(#20324,12,#20321,1,"new Reg ... ""b$""\n)") +#20325=@"loc,{#10000},16,13,21,1" +locations_default(#20325,#10000,16,13,21,1) +hasLocation(#20324,#20325) +enclosing_stmt(#20324,#20319) +expr_containers(#20324,#20001) #20326=* -exprs(#20326,34,#20323,0,"""(a"" + ... ""b$""") -#20327=@"loc,{#10000},17,5,20,8" -locations_default(#20327,#10000,17,5,20,8) -hasLocation(#20326,#20327) -enclosing_stmt(#20326,#20318) +exprs(#20326,79,#20324,-1,"RegExp") +hasLocation(#20326,#20169) +enclosing_stmt(#20326,#20319) expr_containers(#20326,#20001) -#20328=* -exprs(#20328,34,#20326,0,"""(a"" + ... ""aa)*""") -#20329=@"loc,{#10000},17,5,19,10" -locations_default(#20329,#10000,17,5,19,10) -hasLocation(#20328,#20329) -enclosing_stmt(#20328,#20318) -expr_containers(#20328,#20001) -#20330=* -exprs(#20330,34,#20328,0,"""(a"" + \n ""|""") -#20331=@"loc,{#10000},17,5,18,7" -locations_default(#20331,#10000,17,5,18,7) -hasLocation(#20330,#20331) -enclosing_stmt(#20330,#20318) -expr_containers(#20330,#20001) -#20332=* -exprs(#20332,4,#20330,0,"""(a""") -hasLocation(#20332,#20173) -enclosing_stmt(#20332,#20318) -expr_containers(#20332,#20001) -literals("(a","""(a""",#20332) +literals("RegExp","RegExp",#20326) +bind(#20326,#20264) +#20327=* +exprs(#20327,34,#20324,0,"""(a"" + ... ""b$""") +#20328=@"loc,{#10000},17,5,20,8" +locations_default(#20328,#10000,17,5,20,8) +hasLocation(#20327,#20328) +enclosing_stmt(#20327,#20319) +expr_containers(#20327,#20001) +#20329=* +exprs(#20329,34,#20327,0,"""(a"" + ... ""aa)*""") +#20330=@"loc,{#10000},17,5,19,10" +locations_default(#20330,#10000,17,5,19,10) +hasLocation(#20329,#20330) +enclosing_stmt(#20329,#20319) +expr_containers(#20329,#20001) +#20331=* +exprs(#20331,34,#20329,0,"""(a"" + \n ""|""") +#20332=@"loc,{#10000},17,5,18,7" +locations_default(#20332,#10000,17,5,18,7) +hasLocation(#20331,#20332) +enclosing_stmt(#20331,#20319) +expr_containers(#20331,#20001) #20333=* -exprs(#20333,4,#20330,1,"""|""") -hasLocation(#20333,#20177) -enclosing_stmt(#20333,#20318) +exprs(#20333,4,#20331,0,"""(a""") +hasLocation(#20333,#20173) +enclosing_stmt(#20333,#20319) expr_containers(#20333,#20001) -literals("|","""|""",#20333) +literals("(a","""(a""",#20333) #20334=* -exprs(#20334,4,#20328,1,"""aa)*""") -hasLocation(#20334,#20181) -enclosing_stmt(#20334,#20318) +exprs(#20334,4,#20331,1,"""|""") +hasLocation(#20334,#20177) +enclosing_stmt(#20334,#20319) expr_containers(#20334,#20001) -literals("aa)*","""aa)*""",#20334) +literals("|","""|""",#20334) #20335=* -exprs(#20335,4,#20326,1,"""b$""") -hasLocation(#20335,#20185) -enclosing_stmt(#20335,#20318) +exprs(#20335,4,#20329,1,"""aa)*""") +hasLocation(#20335,#20181) +enclosing_stmt(#20335,#20319) expr_containers(#20335,#20001) -literals("b$","""b$""",#20335) +literals("aa)*","""aa)*""",#20335) #20336=* -regexpterm(#20336,1,#20326,0,"(a|aa)*b$") -#20337=@"loc,{#10000},17,6,20,7" -locations_default(#20337,#10000,17,6,20,7) -hasLocation(#20336,#20337) -#20338=* -regexpterm(#20338,8,#20336,0,"(a|aa)*") -#20339=@"loc,{#10000},17,6,20,5" -locations_default(#20339,#10000,17,6,20,5) -hasLocation(#20338,#20339) -is_greedy(#20338) -#20340=* -regexpterm(#20340,13,#20338,0,"(a|aa)") -#20341=@"loc,{#10000},17,6,19,8" -locations_default(#20341,#10000,17,6,19,8) -hasLocation(#20340,#20341) -is_capture(#20340,1) -#20342=* -regexpterm(#20342,0,#20340,0,"a|aa") -#20343=@"loc,{#10000},17,7,19,7" -locations_default(#20343,#10000,17,7,19,7) -hasLocation(#20342,#20343) -#20344=* -regexpterm(#20344,14,#20342,0,"a") -#20345=@"loc,{#10000},17,7,18,5" -locations_default(#20345,#10000,17,7,18,5) -hasLocation(#20344,#20345) -regexp_const_value(#20344,"a") -#20346=* -regexpterm(#20346,14,#20342,1,"aa") -#20347=@"loc,{#10000},19,6,19,7" -locations_default(#20347,#10000,19,6,19,7) -hasLocation(#20346,#20347) -regexp_const_value(#20346,"aa") -#20348=* -regexpterm(#20348,14,#20336,1,"b") -#20349=@"loc,{#10000},20,6,20,6" -locations_default(#20349,#10000,20,6,20,6) -hasLocation(#20348,#20349) -regexp_const_value(#20348,"b") -#20350=* -regexpterm(#20350,3,#20336,2,"$") -#20351=@"loc,{#10000},20,7,20,7" -locations_default(#20351,#10000,20,7,20,7) -hasLocation(#20350,#20351) -#20352=* -stmts(#20352,18,#20001,5,"var bad ... "")f$"");") -#20353=@"loc,{#10000},23,1,27,7" -locations_default(#20353,#10000,23,1,27,7) -hasLocation(#20352,#20353) -stmt_containers(#20352,#20001) -#20354=* -exprs(#20354,64,#20352,0,"bad96 = ... \n"")f$"")") -#20355=@"loc,{#10000},23,5,27,6" -locations_default(#20355,#10000,23,5,27,6) -hasLocation(#20354,#20355) -enclosing_stmt(#20354,#20352) -expr_containers(#20354,#20001) -#20356=* -exprs(#20356,78,#20354,0,"bad96") -hasLocation(#20356,#20193) -enclosing_stmt(#20356,#20352) -expr_containers(#20356,#20001) -literals("bad96","bad96",#20356) -decl(#20356,#20254) +exprs(#20336,4,#20327,1,"""b$""") +hasLocation(#20336,#20185) +enclosing_stmt(#20336,#20319) +expr_containers(#20336,#20001) +literals("b$","""b$""",#20336) +#20337=* +regexpterm(#20337,1,#20327,0,"(a|aa)*b$") +#20338=@"loc,{#10000},17,6,20,7" +locations_default(#20338,#10000,17,6,20,7) +hasLocation(#20337,#20338) +#20339=* +regexpterm(#20339,8,#20337,0,"(a|aa)*") +#20340=@"loc,{#10000},17,6,20,5" +locations_default(#20340,#10000,17,6,20,5) +hasLocation(#20339,#20340) +is_greedy(#20339) +#20341=* +regexpterm(#20341,13,#20339,0,"(a|aa)") +#20342=@"loc,{#10000},17,6,19,8" +locations_default(#20342,#10000,17,6,19,8) +hasLocation(#20341,#20342) +is_capture(#20341,1) +#20343=* +regexpterm(#20343,0,#20341,0,"a|aa") +#20344=@"loc,{#10000},17,7,19,7" +locations_default(#20344,#10000,17,7,19,7) +hasLocation(#20343,#20344) +#20345=* +regexpterm(#20345,14,#20343,0,"a") +#20346=@"loc,{#10000},17,7,18,5" +locations_default(#20346,#10000,17,7,18,5) +hasLocation(#20345,#20346) +regexp_const_value(#20345,"a") +#20347=* +regexpterm(#20347,14,#20343,1,"aa") +#20348=@"loc,{#10000},19,6,19,7" +locations_default(#20348,#10000,19,6,19,7) +hasLocation(#20347,#20348) +regexp_const_value(#20347,"aa") +#20349=* +regexpterm(#20349,14,#20337,1,"b") +#20350=@"loc,{#10000},20,6,20,6" +locations_default(#20350,#10000,20,6,20,6) +hasLocation(#20349,#20350) +regexp_const_value(#20349,"b") +#20351=* +regexpterm(#20351,3,#20337,2,"$") +#20352=@"loc,{#10000},20,7,20,7" +locations_default(#20352,#10000,20,7,20,7) +hasLocation(#20351,#20352) +#20353=* +stmts(#20353,18,#20001,5,"var bad ... "")f$"");") +#20354=@"loc,{#10000},23,1,27,7" +locations_default(#20354,#10000,23,1,27,7) +hasLocation(#20353,#20354) +stmt_containers(#20353,#20001) +#20355=* +exprs(#20355,64,#20353,0,"bad96 = ... \n"")f$"")") +#20356=@"loc,{#10000},23,5,27,6" +locations_default(#20356,#10000,23,5,27,6) +hasLocation(#20355,#20356) +enclosing_stmt(#20355,#20353) +expr_containers(#20355,#20001) #20357=* -exprs(#20357,12,#20354,1,"new Reg ... \n"")f$"")") -#20358=@"loc,{#10000},23,13,27,6" -locations_default(#20358,#10000,23,13,27,6) -hasLocation(#20357,#20358) -enclosing_stmt(#20357,#20352) +exprs(#20357,78,#20355,0,"bad96") +hasLocation(#20357,#20193) +enclosing_stmt(#20357,#20353) expr_containers(#20357,#20001) -#20359=* -exprs(#20359,79,#20357,-1,"RegExp") -hasLocation(#20359,#20199) -enclosing_stmt(#20359,#20352) -expr_containers(#20359,#20001) -literals("RegExp","RegExp",#20359) -bind(#20359,#20263) +literals("bad96","bad96",#20357) +decl(#20357,#20254) +#20358=* +exprs(#20358,12,#20355,1,"new Reg ... \n"")f$"")") +#20359=@"loc,{#10000},23,13,27,6" +locations_default(#20359,#10000,23,13,27,6) +hasLocation(#20358,#20359) +enclosing_stmt(#20358,#20353) +expr_containers(#20358,#20001) #20360=* -exprs(#20360,34,#20357,0,"""("" + \n ... +\n"")f$""") -#20361=@"loc,{#10000},23,24,27,5" -locations_default(#20361,#10000,23,24,27,5) -hasLocation(#20360,#20361) -enclosing_stmt(#20360,#20352) +exprs(#20360,79,#20358,-1,"RegExp") +hasLocation(#20360,#20199) +enclosing_stmt(#20360,#20353) expr_containers(#20360,#20001) -#20362=* -exprs(#20362,34,#20360,0,"""("" + \n ... e|ee)*""") -#20363=@"loc,{#10000},23,24,26,13" -locations_default(#20363,#10000,23,24,26,13) -hasLocation(#20362,#20363) -enclosing_stmt(#20362,#20352) -expr_containers(#20362,#20001) -#20364=* -exprs(#20364,34,#20362,0,"""("" + \n ... |dd)*|""") -#20365=@"loc,{#10000},23,24,25,14" -locations_default(#20365,#10000,23,24,25,14) -hasLocation(#20364,#20365) -enclosing_stmt(#20364,#20352) -expr_containers(#20364,#20001) -#20366=* -exprs(#20366,34,#20364,0,"""("" + \n ... |cc)*|""") -#20367=@"loc,{#10000},23,24,24,14" -locations_default(#20367,#10000,23,24,24,14) -hasLocation(#20366,#20367) -enclosing_stmt(#20366,#20352) -expr_containers(#20366,#20001) -#20368=* -exprs(#20368,4,#20366,0,"""(""") -hasLocation(#20368,#20203) -enclosing_stmt(#20368,#20352) -expr_containers(#20368,#20001) -literals("(","""(""",#20368) +literals("RegExp","RegExp",#20360) +bind(#20360,#20264) +#20361=* +exprs(#20361,34,#20358,0,"""("" + \n ... +\n"")f$""") +#20362=@"loc,{#10000},23,24,27,5" +locations_default(#20362,#10000,23,24,27,5) +hasLocation(#20361,#20362) +enclosing_stmt(#20361,#20353) +expr_containers(#20361,#20001) +#20363=* +exprs(#20363,34,#20361,0,"""("" + \n ... e|ee)*""") +#20364=@"loc,{#10000},23,24,26,13" +locations_default(#20364,#10000,23,24,26,13) +hasLocation(#20363,#20364) +enclosing_stmt(#20363,#20353) +expr_containers(#20363,#20001) +#20365=* +exprs(#20365,34,#20363,0,"""("" + \n ... |dd)*|""") +#20366=@"loc,{#10000},23,24,25,14" +locations_default(#20366,#10000,23,24,25,14) +hasLocation(#20365,#20366) +enclosing_stmt(#20365,#20353) +expr_containers(#20365,#20001) +#20367=* +exprs(#20367,34,#20365,0,"""("" + \n ... |cc)*|""") +#20368=@"loc,{#10000},23,24,24,14" +locations_default(#20368,#10000,23,24,24,14) +hasLocation(#20367,#20368) +enclosing_stmt(#20367,#20353) +expr_containers(#20367,#20001) #20369=* -exprs(#20369,4,#20366,1,"""(c|cc)*|""") -hasLocation(#20369,#20207) -enclosing_stmt(#20369,#20352) +exprs(#20369,4,#20367,0,"""(""") +hasLocation(#20369,#20203) +enclosing_stmt(#20369,#20353) expr_containers(#20369,#20001) -literals("(c|cc)*|","""(c|cc)*|""",#20369) +literals("(","""(""",#20369) #20370=* -exprs(#20370,4,#20364,1,"""(d|dd)*|""") -hasLocation(#20370,#20211) -enclosing_stmt(#20370,#20352) +exprs(#20370,4,#20367,1,"""(c|cc)*|""") +hasLocation(#20370,#20207) +enclosing_stmt(#20370,#20353) expr_containers(#20370,#20001) -literals("(d|dd)*|","""(d|dd)*|""",#20370) +literals("(c|cc)*|","""(c|cc)*|""",#20370) #20371=* -exprs(#20371,4,#20362,1,"""(e|ee)*""") -hasLocation(#20371,#20215) -enclosing_stmt(#20371,#20352) +exprs(#20371,4,#20365,1,"""(d|dd)*|""") +hasLocation(#20371,#20211) +enclosing_stmt(#20371,#20353) expr_containers(#20371,#20001) -literals("(e|ee)*","""(e|ee)*""",#20371) +literals("(d|dd)*|","""(d|dd)*|""",#20371) #20372=* -exprs(#20372,4,#20360,1,""")f$""") -hasLocation(#20372,#20219) -enclosing_stmt(#20372,#20352) +exprs(#20372,4,#20363,1,"""(e|ee)*""") +hasLocation(#20372,#20215) +enclosing_stmt(#20372,#20353) expr_containers(#20372,#20001) -literals(")f$",""")f$""",#20372) +literals("(e|ee)*","""(e|ee)*""",#20372) #20373=* -regexpterm(#20373,1,#20360,0,"((c|cc)*|(d|dd)*|(e|ee)*)f$") -#20374=@"loc,{#10000},23,25,27,4" -locations_default(#20374,#10000,23,25,27,4) -hasLocation(#20373,#20374) -#20375=* -regexpterm(#20375,13,#20373,0,"((c|cc)*|(d|dd)*|(e|ee)*)") -#20376=@"loc,{#10000},23,25,27,2" -locations_default(#20376,#10000,23,25,27,2) -hasLocation(#20375,#20376) -is_capture(#20375,1) -#20377=* -regexpterm(#20377,0,#20375,0,"(c|cc)*|(d|dd)*|(e|ee)*") -#20378=@"loc,{#10000},24,6,27,1" -locations_default(#20378,#10000,24,6,27,1) -hasLocation(#20377,#20378) -#20379=* -regexpterm(#20379,8,#20377,0,"(c|cc)*") -#20380=@"loc,{#10000},24,6,24,12" -locations_default(#20380,#10000,24,6,24,12) -hasLocation(#20379,#20380) -is_greedy(#20379) -#20381=* -regexpterm(#20381,13,#20379,0,"(c|cc)") -#20382=@"loc,{#10000},24,6,24,11" -locations_default(#20382,#10000,24,6,24,11) -hasLocation(#20381,#20382) -is_capture(#20381,2) -#20383=* -regexpterm(#20383,0,#20381,0,"c|cc") -#20384=@"loc,{#10000},24,7,24,10" -locations_default(#20384,#10000,24,7,24,10) -hasLocation(#20383,#20384) -#20385=* -regexpterm(#20385,14,#20383,0,"c") -#20386=@"loc,{#10000},24,7,24,7" -locations_default(#20386,#10000,24,7,24,7) -hasLocation(#20385,#20386) -regexp_const_value(#20385,"c") -#20387=* -regexpterm(#20387,14,#20383,1,"cc") -#20388=@"loc,{#10000},24,9,24,10" -locations_default(#20388,#10000,24,9,24,10) -hasLocation(#20387,#20388) -regexp_const_value(#20387,"cc") -#20389=* -regexpterm(#20389,8,#20377,1,"(d|dd)*") -#20390=@"loc,{#10000},25,6,25,12" -locations_default(#20390,#10000,25,6,25,12) -hasLocation(#20389,#20390) -is_greedy(#20389) -#20391=* -regexpterm(#20391,13,#20389,0,"(d|dd)") -#20392=@"loc,{#10000},25,6,25,11" -locations_default(#20392,#10000,25,6,25,11) -hasLocation(#20391,#20392) -is_capture(#20391,3) -#20393=* -regexpterm(#20393,0,#20391,0,"d|dd") -#20394=@"loc,{#10000},25,7,25,10" -locations_default(#20394,#10000,25,7,25,10) -hasLocation(#20393,#20394) -#20395=* -regexpterm(#20395,14,#20393,0,"d") -#20396=@"loc,{#10000},25,7,25,7" -locations_default(#20396,#10000,25,7,25,7) -hasLocation(#20395,#20396) -regexp_const_value(#20395,"d") -#20397=* -regexpterm(#20397,14,#20393,1,"dd") -#20398=@"loc,{#10000},25,9,25,10" -locations_default(#20398,#10000,25,9,25,10) -hasLocation(#20397,#20398) -regexp_const_value(#20397,"dd") -#20399=* -regexpterm(#20399,8,#20377,2,"(e|ee)*") -#20400=@"loc,{#10000},26,6,27,1" -locations_default(#20400,#10000,26,6,27,1) -hasLocation(#20399,#20400) -is_greedy(#20399) -#20401=* -regexpterm(#20401,13,#20399,0,"(e|ee)") -#20402=@"loc,{#10000},26,6,26,11" -locations_default(#20402,#10000,26,6,26,11) -hasLocation(#20401,#20402) -is_capture(#20401,4) -#20403=* -regexpterm(#20403,0,#20401,0,"e|ee") -#20404=@"loc,{#10000},26,7,26,10" -locations_default(#20404,#10000,26,7,26,10) -hasLocation(#20403,#20404) -#20405=* -regexpterm(#20405,14,#20403,0,"e") -#20406=@"loc,{#10000},26,7,26,7" -locations_default(#20406,#10000,26,7,26,7) -hasLocation(#20405,#20406) -regexp_const_value(#20405,"e") -#20407=* -regexpterm(#20407,14,#20403,1,"ee") -#20408=@"loc,{#10000},26,9,26,10" -locations_default(#20408,#10000,26,9,26,10) -hasLocation(#20407,#20408) -regexp_const_value(#20407,"ee") -#20409=* -regexpterm(#20409,14,#20373,1,"f") -#20410=@"loc,{#10000},27,3,27,3" -locations_default(#20410,#10000,27,3,27,3) -hasLocation(#20409,#20410) -regexp_const_value(#20409,"f") -#20411=* -regexpterm(#20411,3,#20373,2,"$") -#20412=@"loc,{#10000},27,4,27,4" -locations_default(#20412,#10000,27,4,27,4) -hasLocation(#20411,#20412) -#20413=* -stmts(#20413,18,#20001,6,"var bad ... )*h$"");") -#20414=@"loc,{#10000},29,1,31,12" -locations_default(#20414,#10000,29,1,31,12) -hasLocation(#20413,#20414) -stmt_containers(#20413,#20001) -#20415=* -exprs(#20415,64,#20413,0,"bad97 = ... "")*h$"")") -#20416=@"loc,{#10000},29,5,31,11" -locations_default(#20416,#10000,29,5,31,11) -hasLocation(#20415,#20416) -enclosing_stmt(#20415,#20413) -expr_containers(#20415,#20001) -#20417=* -exprs(#20417,78,#20415,0,"bad97") -hasLocation(#20417,#20227) -enclosing_stmt(#20417,#20413) -expr_containers(#20417,#20001) -literals("bad97","bad97",#20417) -decl(#20417,#20255) +exprs(#20373,4,#20361,1,""")f$""") +hasLocation(#20373,#20219) +enclosing_stmt(#20373,#20353) +expr_containers(#20373,#20001) +literals(")f$",""")f$""",#20373) +#20374=* +regexpterm(#20374,1,#20361,0,"((c|cc)*|(d|dd)*|(e|ee)*)f$") +#20375=@"loc,{#10000},23,25,27,4" +locations_default(#20375,#10000,23,25,27,4) +hasLocation(#20374,#20375) +#20376=* +regexpterm(#20376,13,#20374,0,"((c|cc)*|(d|dd)*|(e|ee)*)") +#20377=@"loc,{#10000},23,25,27,2" +locations_default(#20377,#10000,23,25,27,2) +hasLocation(#20376,#20377) +is_capture(#20376,1) +#20378=* +regexpterm(#20378,0,#20376,0,"(c|cc)*|(d|dd)*|(e|ee)*") +#20379=@"loc,{#10000},24,6,27,1" +locations_default(#20379,#10000,24,6,27,1) +hasLocation(#20378,#20379) +#20380=* +regexpterm(#20380,8,#20378,0,"(c|cc)*") +#20381=@"loc,{#10000},24,6,24,12" +locations_default(#20381,#10000,24,6,24,12) +hasLocation(#20380,#20381) +is_greedy(#20380) +#20382=* +regexpterm(#20382,13,#20380,0,"(c|cc)") +#20383=@"loc,{#10000},24,6,24,11" +locations_default(#20383,#10000,24,6,24,11) +hasLocation(#20382,#20383) +is_capture(#20382,2) +#20384=* +regexpterm(#20384,0,#20382,0,"c|cc") +#20385=@"loc,{#10000},24,7,24,10" +locations_default(#20385,#10000,24,7,24,10) +hasLocation(#20384,#20385) +#20386=* +regexpterm(#20386,14,#20384,0,"c") +#20387=@"loc,{#10000},24,7,24,7" +locations_default(#20387,#10000,24,7,24,7) +hasLocation(#20386,#20387) +regexp_const_value(#20386,"c") +#20388=* +regexpterm(#20388,14,#20384,1,"cc") +#20389=@"loc,{#10000},24,9,24,10" +locations_default(#20389,#10000,24,9,24,10) +hasLocation(#20388,#20389) +regexp_const_value(#20388,"cc") +#20390=* +regexpterm(#20390,8,#20378,1,"(d|dd)*") +#20391=@"loc,{#10000},25,6,25,12" +locations_default(#20391,#10000,25,6,25,12) +hasLocation(#20390,#20391) +is_greedy(#20390) +#20392=* +regexpterm(#20392,13,#20390,0,"(d|dd)") +#20393=@"loc,{#10000},25,6,25,11" +locations_default(#20393,#10000,25,6,25,11) +hasLocation(#20392,#20393) +is_capture(#20392,3) +#20394=* +regexpterm(#20394,0,#20392,0,"d|dd") +#20395=@"loc,{#10000},25,7,25,10" +locations_default(#20395,#10000,25,7,25,10) +hasLocation(#20394,#20395) +#20396=* +regexpterm(#20396,14,#20394,0,"d") +#20397=@"loc,{#10000},25,7,25,7" +locations_default(#20397,#10000,25,7,25,7) +hasLocation(#20396,#20397) +regexp_const_value(#20396,"d") +#20398=* +regexpterm(#20398,14,#20394,1,"dd") +#20399=@"loc,{#10000},25,9,25,10" +locations_default(#20399,#10000,25,9,25,10) +hasLocation(#20398,#20399) +regexp_const_value(#20398,"dd") +#20400=* +regexpterm(#20400,8,#20378,2,"(e|ee)*") +#20401=@"loc,{#10000},26,6,27,1" +locations_default(#20401,#10000,26,6,27,1) +hasLocation(#20400,#20401) +is_greedy(#20400) +#20402=* +regexpterm(#20402,13,#20400,0,"(e|ee)") +#20403=@"loc,{#10000},26,6,26,11" +locations_default(#20403,#10000,26,6,26,11) +hasLocation(#20402,#20403) +is_capture(#20402,4) +#20404=* +regexpterm(#20404,0,#20402,0,"e|ee") +#20405=@"loc,{#10000},26,7,26,10" +locations_default(#20405,#10000,26,7,26,10) +hasLocation(#20404,#20405) +#20406=* +regexpterm(#20406,14,#20404,0,"e") +#20407=@"loc,{#10000},26,7,26,7" +locations_default(#20407,#10000,26,7,26,7) +hasLocation(#20406,#20407) +regexp_const_value(#20406,"e") +#20408=* +regexpterm(#20408,14,#20404,1,"ee") +#20409=@"loc,{#10000},26,9,26,10" +locations_default(#20409,#10000,26,9,26,10) +hasLocation(#20408,#20409) +regexp_const_value(#20408,"ee") +#20410=* +regexpterm(#20410,14,#20374,1,"f") +#20411=@"loc,{#10000},27,3,27,3" +locations_default(#20411,#10000,27,3,27,3) +hasLocation(#20410,#20411) +regexp_const_value(#20410,"f") +#20412=* +regexpterm(#20412,3,#20374,2,"$") +#20413=@"loc,{#10000},27,4,27,4" +locations_default(#20413,#10000,27,4,27,4) +hasLocation(#20412,#20413) +#20414=* +stmts(#20414,18,#20001,6,"var bad ... )*h$"");") +#20415=@"loc,{#10000},29,1,31,12" +locations_default(#20415,#10000,29,1,31,12) +hasLocation(#20414,#20415) +stmt_containers(#20414,#20001) +#20416=* +exprs(#20416,64,#20414,0,"bad97 = ... "")*h$"")") +#20417=@"loc,{#10000},29,5,31,11" +locations_default(#20417,#10000,29,5,31,11) +hasLocation(#20416,#20417) +enclosing_stmt(#20416,#20414) +expr_containers(#20416,#20001) #20418=* -exprs(#20418,12,#20415,1,"new Reg ... "")*h$"")") -#20419=@"loc,{#10000},29,13,31,11" -locations_default(#20419,#10000,29,13,31,11) -hasLocation(#20418,#20419) -enclosing_stmt(#20418,#20413) +exprs(#20418,78,#20416,0,"bad97") +hasLocation(#20418,#20227) +enclosing_stmt(#20418,#20414) expr_containers(#20418,#20001) -#20420=* -exprs(#20420,79,#20418,-1,"RegExp") -hasLocation(#20420,#20233) -enclosing_stmt(#20420,#20413) -expr_containers(#20420,#20001) -literals("RegExp","RegExp",#20420) -bind(#20420,#20263) +literals("bad97","bad97",#20418) +decl(#20418,#20255) +#20419=* +exprs(#20419,12,#20416,1,"new Reg ... "")*h$"")") +#20420=@"loc,{#10000},29,13,31,11" +locations_default(#20420,#10000,29,13,31,11) +hasLocation(#20419,#20420) +enclosing_stmt(#20419,#20414) +expr_containers(#20419,#20001) #20421=* -exprs(#20421,34,#20418,0,"""(g|gg"" ... "")*h$""") -#20422=@"loc,{#10000},30,5,31,10" -locations_default(#20422,#10000,30,5,31,10) -hasLocation(#20421,#20422) -enclosing_stmt(#20421,#20413) +exprs(#20421,79,#20419,-1,"RegExp") +hasLocation(#20421,#20233) +enclosing_stmt(#20421,#20414) expr_containers(#20421,#20001) -#20423=* -exprs(#20423,4,#20421,0,"""(g|gg""") -hasLocation(#20423,#20237) -enclosing_stmt(#20423,#20413) -expr_containers(#20423,#20001) -literals("(g|gg","""(g|gg""",#20423) +literals("RegExp","RegExp",#20421) +bind(#20421,#20264) +#20422=* +exprs(#20422,34,#20419,0,"""(g|gg"" ... "")*h$""") +#20423=@"loc,{#10000},30,5,31,10" +locations_default(#20423,#10000,30,5,31,10) +hasLocation(#20422,#20423) +enclosing_stmt(#20422,#20414) +expr_containers(#20422,#20001) #20424=* -exprs(#20424,4,#20421,1,""")*h$""") -hasLocation(#20424,#20241) -enclosing_stmt(#20424,#20413) +exprs(#20424,4,#20422,0,"""(g|gg""") +hasLocation(#20424,#20237) +enclosing_stmt(#20424,#20414) expr_containers(#20424,#20001) -literals(")*h$",""")*h$""",#20424) +literals("(g|gg","""(g|gg""",#20424) #20425=* -regexpterm(#20425,1,#20421,0,"(g|gg)*h$") -#20426=@"loc,{#10000},30,6,31,9" -locations_default(#20426,#10000,30,6,31,9) -hasLocation(#20425,#20426) -#20427=* -regexpterm(#20427,8,#20425,0,"(g|gg)*") -#20428=@"loc,{#10000},30,6,31,7" -locations_default(#20428,#10000,30,6,31,7) -hasLocation(#20427,#20428) -is_greedy(#20427) -#20429=* -regexpterm(#20429,13,#20427,0,"(g|gg)") -#20430=@"loc,{#10000},30,6,31,6" -locations_default(#20430,#10000,30,6,31,6) -hasLocation(#20429,#20430) -is_capture(#20429,1) -#20431=* -regexpterm(#20431,0,#20429,0,"g|gg") -#20432=@"loc,{#10000},30,7,31,5" -locations_default(#20432,#10000,30,7,31,5) -hasLocation(#20431,#20432) -#20433=* -regexpterm(#20433,14,#20431,0,"g") -#20434=@"loc,{#10000},30,7,30,7" -locations_default(#20434,#10000,30,7,30,7) -hasLocation(#20433,#20434) -regexp_const_value(#20433,"g") -#20435=* -regexpterm(#20435,14,#20431,1,"gg") -#20436=@"loc,{#10000},30,9,31,5" -locations_default(#20436,#10000,30,9,31,5) -hasLocation(#20435,#20436) -regexp_const_value(#20435,"gg") -#20437=* -regexpterm(#20437,14,#20425,1,"h") -#20438=@"loc,{#10000},31,8,31,8" -locations_default(#20438,#10000,31,8,31,8) -hasLocation(#20437,#20438) -regexp_const_value(#20437,"h") -#20439=* -regexpterm(#20439,3,#20425,2,"$") -#20440=@"loc,{#10000},31,9,31,9" -locations_default(#20440,#10000,31,9,31,9) -hasLocation(#20439,#20440) -#20441=* -entry_cfg_node(#20441,#20001) -#20442=@"loc,{#10000},1,1,1,0" -locations_default(#20442,#10000,1,1,1,0) -hasLocation(#20441,#20442) -#20443=* -exit_cfg_node(#20443,#20001) -hasLocation(#20443,#20247) -successor(#20413,#20417) -successor(#20424,#20421) -successor(#20423,#20424) -successor(#20421,#20418) -successor(#20420,#20423) -successor(#20418,#20415) -successor(#20417,#20420) -successor(#20415,#20443) -successor(#20352,#20356) -successor(#20372,#20360) -successor(#20371,#20362) -successor(#20370,#20364) -successor(#20369,#20366) -successor(#20368,#20369) -successor(#20366,#20370) -successor(#20364,#20371) -successor(#20362,#20372) -successor(#20360,#20357) -successor(#20359,#20368) -successor(#20357,#20354) -successor(#20356,#20359) -successor(#20354,#20413) -successor(#20318,#20322) -successor(#20335,#20326) -successor(#20334,#20328) -successor(#20333,#20330) -successor(#20332,#20333) -successor(#20330,#20334) -successor(#20328,#20335) -successor(#20326,#20323) -successor(#20325,#20332) -successor(#20323,#20320) -successor(#20322,#20325) -successor(#20320,#20352) -successor(#20298,#20302) -successor(#20315,#20306) -successor(#20314,#20308) -successor(#20313,#20310) -successor(#20312,#20313) -successor(#20310,#20314) -successor(#20308,#20315) -successor(#20306,#20303) -successor(#20305,#20312) -successor(#20303,#20300) -successor(#20302,#20305) -successor(#20300,#20318) -successor(#20284,#20288) -successor(#20295,#20292) -successor(#20294,#20295) -successor(#20292,#20289) -successor(#20291,#20294) -successor(#20289,#20286) -successor(#20288,#20291) -successor(#20286,#20298) -successor(#20270,#20274) -successor(#20281,#20278) -successor(#20280,#20281) -successor(#20278,#20275) -successor(#20277,#20280) -successor(#20275,#20272) -successor(#20274,#20277) -successor(#20272,#20284) -successor(#20256,#20259) -successor(#20267,#20264) -successor(#20266,#20267) -successor(#20264,#20260) -successor(#20262,#20266) -successor(#20260,#20257) -successor(#20259,#20262) -successor(#20257,#20270) -successor(#20441,#20256) +exprs(#20425,4,#20422,1,""")*h$""") +hasLocation(#20425,#20241) +enclosing_stmt(#20425,#20414) +expr_containers(#20425,#20001) +literals(")*h$",""")*h$""",#20425) +#20426=* +regexpterm(#20426,1,#20422,0,"(g|gg)*h$") +#20427=@"loc,{#10000},30,6,31,9" +locations_default(#20427,#10000,30,6,31,9) +hasLocation(#20426,#20427) +#20428=* +regexpterm(#20428,8,#20426,0,"(g|gg)*") +#20429=@"loc,{#10000},30,6,31,7" +locations_default(#20429,#10000,30,6,31,7) +hasLocation(#20428,#20429) +is_greedy(#20428) +#20430=* +regexpterm(#20430,13,#20428,0,"(g|gg)") +#20431=@"loc,{#10000},30,6,31,6" +locations_default(#20431,#10000,30,6,31,6) +hasLocation(#20430,#20431) +is_capture(#20430,1) +#20432=* +regexpterm(#20432,0,#20430,0,"g|gg") +#20433=@"loc,{#10000},30,7,31,5" +locations_default(#20433,#10000,30,7,31,5) +hasLocation(#20432,#20433) +#20434=* +regexpterm(#20434,14,#20432,0,"g") +#20435=@"loc,{#10000},30,7,30,7" +locations_default(#20435,#10000,30,7,30,7) +hasLocation(#20434,#20435) +regexp_const_value(#20434,"g") +#20436=* +regexpterm(#20436,14,#20432,1,"gg") +#20437=@"loc,{#10000},30,9,31,5" +locations_default(#20437,#10000,30,9,31,5) +hasLocation(#20436,#20437) +regexp_const_value(#20436,"gg") +#20438=* +regexpterm(#20438,14,#20426,1,"h") +#20439=@"loc,{#10000},31,8,31,8" +locations_default(#20439,#10000,31,8,31,8) +hasLocation(#20438,#20439) +regexp_const_value(#20438,"h") +#20440=* +regexpterm(#20440,3,#20426,2,"$") +#20441=@"loc,{#10000},31,9,31,9" +locations_default(#20441,#10000,31,9,31,9) +hasLocation(#20440,#20441) +#20442=* +entry_cfg_node(#20442,#20001) +#20443=@"loc,{#10000},1,1,1,0" +locations_default(#20443,#10000,1,1,1,0) +hasLocation(#20442,#20443) +#20444=* +exit_cfg_node(#20444,#20001) +hasLocation(#20444,#20247) +successor(#20414,#20418) +successor(#20425,#20422) +successor(#20424,#20425) +successor(#20422,#20419) +successor(#20421,#20424) +successor(#20419,#20416) +successor(#20418,#20421) +successor(#20416,#20444) +successor(#20353,#20357) +successor(#20373,#20361) +successor(#20372,#20363) +successor(#20371,#20365) +successor(#20370,#20367) +successor(#20369,#20370) +successor(#20367,#20371) +successor(#20365,#20372) +successor(#20363,#20373) +successor(#20361,#20358) +successor(#20360,#20369) +successor(#20358,#20355) +successor(#20357,#20360) +successor(#20355,#20414) +successor(#20319,#20323) +successor(#20336,#20327) +successor(#20335,#20329) +successor(#20334,#20331) +successor(#20333,#20334) +successor(#20331,#20335) +successor(#20329,#20336) +successor(#20327,#20324) +successor(#20326,#20333) +successor(#20324,#20321) +successor(#20323,#20326) +successor(#20321,#20353) +successor(#20299,#20303) +successor(#20316,#20307) +successor(#20315,#20309) +successor(#20314,#20311) +successor(#20313,#20314) +successor(#20311,#20315) +successor(#20309,#20316) +successor(#20307,#20304) +successor(#20306,#20313) +successor(#20304,#20301) +successor(#20303,#20306) +successor(#20301,#20319) +successor(#20285,#20289) +successor(#20296,#20293) +successor(#20295,#20296) +successor(#20293,#20290) +successor(#20292,#20295) +successor(#20290,#20287) +successor(#20289,#20292) +successor(#20287,#20299) +successor(#20271,#20275) +successor(#20282,#20279) +successor(#20281,#20282) +successor(#20279,#20276) +successor(#20278,#20281) +successor(#20276,#20273) +successor(#20275,#20278) +successor(#20273,#20285) +successor(#20257,#20260) +successor(#20268,#20265) +successor(#20267,#20268) +successor(#20265,#20261) +successor(#20263,#20267) +successor(#20261,#20258) +successor(#20260,#20263) +successor(#20258,#20271) +successor(#20442,#20257) numlines(#10000,31,25,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/regexp/output/trap/nonstandard.js.trap b/javascript/extractor/tests/regexp/output/trap/nonstandard.js.trap index e0b648118d97..12dcbb8c9a44 100644 --- a/javascript/extractor/tests/regexp/output/trap/nonstandard.js.trap +++ b/javascript/extractor/tests/regexp/output/trap/nonstandard.js.trap @@ -32,32 +32,34 @@ locations_default(#20009,#10000,1,9,1,8) hasLocation(#20008,#20009) toplevels(#20001,0) hasLocation(#20001,#20003) -#20010=* -stmts(#20010,2,#20001,0,"/dice/y;") -hasLocation(#20010,#20003) -stmt_containers(#20010,#20001) +#20010=@"var;{this};{#20000}" +variables(#20010,"this",#20000) #20011=* -exprs(#20011,5,#20010,0,"/dice/y") -hasLocation(#20011,#20005) -enclosing_stmt(#20011,#20010) -expr_containers(#20011,#20001) -literals("/dice/y","/dice/y",#20011) +stmts(#20011,2,#20001,0,"/dice/y;") +hasLocation(#20011,#20003) +stmt_containers(#20011,#20001) #20012=* -regexpterm(#20012,14,#20011,0,"dice") -#20013=@"loc,{#10000},1,2,1,5" -locations_default(#20013,#10000,1,2,1,5) -hasLocation(#20012,#20013) -regexp_const_value(#20012,"dice") -#20014=* -entry_cfg_node(#20014,#20001) -#20015=@"loc,{#10000},1,1,1,0" -locations_default(#20015,#10000,1,1,1,0) -hasLocation(#20014,#20015) -#20016=* -exit_cfg_node(#20016,#20001) -hasLocation(#20016,#20009) -successor(#20010,#20011) -successor(#20011,#20016) -successor(#20014,#20010) +exprs(#20012,5,#20011,0,"/dice/y") +hasLocation(#20012,#20005) +enclosing_stmt(#20012,#20011) +expr_containers(#20012,#20001) +literals("/dice/y","/dice/y",#20012) +#20013=* +regexpterm(#20013,14,#20012,0,"dice") +#20014=@"loc,{#10000},1,2,1,5" +locations_default(#20014,#10000,1,2,1,5) +hasLocation(#20013,#20014) +regexp_const_value(#20013,"dice") +#20015=* +entry_cfg_node(#20015,#20001) +#20016=@"loc,{#10000},1,1,1,0" +locations_default(#20016,#10000,1,1,1,0) +hasLocation(#20015,#20016) +#20017=* +exit_cfg_node(#20017,#20001) +hasLocation(#20017,#20009) +successor(#20011,#20012) +successor(#20012,#20017) +successor(#20015,#20011) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/regexp/output/trap/odasa-1934.js.trap b/javascript/extractor/tests/regexp/output/trap/odasa-1934.js.trap index 6e90c62e6a6b..195fa8ff0c09 100644 --- a/javascript/extractor/tests/regexp/output/trap/odasa-1934.js.trap +++ b/javascript/extractor/tests/regexp/output/trap/odasa-1934.js.trap @@ -195,216 +195,218 @@ locations_default(#20070,#10000,1,1,7,2) hasLocation(#20001,#20070) #20071=@"var;{r};{#20000}" variables(#20071,"r",#20000) -#20072=* -stmts(#20072,18,#20001,0,"var r;") -hasLocation(#20072,#20003) -stmt_containers(#20072,#20001) +#20072=@"var;{this};{#20000}" +variables(#20072,"this",#20000) #20073=* -exprs(#20073,64,#20072,0,"r") -hasLocation(#20073,#20019) -enclosing_stmt(#20073,#20072) -expr_containers(#20073,#20001) +stmts(#20073,18,#20001,0,"var r;") +hasLocation(#20073,#20003) +stmt_containers(#20073,#20001) #20074=* -exprs(#20074,78,#20073,0,"r") +exprs(#20074,64,#20073,0,"r") hasLocation(#20074,#20019) -enclosing_stmt(#20074,#20072) +enclosing_stmt(#20074,#20073) expr_containers(#20074,#20001) -literals("r","r",#20074) -decl(#20074,#20071) #20075=* -stmts(#20075,2,#20001,1,"reportC ... n 1""\n);") -#20076=@"loc,{#10000},3,1,7,2" -locations_default(#20076,#10000,3,1,7,2) -hasLocation(#20075,#20076) -stmt_containers(#20075,#20001) -#20077=* -exprs(#20077,13,#20075,0,"reportC ... on 1""\n)") -#20078=@"loc,{#10000},3,1,7,1" -locations_default(#20078,#10000,3,1,7,1) -hasLocation(#20077,#20078) -enclosing_stmt(#20077,#20075) -expr_containers(#20077,#20001) -#20079=* -exprs(#20079,79,#20077,-1,"reportCompare") -hasLocation(#20079,#20023) -enclosing_stmt(#20079,#20075) -expr_containers(#20079,#20001) -literals("reportCompare","reportCompare",#20079) -#20080=@"var;{reportCompare};{#20000}" -variables(#20080,"reportCompare",#20000) -bind(#20079,#20080) -#20081=* -exprs(#20081,4,#20077,0,"""x""") -hasLocation(#20081,#20027) -enclosing_stmt(#20081,#20075) -expr_containers(#20081,#20001) -literals("x","""x""",#20081) +exprs(#20075,78,#20074,0,"r") +hasLocation(#20075,#20019) +enclosing_stmt(#20075,#20073) +expr_containers(#20075,#20001) +literals("r","r",#20075) +decl(#20075,#20071) +#20076=* +stmts(#20076,2,#20001,1,"reportC ... n 1""\n);") +#20077=@"loc,{#10000},3,1,7,2" +locations_default(#20077,#10000,3,1,7,2) +hasLocation(#20076,#20077) +stmt_containers(#20076,#20001) +#20078=* +exprs(#20078,13,#20076,0,"reportC ... on 1""\n)") +#20079=@"loc,{#10000},3,1,7,1" +locations_default(#20079,#10000,3,1,7,1) +hasLocation(#20078,#20079) +enclosing_stmt(#20078,#20076) +expr_containers(#20078,#20001) +#20080=* +exprs(#20080,79,#20078,-1,"reportCompare") +hasLocation(#20080,#20023) +enclosing_stmt(#20080,#20076) +expr_containers(#20080,#20001) +literals("reportCompare","reportCompare",#20080) +#20081=@"var;{reportCompare};{#20000}" +variables(#20081,"reportCompare",#20000) +bind(#20080,#20081) #20082=* -regexpterm(#20082,14,#20081,0,"x") -#20083=@"loc,{#10000},4,4,4,4" -locations_default(#20083,#10000,4,4,4,4) -hasLocation(#20082,#20083) -regexp_const_value(#20082,"x") -#20084=* -exprs(#20084,44,#20077,1,"(r = /[ ... && r[0]") -#20085=@"loc,{#10000},5,3,5,33" -locations_default(#20085,#10000,5,3,5,33) -hasLocation(#20084,#20085) -enclosing_stmt(#20084,#20075) -expr_containers(#20084,#20001) -#20086=* -exprs(#20086,63,#20084,0,"(r = /[ ... c(""x""))") -#20087=@"loc,{#10000},5,3,5,25" -locations_default(#20087,#10000,5,3,5,25) -hasLocation(#20086,#20087) -enclosing_stmt(#20086,#20075) -expr_containers(#20086,#20001) -#20088=* -exprs(#20088,47,#20086,0,"r = /[\ ... ec(""x"")") -#20089=@"loc,{#10000},5,4,5,24" -locations_default(#20089,#10000,5,4,5,24) -hasLocation(#20088,#20089) -enclosing_stmt(#20088,#20075) -expr_containers(#20088,#20001) -#20090=* -exprs(#20090,79,#20088,0,"r") -hasLocation(#20090,#20033) -enclosing_stmt(#20090,#20075) -expr_containers(#20090,#20001) -literals("r","r",#20090) -bind(#20090,#20071) +exprs(#20082,4,#20078,0,"""x""") +hasLocation(#20082,#20027) +enclosing_stmt(#20082,#20076) +expr_containers(#20082,#20001) +literals("x","""x""",#20082) +#20083=* +regexpterm(#20083,14,#20082,0,"x") +#20084=@"loc,{#10000},4,4,4,4" +locations_default(#20084,#10000,4,4,4,4) +hasLocation(#20083,#20084) +regexp_const_value(#20083,"x") +#20085=* +exprs(#20085,44,#20078,1,"(r = /[ ... && r[0]") +#20086=@"loc,{#10000},5,3,5,33" +locations_default(#20086,#10000,5,3,5,33) +hasLocation(#20085,#20086) +enclosing_stmt(#20085,#20076) +expr_containers(#20085,#20001) +#20087=* +exprs(#20087,63,#20085,0,"(r = /[ ... c(""x""))") +#20088=@"loc,{#10000},5,3,5,25" +locations_default(#20088,#10000,5,3,5,25) +hasLocation(#20087,#20088) +enclosing_stmt(#20087,#20076) +expr_containers(#20087,#20001) +#20089=* +exprs(#20089,47,#20087,0,"r = /[\ ... ec(""x"")") +#20090=@"loc,{#10000},5,4,5,24" +locations_default(#20090,#10000,5,4,5,24) +hasLocation(#20089,#20090) +enclosing_stmt(#20089,#20076) +expr_containers(#20089,#20001) #20091=* -exprs(#20091,13,#20088,1,"/[\x]+/.exec(""x"")") -#20092=@"loc,{#10000},5,8,5,24" -locations_default(#20092,#10000,5,8,5,24) -hasLocation(#20091,#20092) -enclosing_stmt(#20091,#20075) +exprs(#20091,79,#20089,0,"r") +hasLocation(#20091,#20033) +enclosing_stmt(#20091,#20076) expr_containers(#20091,#20001) -#20093=* -exprs(#20093,14,#20091,-1,"/[\x]+/.exec") -#20094=@"loc,{#10000},5,8,5,19" -locations_default(#20094,#10000,5,8,5,19) -hasLocation(#20093,#20094) -enclosing_stmt(#20093,#20075) -expr_containers(#20093,#20001) -#20095=* -exprs(#20095,5,#20093,0,"/[\x]+/") -hasLocation(#20095,#20037) -enclosing_stmt(#20095,#20075) -expr_containers(#20095,#20001) -literals("/[\x]+/","/[\x]+/",#20095) +literals("r","r",#20091) +bind(#20091,#20071) +#20092=* +exprs(#20092,13,#20089,1,"/[\x]+/.exec(""x"")") +#20093=@"loc,{#10000},5,8,5,24" +locations_default(#20093,#10000,5,8,5,24) +hasLocation(#20092,#20093) +enclosing_stmt(#20092,#20076) +expr_containers(#20092,#20001) +#20094=* +exprs(#20094,14,#20092,-1,"/[\x]+/.exec") +#20095=@"loc,{#10000},5,8,5,19" +locations_default(#20095,#10000,5,8,5,19) +hasLocation(#20094,#20095) +enclosing_stmt(#20094,#20076) +expr_containers(#20094,#20001) #20096=* -regexpterm(#20096,9,#20095,0,"[\x]+") -#20097=@"loc,{#10000},5,9,5,13" -locations_default(#20097,#10000,5,9,5,13) -hasLocation(#20096,#20097) -is_greedy(#20096) -#20098=* -regexpterm(#20098,23,#20096,0,"[\x]") -#20099=@"loc,{#10000},5,9,5,12" -locations_default(#20099,#10000,5,9,5,12) -hasLocation(#20098,#20099) -#20100=* -regexpterm(#20100,15,#20098,0,"\x") -#20101=@"loc,{#10000},5,10,5,11" -locations_default(#20101,#10000,5,10,5,11) -hasLocation(#20100,#20101) -regexp_const_value(#20100,"") -#20102=* -regexp_parse_errors(#20102,#20096,"expected hexadecimal digit") -#20103=@"loc,{#10000},5,12,5,12" -locations_default(#20103,#10000,5,12,5,12) -hasLocation(#20102,#20103) -#20104=* -regexp_parse_errors(#20104,#20096,"expected hexadecimal digit") -hasLocation(#20104,#20103) +exprs(#20096,5,#20094,0,"/[\x]+/") +hasLocation(#20096,#20037) +enclosing_stmt(#20096,#20076) +expr_containers(#20096,#20001) +literals("/[\x]+/","/[\x]+/",#20096) +#20097=* +regexpterm(#20097,9,#20096,0,"[\x]+") +#20098=@"loc,{#10000},5,9,5,13" +locations_default(#20098,#10000,5,9,5,13) +hasLocation(#20097,#20098) +is_greedy(#20097) +#20099=* +regexpterm(#20099,23,#20097,0,"[\x]") +#20100=@"loc,{#10000},5,9,5,12" +locations_default(#20100,#10000,5,9,5,12) +hasLocation(#20099,#20100) +#20101=* +regexpterm(#20101,15,#20099,0,"\x") +#20102=@"loc,{#10000},5,10,5,11" +locations_default(#20102,#10000,5,10,5,11) +hasLocation(#20101,#20102) +regexp_const_value(#20101,"") +#20103=* +regexp_parse_errors(#20103,#20097,"expected hexadecimal digit") +#20104=@"loc,{#10000},5,12,5,12" +locations_default(#20104,#10000,5,12,5,12) +hasLocation(#20103,#20104) #20105=* -exprs(#20105,0,#20093,1,"exec") -hasLocation(#20105,#20041) -enclosing_stmt(#20105,#20075) -expr_containers(#20105,#20001) -literals("exec","exec",#20105) +regexp_parse_errors(#20105,#20097,"expected hexadecimal digit") +hasLocation(#20105,#20104) #20106=* -exprs(#20106,4,#20091,0,"""x""") -hasLocation(#20106,#20045) -enclosing_stmt(#20106,#20075) +exprs(#20106,0,#20094,1,"exec") +hasLocation(#20106,#20041) +enclosing_stmt(#20106,#20076) expr_containers(#20106,#20001) -literals("x","""x""",#20106) +literals("exec","exec",#20106) #20107=* -regexpterm(#20107,14,#20106,0,"x") -#20108=@"loc,{#10000},5,22,5,22" -locations_default(#20108,#10000,5,22,5,22) -hasLocation(#20107,#20108) -regexp_const_value(#20107,"x") -#20109=* -exprs(#20109,15,#20084,1,"r[0]") -#20110=@"loc,{#10000},5,30,5,33" -locations_default(#20110,#10000,5,30,5,33) -hasLocation(#20109,#20110) -enclosing_stmt(#20109,#20075) -expr_containers(#20109,#20001) -#20111=* -exprs(#20111,79,#20109,0,"r") -hasLocation(#20111,#20053) -enclosing_stmt(#20111,#20075) -expr_containers(#20111,#20001) -literals("r","r",#20111) -bind(#20111,#20071) +exprs(#20107,4,#20092,0,"""x""") +hasLocation(#20107,#20045) +enclosing_stmt(#20107,#20076) +expr_containers(#20107,#20001) +literals("x","""x""",#20107) +#20108=* +regexpterm(#20108,14,#20107,0,"x") +#20109=@"loc,{#10000},5,22,5,22" +locations_default(#20109,#10000,5,22,5,22) +hasLocation(#20108,#20109) +regexp_const_value(#20108,"x") +#20110=* +exprs(#20110,15,#20085,1,"r[0]") +#20111=@"loc,{#10000},5,30,5,33" +locations_default(#20111,#10000,5,30,5,33) +hasLocation(#20110,#20111) +enclosing_stmt(#20110,#20076) +expr_containers(#20110,#20001) #20112=* -exprs(#20112,3,#20109,1,"0") -hasLocation(#20112,#20057) -enclosing_stmt(#20112,#20075) +exprs(#20112,79,#20110,0,"r") +hasLocation(#20112,#20053) +enclosing_stmt(#20112,#20076) expr_containers(#20112,#20001) -literals("0","0",#20112) +literals("r","r",#20112) +bind(#20112,#20071) #20113=* -exprs(#20113,4,#20077,2,"""Section 1""") -hasLocation(#20113,#20063) -enclosing_stmt(#20113,#20075) +exprs(#20113,3,#20110,1,"0") +hasLocation(#20113,#20057) +enclosing_stmt(#20113,#20076) expr_containers(#20113,#20001) -literals("Section 1","""Section 1""",#20113) +literals("0","0",#20113) #20114=* -regexpterm(#20114,14,#20113,0,"Section 1") -#20115=@"loc,{#10000},6,4,6,12" -locations_default(#20115,#10000,6,4,6,12) -hasLocation(#20114,#20115) -regexp_const_value(#20114,"Section 1") -#20116=* -entry_cfg_node(#20116,#20001) -#20117=@"loc,{#10000},1,1,1,0" -locations_default(#20117,#10000,1,1,1,0) -hasLocation(#20116,#20117) -#20118=* -exit_cfg_node(#20118,#20001) -hasLocation(#20118,#20069) -successor(#20075,#20079) -successor(#20113,#20077) -successor(#20084,#20086) -successor(#20086,#20090) -successor(#20106,#20091) -successor(#20105,#20093) -successor(#20095,#20105) -successor(#20093,#20106) -successor(#20091,#20088) -successor(#20090,#20095) +exprs(#20114,4,#20078,2,"""Section 1""") +hasLocation(#20114,#20063) +enclosing_stmt(#20114,#20076) +expr_containers(#20114,#20001) +literals("Section 1","""Section 1""",#20114) +#20115=* +regexpterm(#20115,14,#20114,0,"Section 1") +#20116=@"loc,{#10000},6,4,6,12" +locations_default(#20116,#10000,6,4,6,12) +hasLocation(#20115,#20116) +regexp_const_value(#20115,"Section 1") +#20117=* +entry_cfg_node(#20117,#20001) +#20118=@"loc,{#10000},1,1,1,0" +locations_default(#20118,#10000,1,1,1,0) +hasLocation(#20117,#20118) #20119=* -guard_node(#20119,1,#20088) -hasLocation(#20119,#20089) -successor(#20119,#20111) +exit_cfg_node(#20119,#20001) +hasLocation(#20119,#20069) +successor(#20076,#20080) +successor(#20114,#20078) +successor(#20085,#20087) +successor(#20087,#20091) +successor(#20107,#20092) +successor(#20106,#20094) +successor(#20096,#20106) +successor(#20094,#20107) +successor(#20092,#20089) +successor(#20091,#20096) #20120=* -guard_node(#20120,0,#20088) -hasLocation(#20120,#20089) -successor(#20120,#20113) -successor(#20088,#20119) -successor(#20088,#20120) -successor(#20112,#20109) -successor(#20111,#20112) -successor(#20109,#20113) -successor(#20081,#20084) -successor(#20079,#20081) -successor(#20077,#20118) -successor(#20072,#20074) -successor(#20074,#20073) +guard_node(#20120,1,#20089) +hasLocation(#20120,#20090) +successor(#20120,#20112) +#20121=* +guard_node(#20121,0,#20089) +hasLocation(#20121,#20090) +successor(#20121,#20114) +successor(#20089,#20120) +successor(#20089,#20121) +successor(#20113,#20110) +successor(#20112,#20113) +successor(#20110,#20114) +successor(#20082,#20085) +successor(#20080,#20082) +successor(#20078,#20119) successor(#20073,#20075) -successor(#20116,#20072) +successor(#20075,#20074) +successor(#20074,#20076) +successor(#20117,#20073) numlines(#10000,7,6,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/regexp/output/trap/tst.js.trap b/javascript/extractor/tests/regexp/output/trap/tst.js.trap index 80ab7ab1ed7ebfe407fc1bb19d8246192d829702..6d8934e98097a33ddbf587a8991c8dfec7b6a6c9 100644 GIT binary patch delta 874 zcmZuv-D=c86gI*($t;LBY86@R6l7PTotY$?g#O?I^bv|N#_2ZDCM8LwvXu4>EIl`U z126Sj5XC3(zK_rw!58pMW>(l`b1{(fee<33eP^y#f3JT1(%XGaKVH)CIT{gJ=7&{Nl#^8H>fRdVF`}rD=2h8dMJfMlLFzn!&ntuNL^l%* zo7HlH>{ixCorqu_AM2Kh$2_`sGUY5#PR$(-cWrKQ2yE&iS=kdDQv2~U{G)#^FE3_H zF=tu`xVE2L0)E&7c;k@s?xsIySNO)R5UTgaUcP~12U)XQF5Qb3JP zSu9V%z>LGbGZ_2ERInt7z~eelyrP20XTC!C<}fRSTZcM@^=F!Ppt4!=-=!(XyCG?+ib)NX2e_V`}MFt{DrT_f0?g2O>4wuK)l5 delta 781 zcmZWnO>5Lp6g5Kg@un7c_Ct$JK_(^I_wJjSWEK@Sx^kz>LL6co2W%oqDz&B1pHO<& zcH5=?5v41^f8kOP#hct0W$fm`d*|G9@44q)E}t!b`na&PC8~O_uKJrGrHb(9!hI{k zz+Uf1Ve=$aAX+Hi*%H~o+tM)OaMuNGd~dM7rG#?+|Hro^nXa*qYZp&D_!IFzBkyMLtQK+0pEYe3>7M_Cd}$M@8@ zWzyRRXXP&4{O_lyCmmCf`ai><@T+srQuxbRf2`PpF$^$g7{C|?)l9Ixn{Jcj>q+&r zNGJ8I$lE~y@P&J433vihYW$*b*YKOY_=HMKCF5YG*H;~b4m%&vI!-$S1N`AiYk-00 zW8&J^VL(1tZ|Km!)=`Ei#ch}K0gdP018anzJxS+p&%bGak?9__Y)+fl&&7rn<2xbg zybyk50Fw?h>126bzE9Fu(D^j`E4Uep{_o0S^al+1z&`*0 diff --git a/javascript/extractor/tests/restprops/output/trap/tst.js.trap b/javascript/extractor/tests/restprops/output/trap/tst.js.trap index afa92ddc8b53..82a231458245 100644 --- a/javascript/extractor/tests/restprops/output/trap/tst.js.trap +++ b/javascript/extractor/tests/restprops/output/trap/tst.js.trap @@ -92,81 +92,83 @@ locations_default(#20032,#10000,1,1,2,0) hasLocation(#20001,#20032) #20033=@"var;{f};{#20000}" variables(#20033,"f",#20000) -#20034=* -stmts(#20034,18,#20001,0,"var f = ... => {};") -hasLocation(#20034,#20003) -stmt_containers(#20034,#20001) +#20034=@"var;{this};{#20000}" +variables(#20034,"this",#20000) #20035=* -exprs(#20035,64,#20034,0,"f = ({...p}) => {}") -#20036=@"loc,{#10000},1,5,1,22" -locations_default(#20036,#10000,1,5,1,22) -hasLocation(#20035,#20036) -enclosing_stmt(#20035,#20034) -expr_containers(#20035,#20001) -#20037=* -exprs(#20037,78,#20035,0,"f") -hasLocation(#20037,#20007) -enclosing_stmt(#20037,#20034) -expr_containers(#20037,#20001) -literals("f","f",#20037) -decl(#20037,#20033) +stmts(#20035,18,#20001,0,"var f = ... => {};") +hasLocation(#20035,#20003) +stmt_containers(#20035,#20001) +#20036=* +exprs(#20036,64,#20035,0,"f = ({...p}) => {}") +#20037=@"loc,{#10000},1,5,1,22" +locations_default(#20037,#10000,1,5,1,22) +hasLocation(#20036,#20037) +enclosing_stmt(#20036,#20035) +expr_containers(#20036,#20001) #20038=* -exprs(#20038,65,#20035,1,"({...p}) => {}") -#20039=@"loc,{#10000},1,9,1,22" -locations_default(#20039,#10000,1,9,1,22) -hasLocation(#20038,#20039) -enclosing_stmt(#20038,#20034) +exprs(#20038,78,#20036,0,"f") +hasLocation(#20038,#20007) +enclosing_stmt(#20038,#20035) expr_containers(#20038,#20001) -#20040=* -scopes(#20040,1) -scopenodes(#20038,#20040) -scopenesting(#20040,#20000) -#20041=@"var;{p};{#20040}" -variables(#20041,"p",#20040) -#20042=* -exprs(#20042,68,#20038,0,"{...p}") -#20043=@"loc,{#10000},1,10,1,15" -locations_default(#20043,#10000,1,10,1,15) -hasLocation(#20042,#20043) -expr_containers(#20042,#20038) -#20044=* -exprs(#20044,78,#20042,-1,"p") -hasLocation(#20044,#20017) -expr_containers(#20044,#20038) -literals("p","p",#20044) -decl(#20044,#20041) +literals("f","f",#20038) +decl(#20038,#20033) +#20039=* +exprs(#20039,65,#20036,1,"({...p}) => {}") +#20040=@"loc,{#10000},1,9,1,22" +locations_default(#20040,#10000,1,9,1,22) +hasLocation(#20039,#20040) +enclosing_stmt(#20039,#20035) +expr_containers(#20039,#20001) +#20041=* +scopes(#20041,1) +scopenodes(#20039,#20041) +scopenesting(#20041,#20000) +#20042=@"var;{p};{#20041}" +variables(#20042,"p",#20041) +#20043=* +exprs(#20043,68,#20039,0,"{...p}") +#20044=@"loc,{#10000},1,10,1,15" +locations_default(#20044,#10000,1,10,1,15) +hasLocation(#20043,#20044) +expr_containers(#20043,#20039) #20045=* -stmts(#20045,1,#20038,-2,"{}") -#20046=@"loc,{#10000},1,21,1,22" -locations_default(#20046,#10000,1,21,1,22) -hasLocation(#20045,#20046) -stmt_containers(#20045,#20038) -#20047=* -entry_cfg_node(#20047,#20001) -#20048=@"loc,{#10000},1,1,1,0" -locations_default(#20048,#10000,1,1,1,0) -hasLocation(#20047,#20048) -#20049=* -exit_cfg_node(#20049,#20001) -hasLocation(#20049,#20031) -successor(#20034,#20037) -successor(#20038,#20035) +exprs(#20045,78,#20043,-1,"p") +hasLocation(#20045,#20017) +expr_containers(#20045,#20039) +literals("p","p",#20045) +decl(#20045,#20042) +#20046=* +stmts(#20046,1,#20039,-2,"{}") +#20047=@"loc,{#10000},1,21,1,22" +locations_default(#20047,#10000,1,21,1,22) +hasLocation(#20046,#20047) +stmt_containers(#20046,#20039) +#20048=* +entry_cfg_node(#20048,#20001) +#20049=@"loc,{#10000},1,1,1,0" +locations_default(#20049,#10000,1,1,1,0) +hasLocation(#20048,#20049) #20050=* -entry_cfg_node(#20050,#20038) -#20051=@"loc,{#10000},1,9,1,8" -locations_default(#20051,#10000,1,9,1,8) -hasLocation(#20050,#20051) -#20052=* -exit_cfg_node(#20052,#20038) -#20053=@"loc,{#10000},1,23,1,22" -locations_default(#20053,#10000,1,23,1,22) -hasLocation(#20052,#20053) -successor(#20045,#20052) -successor(#20042,#20044) -successor(#20044,#20045) -successor(#20050,#20042) -successor(#20037,#20038) -successor(#20035,#20049) -successor(#20047,#20034) +exit_cfg_node(#20050,#20001) +hasLocation(#20050,#20031) +successor(#20035,#20038) +successor(#20039,#20036) +#20051=* +entry_cfg_node(#20051,#20039) +#20052=@"loc,{#10000},1,9,1,8" +locations_default(#20052,#10000,1,9,1,8) +hasLocation(#20051,#20052) +#20053=* +exit_cfg_node(#20053,#20039) +#20054=@"loc,{#10000},1,23,1,22" +locations_default(#20054,#10000,1,23,1,22) +hasLocation(#20053,#20054) +successor(#20046,#20053) +successor(#20043,#20045) +successor(#20045,#20046) +successor(#20051,#20043) +successor(#20038,#20039) +successor(#20036,#20050) +successor(#20048,#20035) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/shebang/output/trap/tst.js.trap b/javascript/extractor/tests/shebang/output/trap/tst.js.trap index 59f7c049bfe1..2844e91d4c53 100644 --- a/javascript/extractor/tests/shebang/output/trap/tst.js.trap +++ b/javascript/extractor/tests/shebang/output/trap/tst.js.trap @@ -72,57 +72,59 @@ variables(#20025,"__dirname",#20020) #20026=@"var;{arguments};{#20020}" variables(#20026,"arguments",#20020) is_module(#20001) -#20027=* -stmts(#20027,2,#20001,0,"alert(""Hi!"");") -hasLocation(#20027,#20003) -stmt_containers(#20027,#20001) +#20027=@"var;{this};{#20020}" +variables(#20027,"this",#20020) #20028=* -exprs(#20028,13,#20027,0,"alert(""Hi!"")") -#20029=@"loc,{#10000},2,1,2,12" -locations_default(#20029,#10000,2,1,2,12) -hasLocation(#20028,#20029) -enclosing_stmt(#20028,#20027) -expr_containers(#20028,#20001) -#20030=* -exprs(#20030,79,#20028,-1,"alert") -hasLocation(#20030,#20005) -enclosing_stmt(#20030,#20027) -expr_containers(#20030,#20001) -literals("alert","alert",#20030) -#20031=@"var;{alert};{#20000}" -variables(#20031,"alert",#20000) -bind(#20030,#20031) -#20032=* -exprs(#20032,4,#20028,0,"""Hi!""") -hasLocation(#20032,#20009) -enclosing_stmt(#20032,#20027) -expr_containers(#20032,#20001) -literals("Hi!","""Hi!""",#20032) +stmts(#20028,2,#20001,0,"alert(""Hi!"");") +hasLocation(#20028,#20003) +stmt_containers(#20028,#20001) +#20029=* +exprs(#20029,13,#20028,0,"alert(""Hi!"")") +#20030=@"loc,{#10000},2,1,2,12" +locations_default(#20030,#10000,2,1,2,12) +hasLocation(#20029,#20030) +enclosing_stmt(#20029,#20028) +expr_containers(#20029,#20001) +#20031=* +exprs(#20031,79,#20029,-1,"alert") +hasLocation(#20031,#20005) +enclosing_stmt(#20031,#20028) +expr_containers(#20031,#20001) +literals("alert","alert",#20031) +#20032=@"var;{alert};{#20000}" +variables(#20032,"alert",#20000) +bind(#20031,#20032) #20033=* -regexpterm(#20033,14,#20032,0,"Hi!") -#20034=@"loc,{#10000},2,8,2,10" -locations_default(#20034,#10000,2,8,2,10) -hasLocation(#20033,#20034) -regexp_const_value(#20033,"Hi!") -#20035=* -entry_cfg_node(#20035,#20001) -#20036=@"loc,{#10000},2,1,2,0" -locations_default(#20036,#10000,2,1,2,0) -hasLocation(#20035,#20036) -#20037=* -exit_cfg_node(#20037,#20001) -hasLocation(#20037,#20015) -successor(#20027,#20030) -successor(#20032,#20028) -successor(#20030,#20032) -successor(#20028,#20037) -successor(#20035,#20027) -is_nodejs(#20001) +exprs(#20033,4,#20029,0,"""Hi!""") +hasLocation(#20033,#20009) +enclosing_stmt(#20033,#20028) +expr_containers(#20033,#20001) +literals("Hi!","""Hi!""",#20033) +#20034=* +regexpterm(#20034,14,#20033,0,"Hi!") +#20035=@"loc,{#10000},2,8,2,10" +locations_default(#20035,#10000,2,8,2,10) +hasLocation(#20034,#20035) +regexp_const_value(#20034,"Hi!") +#20036=* +entry_cfg_node(#20036,#20001) +#20037=@"loc,{#10000},2,1,2,0" +locations_default(#20037,#10000,2,1,2,0) +hasLocation(#20036,#20037) #20038=* -lines(#20038,#20001,"#!/usr/bin/node"," +exit_cfg_node(#20038,#20001) +hasLocation(#20038,#20015) +successor(#20028,#20031) +successor(#20033,#20029) +successor(#20031,#20033) +successor(#20029,#20038) +successor(#20036,#20028) +is_nodejs(#20001) +#20039=* +lines(#20039,#20001,"#!/usr/bin/node"," ") -#20039=@"loc,{#10000},1,1,1,15" -locations_default(#20039,#10000,1,1,1,15) -hasLocation(#20038,#20039) +#20040=@"loc,{#10000},1,1,1,15" +locations_default(#20040,#10000,1,1,1,15) +hasLocation(#20039,#20040) numlines(#10000,2,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/shebang/output/trap/typescript-with-shebang.ts.trap b/javascript/extractor/tests/shebang/output/trap/typescript-with-shebang.ts.trap index 82ba041bb8b3..ab56529a5c72 100644 --- a/javascript/extractor/tests/shebang/output/trap/typescript-with-shebang.ts.trap +++ b/javascript/extractor/tests/shebang/output/trap/typescript-with-shebang.ts.trap @@ -84,46 +84,48 @@ locations_default(#20027,#10000,1,1,5,0) hasLocation(#20001,#20027) #20028=@"local_type_name;{Foo};{#20000}" local_type_names(#20028,"Foo",#20000) -#20029=* -stmts(#20029,34,#20001,0,"#!/usr/ ... mber;\n}") -#20030=@"loc,{#10000},1,1,4,1" -locations_default(#20030,#10000,1,1,4,1) -hasLocation(#20029,#20030) -stmt_containers(#20029,#20001) -#20031=* -typeexprs(#20031,1,#20029,0,"Foo") -hasLocation(#20031,#20013) -enclosing_stmt(#20031,#20029) -expr_containers(#20031,#20001) -literals("Foo","Foo",#20031) -typedecl(#20031,#20028) +#20029=@"var;{this};{#20000}" +variables(#20029,"this",#20000) +#20030=* +stmts(#20030,34,#20001,0,"#!/usr/ ... mber;\n}") +#20031=@"loc,{#10000},1,1,4,1" +locations_default(#20031,#10000,1,1,4,1) +hasLocation(#20030,#20031) +stmt_containers(#20030,#20001) #20032=* -properties(#20032,#20029,2,8,"x: number;") -#20033=@"loc,{#10000},3,3,3,12" -locations_default(#20033,#10000,3,3,3,12) -hasLocation(#20032,#20033) -#20034=* -exprs(#20034,0,#20032,0,"x") -hasLocation(#20034,#20017) -enclosing_stmt(#20034,#20029) -expr_containers(#20034,#20001) -literals("x","x",#20034) -is_abstract_member(#20032) +typeexprs(#20032,1,#20030,0,"Foo") +hasLocation(#20032,#20013) +enclosing_stmt(#20032,#20030) +expr_containers(#20032,#20001) +literals("Foo","Foo",#20032) +typedecl(#20032,#20028) +#20033=* +properties(#20033,#20030,2,8,"x: number;") +#20034=@"loc,{#10000},3,3,3,12" +locations_default(#20034,#10000,3,3,3,12) +hasLocation(#20033,#20034) #20035=* -typeexprs(#20035,2,#20032,2,"number") -hasLocation(#20035,#20021) -enclosing_stmt(#20035,#20029) +exprs(#20035,0,#20033,0,"x") +hasLocation(#20035,#20017) +enclosing_stmt(#20035,#20030) expr_containers(#20035,#20001) -literals("number","number",#20035) +literals("x","x",#20035) +is_abstract_member(#20033) #20036=* -entry_cfg_node(#20036,#20001) -#20037=@"loc,{#10000},1,1,1,0" -locations_default(#20037,#10000,1,1,1,0) -hasLocation(#20036,#20037) -#20038=* -exit_cfg_node(#20038,#20001) -hasLocation(#20038,#20026) -successor(#20029,#20038) -successor(#20036,#20029) +typeexprs(#20036,2,#20033,2,"number") +hasLocation(#20036,#20021) +enclosing_stmt(#20036,#20030) +expr_containers(#20036,#20001) +literals("number","number",#20036) +#20037=* +entry_cfg_node(#20037,#20001) +#20038=@"loc,{#10000},1,1,1,0" +locations_default(#20038,#10000,1,1,1,0) +hasLocation(#20037,#20038) +#20039=* +exit_cfg_node(#20039,#20001) +hasLocation(#20039,#20026) +successor(#20030,#20039) +successor(#20037,#20030) numlines(#10000,4,3,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/shebang/output/trap/typescript.ts.trap b/javascript/extractor/tests/shebang/output/trap/typescript.ts.trap index ea81b8525ee9..79f0870f517e 100644 --- a/javascript/extractor/tests/shebang/output/trap/typescript.ts.trap +++ b/javascript/extractor/tests/shebang/output/trap/typescript.ts.trap @@ -78,46 +78,48 @@ locations_default(#20025,#10000,1,1,4,0) hasLocation(#20001,#20025) #20026=@"local_type_name;{Foo};{#20000}" local_type_names(#20026,"Foo",#20000) -#20027=* -stmts(#20027,34,#20001,0,"interfa ... mber;\n}") -#20028=@"loc,{#10000},1,1,3,1" -locations_default(#20028,#10000,1,1,3,1) -hasLocation(#20027,#20028) -stmt_containers(#20027,#20001) -#20029=* -typeexprs(#20029,1,#20027,0,"Foo") -hasLocation(#20029,#20011) -enclosing_stmt(#20029,#20027) -expr_containers(#20029,#20001) -literals("Foo","Foo",#20029) -typedecl(#20029,#20026) +#20027=@"var;{this};{#20000}" +variables(#20027,"this",#20000) +#20028=* +stmts(#20028,34,#20001,0,"interfa ... mber;\n}") +#20029=@"loc,{#10000},1,1,3,1" +locations_default(#20029,#10000,1,1,3,1) +hasLocation(#20028,#20029) +stmt_containers(#20028,#20001) #20030=* -properties(#20030,#20027,2,8,"x: number;") -#20031=@"loc,{#10000},2,3,2,12" -locations_default(#20031,#10000,2,3,2,12) -hasLocation(#20030,#20031) -#20032=* -exprs(#20032,0,#20030,0,"x") -hasLocation(#20032,#20015) -enclosing_stmt(#20032,#20027) -expr_containers(#20032,#20001) -literals("x","x",#20032) -is_abstract_member(#20030) +typeexprs(#20030,1,#20028,0,"Foo") +hasLocation(#20030,#20011) +enclosing_stmt(#20030,#20028) +expr_containers(#20030,#20001) +literals("Foo","Foo",#20030) +typedecl(#20030,#20026) +#20031=* +properties(#20031,#20028,2,8,"x: number;") +#20032=@"loc,{#10000},2,3,2,12" +locations_default(#20032,#10000,2,3,2,12) +hasLocation(#20031,#20032) #20033=* -typeexprs(#20033,2,#20030,2,"number") -hasLocation(#20033,#20019) -enclosing_stmt(#20033,#20027) +exprs(#20033,0,#20031,0,"x") +hasLocation(#20033,#20015) +enclosing_stmt(#20033,#20028) expr_containers(#20033,#20001) -literals("number","number",#20033) +literals("x","x",#20033) +is_abstract_member(#20031) #20034=* -entry_cfg_node(#20034,#20001) -#20035=@"loc,{#10000},1,1,1,0" -locations_default(#20035,#10000,1,1,1,0) -hasLocation(#20034,#20035) -#20036=* -exit_cfg_node(#20036,#20001) -hasLocation(#20036,#20024) -successor(#20027,#20036) -successor(#20034,#20027) +typeexprs(#20034,2,#20031,2,"number") +hasLocation(#20034,#20019) +enclosing_stmt(#20034,#20028) +expr_containers(#20034,#20001) +literals("number","number",#20034) +#20035=* +entry_cfg_node(#20035,#20001) +#20036=@"loc,{#10000},1,1,1,0" +locations_default(#20036,#10000,1,1,1,0) +hasLocation(#20035,#20036) +#20037=* +exit_cfg_node(#20037,#20001) +hasLocation(#20037,#20024) +successor(#20028,#20037) +successor(#20035,#20028) numlines(#10000,3,3,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/stmts/output/trap/conditionals.js.trap b/javascript/extractor/tests/stmts/output/trap/conditionals.js.trap index 9e96f57790ed..7418ee19832f 100644 --- a/javascript/extractor/tests/stmts/output/trap/conditionals.js.trap +++ b/javascript/extractor/tests/stmts/output/trap/conditionals.js.trap @@ -230,127 +230,129 @@ toplevels(#20001,0) #20082=@"loc,{#10000},1,1,12,1" locations_default(#20082,#10000,1,1,12,1) hasLocation(#20001,#20082) -#20083=* -stmts(#20083,3,#20001,0,"if (true)\n ;") -#20084=@"loc,{#10000},1,1,2,5" -locations_default(#20084,#10000,1,1,2,5) -hasLocation(#20083,#20084) -stmt_containers(#20083,#20001) -#20085=* -exprs(#20085,2,#20083,0,"true") -hasLocation(#20085,#20031) -enclosing_stmt(#20085,#20083) -expr_containers(#20085,#20001) -literals("true","true",#20085) +#20083=@"var;{this};{#20000}" +variables(#20083,"this",#20000) +#20084=* +stmts(#20084,3,#20001,0,"if (true)\n ;") +#20085=@"loc,{#10000},1,1,2,5" +locations_default(#20085,#10000,1,1,2,5) +hasLocation(#20084,#20085) +stmt_containers(#20084,#20001) #20086=* -stmts(#20086,0,#20083,1,";") -hasLocation(#20086,#20035) -stmt_containers(#20086,#20001) +exprs(#20086,2,#20084,0,"true") +hasLocation(#20086,#20031) +enclosing_stmt(#20086,#20084) +expr_containers(#20086,#20001) +literals("true","true",#20086) #20087=* -stmts(#20087,3,#20001,1,"if (b)\n ... e\n ;") -#20088=@"loc,{#10000},3,1,6,5" -locations_default(#20088,#10000,3,1,6,5) -hasLocation(#20087,#20088) +stmts(#20087,0,#20084,1,";") +hasLocation(#20087,#20035) stmt_containers(#20087,#20001) -#20089=* -exprs(#20089,79,#20087,0,"b") -hasLocation(#20089,#20041) -enclosing_stmt(#20089,#20087) -expr_containers(#20089,#20001) -literals("b","b",#20089) -#20090=@"var;{b};{#20000}" -variables(#20090,"b",#20000) -bind(#20089,#20090) -#20091=* -stmts(#20091,0,#20087,1,";") -hasLocation(#20091,#20045) -stmt_containers(#20091,#20001) +#20088=* +stmts(#20088,3,#20001,1,"if (b)\n ... e\n ;") +#20089=@"loc,{#10000},3,1,6,5" +locations_default(#20089,#10000,3,1,6,5) +hasLocation(#20088,#20089) +stmt_containers(#20088,#20001) +#20090=* +exprs(#20090,79,#20088,0,"b") +hasLocation(#20090,#20041) +enclosing_stmt(#20090,#20088) +expr_containers(#20090,#20001) +literals("b","b",#20090) +#20091=@"var;{b};{#20000}" +variables(#20091,"b",#20000) +bind(#20090,#20091) #20092=* -stmts(#20092,0,#20087,2,";") -hasLocation(#20092,#20048) +stmts(#20092,0,#20088,1,";") +hasLocation(#20092,#20045) stmt_containers(#20092,#20001) #20093=* -stmts(#20093,8,#20001,2,"switch ... ault:\n}") -#20094=@"loc,{#10000},7,1,12,1" -locations_default(#20094,#10000,7,1,12,1) -hasLocation(#20093,#20094) +stmts(#20093,0,#20088,2,";") +hasLocation(#20093,#20048) stmt_containers(#20093,#20001) -#20095=* -exprs(#20095,79,#20093,-1,"b") -hasLocation(#20095,#20054) -enclosing_stmt(#20095,#20093) -expr_containers(#20095,#20001) -literals("b","b",#20095) -bind(#20095,#20090) +#20094=* +stmts(#20094,8,#20001,2,"switch ... ault:\n}") +#20095=@"loc,{#10000},7,1,12,1" +locations_default(#20095,#10000,7,1,12,1) +hasLocation(#20094,#20095) +stmt_containers(#20094,#20001) #20096=* -stmts(#20096,19,#20093,0,"case 23:") -hasLocation(#20096,#20017) -stmt_containers(#20096,#20001) +exprs(#20096,79,#20094,-1,"b") +hasLocation(#20096,#20054) +enclosing_stmt(#20096,#20094) +expr_containers(#20096,#20001) +literals("b","b",#20096) +bind(#20096,#20091) #20097=* -exprs(#20097,3,#20096,-1,"23") -hasLocation(#20097,#20062) -enclosing_stmt(#20097,#20096) -expr_containers(#20097,#20001) -literals("23","23",#20097) +stmts(#20097,19,#20094,0,"case 23:") +hasLocation(#20097,#20017) +stmt_containers(#20097,#20001) #20098=* -stmts(#20098,19,#20093,1,"case c:\n break;") -#20099=@"loc,{#10000},9,1,10,10" -locations_default(#20099,#10000,9,1,10,10) -hasLocation(#20098,#20099) -stmt_containers(#20098,#20001) -#20100=* -exprs(#20100,79,#20098,-1,"c") -hasLocation(#20100,#20068) -enclosing_stmt(#20100,#20098) -expr_containers(#20100,#20001) -literals("c","c",#20100) -#20101=@"var;{c};{#20000}" -variables(#20101,"c",#20000) -bind(#20100,#20101) -#20102=* -stmts(#20102,5,#20098,0,"break;") -#20103=@"loc,{#10000},10,5,10,10" -locations_default(#20103,#10000,10,5,10,10) -hasLocation(#20102,#20103) -stmt_containers(#20102,#20001) -jump_targets(#20102,#20093) -#20104=* -stmts(#20104,19,#20093,2,"default:") -hasLocation(#20104,#20023) -stmt_containers(#20104,#20001) +exprs(#20098,3,#20097,-1,"23") +hasLocation(#20098,#20062) +enclosing_stmt(#20098,#20097) +expr_containers(#20098,#20001) +literals("23","23",#20098) +#20099=* +stmts(#20099,19,#20094,1,"case c:\n break;") +#20100=@"loc,{#10000},9,1,10,10" +locations_default(#20100,#10000,9,1,10,10) +hasLocation(#20099,#20100) +stmt_containers(#20099,#20001) +#20101=* +exprs(#20101,79,#20099,-1,"c") +hasLocation(#20101,#20068) +enclosing_stmt(#20101,#20099) +expr_containers(#20101,#20001) +literals("c","c",#20101) +#20102=@"var;{c};{#20000}" +variables(#20102,"c",#20000) +bind(#20101,#20102) +#20103=* +stmts(#20103,5,#20099,0,"break;") +#20104=@"loc,{#10000},10,5,10,10" +locations_default(#20104,#10000,10,5,10,10) +hasLocation(#20103,#20104) +stmt_containers(#20103,#20001) +jump_targets(#20103,#20094) #20105=* -entry_cfg_node(#20105,#20001) -#20106=@"loc,{#10000},1,1,1,0" -locations_default(#20106,#10000,1,1,1,0) -hasLocation(#20105,#20106) -#20107=* -exit_cfg_node(#20107,#20001) -hasLocation(#20107,#20081) -successor(#20093,#20095) -successor(#20095,#20096) -successor(#20104,#20107) -successor(#20098,#20100) -successor(#20100,#20102) -successor(#20100,#20104) -successor(#20102,#20107) +stmts(#20105,19,#20094,2,"default:") +hasLocation(#20105,#20023) +stmt_containers(#20105,#20001) +#20106=* +entry_cfg_node(#20106,#20001) +#20107=@"loc,{#10000},1,1,1,0" +locations_default(#20107,#10000,1,1,1,0) +hasLocation(#20106,#20107) +#20108=* +exit_cfg_node(#20108,#20001) +hasLocation(#20108,#20081) +successor(#20094,#20096) successor(#20096,#20097) +successor(#20105,#20108) +successor(#20099,#20101) +successor(#20101,#20103) +successor(#20101,#20105) +successor(#20103,#20108) successor(#20097,#20098) -successor(#20087,#20089) -#20108=* -guard_node(#20108,1,#20089) -hasLocation(#20108,#20041) -successor(#20108,#20091) +successor(#20098,#20099) +successor(#20088,#20090) #20109=* -guard_node(#20109,0,#20089) +guard_node(#20109,1,#20090) hasLocation(#20109,#20041) successor(#20109,#20092) -successor(#20089,#20108) -successor(#20089,#20109) -successor(#20091,#20093) -successor(#20092,#20093) -successor(#20083,#20085) -successor(#20085,#20086) +#20110=* +guard_node(#20110,0,#20090) +hasLocation(#20110,#20041) +successor(#20110,#20093) +successor(#20090,#20109) +successor(#20090,#20110) +successor(#20092,#20094) +successor(#20093,#20094) +successor(#20084,#20086) successor(#20086,#20087) -successor(#20105,#20083) +successor(#20087,#20088) +successor(#20106,#20084) numlines(#10000,12,12,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/stmts/output/trap/forvardefault.js.trap b/javascript/extractor/tests/stmts/output/trap/forvardefault.js.trap index 1e676b70d98b..31f00163803c 100644 --- a/javascript/extractor/tests/stmts/output/trap/forvardefault.js.trap +++ b/javascript/extractor/tests/stmts/output/trap/forvardefault.js.trap @@ -156,130 +156,132 @@ toplevels(#20001,0) #20058=@"loc,{#10000},1,1,3,21" locations_default(#20058,#10000,1,1,3,21) hasLocation(#20001,#20058) -#20059=* -stmts(#20059,15,#20001,0,"for (a ... b) f();") -hasLocation(#20059,#20003) -stmt_containers(#20059,#20001) +#20059=@"var;{this};{#20000}" +variables(#20059,"this",#20000) #20060=* -exprs(#20060,79,#20059,1,"b") -hasLocation(#20060,#20021) -enclosing_stmt(#20060,#20059) -expr_containers(#20060,#20001) -literals("b","b",#20060) -#20061=@"var;{b};{#20000}" -variables(#20061,"b",#20000) -bind(#20060,#20061) -#20062=* -exprs(#20062,79,#20059,0,"a") -hasLocation(#20062,#20013) -enclosing_stmt(#20062,#20059) -expr_containers(#20062,#20001) -literals("a","a",#20062) -#20063=@"var;{a};{#20000}" -variables(#20063,"a",#20000) -bind(#20062,#20063) -#20064=* -exprs(#20064,3,#20059,-1,"1") -hasLocation(#20064,#20017) -enclosing_stmt(#20064,#20059) -expr_containers(#20064,#20001) -literals("1","1",#20064) +stmts(#20060,15,#20001,0,"for (a ... b) f();") +hasLocation(#20060,#20003) +stmt_containers(#20060,#20001) +#20061=* +exprs(#20061,79,#20060,1,"b") +hasLocation(#20061,#20021) +enclosing_stmt(#20061,#20060) +expr_containers(#20061,#20001) +literals("b","b",#20061) +#20062=@"var;{b};{#20000}" +variables(#20062,"b",#20000) +bind(#20061,#20062) +#20063=* +exprs(#20063,79,#20060,0,"a") +hasLocation(#20063,#20013) +enclosing_stmt(#20063,#20060) +expr_containers(#20063,#20001) +literals("a","a",#20063) +#20064=@"var;{a};{#20000}" +variables(#20064,"a",#20000) +bind(#20063,#20064) #20065=* -stmts(#20065,2,#20059,2,"f();") -#20066=@"loc,{#10000},1,18,1,21" -locations_default(#20066,#10000,1,18,1,21) -hasLocation(#20065,#20066) -stmt_containers(#20065,#20001) -#20067=* -exprs(#20067,13,#20065,0,"f()") -#20068=@"loc,{#10000},1,18,1,20" -locations_default(#20068,#10000,1,18,1,20) -hasLocation(#20067,#20068) -enclosing_stmt(#20067,#20065) -expr_containers(#20067,#20001) -#20069=* -exprs(#20069,79,#20067,-1,"f") -hasLocation(#20069,#20025) -enclosing_stmt(#20069,#20065) -expr_containers(#20069,#20001) -literals("f","f",#20069) -#20070=@"var;{f};{#20000}" -variables(#20070,"f",#20000) -bind(#20069,#20070) -#20071=* -stmts(#20071,21,#20001,1,"for (c ... d) g();") -hasLocation(#20071,#20007) -stmt_containers(#20071,#20001) +exprs(#20065,3,#20060,-1,"1") +hasLocation(#20065,#20017) +enclosing_stmt(#20065,#20060) +expr_containers(#20065,#20001) +literals("1","1",#20065) +#20066=* +stmts(#20066,2,#20060,2,"f();") +#20067=@"loc,{#10000},1,18,1,21" +locations_default(#20067,#10000,1,18,1,21) +hasLocation(#20066,#20067) +stmt_containers(#20066,#20001) +#20068=* +exprs(#20068,13,#20066,0,"f()") +#20069=@"loc,{#10000},1,18,1,20" +locations_default(#20069,#10000,1,18,1,20) +hasLocation(#20068,#20069) +enclosing_stmt(#20068,#20066) +expr_containers(#20068,#20001) +#20070=* +exprs(#20070,79,#20068,-1,"f") +hasLocation(#20070,#20025) +enclosing_stmt(#20070,#20066) +expr_containers(#20070,#20001) +literals("f","f",#20070) +#20071=@"var;{f};{#20000}" +variables(#20071,"f",#20000) +bind(#20070,#20071) #20072=* -exprs(#20072,79,#20071,1,"d") -hasLocation(#20072,#20045) -enclosing_stmt(#20072,#20071) -expr_containers(#20072,#20001) -literals("d","d",#20072) -#20073=@"var;{d};{#20000}" -variables(#20073,"d",#20000) -bind(#20072,#20073) -#20074=* -exprs(#20074,79,#20071,0,"c") -hasLocation(#20074,#20037) -enclosing_stmt(#20074,#20071) -expr_containers(#20074,#20001) -literals("c","c",#20074) -#20075=@"var;{c};{#20000}" -variables(#20075,"c",#20000) -bind(#20074,#20075) -#20076=* -exprs(#20076,3,#20071,-1,"0") -hasLocation(#20076,#20041) -enclosing_stmt(#20076,#20071) -expr_containers(#20076,#20001) -literals("0","0",#20076) +stmts(#20072,21,#20001,1,"for (c ... d) g();") +hasLocation(#20072,#20007) +stmt_containers(#20072,#20001) +#20073=* +exprs(#20073,79,#20072,1,"d") +hasLocation(#20073,#20045) +enclosing_stmt(#20073,#20072) +expr_containers(#20073,#20001) +literals("d","d",#20073) +#20074=@"var;{d};{#20000}" +variables(#20074,"d",#20000) +bind(#20073,#20074) +#20075=* +exprs(#20075,79,#20072,0,"c") +hasLocation(#20075,#20037) +enclosing_stmt(#20075,#20072) +expr_containers(#20075,#20001) +literals("c","c",#20075) +#20076=@"var;{c};{#20000}" +variables(#20076,"c",#20000) +bind(#20075,#20076) #20077=* -stmts(#20077,2,#20071,2,"g();") -#20078=@"loc,{#10000},3,18,3,21" -locations_default(#20078,#10000,3,18,3,21) -hasLocation(#20077,#20078) -stmt_containers(#20077,#20001) -#20079=* -exprs(#20079,13,#20077,0,"g()") -#20080=@"loc,{#10000},3,18,3,20" -locations_default(#20080,#10000,3,18,3,20) -hasLocation(#20079,#20080) -enclosing_stmt(#20079,#20077) -expr_containers(#20079,#20001) -#20081=* -exprs(#20081,79,#20079,-1,"g") -hasLocation(#20081,#20049) -enclosing_stmt(#20081,#20077) -expr_containers(#20081,#20001) -literals("g","g",#20081) -#20082=@"var;{g};{#20000}" -variables(#20082,"g",#20000) -bind(#20081,#20082) -#20083=* -entry_cfg_node(#20083,#20001) -#20084=@"loc,{#10000},1,1,1,0" -locations_default(#20084,#10000,1,1,1,0) -hasLocation(#20083,#20084) -#20085=* -exit_cfg_node(#20085,#20001) -hasLocation(#20085,#20057) -successor(#20072,#20071) -successor(#20071,#20074) -successor(#20071,#20085) -successor(#20077,#20081) -successor(#20081,#20079) -successor(#20079,#20071) -successor(#20076,#20077) -successor(#20074,#20076) -successor(#20060,#20059) -successor(#20059,#20062) -successor(#20059,#20072) -successor(#20065,#20069) -successor(#20069,#20067) -successor(#20067,#20059) -successor(#20064,#20065) -successor(#20062,#20064) -successor(#20083,#20060) +exprs(#20077,3,#20072,-1,"0") +hasLocation(#20077,#20041) +enclosing_stmt(#20077,#20072) +expr_containers(#20077,#20001) +literals("0","0",#20077) +#20078=* +stmts(#20078,2,#20072,2,"g();") +#20079=@"loc,{#10000},3,18,3,21" +locations_default(#20079,#10000,3,18,3,21) +hasLocation(#20078,#20079) +stmt_containers(#20078,#20001) +#20080=* +exprs(#20080,13,#20078,0,"g()") +#20081=@"loc,{#10000},3,18,3,20" +locations_default(#20081,#10000,3,18,3,20) +hasLocation(#20080,#20081) +enclosing_stmt(#20080,#20078) +expr_containers(#20080,#20001) +#20082=* +exprs(#20082,79,#20080,-1,"g") +hasLocation(#20082,#20049) +enclosing_stmt(#20082,#20078) +expr_containers(#20082,#20001) +literals("g","g",#20082) +#20083=@"var;{g};{#20000}" +variables(#20083,"g",#20000) +bind(#20082,#20083) +#20084=* +entry_cfg_node(#20084,#20001) +#20085=@"loc,{#10000},1,1,1,0" +locations_default(#20085,#10000,1,1,1,0) +hasLocation(#20084,#20085) +#20086=* +exit_cfg_node(#20086,#20001) +hasLocation(#20086,#20057) +successor(#20073,#20072) +successor(#20072,#20075) +successor(#20072,#20086) +successor(#20078,#20082) +successor(#20082,#20080) +successor(#20080,#20072) +successor(#20077,#20078) +successor(#20075,#20077) +successor(#20061,#20060) +successor(#20060,#20063) +successor(#20060,#20073) +successor(#20066,#20070) +successor(#20070,#20068) +successor(#20068,#20060) +successor(#20065,#20066) +successor(#20063,#20065) +successor(#20084,#20061) numlines(#10000,3,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/stmts/output/trap/functions.js.trap b/javascript/extractor/tests/stmts/output/trap/functions.js.trap index f89ba7e8cc78..8eee0d83d508 100644 --- a/javascript/extractor/tests/stmts/output/trap/functions.js.trap +++ b/javascript/extractor/tests/stmts/output/trap/functions.js.trap @@ -309,358 +309,370 @@ hasLocation(#20001,#20112) variables(#20113,"g",#20000) #20114=@"var;{h};{#20000}" variables(#20114,"h",#20000) -#20115=* -stmts(#20115,17,#20001,0,"functio ... x+y;\n}") -#20116=@"loc,{#10000},1,1,3,1" -locations_default(#20116,#10000,1,1,3,1) -hasLocation(#20115,#20116) -stmt_containers(#20115,#20001) -#20117=* -exprs(#20117,78,#20115,-1,"g") -hasLocation(#20117,#20031) -expr_containers(#20117,#20115) -literals("g","g",#20117) -decl(#20117,#20113) +#20115=@"var;{this};{#20000}" +variables(#20115,"this",#20000) +#20116=* +stmts(#20116,17,#20001,0,"functio ... x+y;\n}") +#20117=@"loc,{#10000},1,1,3,1" +locations_default(#20117,#10000,1,1,3,1) +hasLocation(#20116,#20117) +stmt_containers(#20116,#20001) #20118=* -scopes(#20118,1) -scopenodes(#20115,#20118) -scopenesting(#20118,#20000) -#20119=@"var;{x};{#20118}" -variables(#20119,"x",#20118) -#20120=* -exprs(#20120,78,#20115,0,"x") -hasLocation(#20120,#20035) -expr_containers(#20120,#20115) -literals("x","x",#20120) -decl(#20120,#20119) -#20121=@"var;{y};{#20118}" -variables(#20121,"y",#20118) +exprs(#20118,78,#20116,-1,"g") +hasLocation(#20118,#20031) +expr_containers(#20118,#20116) +literals("g","g",#20118) +decl(#20118,#20113) +#20119=* +scopes(#20119,1) +scopenodes(#20116,#20119) +scopenesting(#20119,#20000) +#20120=@"var;{this};{#20119}" +variables(#20120,"this",#20119) +#20121=@"var;{x};{#20119}" +variables(#20121,"x",#20119) #20122=* -exprs(#20122,78,#20115,1,"y") -hasLocation(#20122,#20039) -expr_containers(#20122,#20115) -literals("y","y",#20122) +exprs(#20122,78,#20116,0,"x") +hasLocation(#20122,#20035) +expr_containers(#20122,#20116) +literals("x","x",#20122) decl(#20122,#20121) -#20123=@"var;{arguments};{#20118}" -variables(#20123,"arguments",#20118) -is_arguments_object(#20123) +#20123=@"var;{y};{#20119}" +variables(#20123,"y",#20119) #20124=* -stmts(#20124,1,#20115,-2,"{\n return x+y;\n}") -#20125=@"loc,{#10000},1,18,3,1" -locations_default(#20125,#10000,1,18,3,1) -hasLocation(#20124,#20125) -stmt_containers(#20124,#20115) +exprs(#20124,78,#20116,1,"y") +hasLocation(#20124,#20039) +expr_containers(#20124,#20116) +literals("y","y",#20124) +decl(#20124,#20123) +#20125=@"var;{arguments};{#20119}" +variables(#20125,"arguments",#20119) +is_arguments_object(#20125) #20126=* -stmts(#20126,9,#20124,0,"return x+y;") -#20127=@"loc,{#10000},2,5,2,15" -locations_default(#20127,#10000,2,5,2,15) +stmts(#20126,1,#20116,-2,"{\n return x+y;\n}") +#20127=@"loc,{#10000},1,18,3,1" +locations_default(#20127,#10000,1,18,3,1) hasLocation(#20126,#20127) -stmt_containers(#20126,#20115) +stmt_containers(#20126,#20116) #20128=* -exprs(#20128,34,#20126,0,"x+y") -#20129=@"loc,{#10000},2,12,2,14" -locations_default(#20129,#10000,2,12,2,14) +stmts(#20128,9,#20126,0,"return x+y;") +#20129=@"loc,{#10000},2,5,2,15" +locations_default(#20129,#10000,2,5,2,15) hasLocation(#20128,#20129) -enclosing_stmt(#20128,#20126) -expr_containers(#20128,#20115) +stmt_containers(#20128,#20116) #20130=* -exprs(#20130,79,#20128,0,"x") -hasLocation(#20130,#20047) -enclosing_stmt(#20130,#20126) -expr_containers(#20130,#20115) -literals("x","x",#20130) -bind(#20130,#20119) -#20131=* -exprs(#20131,79,#20128,1,"y") -hasLocation(#20131,#20051) -enclosing_stmt(#20131,#20126) -expr_containers(#20131,#20115) -literals("y","y",#20131) -bind(#20131,#20121) +exprs(#20130,34,#20128,0,"x+y") +#20131=@"loc,{#10000},2,12,2,14" +locations_default(#20131,#10000,2,12,2,14) +hasLocation(#20130,#20131) +enclosing_stmt(#20130,#20128) +expr_containers(#20130,#20116) #20132=* -stmts(#20132,17,#20001,1,"function h() {}") -hasLocation(#20132,#20011) -stmt_containers(#20132,#20001) +exprs(#20132,79,#20130,0,"x") +hasLocation(#20132,#20047) +enclosing_stmt(#20132,#20128) +expr_containers(#20132,#20116) +literals("x","x",#20132) +bind(#20132,#20121) #20133=* -exprs(#20133,78,#20132,-1,"h") -hasLocation(#20133,#20058) -expr_containers(#20133,#20132) -literals("h","h",#20133) -decl(#20133,#20114) +exprs(#20133,79,#20130,1,"y") +hasLocation(#20133,#20051) +enclosing_stmt(#20133,#20128) +expr_containers(#20133,#20116) +literals("y","y",#20133) +bind(#20133,#20123) #20134=* -scopes(#20134,1) -scopenodes(#20132,#20134) -scopenesting(#20134,#20000) -#20135=@"var;{arguments};{#20134}" -variables(#20135,"arguments",#20134) -is_arguments_object(#20135) +stmts(#20134,17,#20001,1,"function h() {}") +hasLocation(#20134,#20011) +stmt_containers(#20134,#20001) +#20135=* +exprs(#20135,78,#20134,-1,"h") +hasLocation(#20135,#20058) +expr_containers(#20135,#20134) +literals("h","h",#20135) +decl(#20135,#20114) #20136=* -stmts(#20136,1,#20132,-2,"{}") -#20137=@"loc,{#10000},5,14,5,15" -locations_default(#20137,#10000,5,14,5,15) -hasLocation(#20136,#20137) -stmt_containers(#20136,#20132) -#20138=* -stmts(#20138,2,#20001,2,"k = fun ... turn;\n}") -#20139=@"loc,{#10000},7,1,9,1" -locations_default(#20139,#10000,7,1,9,1) -hasLocation(#20138,#20139) -stmt_containers(#20138,#20001) -#20140=* -exprs(#20140,47,#20138,0,"k = fun ... turn;\n}") -hasLocation(#20140,#20139) -enclosing_stmt(#20140,#20138) -expr_containers(#20140,#20001) +scopes(#20136,1) +scopenodes(#20134,#20136) +scopenesting(#20136,#20000) +#20137=@"var;{this};{#20136}" +variables(#20137,"this",#20136) +#20138=@"var;{arguments};{#20136}" +variables(#20138,"arguments",#20136) +is_arguments_object(#20138) +#20139=* +stmts(#20139,1,#20134,-2,"{}") +#20140=@"loc,{#10000},5,14,5,15" +locations_default(#20140,#10000,5,14,5,15) +hasLocation(#20139,#20140) +stmt_containers(#20139,#20134) #20141=* -exprs(#20141,79,#20140,0,"k") -hasLocation(#20141,#20068) -enclosing_stmt(#20141,#20138) -expr_containers(#20141,#20001) -literals("k","k",#20141) -#20142=@"var;{k};{#20000}" -variables(#20142,"k",#20000) -bind(#20141,#20142) +stmts(#20141,2,#20001,2,"k = fun ... turn;\n}") +#20142=@"loc,{#10000},7,1,9,1" +locations_default(#20142,#10000,7,1,9,1) +hasLocation(#20141,#20142) +stmt_containers(#20141,#20001) #20143=* -exprs(#20143,9,#20140,1,"functio ... turn;\n}") -#20144=@"loc,{#10000},7,5,9,1" -locations_default(#20144,#10000,7,5,9,1) -hasLocation(#20143,#20144) -enclosing_stmt(#20143,#20138) +exprs(#20143,47,#20141,0,"k = fun ... turn;\n}") +hasLocation(#20143,#20142) +enclosing_stmt(#20143,#20141) expr_containers(#20143,#20001) -#20145=* -scopes(#20145,1) -scopenodes(#20143,#20145) -scopenesting(#20145,#20000) -#20146=@"var;{arguments};{#20145}" -variables(#20146,"arguments",#20145) -is_arguments_object(#20146) -#20147=* -stmts(#20147,1,#20143,-2,"{\n return;\n}") -#20148=@"loc,{#10000},7,16,9,1" -locations_default(#20148,#10000,7,16,9,1) -hasLocation(#20147,#20148) -stmt_containers(#20147,#20143) -#20149=* -stmts(#20149,9,#20147,0,"return;") -#20150=@"loc,{#10000},8,5,8,11" -locations_default(#20150,#10000,8,5,8,11) -hasLocation(#20149,#20150) -stmt_containers(#20149,#20143) +#20144=* +exprs(#20144,79,#20143,0,"k") +hasLocation(#20144,#20068) +enclosing_stmt(#20144,#20141) +expr_containers(#20144,#20001) +literals("k","k",#20144) +#20145=@"var;{k};{#20000}" +variables(#20145,"k",#20000) +bind(#20144,#20145) +#20146=* +exprs(#20146,9,#20143,1,"functio ... turn;\n}") +#20147=@"loc,{#10000},7,5,9,1" +locations_default(#20147,#10000,7,5,9,1) +hasLocation(#20146,#20147) +enclosing_stmt(#20146,#20141) +expr_containers(#20146,#20001) +#20148=* +scopes(#20148,1) +scopenodes(#20146,#20148) +scopenesting(#20148,#20000) +#20149=@"var;{this};{#20148}" +variables(#20149,"this",#20148) +#20150=@"var;{arguments};{#20148}" +variables(#20150,"arguments",#20148) +is_arguments_object(#20150) #20151=* -stmts(#20151,2,#20001,3,"l = function f() {}") -hasLocation(#20151,#20023) -stmt_containers(#20151,#20001) -#20152=* -exprs(#20152,47,#20151,0,"l = function f() {}") -hasLocation(#20152,#20023) -enclosing_stmt(#20152,#20151) -expr_containers(#20152,#20001) +stmts(#20151,1,#20146,-2,"{\n return;\n}") +#20152=@"loc,{#10000},7,16,9,1" +locations_default(#20152,#10000,7,16,9,1) +hasLocation(#20151,#20152) +stmt_containers(#20151,#20146) #20153=* -exprs(#20153,79,#20152,0,"l") -hasLocation(#20153,#20085) -enclosing_stmt(#20153,#20151) -expr_containers(#20153,#20001) -literals("l","l",#20153) -#20154=@"var;{l};{#20000}" -variables(#20154,"l",#20000) -bind(#20153,#20154) +stmts(#20153,9,#20151,0,"return;") +#20154=@"loc,{#10000},8,5,8,11" +locations_default(#20154,#10000,8,5,8,11) +hasLocation(#20153,#20154) +stmt_containers(#20153,#20146) #20155=* -exprs(#20155,9,#20152,1,"function f() {}") -#20156=@"loc,{#10000},11,5,11,19" -locations_default(#20156,#10000,11,5,11,19) -hasLocation(#20155,#20156) -enclosing_stmt(#20155,#20151) -expr_containers(#20155,#20001) +stmts(#20155,2,#20001,3,"l = function f() {}") +hasLocation(#20155,#20023) +stmt_containers(#20155,#20001) +#20156=* +exprs(#20156,47,#20155,0,"l = function f() {}") +hasLocation(#20156,#20023) +enclosing_stmt(#20156,#20155) +expr_containers(#20156,#20001) #20157=* -scopes(#20157,1) -scopenodes(#20155,#20157) -scopenesting(#20157,#20000) -#20158=@"var;{f};{#20157}" -variables(#20158,"f",#20157) +exprs(#20157,79,#20156,0,"l") +hasLocation(#20157,#20085) +enclosing_stmt(#20157,#20155) +expr_containers(#20157,#20001) +literals("l","l",#20157) +#20158=@"var;{l};{#20000}" +variables(#20158,"l",#20000) +bind(#20157,#20158) #20159=* -exprs(#20159,78,#20155,-1,"f") -hasLocation(#20159,#20091) -expr_containers(#20159,#20155) -literals("f","f",#20159) -decl(#20159,#20158) -#20160=@"var;{arguments};{#20157}" -variables(#20160,"arguments",#20157) -is_arguments_object(#20160) +exprs(#20159,9,#20156,1,"function f() {}") +#20160=@"loc,{#10000},11,5,11,19" +locations_default(#20160,#10000,11,5,11,19) +hasLocation(#20159,#20160) +enclosing_stmt(#20159,#20155) +expr_containers(#20159,#20001) #20161=* -stmts(#20161,1,#20155,-2,"{}") -#20162=@"loc,{#10000},11,18,11,19" -locations_default(#20162,#10000,11,18,11,19) -hasLocation(#20161,#20162) -stmt_containers(#20161,#20155) -#20163=* -stmts(#20163,2,#20001,4,"function() {}") -hasLocation(#20163,#20027) -stmt_containers(#20163,#20001) +scopes(#20161,1) +scopenodes(#20159,#20161) +scopenesting(#20161,#20000) +#20162=@"var;{this};{#20161}" +variables(#20162,"this",#20161) +#20163=@"var;{f};{#20161}" +variables(#20163,"f",#20161) #20164=* -exprs(#20164,9,#20163,0,"function() {}") -hasLocation(#20164,#20027) -enclosing_stmt(#20164,#20163) -expr_containers(#20164,#20001) -#20165=* -scopes(#20165,1) -scopenodes(#20164,#20165) -scopenesting(#20165,#20000) -#20166=@"var;{arguments};{#20165}" -variables(#20166,"arguments",#20165) -is_arguments_object(#20166) -#20167=* -stmts(#20167,1,#20164,-2,"{}") -#20168=@"loc,{#10000},13,12,13,13" -locations_default(#20168,#10000,13,12,13,13) -hasLocation(#20167,#20168) -stmt_containers(#20167,#20164) +exprs(#20164,78,#20159,-1,"f") +hasLocation(#20164,#20091) +expr_containers(#20164,#20159) +literals("f","f",#20164) +decl(#20164,#20163) +#20165=@"var;{arguments};{#20161}" +variables(#20165,"arguments",#20161) +is_arguments_object(#20165) +#20166=* +stmts(#20166,1,#20159,-2,"{}") +#20167=@"loc,{#10000},11,18,11,19" +locations_default(#20167,#10000,11,18,11,19) +hasLocation(#20166,#20167) +stmt_containers(#20166,#20159) +#20168=* +stmts(#20168,2,#20001,4,"function() {}") +hasLocation(#20168,#20027) +stmt_containers(#20168,#20001) #20169=* -entry_cfg_node(#20169,#20001) -#20170=@"loc,{#10000},1,1,1,0" -locations_default(#20170,#10000,1,1,1,0) -hasLocation(#20169,#20170) -#20171=* -exit_cfg_node(#20171,#20001) -hasLocation(#20171,#20111) -successor(#20163,#20164) -successor(#20164,#20171) -#20172=* -entry_cfg_node(#20172,#20164) -#20173=@"loc,{#10000},13,1,13,0" -locations_default(#20173,#10000,13,1,13,0) -hasLocation(#20172,#20173) -#20174=* -exit_cfg_node(#20174,#20164) -#20175=@"loc,{#10000},13,14,13,13" -locations_default(#20175,#10000,13,14,13,13) -hasLocation(#20174,#20175) -successor(#20167,#20174) -successor(#20172,#20167) -successor(#20151,#20153) -successor(#20155,#20152) -#20176=* -entry_cfg_node(#20176,#20155) -#20177=@"loc,{#10000},11,5,11,4" -locations_default(#20177,#10000,11,5,11,4) -hasLocation(#20176,#20177) +exprs(#20169,9,#20168,0,"function() {}") +hasLocation(#20169,#20027) +enclosing_stmt(#20169,#20168) +expr_containers(#20169,#20001) +#20170=* +scopes(#20170,1) +scopenodes(#20169,#20170) +scopenesting(#20170,#20000) +#20171=@"var;{this};{#20170}" +variables(#20171,"this",#20170) +#20172=@"var;{arguments};{#20170}" +variables(#20172,"arguments",#20170) +is_arguments_object(#20172) +#20173=* +stmts(#20173,1,#20169,-2,"{}") +#20174=@"loc,{#10000},13,12,13,13" +locations_default(#20174,#10000,13,12,13,13) +hasLocation(#20173,#20174) +stmt_containers(#20173,#20169) +#20175=* +entry_cfg_node(#20175,#20001) +#20176=@"loc,{#10000},1,1,1,0" +locations_default(#20176,#10000,1,1,1,0) +hasLocation(#20175,#20176) +#20177=* +exit_cfg_node(#20177,#20001) +hasLocation(#20177,#20111) +successor(#20168,#20169) +successor(#20169,#20177) #20178=* -exit_cfg_node(#20178,#20155) -#20179=@"loc,{#10000},11,20,11,19" -locations_default(#20179,#10000,11,20,11,19) +entry_cfg_node(#20178,#20169) +#20179=@"loc,{#10000},13,1,13,0" +locations_default(#20179,#10000,13,1,13,0) hasLocation(#20178,#20179) -successor(#20161,#20178) -successor(#20159,#20161) -successor(#20176,#20159) -successor(#20153,#20155) -successor(#20152,#20163) -successor(#20138,#20141) -successor(#20143,#20140) #20180=* -entry_cfg_node(#20180,#20143) -#20181=@"loc,{#10000},7,5,7,4" -locations_default(#20181,#10000,7,5,7,4) +exit_cfg_node(#20180,#20169) +#20181=@"loc,{#10000},13,14,13,13" +locations_default(#20181,#10000,13,14,13,13) hasLocation(#20180,#20181) +successor(#20173,#20180) +successor(#20178,#20173) +successor(#20155,#20157) +successor(#20159,#20156) #20182=* -exit_cfg_node(#20182,#20143) -#20183=@"loc,{#10000},9,2,9,1" -locations_default(#20183,#10000,9,2,9,1) +entry_cfg_node(#20182,#20159) +#20183=@"loc,{#10000},11,5,11,4" +locations_default(#20183,#10000,11,5,11,4) hasLocation(#20182,#20183) -successor(#20149,#20182) -successor(#20147,#20149) -successor(#20180,#20147) -successor(#20141,#20143) -successor(#20140,#20151) -successor(#20132,#20138) #20184=* -entry_cfg_node(#20184,#20132) -#20185=@"loc,{#10000},5,1,5,0" -locations_default(#20185,#10000,5,1,5,0) +exit_cfg_node(#20184,#20159) +#20185=@"loc,{#10000},11,20,11,19" +locations_default(#20185,#10000,11,20,11,19) hasLocation(#20184,#20185) +successor(#20166,#20184) +successor(#20164,#20166) +successor(#20182,#20164) +successor(#20157,#20159) +successor(#20156,#20168) +successor(#20141,#20144) +successor(#20146,#20143) #20186=* -exit_cfg_node(#20186,#20132) -#20187=@"loc,{#10000},5,16,5,15" -locations_default(#20187,#10000,5,16,5,15) +entry_cfg_node(#20186,#20146) +#20187=@"loc,{#10000},7,5,7,4" +locations_default(#20187,#10000,7,5,7,4) hasLocation(#20186,#20187) -successor(#20136,#20186) -successor(#20184,#20136) -successor(#20115,#20132) #20188=* -entry_cfg_node(#20188,#20115) -hasLocation(#20188,#20170) -#20189=* -exit_cfg_node(#20189,#20115) -#20190=@"loc,{#10000},3,2,3,1" -locations_default(#20190,#10000,3,2,3,1) -hasLocation(#20189,#20190) -successor(#20131,#20128) -successor(#20130,#20131) -successor(#20128,#20126) -successor(#20126,#20189) -successor(#20124,#20130) -successor(#20122,#20124) -successor(#20120,#20122) -successor(#20188,#20120) -successor(#20133,#20115) -successor(#20117,#20133) -successor(#20169,#20117) -#20191=* -js_parse_errors(#20191,#20001,"Error: Missing function name","function() {} -") -hasLocation(#20191,#20103) +exit_cfg_node(#20188,#20146) +#20189=@"loc,{#10000},9,2,9,1" +locations_default(#20189,#10000,9,2,9,1) +hasLocation(#20188,#20189) +successor(#20153,#20188) +successor(#20151,#20153) +successor(#20186,#20151) +successor(#20144,#20146) +successor(#20143,#20155) +successor(#20134,#20141) +#20190=* +entry_cfg_node(#20190,#20134) +#20191=@"loc,{#10000},5,1,5,0" +locations_default(#20191,#10000,5,1,5,0) +hasLocation(#20190,#20191) #20192=* -lines(#20192,#20001,"function g(x, y) {"," -") -hasLocation(#20192,#20003) -#20193=* -lines(#20193,#20001," return x+y;"," -") -hasLocation(#20193,#20005) -indentation(#10000,2," ",4) +exit_cfg_node(#20192,#20134) +#20193=@"loc,{#10000},5,16,5,15" +locations_default(#20193,#10000,5,16,5,15) +hasLocation(#20192,#20193) +successor(#20139,#20192) +successor(#20190,#20139) +successor(#20116,#20134) #20194=* -lines(#20194,#20001,"}"," -") -hasLocation(#20194,#20007) +entry_cfg_node(#20194,#20116) +hasLocation(#20194,#20176) #20195=* -lines(#20195,#20001,""," -") -hasLocation(#20195,#20009) -#20196=* -lines(#20196,#20001,"function h() {}"," -") -hasLocation(#20196,#20011) +exit_cfg_node(#20195,#20116) +#20196=@"loc,{#10000},3,2,3,1" +locations_default(#20196,#10000,3,2,3,1) +hasLocation(#20195,#20196) +successor(#20133,#20130) +successor(#20132,#20133) +successor(#20130,#20128) +successor(#20128,#20195) +successor(#20126,#20132) +successor(#20124,#20126) +successor(#20122,#20124) +successor(#20194,#20122) +successor(#20135,#20116) +successor(#20118,#20135) +successor(#20175,#20118) #20197=* -lines(#20197,#20001,""," +js_parse_errors(#20197,#20001,"Error: Missing function name","function() {} ") -hasLocation(#20197,#20013) +hasLocation(#20197,#20103) #20198=* -lines(#20198,#20001,"k = function() {"," +lines(#20198,#20001,"function g(x, y) {"," ") -hasLocation(#20198,#20015) +hasLocation(#20198,#20003) #20199=* -lines(#20199,#20001," return;"," +lines(#20199,#20001," return x+y;"," ") -hasLocation(#20199,#20017) -indentation(#10000,8," ",4) +hasLocation(#20199,#20005) +indentation(#10000,2," ",4) #20200=* lines(#20200,#20001,"}"," ") -hasLocation(#20200,#20019) +hasLocation(#20200,#20007) #20201=* lines(#20201,#20001,""," ") -hasLocation(#20201,#20021) +hasLocation(#20201,#20009) #20202=* -lines(#20202,#20001,"l = function f() {}"," +lines(#20202,#20001,"function h() {}"," ") -hasLocation(#20202,#20023) +hasLocation(#20202,#20011) #20203=* lines(#20203,#20001,""," ") -hasLocation(#20203,#20025) +hasLocation(#20203,#20013) #20204=* -lines(#20204,#20001,"function() {}"," +lines(#20204,#20001,"k = function() {"," +") +hasLocation(#20204,#20015) +#20205=* +lines(#20205,#20001," return;"," +") +hasLocation(#20205,#20017) +indentation(#10000,8," ",4) +#20206=* +lines(#20206,#20001,"}"," +") +hasLocation(#20206,#20019) +#20207=* +lines(#20207,#20001,""," +") +hasLocation(#20207,#20021) +#20208=* +lines(#20208,#20001,"l = function f() {}"," +") +hasLocation(#20208,#20023) +#20209=* +lines(#20209,#20001,""," +") +hasLocation(#20209,#20025) +#20210=* +lines(#20210,#20001,"function() {}"," ") -hasLocation(#20204,#20027) +hasLocation(#20210,#20027) numlines(#20001,13,0,0) numlines(#10000,13,9,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/stmts/output/trap/loops.js.trap b/javascript/extractor/tests/stmts/output/trap/loops.js.trap index 2adac2bb41ce..f68ae65e23b7 100644 --- a/javascript/extractor/tests/stmts/output/trap/loops.js.trap +++ b/javascript/extractor/tests/stmts/output/trap/loops.js.trap @@ -618,453 +618,455 @@ variables(#20230,"i",#20000) variables(#20231,"n",#20000) #20232=@"var;{x};{#20000}" variables(#20232,"x",#20000) -#20233=* -stmts(#20233,12,#20001,0,"while(true)\n ;") -#20234=@"loc,{#10000},1,1,2,5" -locations_default(#20234,#10000,1,1,2,5) -hasLocation(#20233,#20234) -stmt_containers(#20233,#20001) -#20235=* -exprs(#20235,2,#20233,0,"true") -hasLocation(#20235,#20049) -enclosing_stmt(#20235,#20233) -expr_containers(#20235,#20001) -literals("true","true",#20235) +#20233=@"var;{this};{#20000}" +variables(#20233,"this",#20000) +#20234=* +stmts(#20234,12,#20001,0,"while(true)\n ;") +#20235=@"loc,{#10000},1,1,2,5" +locations_default(#20235,#10000,1,1,2,5) +hasLocation(#20234,#20235) +stmt_containers(#20234,#20001) #20236=* -stmts(#20236,0,#20233,1,";") -hasLocation(#20236,#20053) -stmt_containers(#20236,#20001) +exprs(#20236,2,#20234,0,"true") +hasLocation(#20236,#20049) +enclosing_stmt(#20236,#20234) +expr_containers(#20236,#20001) +literals("true","true",#20236) #20237=* -stmts(#20237,4,#20001,1,"outer: ... inue;\n}") -#20238=@"loc,{#10000},3,1,11,1" -locations_default(#20238,#10000,3,1,11,1) -hasLocation(#20237,#20238) +stmts(#20237,0,#20234,1,";") +hasLocation(#20237,#20053) stmt_containers(#20237,#20001) -#20239=* -exprs(#20239,0,#20237,0,"outer") -hasLocation(#20239,#20055) -enclosing_stmt(#20239,#20237) -expr_containers(#20239,#20001) -literals("outer","outer",#20239) +#20238=* +stmts(#20238,4,#20001,1,"outer: ... inue;\n}") +#20239=@"loc,{#10000},3,1,11,1" +locations_default(#20239,#10000,3,1,11,1) +hasLocation(#20238,#20239) +stmt_containers(#20238,#20001) #20240=* -stmts(#20240,14,#20237,1,"for(a; ... inue;\n}") -#20241=@"loc,{#10000},3,8,11,1" -locations_default(#20241,#10000,3,8,11,1) -hasLocation(#20240,#20241) -stmt_containers(#20240,#20001) -#20242=* -exprs(#20242,79,#20240,1,"b") -hasLocation(#20242,#20067) -enclosing_stmt(#20242,#20240) -expr_containers(#20242,#20001) -literals("b","b",#20242) -#20243=@"var;{b};{#20000}" -variables(#20243,"b",#20000) -bind(#20242,#20243) -#20244=* -exprs(#20244,79,#20240,2,"c") -hasLocation(#20244,#20071) -enclosing_stmt(#20244,#20240) -expr_containers(#20244,#20001) -literals("c","c",#20244) -#20245=@"var;{c};{#20000}" -variables(#20245,"c",#20000) -bind(#20244,#20245) -#20246=* -exprs(#20246,79,#20240,0,"a") -hasLocation(#20246,#20063) -enclosing_stmt(#20246,#20240) -expr_containers(#20246,#20001) -literals("a","a",#20246) -#20247=@"var;{a};{#20000}" -variables(#20247,"a",#20000) -bind(#20246,#20247) -#20248=* -stmts(#20248,1,#20240,3,"{\n f ... inue;\n}") -#20249=@"loc,{#10000},3,21,11,1" -locations_default(#20249,#10000,3,21,11,1) -hasLocation(#20248,#20249) -stmt_containers(#20248,#20001) -#20250=* -stmts(#20250,14,#20248,0,"for(;;) ... ntinue;") -#20251=@"loc,{#10000},4,5,10,21" -locations_default(#20251,#10000,4,5,10,21) -hasLocation(#20250,#20251) -stmt_containers(#20250,#20001) -#20252=* -stmts(#20252,3,#20250,3,"if (d)\n ... ntinue;") -#20253=@"loc,{#10000},5,9,10,21" -locations_default(#20253,#10000,5,9,10,21) -hasLocation(#20252,#20253) -stmt_containers(#20252,#20001) -#20254=* -exprs(#20254,79,#20252,0,"d") -hasLocation(#20254,#20091) -enclosing_stmt(#20254,#20252) -expr_containers(#20254,#20001) -literals("d","d",#20254) -#20255=@"var;{d};{#20000}" -variables(#20255,"d",#20000) -bind(#20254,#20255) -#20256=* -stmts(#20256,6,#20252,1,"continue outer;") -#20257=@"loc,{#10000},6,13,6,27" -locations_default(#20257,#10000,6,13,6,27) -hasLocation(#20256,#20257) -stmt_containers(#20256,#20001) -#20258=* -exprs(#20258,0,#20256,0,"outer") -hasLocation(#20258,#20097) -enclosing_stmt(#20258,#20256) -expr_containers(#20258,#20001) -literals("outer","outer",#20258) -jump_targets(#20256,#20237) +exprs(#20240,0,#20238,0,"outer") +hasLocation(#20240,#20055) +enclosing_stmt(#20240,#20238) +expr_containers(#20240,#20001) +literals("outer","outer",#20240) +#20241=* +stmts(#20241,14,#20238,1,"for(a; ... inue;\n}") +#20242=@"loc,{#10000},3,8,11,1" +locations_default(#20242,#10000,3,8,11,1) +hasLocation(#20241,#20242) +stmt_containers(#20241,#20001) +#20243=* +exprs(#20243,79,#20241,1,"b") +hasLocation(#20243,#20067) +enclosing_stmt(#20243,#20241) +expr_containers(#20243,#20001) +literals("b","b",#20243) +#20244=@"var;{b};{#20000}" +variables(#20244,"b",#20000) +bind(#20243,#20244) +#20245=* +exprs(#20245,79,#20241,2,"c") +hasLocation(#20245,#20071) +enclosing_stmt(#20245,#20241) +expr_containers(#20245,#20001) +literals("c","c",#20245) +#20246=@"var;{c};{#20000}" +variables(#20246,"c",#20000) +bind(#20245,#20246) +#20247=* +exprs(#20247,79,#20241,0,"a") +hasLocation(#20247,#20063) +enclosing_stmt(#20247,#20241) +expr_containers(#20247,#20001) +literals("a","a",#20247) +#20248=@"var;{a};{#20000}" +variables(#20248,"a",#20000) +bind(#20247,#20248) +#20249=* +stmts(#20249,1,#20241,3,"{\n f ... inue;\n}") +#20250=@"loc,{#10000},3,21,11,1" +locations_default(#20250,#10000,3,21,11,1) +hasLocation(#20249,#20250) +stmt_containers(#20249,#20001) +#20251=* +stmts(#20251,14,#20249,0,"for(;;) ... ntinue;") +#20252=@"loc,{#10000},4,5,10,21" +locations_default(#20252,#10000,4,5,10,21) +hasLocation(#20251,#20252) +stmt_containers(#20251,#20001) +#20253=* +stmts(#20253,3,#20251,3,"if (d)\n ... ntinue;") +#20254=@"loc,{#10000},5,9,10,21" +locations_default(#20254,#10000,5,9,10,21) +hasLocation(#20253,#20254) +stmt_containers(#20253,#20001) +#20255=* +exprs(#20255,79,#20253,0,"d") +hasLocation(#20255,#20091) +enclosing_stmt(#20255,#20253) +expr_containers(#20255,#20001) +literals("d","d",#20255) +#20256=@"var;{d};{#20000}" +variables(#20256,"d",#20000) +bind(#20255,#20256) +#20257=* +stmts(#20257,6,#20253,1,"continue outer;") +#20258=@"loc,{#10000},6,13,6,27" +locations_default(#20258,#10000,6,13,6,27) +hasLocation(#20257,#20258) +stmt_containers(#20257,#20001) #20259=* -stmts(#20259,3,#20252,2,"if (e)\n ... ntinue;") -#20260=@"loc,{#10000},7,14,10,21" -locations_default(#20260,#10000,7,14,10,21) -hasLocation(#20259,#20260) -stmt_containers(#20259,#20001) -#20261=* -exprs(#20261,79,#20259,0,"e") -hasLocation(#20261,#20107) -enclosing_stmt(#20261,#20259) -expr_containers(#20261,#20001) -literals("e","e",#20261) -#20262=@"var;{e};{#20000}" -variables(#20262,"e",#20000) -bind(#20261,#20262) -#20263=* -stmts(#20263,5,#20259,1,"break outer;") -#20264=@"loc,{#10000},8,13,8,24" -locations_default(#20264,#10000,8,13,8,24) -hasLocation(#20263,#20264) -stmt_containers(#20263,#20001) -#20265=* -exprs(#20265,0,#20263,0,"outer") -hasLocation(#20265,#20113) -enclosing_stmt(#20265,#20263) -expr_containers(#20265,#20001) -literals("outer","outer",#20265) -jump_targets(#20263,#20237) +exprs(#20259,0,#20257,0,"outer") +hasLocation(#20259,#20097) +enclosing_stmt(#20259,#20257) +expr_containers(#20259,#20001) +literals("outer","outer",#20259) +jump_targets(#20257,#20238) +#20260=* +stmts(#20260,3,#20253,2,"if (e)\n ... ntinue;") +#20261=@"loc,{#10000},7,14,10,21" +locations_default(#20261,#10000,7,14,10,21) +hasLocation(#20260,#20261) +stmt_containers(#20260,#20001) +#20262=* +exprs(#20262,79,#20260,0,"e") +hasLocation(#20262,#20107) +enclosing_stmt(#20262,#20260) +expr_containers(#20262,#20001) +literals("e","e",#20262) +#20263=@"var;{e};{#20000}" +variables(#20263,"e",#20000) +bind(#20262,#20263) +#20264=* +stmts(#20264,5,#20260,1,"break outer;") +#20265=@"loc,{#10000},8,13,8,24" +locations_default(#20265,#10000,8,13,8,24) +hasLocation(#20264,#20265) +stmt_containers(#20264,#20001) #20266=* -stmts(#20266,6,#20259,2,"continue;") -#20267=@"loc,{#10000},10,13,10,21" -locations_default(#20267,#10000,10,13,10,21) -hasLocation(#20266,#20267) -stmt_containers(#20266,#20001) -jump_targets(#20266,#20250) -#20268=* -stmts(#20268,13,#20001,2,"do {\n ... ile(a);") -#20269=@"loc,{#10000},13,1,15,11" -locations_default(#20269,#10000,13,1,15,11) -hasLocation(#20268,#20269) -stmt_containers(#20268,#20001) -#20270=* -exprs(#20270,79,#20268,1,"a") -hasLocation(#20270,#20136) -enclosing_stmt(#20270,#20268) -expr_containers(#20270,#20001) -literals("a","a",#20270) -bind(#20270,#20247) +exprs(#20266,0,#20264,0,"outer") +hasLocation(#20266,#20113) +enclosing_stmt(#20266,#20264) +expr_containers(#20266,#20001) +literals("outer","outer",#20266) +jump_targets(#20264,#20238) +#20267=* +stmts(#20267,6,#20260,2,"continue;") +#20268=@"loc,{#10000},10,13,10,21" +locations_default(#20268,#10000,10,13,10,21) +hasLocation(#20267,#20268) +stmt_containers(#20267,#20001) +jump_targets(#20267,#20251) +#20269=* +stmts(#20269,13,#20001,2,"do {\n ... ile(a);") +#20270=@"loc,{#10000},13,1,15,11" +locations_default(#20270,#10000,13,1,15,11) +hasLocation(#20269,#20270) +stmt_containers(#20269,#20001) #20271=* -stmts(#20271,1,#20268,0,"{\n ;\n}") -#20272=@"loc,{#10000},13,4,15,1" -locations_default(#20272,#10000,13,4,15,1) -hasLocation(#20271,#20272) -stmt_containers(#20271,#20001) -#20273=* -stmts(#20273,0,#20271,0,";") -hasLocation(#20273,#20128) -stmt_containers(#20273,#20001) +exprs(#20271,79,#20269,1,"a") +hasLocation(#20271,#20136) +enclosing_stmt(#20271,#20269) +expr_containers(#20271,#20001) +literals("a","a",#20271) +bind(#20271,#20248) +#20272=* +stmts(#20272,1,#20269,0,"{\n ;\n}") +#20273=@"loc,{#10000},13,4,15,1" +locations_default(#20273,#10000,13,4,15,1) +hasLocation(#20272,#20273) +stmt_containers(#20272,#20001) #20274=* -stmts(#20274,14,#20001,3,"for (va ... ; ++i);") -hasLocation(#20274,#20035) +stmts(#20274,0,#20272,0,";") +hasLocation(#20274,#20128) stmt_containers(#20274,#20001) #20275=* -exprs(#20275,27,#20274,1,"i\n {}") -#20038=@"loc,{#10000},1,1,2,4" -locations_default(#20038,#10000,1,1,2,4) -hasLocation(#20037,#20038) -stmt_containers(#20037,#20001) -is_abstract_class(#20037) -#20039=* -exprs(#20039,78,#20037,0,"C") -hasLocation(#20039,#20011) -enclosing_stmt(#20039,#20037) -expr_containers(#20039,#20001) -literals("C","C",#20039) -decl(#20039,#20035) -typedecl(#20039,#20036) +#20037=@"var;{this};{#20000}" +variables(#20037,"this",#20000) +#20038=* +stmts(#20038,26,#20001,0,"abstrac ... F>\n {}") +#20039=@"loc,{#10000},1,1,2,4" +locations_default(#20039,#10000,1,1,2,4) +hasLocation(#20038,#20039) +stmt_containers(#20038,#20001) +is_abstract_class(#20038) #20040=* -scopes(#20040,10) -scopenodes(#20037,#20040) -scopenesting(#20040,#20000) +exprs(#20040,78,#20038,0,"C") +hasLocation(#20040,#20011) +enclosing_stmt(#20040,#20038) +expr_containers(#20040,#20001) +literals("C","C",#20040) +decl(#20040,#20035) +typedecl(#20040,#20036) #20041=* -typeexprs(#20041,14,#20037,-1,"E") -#20042=@"loc,{#10000},1,40,1,43" -locations_default(#20042,#10000,1,40,1,43) -hasLocation(#20041,#20042) -enclosing_stmt(#20041,#20037) -expr_containers(#20041,#20001) +scopes(#20041,10) +scopenodes(#20038,#20041) +scopenesting(#20041,#20000) +#20042=@"var;{this};{#20041}" +variables(#20042,"this",#20041) #20043=* -typeexprs(#20043,0,#20041,-1,"E") -hasLocation(#20043,#20021) -enclosing_stmt(#20043,#20037) +typeexprs(#20043,14,#20038,-1,"E") +#20044=@"loc,{#10000},1,40,1,43" +locations_default(#20044,#10000,1,40,1,43) +hasLocation(#20043,#20044) +enclosing_stmt(#20043,#20038) expr_containers(#20043,#20001) -literals("E","E",#20043) -#20044=* -typeexprs(#20044,0,#20041,0,"F") -hasLocation(#20044,#20025) -enclosing_stmt(#20044,#20037) -expr_containers(#20044,#20001) -literals("F","F",#20044) #20045=* -exprs(#20045,79,#20037,1,"D") -hasLocation(#20045,#20015) -enclosing_stmt(#20045,#20037) +typeexprs(#20045,0,#20043,-1,"E") +hasLocation(#20045,#20021) +enclosing_stmt(#20045,#20038) expr_containers(#20045,#20001) -literals("D","D",#20045) -#20046=@"var;{D};{#20000}" -variables(#20046,"D",#20000) -bind(#20045,#20046) +literals("E","E",#20045) +#20046=* +typeexprs(#20046,0,#20043,0,"F") +hasLocation(#20046,#20025) +enclosing_stmt(#20046,#20038) +expr_containers(#20046,#20001) +literals("F","F",#20046) #20047=* -properties(#20047,#20037,2,0,"constru ... rgs); }") -#20048=@"loc,{#10000},2,3,2,2" -locations_default(#20048,#10000,2,3,2,2) -hasLocation(#20047,#20048) +exprs(#20047,79,#20038,1,"D") +hasLocation(#20047,#20015) +enclosing_stmt(#20047,#20038) +expr_containers(#20047,#20001) +literals("D","D",#20047) +#20048=@"var;{D};{#20000}" +variables(#20048,"D",#20000) +bind(#20047,#20048) #20049=* -exprs(#20049,0,#20047,0,"constructor") -hasLocation(#20049,#20048) -enclosing_stmt(#20049,#20037) -expr_containers(#20049,#20001) -literals("constructor","constructor",#20049) -#20050=* -exprs(#20050,9,#20047,1,"(...arg ... rgs); }") -hasLocation(#20050,#20048) -enclosing_stmt(#20050,#20037) -expr_containers(#20050,#20001) +properties(#20049,#20038,2,0,"constru ... rgs); }") +#20050=@"loc,{#10000},2,3,2,2" +locations_default(#20050,#10000,2,3,2,2) +hasLocation(#20049,#20050) #20051=* -scopes(#20051,1) -scopenodes(#20050,#20051) -scopenesting(#20051,#20040) -#20052=@"var;{args};{#20051}" -variables(#20052,"args",#20051) +exprs(#20051,0,#20049,0,"constructor") +hasLocation(#20051,#20050) +enclosing_stmt(#20051,#20038) +expr_containers(#20051,#20001) +literals("constructor","constructor",#20051) +#20052=* +exprs(#20052,9,#20049,1,"(...arg ... rgs); }") +hasLocation(#20052,#20050) +enclosing_stmt(#20052,#20038) +expr_containers(#20052,#20001) #20053=* -exprs(#20053,78,#20050,0,"args") -hasLocation(#20053,#20048) -expr_containers(#20053,#20050) -literals("args","args",#20053) -decl(#20053,#20052) -#20054=@"var;{arguments};{#20051}" -variables(#20054,"arguments",#20051) -is_arguments_object(#20054) -has_rest_parameter(#20050) -#20055=* -stmts(#20055,1,#20050,-2,"{ super(...args); }") -hasLocation(#20055,#20048) -stmt_containers(#20055,#20050) +scopes(#20053,1) +scopenodes(#20052,#20053) +scopenesting(#20053,#20041) +#20054=@"var;{this};{#20053}" +variables(#20054,"this",#20053) +#20055=@"var;{args};{#20053}" +variables(#20055,"args",#20053) #20056=* -stmts(#20056,2,#20055,0,"super(...args);") -hasLocation(#20056,#20048) -stmt_containers(#20056,#20050) -#20057=* -exprs(#20057,13,#20056,0,"super(...args)") -hasLocation(#20057,#20048) -enclosing_stmt(#20057,#20056) -expr_containers(#20057,#20050) +exprs(#20056,78,#20052,0,"args") +hasLocation(#20056,#20050) +expr_containers(#20056,#20052) +literals("args","args",#20056) +decl(#20056,#20055) +#20057=@"var;{arguments};{#20053}" +variables(#20057,"arguments",#20053) +is_arguments_object(#20057) +has_rest_parameter(#20052) #20058=* -exprs(#20058,81,#20057,-1,"super") -hasLocation(#20058,#20048) -enclosing_stmt(#20058,#20056) -expr_containers(#20058,#20050) +stmts(#20058,1,#20052,-2,"{ super(...args); }") +hasLocation(#20058,#20050) +stmt_containers(#20058,#20052) #20059=* -exprs(#20059,66,#20057,0,"...args") -hasLocation(#20059,#20048) -enclosing_stmt(#20059,#20056) -expr_containers(#20059,#20050) +stmts(#20059,2,#20058,0,"super(...args);") +hasLocation(#20059,#20050) +stmt_containers(#20059,#20052) #20060=* -exprs(#20060,79,#20059,0,"args") -hasLocation(#20060,#20048) -enclosing_stmt(#20060,#20056) -expr_containers(#20060,#20050) -literals("args","args",#20060) -bind(#20060,#20052) -is_method(#20047) +exprs(#20060,13,#20059,0,"super(...args)") +hasLocation(#20060,#20050) +enclosing_stmt(#20060,#20059) +expr_containers(#20060,#20052) #20061=* -entry_cfg_node(#20061,#20001) -#20062=@"loc,{#10000},1,1,1,0" -locations_default(#20062,#10000,1,1,1,0) -hasLocation(#20061,#20062) +exprs(#20061,81,#20060,-1,"super") +hasLocation(#20061,#20050) +enclosing_stmt(#20061,#20059) +expr_containers(#20061,#20052) +#20062=* +exprs(#20062,66,#20060,0,"...args") +hasLocation(#20062,#20050) +enclosing_stmt(#20062,#20059) +expr_containers(#20062,#20052) #20063=* -exit_cfg_node(#20063,#20001) -hasLocation(#20063,#20033) -successor(#20050,#20047) +exprs(#20063,79,#20062,0,"args") +hasLocation(#20063,#20050) +enclosing_stmt(#20063,#20059) +expr_containers(#20063,#20052) +literals("args","args",#20063) +bind(#20063,#20055) +is_method(#20049) #20064=* -entry_cfg_node(#20064,#20050) -hasLocation(#20064,#20048) -#20065=* -exit_cfg_node(#20065,#20050) -hasLocation(#20065,#20048) +entry_cfg_node(#20064,#20001) +#20065=@"loc,{#10000},1,1,1,0" +locations_default(#20065,#10000,1,1,1,0) +hasLocation(#20064,#20065) +#20066=* +exit_cfg_node(#20066,#20001) +hasLocation(#20066,#20033) +successor(#20052,#20049) +#20067=* +entry_cfg_node(#20067,#20052) +hasLocation(#20067,#20050) +#20068=* +exit_cfg_node(#20068,#20052) +hasLocation(#20068,#20050) +successor(#20059,#20061) +successor(#20063,#20062) +successor(#20062,#20060) +successor(#20061,#20063) +successor(#20060,#20068) +successor(#20058,#20059) successor(#20056,#20058) -successor(#20060,#20059) -successor(#20059,#20057) -successor(#20058,#20060) -successor(#20057,#20065) -successor(#20055,#20056) -successor(#20053,#20055) -successor(#20064,#20053) -successor(#20049,#20050) -successor(#20047,#20037) -successor(#20045,#20049) -successor(#20039,#20045) -successor(#20037,#20063) -successor(#20061,#20039) +successor(#20067,#20056) +successor(#20051,#20052) +successor(#20049,#20038) +successor(#20047,#20051) +successor(#20040,#20047) +successor(#20038,#20066) +successor(#20064,#20040) numlines(#10000,2,2,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/comments.ts.trap b/javascript/extractor/tests/ts/output/trap/comments.ts.trap index 4898c710e95c..e772a2f8d235 100644 --- a/javascript/extractor/tests/ts/output/trap/comments.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/comments.ts.trap @@ -81,47 +81,49 @@ toplevels(#20001,0) #20025=@"loc,{#10000},2,1,4,4" locations_default(#20025,#10000,2,1,4,4) hasLocation(#20001,#20025) -#20026=* -stmts(#20026,2,#20001,0,"a /* b */ + c") -#20027=@"loc,{#10000},2,1,2,13" -locations_default(#20027,#10000,2,1,2,13) -hasLocation(#20026,#20027) -stmt_containers(#20026,#20001) -#20028=* -exprs(#20028,34,#20026,0,"a /* b */ + c") -hasLocation(#20028,#20027) -enclosing_stmt(#20028,#20026) -expr_containers(#20028,#20001) +#20026=@"var;{this};{#20000}" +variables(#20026,"this",#20000) +#20027=* +stmts(#20027,2,#20001,0,"a /* b */ + c") +#20028=@"loc,{#10000},2,1,2,13" +locations_default(#20028,#10000,2,1,2,13) +hasLocation(#20027,#20028) +stmt_containers(#20027,#20001) #20029=* -exprs(#20029,79,#20028,0,"a") -hasLocation(#20029,#20018) -enclosing_stmt(#20029,#20026) +exprs(#20029,34,#20027,0,"a /* b */ + c") +hasLocation(#20029,#20028) +enclosing_stmt(#20029,#20027) expr_containers(#20029,#20001) -literals("a","a",#20029) -#20030=@"var;{a};{#20000}" -variables(#20030,"a",#20000) -bind(#20029,#20030) -#20031=* -exprs(#20031,79,#20028,1,"c") -hasLocation(#20031,#20022) -enclosing_stmt(#20031,#20026) -expr_containers(#20031,#20001) -literals("c","c",#20031) -#20032=@"var;{c};{#20000}" -variables(#20032,"c",#20000) -bind(#20031,#20032) -#20033=* -entry_cfg_node(#20033,#20001) -#20034=@"loc,{#10000},2,1,2,0" -locations_default(#20034,#10000,2,1,2,0) -hasLocation(#20033,#20034) -#20035=* -exit_cfg_node(#20035,#20001) -hasLocation(#20035,#20024) -successor(#20026,#20029) -successor(#20031,#20028) -successor(#20029,#20031) -successor(#20028,#20035) -successor(#20033,#20026) +#20030=* +exprs(#20030,79,#20029,0,"a") +hasLocation(#20030,#20018) +enclosing_stmt(#20030,#20027) +expr_containers(#20030,#20001) +literals("a","a",#20030) +#20031=@"var;{a};{#20000}" +variables(#20031,"a",#20000) +bind(#20030,#20031) +#20032=* +exprs(#20032,79,#20029,1,"c") +hasLocation(#20032,#20022) +enclosing_stmt(#20032,#20027) +expr_containers(#20032,#20001) +literals("c","c",#20032) +#20033=@"var;{c};{#20000}" +variables(#20033,"c",#20000) +bind(#20032,#20033) +#20034=* +entry_cfg_node(#20034,#20001) +#20035=@"loc,{#10000},2,1,2,0" +locations_default(#20035,#10000,2,1,2,0) +hasLocation(#20034,#20035) +#20036=* +exit_cfg_node(#20036,#20001) +hasLocation(#20036,#20024) +successor(#20027,#20030) +successor(#20032,#20029) +successor(#20030,#20032) +successor(#20029,#20036) +successor(#20034,#20027) numlines(#10000,4,1,4) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/conditionalTypes.ts.trap b/javascript/extractor/tests/ts/output/trap/conditionalTypes.ts.trap index 2a1c0efbd441..49b5f3716a60 100644 --- a/javascript/extractor/tests/ts/output/trap/conditionalTypes.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/conditionalTypes.ts.trap @@ -5678,4507 +5678,4551 @@ variables(#22180,"ConditionalTypes2",#20000) local_namespace_names(#22181,"ConditionalTypes1",#20000) #22182=@"local_namespace_name;{ConditionalTypes2};{#20000}" local_namespace_names(#22182,"ConditionalTypes2",#20000) -#22183=* -stmts(#22183,31,#20001,0,"namespa ... any;\n}") -#22184=@"loc,{#10000},1,1,70,1" -locations_default(#22184,#10000,1,1,70,1) -hasLocation(#22183,#22184) -stmt_containers(#22183,#20001) -#22185=* -exprs(#22185,78,#22183,-1,"ConditionalTypes1") -hasLocation(#22185,#20285) -enclosing_stmt(#22185,#22183) -expr_containers(#22185,#20001) -literals("ConditionalTypes1","ConditionalTypes1",#22185) -decl(#22185,#22179) -namespacedecl(#22185,#22181) +#22183=@"var;{this};{#20000}" +variables(#22183,"this",#20000) +#22184=* +stmts(#22184,31,#20001,0,"namespa ... any;\n}") +#22185=@"loc,{#10000},1,1,70,1" +locations_default(#22185,#10000,1,1,70,1) +hasLocation(#22184,#22185) +stmt_containers(#22184,#20001) #22186=* -scopes(#22186,9) -scopenodes(#22183,#22186) -scopenesting(#22186,#20000) -#22187=@"var;{f1};{#22186}" -variables(#22187,"f1",#22186) -#22188=@"var;{f2};{#22186}" -variables(#22188,"f2",#22186) -#22189=@"local_type_name;{TypeName};{#22186}" -local_type_names(#22189,"TypeName",#22186) -#22190=@"local_type_name;{T0};{#22186}" -local_type_names(#22190,"T0",#22186) -#22191=@"local_type_name;{T1};{#22186}" -local_type_names(#22191,"T1",#22186) -#22192=@"local_type_name;{T2};{#22186}" -local_type_names(#22192,"T2",#22186) -#22193=@"local_type_name;{T3};{#22186}" -local_type_names(#22193,"T3",#22186) -#22194=@"local_type_name;{T4};{#22186}" -local_type_names(#22194,"T4",#22186) -#22195=@"local_type_name;{T10};{#22186}" -local_type_names(#22195,"T10",#22186) -#22196=@"local_type_name;{T12};{#22186}" -local_type_names(#22196,"T12",#22186) -#22197=@"local_type_name;{T11};{#22186}" -local_type_names(#22197,"T11",#22186) -#22198=@"local_type_name;{BoxedValue};{#22186}" -local_type_names(#22198,"BoxedValue",#22186) -#22199=@"local_type_name;{BoxedArray};{#22186}" -local_type_names(#22199,"BoxedArray",#22186) -#22200=@"local_type_name;{Boxed};{#22186}" -local_type_names(#22200,"Boxed",#22186) -#22201=@"local_type_name;{T20};{#22186}" -local_type_names(#22201,"T20",#22186) -#22202=@"local_type_name;{T21};{#22186}" -local_type_names(#22202,"T21",#22186) -#22203=@"local_type_name;{T22};{#22186}" -local_type_names(#22203,"T22",#22186) -#22204=@"local_type_name;{Diff};{#22186}" -local_type_names(#22204,"Diff",#22186) -#22205=@"local_type_name;{Filter};{#22186}" -local_type_names(#22205,"Filter",#22186) -#22206=@"local_type_name;{T30};{#22186}" -local_type_names(#22206,"T30",#22186) -#22207=@"local_type_name;{T31};{#22186}" -local_type_names(#22207,"T31",#22186) -#22208=@"local_type_name;{T32};{#22186}" -local_type_names(#22208,"T32",#22186) -#22209=@"local_type_name;{T33};{#22186}" -local_type_names(#22209,"T33",#22186) -#22210=@"local_type_name;{NonNullable};{#22186}" -local_type_names(#22210,"NonNullable",#22186) -#22211=@"local_type_name;{T34};{#22186}" -local_type_names(#22211,"T34",#22186) -#22212=@"local_type_name;{T35};{#22186}" -local_type_names(#22212,"T35",#22186) -#22213=@"local_type_name;{FunctionPropertyNames};{#22186}" -local_type_names(#22213,"FunctionPropertyNames",#22186) -#22214=@"local_type_name;{FunctionProperties};{#22186}" -local_type_names(#22214,"FunctionProperties",#22186) -#22215=@"local_type_name;{NonFunctionPropertyNames};{#22186}" -local_type_names(#22215,"NonFunctionPropertyNames",#22186) -#22216=@"local_type_name;{NonFunctionProperties};{#22186}" -local_type_names(#22216,"NonFunctionProperties",#22186) -#22217=@"local_type_name;{Part};{#22186}" -local_type_names(#22217,"Part",#22186) -#22218=@"local_type_name;{T40};{#22186}" -local_type_names(#22218,"T40",#22186) -#22219=@"local_type_name;{T41};{#22186}" -local_type_names(#22219,"T41",#22186) -#22220=@"local_type_name;{T42};{#22186}" -local_type_names(#22220,"T42",#22186) -#22221=@"local_type_name;{T43};{#22186}" -local_type_names(#22221,"T43",#22186) -#22222=@"local_type_name;{ReturnType};{#22186}" -local_type_names(#22222,"ReturnType",#22186) -#22223=* -stmts(#22223,35,#22183,0,"type Ty ... bject"";") -#22224=@"loc,{#10000},2,3,8,15" -locations_default(#22224,#10000,2,3,8,15) -hasLocation(#22223,#22224) -stmt_containers(#22223,#22183) -#22225=* -typeexprs(#22225,1,#22223,0,"TypeName") -hasLocation(#22225,#20291) -enclosing_stmt(#22225,#22223) -expr_containers(#22225,#22183) -literals("TypeName","TypeName",#22225) -typedecl(#22225,#22189) +exprs(#22186,78,#22184,-1,"ConditionalTypes1") +hasLocation(#22186,#20285) +enclosing_stmt(#22186,#22184) +expr_containers(#22186,#20001) +literals("ConditionalTypes1","ConditionalTypes1",#22186) +decl(#22186,#22179) +namespacedecl(#22186,#22181) +#22187=* +scopes(#22187,9) +scopenodes(#22184,#22187) +scopenesting(#22187,#20000) +#22188=@"var;{f1};{#22187}" +variables(#22188,"f1",#22187) +#22189=@"var;{f2};{#22187}" +variables(#22189,"f2",#22187) +#22190=@"local_type_name;{TypeName};{#22187}" +local_type_names(#22190,"TypeName",#22187) +#22191=@"local_type_name;{T0};{#22187}" +local_type_names(#22191,"T0",#22187) +#22192=@"local_type_name;{T1};{#22187}" +local_type_names(#22192,"T1",#22187) +#22193=@"local_type_name;{T2};{#22187}" +local_type_names(#22193,"T2",#22187) +#22194=@"local_type_name;{T3};{#22187}" +local_type_names(#22194,"T3",#22187) +#22195=@"local_type_name;{T4};{#22187}" +local_type_names(#22195,"T4",#22187) +#22196=@"local_type_name;{T10};{#22187}" +local_type_names(#22196,"T10",#22187) +#22197=@"local_type_name;{T12};{#22187}" +local_type_names(#22197,"T12",#22187) +#22198=@"local_type_name;{T11};{#22187}" +local_type_names(#22198,"T11",#22187) +#22199=@"local_type_name;{BoxedValue};{#22187}" +local_type_names(#22199,"BoxedValue",#22187) +#22200=@"local_type_name;{BoxedArray};{#22187}" +local_type_names(#22200,"BoxedArray",#22187) +#22201=@"local_type_name;{Boxed};{#22187}" +local_type_names(#22201,"Boxed",#22187) +#22202=@"local_type_name;{T20};{#22187}" +local_type_names(#22202,"T20",#22187) +#22203=@"local_type_name;{T21};{#22187}" +local_type_names(#22203,"T21",#22187) +#22204=@"local_type_name;{T22};{#22187}" +local_type_names(#22204,"T22",#22187) +#22205=@"local_type_name;{Diff};{#22187}" +local_type_names(#22205,"Diff",#22187) +#22206=@"local_type_name;{Filter};{#22187}" +local_type_names(#22206,"Filter",#22187) +#22207=@"local_type_name;{T30};{#22187}" +local_type_names(#22207,"T30",#22187) +#22208=@"local_type_name;{T31};{#22187}" +local_type_names(#22208,"T31",#22187) +#22209=@"local_type_name;{T32};{#22187}" +local_type_names(#22209,"T32",#22187) +#22210=@"local_type_name;{T33};{#22187}" +local_type_names(#22210,"T33",#22187) +#22211=@"local_type_name;{NonNullable};{#22187}" +local_type_names(#22211,"NonNullable",#22187) +#22212=@"local_type_name;{T34};{#22187}" +local_type_names(#22212,"T34",#22187) +#22213=@"local_type_name;{T35};{#22187}" +local_type_names(#22213,"T35",#22187) +#22214=@"local_type_name;{FunctionPropertyNames};{#22187}" +local_type_names(#22214,"FunctionPropertyNames",#22187) +#22215=@"local_type_name;{FunctionProperties};{#22187}" +local_type_names(#22215,"FunctionProperties",#22187) +#22216=@"local_type_name;{NonFunctionPropertyNames};{#22187}" +local_type_names(#22216,"NonFunctionPropertyNames",#22187) +#22217=@"local_type_name;{NonFunctionProperties};{#22187}" +local_type_names(#22217,"NonFunctionProperties",#22187) +#22218=@"local_type_name;{Part};{#22187}" +local_type_names(#22218,"Part",#22187) +#22219=@"local_type_name;{T40};{#22187}" +local_type_names(#22219,"T40",#22187) +#22220=@"local_type_name;{T41};{#22187}" +local_type_names(#22220,"T41",#22187) +#22221=@"local_type_name;{T42};{#22187}" +local_type_names(#22221,"T42",#22187) +#22222=@"local_type_name;{T43};{#22187}" +local_type_names(#22222,"T43",#22187) +#22223=@"local_type_name;{ReturnType};{#22187}" +local_type_names(#22223,"ReturnType",#22187) +#22224=* +stmts(#22224,35,#22184,0,"type Ty ... bject"";") +#22225=@"loc,{#10000},2,3,8,15" +locations_default(#22225,#10000,2,3,8,15) +hasLocation(#22224,#22225) +stmt_containers(#22224,#22184) #22226=* -scopes(#22226,12) -scopenodes(#22223,#22226) -scopenesting(#22226,#22186) -#22227=@"local_type_name;{T};{#22226}" -local_type_names(#22227,"T",#22226) -#22228=* -typeexprs(#22228,22,#22223,2,"T") -hasLocation(#22228,#20295) -enclosing_stmt(#22228,#22223) -expr_containers(#22228,#22183) +typeexprs(#22226,1,#22224,0,"TypeName") +hasLocation(#22226,#20291) +enclosing_stmt(#22226,#22224) +expr_containers(#22226,#22184) +literals("TypeName","TypeName",#22226) +typedecl(#22226,#22190) +#22227=* +scopes(#22227,12) +scopenodes(#22224,#22227) +scopenesting(#22227,#22187) +#22228=@"local_type_name;{T};{#22227}" +local_type_names(#22228,"T",#22227) #22229=* -typeexprs(#22229,1,#22228,0,"T") +typeexprs(#22229,22,#22224,2,"T") hasLocation(#22229,#20295) -enclosing_stmt(#22229,#22223) -expr_containers(#22229,#22183) -literals("T","T",#22229) -typedecl(#22229,#22227) +enclosing_stmt(#22229,#22224) +expr_containers(#22229,#22184) #22230=* -typeexprs(#22230,28,#22223,1,"T exten ... object""") -#22231=@"loc,{#10000},3,7,8,14" -locations_default(#22231,#10000,3,7,8,14) -hasLocation(#22230,#22231) -enclosing_stmt(#22230,#22223) -expr_containers(#22230,#22183) -#22232=* -typeexprs(#22232,0,#22230,0,"T") -hasLocation(#22232,#20301) -enclosing_stmt(#22232,#22223) -expr_containers(#22232,#22183) -literals("T","T",#22232) -typebind(#22232,#22227) +typeexprs(#22230,1,#22229,0,"T") +hasLocation(#22230,#20295) +enclosing_stmt(#22230,#22224) +expr_containers(#22230,#22184) +literals("T","T",#22230) +typedecl(#22230,#22228) +#22231=* +typeexprs(#22231,28,#22224,1,"T exten ... object""") +#22232=@"loc,{#10000},3,7,8,14" +locations_default(#22232,#10000,3,7,8,14) +hasLocation(#22231,#22232) +enclosing_stmt(#22231,#22224) +expr_containers(#22231,#22184) #22233=* -typeexprs(#22233,2,#22230,1,"string") -hasLocation(#22233,#20305) -enclosing_stmt(#22233,#22223) -expr_containers(#22233,#22183) -literals("string","string",#22233) +typeexprs(#22233,0,#22231,0,"T") +hasLocation(#22233,#20301) +enclosing_stmt(#22233,#22224) +expr_containers(#22233,#22184) +literals("T","T",#22233) +typebind(#22233,#22228) #22234=* -typeexprs(#22234,3,#22230,2,"""string""") -hasLocation(#22234,#20309) -enclosing_stmt(#22234,#22223) -expr_containers(#22234,#22183) -literals("string","""string""",#22234) +typeexprs(#22234,2,#22231,1,"string") +hasLocation(#22234,#20305) +enclosing_stmt(#22234,#22224) +expr_containers(#22234,#22184) +literals("string","string",#22234) #22235=* -typeexprs(#22235,28,#22230,3,"T exten ... object""") -#22236=@"loc,{#10000},4,7,8,14" -locations_default(#22236,#10000,4,7,8,14) -hasLocation(#22235,#22236) -enclosing_stmt(#22235,#22223) -expr_containers(#22235,#22183) -#22237=* -typeexprs(#22237,0,#22235,0,"T") -hasLocation(#22237,#20313) -enclosing_stmt(#22237,#22223) -expr_containers(#22237,#22183) -literals("T","T",#22237) -typebind(#22237,#22227) +typeexprs(#22235,3,#22231,2,"""string""") +hasLocation(#22235,#20309) +enclosing_stmt(#22235,#22224) +expr_containers(#22235,#22184) +literals("string","""string""",#22235) +#22236=* +typeexprs(#22236,28,#22231,3,"T exten ... object""") +#22237=@"loc,{#10000},4,7,8,14" +locations_default(#22237,#10000,4,7,8,14) +hasLocation(#22236,#22237) +enclosing_stmt(#22236,#22224) +expr_containers(#22236,#22184) #22238=* -typeexprs(#22238,2,#22235,1,"number") -hasLocation(#22238,#20317) -enclosing_stmt(#22238,#22223) -expr_containers(#22238,#22183) -literals("number","number",#22238) +typeexprs(#22238,0,#22236,0,"T") +hasLocation(#22238,#20313) +enclosing_stmt(#22238,#22224) +expr_containers(#22238,#22184) +literals("T","T",#22238) +typebind(#22238,#22228) #22239=* -typeexprs(#22239,3,#22235,2,"""number""") -hasLocation(#22239,#20321) -enclosing_stmt(#22239,#22223) -expr_containers(#22239,#22183) -literals("number","""number""",#22239) +typeexprs(#22239,2,#22236,1,"number") +hasLocation(#22239,#20317) +enclosing_stmt(#22239,#22224) +expr_containers(#22239,#22184) +literals("number","number",#22239) #22240=* -typeexprs(#22240,28,#22235,3,"T exten ... object""") -#22241=@"loc,{#10000},5,7,8,14" -locations_default(#22241,#10000,5,7,8,14) -hasLocation(#22240,#22241) -enclosing_stmt(#22240,#22223) -expr_containers(#22240,#22183) -#22242=* -typeexprs(#22242,0,#22240,0,"T") -hasLocation(#22242,#20325) -enclosing_stmt(#22242,#22223) -expr_containers(#22242,#22183) -literals("T","T",#22242) -typebind(#22242,#22227) +typeexprs(#22240,3,#22236,2,"""number""") +hasLocation(#22240,#20321) +enclosing_stmt(#22240,#22224) +expr_containers(#22240,#22184) +literals("number","""number""",#22240) +#22241=* +typeexprs(#22241,28,#22236,3,"T exten ... object""") +#22242=@"loc,{#10000},5,7,8,14" +locations_default(#22242,#10000,5,7,8,14) +hasLocation(#22241,#22242) +enclosing_stmt(#22241,#22224) +expr_containers(#22241,#22184) #22243=* -typeexprs(#22243,2,#22240,1,"boolean") -hasLocation(#22243,#20329) -enclosing_stmt(#22243,#22223) -expr_containers(#22243,#22183) -literals("boolean","boolean",#22243) +typeexprs(#22243,0,#22241,0,"T") +hasLocation(#22243,#20325) +enclosing_stmt(#22243,#22224) +expr_containers(#22243,#22184) +literals("T","T",#22243) +typebind(#22243,#22228) #22244=* -typeexprs(#22244,3,#22240,2,"""boolean""") -hasLocation(#22244,#20333) -enclosing_stmt(#22244,#22223) -expr_containers(#22244,#22183) -literals("boolean","""boolean""",#22244) +typeexprs(#22244,2,#22241,1,"boolean") +hasLocation(#22244,#20329) +enclosing_stmt(#22244,#22224) +expr_containers(#22244,#22184) +literals("boolean","boolean",#22244) #22245=* -typeexprs(#22245,28,#22240,3,"T exten ... object""") -#22246=@"loc,{#10000},6,7,8,14" -locations_default(#22246,#10000,6,7,8,14) -hasLocation(#22245,#22246) -enclosing_stmt(#22245,#22223) -expr_containers(#22245,#22183) -#22247=* -typeexprs(#22247,0,#22245,0,"T") -hasLocation(#22247,#20337) -enclosing_stmt(#22247,#22223) -expr_containers(#22247,#22183) -literals("T","T",#22247) -typebind(#22247,#22227) +typeexprs(#22245,3,#22241,2,"""boolean""") +hasLocation(#22245,#20333) +enclosing_stmt(#22245,#22224) +expr_containers(#22245,#22184) +literals("boolean","""boolean""",#22245) +#22246=* +typeexprs(#22246,28,#22241,3,"T exten ... object""") +#22247=@"loc,{#10000},6,7,8,14" +locations_default(#22247,#10000,6,7,8,14) +hasLocation(#22246,#22247) +enclosing_stmt(#22246,#22224) +expr_containers(#22246,#22184) #22248=* -typeexprs(#22248,2,#22245,1,"undefined") -hasLocation(#22248,#20341) -enclosing_stmt(#22248,#22223) -expr_containers(#22248,#22183) -literals("undefined","undefined",#22248) +typeexprs(#22248,0,#22246,0,"T") +hasLocation(#22248,#20337) +enclosing_stmt(#22248,#22224) +expr_containers(#22248,#22184) +literals("T","T",#22248) +typebind(#22248,#22228) #22249=* -typeexprs(#22249,3,#22245,2,"""undefined""") -hasLocation(#22249,#20345) -enclosing_stmt(#22249,#22223) -expr_containers(#22249,#22183) -literals("undefined","""undefined""",#22249) +typeexprs(#22249,2,#22246,1,"undefined") +hasLocation(#22249,#20341) +enclosing_stmt(#22249,#22224) +expr_containers(#22249,#22184) +literals("undefined","undefined",#22249) #22250=* -typeexprs(#22250,28,#22245,3,"T exten ... object""") -#22251=@"loc,{#10000},7,7,8,14" -locations_default(#22251,#10000,7,7,8,14) -hasLocation(#22250,#22251) -enclosing_stmt(#22250,#22223) -expr_containers(#22250,#22183) -#22252=* -typeexprs(#22252,0,#22250,0,"T") -hasLocation(#22252,#20349) -enclosing_stmt(#22252,#22223) -expr_containers(#22252,#22183) -literals("T","T",#22252) -typebind(#22252,#22227) +typeexprs(#22250,3,#22246,2,"""undefined""") +hasLocation(#22250,#20345) +enclosing_stmt(#22250,#22224) +expr_containers(#22250,#22184) +literals("undefined","""undefined""",#22250) +#22251=* +typeexprs(#22251,28,#22246,3,"T exten ... object""") +#22252=@"loc,{#10000},7,7,8,14" +locations_default(#22252,#10000,7,7,8,14) +hasLocation(#22251,#22252) +enclosing_stmt(#22251,#22224) +expr_containers(#22251,#22184) #22253=* -typeexprs(#22253,0,#22250,1,"Function") -hasLocation(#22253,#20353) -enclosing_stmt(#22253,#22223) -expr_containers(#22253,#22183) -literals("Function","Function",#22253) +typeexprs(#22253,0,#22251,0,"T") +hasLocation(#22253,#20349) +enclosing_stmt(#22253,#22224) +expr_containers(#22253,#22184) +literals("T","T",#22253) +typebind(#22253,#22228) #22254=* -typeexprs(#22254,3,#22250,2,"""function""") -hasLocation(#22254,#20357) -enclosing_stmt(#22254,#22223) -expr_containers(#22254,#22183) -literals("function","""function""",#22254) +typeexprs(#22254,0,#22251,1,"Function") +hasLocation(#22254,#20353) +enclosing_stmt(#22254,#22224) +expr_containers(#22254,#22184) +literals("Function","Function",#22254) #22255=* -typeexprs(#22255,3,#22250,3,"""object""") -hasLocation(#22255,#20361) -enclosing_stmt(#22255,#22223) -expr_containers(#22255,#22183) -literals("object","""object""",#22255) +typeexprs(#22255,3,#22251,2,"""function""") +hasLocation(#22255,#20357) +enclosing_stmt(#22255,#22224) +expr_containers(#22255,#22184) +literals("function","""function""",#22255) #22256=* -stmts(#22256,35,#22183,1,"type T0 ... tring>;") -#22257=@"loc,{#10000},10,3,10,29" -locations_default(#22257,#10000,10,3,10,29) -hasLocation(#22256,#22257) -stmt_containers(#22256,#22183) -#22258=* -typeexprs(#22258,1,#22256,0,"T0") -hasLocation(#22258,#20367) -enclosing_stmt(#22258,#22256) -expr_containers(#22258,#22183) -literals("T0","T0",#22258) -typedecl(#22258,#22190) +typeexprs(#22256,3,#22251,3,"""object""") +hasLocation(#22256,#20361) +enclosing_stmt(#22256,#22224) +expr_containers(#22256,#22184) +literals("object","""object""",#22256) +#22257=* +stmts(#22257,35,#22184,1,"type T0 ... tring>;") +#22258=@"loc,{#10000},10,3,10,29" +locations_default(#22258,#10000,10,3,10,29) +hasLocation(#22257,#22258) +stmt_containers(#22257,#22184) #22259=* -typeexprs(#22259,14,#22256,1,"TypeName") -#22260=@"loc,{#10000},10,13,10,28" -locations_default(#22260,#10000,10,13,10,28) -hasLocation(#22259,#22260) -enclosing_stmt(#22259,#22256) -expr_containers(#22259,#22183) -#22261=* -typeexprs(#22261,0,#22259,-1,"TypeName") -hasLocation(#22261,#20371) -enclosing_stmt(#22261,#22256) -expr_containers(#22261,#22183) -literals("TypeName","TypeName",#22261) -typebind(#22261,#22189) +typeexprs(#22259,1,#22257,0,"T0") +hasLocation(#22259,#20367) +enclosing_stmt(#22259,#22257) +expr_containers(#22259,#22184) +literals("T0","T0",#22259) +typedecl(#22259,#22191) +#22260=* +typeexprs(#22260,14,#22257,1,"TypeName") +#22261=@"loc,{#10000},10,13,10,28" +locations_default(#22261,#10000,10,13,10,28) +hasLocation(#22260,#22261) +enclosing_stmt(#22260,#22257) +expr_containers(#22260,#22184) #22262=* -typeexprs(#22262,2,#22259,0,"string") -hasLocation(#22262,#20375) -enclosing_stmt(#22262,#22256) -expr_containers(#22262,#22183) -literals("string","string",#22262) +typeexprs(#22262,0,#22260,-1,"TypeName") +hasLocation(#22262,#20371) +enclosing_stmt(#22262,#22257) +expr_containers(#22262,#22184) +literals("TypeName","TypeName",#22262) +typebind(#22262,#22190) #22263=* -stmts(#22263,35,#22183,2,"type T1 ... e<""a"">;") -#22264=@"loc,{#10000},11,3,11,26" -locations_default(#22264,#10000,11,3,11,26) -hasLocation(#22263,#22264) -stmt_containers(#22263,#22183) -#22265=* -typeexprs(#22265,1,#22263,0,"T1") -hasLocation(#22265,#20383) -enclosing_stmt(#22265,#22263) -expr_containers(#22265,#22183) -literals("T1","T1",#22265) -typedecl(#22265,#22191) +typeexprs(#22263,2,#22260,0,"string") +hasLocation(#22263,#20375) +enclosing_stmt(#22263,#22257) +expr_containers(#22263,#22184) +literals("string","string",#22263) +#22264=* +stmts(#22264,35,#22184,2,"type T1 ... e<""a"">;") +#22265=@"loc,{#10000},11,3,11,26" +locations_default(#22265,#10000,11,3,11,26) +hasLocation(#22264,#22265) +stmt_containers(#22264,#22184) #22266=* -typeexprs(#22266,14,#22263,1,"TypeName<""a"">") -#22267=@"loc,{#10000},11,13,11,25" -locations_default(#22267,#10000,11,13,11,25) -hasLocation(#22266,#22267) -enclosing_stmt(#22266,#22263) -expr_containers(#22266,#22183) -#22268=* -typeexprs(#22268,0,#22266,-1,"TypeName") -hasLocation(#22268,#20387) -enclosing_stmt(#22268,#22263) -expr_containers(#22268,#22183) -literals("TypeName","TypeName",#22268) -typebind(#22268,#22189) +typeexprs(#22266,1,#22264,0,"T1") +hasLocation(#22266,#20383) +enclosing_stmt(#22266,#22264) +expr_containers(#22266,#22184) +literals("T1","T1",#22266) +typedecl(#22266,#22192) +#22267=* +typeexprs(#22267,14,#22264,1,"TypeName<""a"">") +#22268=@"loc,{#10000},11,13,11,25" +locations_default(#22268,#10000,11,13,11,25) +hasLocation(#22267,#22268) +enclosing_stmt(#22267,#22264) +expr_containers(#22267,#22184) #22269=* -typeexprs(#22269,3,#22266,0,"""a""") -hasLocation(#22269,#20391) -enclosing_stmt(#22269,#22263) -expr_containers(#22269,#22183) -literals("a","""a""",#22269) +typeexprs(#22269,0,#22267,-1,"TypeName") +hasLocation(#22269,#20387) +enclosing_stmt(#22269,#22264) +expr_containers(#22269,#22184) +literals("TypeName","TypeName",#22269) +typebind(#22269,#22190) #22270=* -stmts(#22270,35,#22183,3,"type T2 ... ;") -#22271=@"loc,{#10000},12,3,12,27" -locations_default(#22271,#10000,12,3,12,27) -hasLocation(#22270,#22271) -stmt_containers(#22270,#22183) -#22272=* -typeexprs(#22272,1,#22270,0,"T2") -hasLocation(#22272,#20399) -enclosing_stmt(#22272,#22270) -expr_containers(#22272,#22183) -literals("T2","T2",#22272) -typedecl(#22272,#22192) +typeexprs(#22270,3,#22267,0,"""a""") +hasLocation(#22270,#20391) +enclosing_stmt(#22270,#22264) +expr_containers(#22270,#22184) +literals("a","""a""",#22270) +#22271=* +stmts(#22271,35,#22184,3,"type T2 ... ;") +#22272=@"loc,{#10000},12,3,12,27" +locations_default(#22272,#10000,12,3,12,27) +hasLocation(#22271,#22272) +stmt_containers(#22271,#22184) #22273=* -typeexprs(#22273,14,#22270,1,"TypeName") -#22274=@"loc,{#10000},12,13,12,26" -locations_default(#22274,#10000,12,13,12,26) -hasLocation(#22273,#22274) -enclosing_stmt(#22273,#22270) -expr_containers(#22273,#22183) -#22275=* -typeexprs(#22275,0,#22273,-1,"TypeName") -hasLocation(#22275,#20403) -enclosing_stmt(#22275,#22270) -expr_containers(#22275,#22183) -literals("TypeName","TypeName",#22275) -typebind(#22275,#22189) +typeexprs(#22273,1,#22271,0,"T2") +hasLocation(#22273,#20399) +enclosing_stmt(#22273,#22271) +expr_containers(#22273,#22184) +literals("T2","T2",#22273) +typedecl(#22273,#22193) +#22274=* +typeexprs(#22274,14,#22271,1,"TypeName") +#22275=@"loc,{#10000},12,13,12,26" +locations_default(#22275,#10000,12,13,12,26) +hasLocation(#22274,#22275) +enclosing_stmt(#22274,#22271) +expr_containers(#22274,#22184) #22276=* -typeexprs(#22276,5,#22273,0,"true") -hasLocation(#22276,#20407) -enclosing_stmt(#22276,#22270) -expr_containers(#22276,#22183) -literals("true","true",#22276) +typeexprs(#22276,0,#22274,-1,"TypeName") +hasLocation(#22276,#20403) +enclosing_stmt(#22276,#22271) +expr_containers(#22276,#22184) +literals("TypeName","TypeName",#22276) +typebind(#22276,#22190) #22277=* -stmts(#22277,35,#22183,4,"type T3 ... void>;") -#22278=@"loc,{#10000},13,3,13,33" -locations_default(#22278,#10000,13,3,13,33) -hasLocation(#22277,#22278) -stmt_containers(#22277,#22183) -#22279=* -typeexprs(#22279,1,#22277,0,"T3") -hasLocation(#22279,#20415) -enclosing_stmt(#22279,#22277) -expr_containers(#22279,#22183) -literals("T3","T3",#22279) -typedecl(#22279,#22193) +typeexprs(#22277,5,#22274,0,"true") +hasLocation(#22277,#20407) +enclosing_stmt(#22277,#22271) +expr_containers(#22277,#22184) +literals("true","true",#22277) +#22278=* +stmts(#22278,35,#22184,4,"type T3 ... void>;") +#22279=@"loc,{#10000},13,3,13,33" +locations_default(#22279,#10000,13,3,13,33) +hasLocation(#22278,#22279) +stmt_containers(#22278,#22184) #22280=* -typeexprs(#22280,14,#22277,1,"TypeName<() => void>") -#22281=@"loc,{#10000},13,13,13,32" -locations_default(#22281,#10000,13,13,13,32) -hasLocation(#22280,#22281) -enclosing_stmt(#22280,#22277) -expr_containers(#22280,#22183) -#22282=* -typeexprs(#22282,0,#22280,-1,"TypeName") -hasLocation(#22282,#20419) -enclosing_stmt(#22282,#22277) -expr_containers(#22282,#22183) -literals("TypeName","TypeName",#22282) -typebind(#22282,#22189) +typeexprs(#22280,1,#22278,0,"T3") +hasLocation(#22280,#20415) +enclosing_stmt(#22280,#22278) +expr_containers(#22280,#22184) +literals("T3","T3",#22280) +typedecl(#22280,#22194) +#22281=* +typeexprs(#22281,14,#22278,1,"TypeName<() => void>") +#22282=@"loc,{#10000},13,13,13,32" +locations_default(#22282,#10000,13,13,13,32) +hasLocation(#22281,#22282) +enclosing_stmt(#22281,#22278) +expr_containers(#22281,#22184) #22283=* -typeexprs(#22283,23,#22280,0,"() => void") -#22284=@"loc,{#10000},13,22,13,31" -locations_default(#22284,#10000,13,22,13,31) -hasLocation(#22283,#22284) -enclosing_stmt(#22283,#22277) -expr_containers(#22283,#22183) -#22285=* -exprs(#22285,9,#22283,0,"() => void") -hasLocation(#22285,#22284) -enclosing_stmt(#22285,#22277) -expr_containers(#22285,#22183) +typeexprs(#22283,0,#22281,-1,"TypeName") +hasLocation(#22283,#20419) +enclosing_stmt(#22283,#22278) +expr_containers(#22283,#22184) +literals("TypeName","TypeName",#22283) +typebind(#22283,#22190) +#22284=* +typeexprs(#22284,23,#22281,0,"() => void") +#22285=@"loc,{#10000},13,22,13,31" +locations_default(#22285,#10000,13,22,13,31) +hasLocation(#22284,#22285) +enclosing_stmt(#22284,#22278) +expr_containers(#22284,#22184) #22286=* -scopes(#22286,1) -scopenodes(#22285,#22286) -scopenesting(#22286,#22186) -#22287=@"var;{arguments};{#22286}" -variables(#22287,"arguments",#22286) -is_arguments_object(#22287) -#22288=* -typeexprs(#22288,2,#22285,-3,"void") -hasLocation(#22288,#20429) -expr_containers(#22288,#22285) -literals("void","void",#22288) -#22289=* -stmts(#22289,35,#22183,5,"type T4 ... ing[]>;") -#22290=@"loc,{#10000},14,3,14,31" -locations_default(#22290,#10000,14,3,14,31) -hasLocation(#22289,#22290) -stmt_containers(#22289,#22183) +exprs(#22286,9,#22284,0,"() => void") +hasLocation(#22286,#22285) +enclosing_stmt(#22286,#22278) +expr_containers(#22286,#22184) +#22287=* +scopes(#22287,1) +scopenodes(#22286,#22287) +scopenesting(#22287,#22187) +#22288=@"var;{this};{#22287}" +variables(#22288,"this",#22287) +#22289=@"var;{arguments};{#22287}" +variables(#22289,"arguments",#22287) +is_arguments_object(#22289) +#22290=* +typeexprs(#22290,2,#22286,-3,"void") +hasLocation(#22290,#20429) +expr_containers(#22290,#22286) +literals("void","void",#22290) #22291=* -typeexprs(#22291,1,#22289,0,"T4") -hasLocation(#22291,#20437) -enclosing_stmt(#22291,#22289) -expr_containers(#22291,#22183) -literals("T4","T4",#22291) -typedecl(#22291,#22194) -#22292=* -typeexprs(#22292,14,#22289,1,"TypeName") -#22293=@"loc,{#10000},14,13,14,30" -locations_default(#22293,#10000,14,13,14,30) -hasLocation(#22292,#22293) -enclosing_stmt(#22292,#22289) -expr_containers(#22292,#22183) +stmts(#22291,35,#22184,5,"type T4 ... ing[]>;") +#22292=@"loc,{#10000},14,3,14,31" +locations_default(#22292,#10000,14,3,14,31) +hasLocation(#22291,#22292) +stmt_containers(#22291,#22184) +#22293=* +typeexprs(#22293,1,#22291,0,"T4") +hasLocation(#22293,#20437) +enclosing_stmt(#22293,#22291) +expr_containers(#22293,#22184) +literals("T4","T4",#22293) +typedecl(#22293,#22195) #22294=* -typeexprs(#22294,0,#22292,-1,"TypeName") -hasLocation(#22294,#20441) -enclosing_stmt(#22294,#22289) -expr_containers(#22294,#22183) -literals("TypeName","TypeName",#22294) -typebind(#22294,#22189) -#22295=* -typeexprs(#22295,6,#22292,0,"string[]") -#22296=@"loc,{#10000},14,22,14,29" -locations_default(#22296,#10000,14,22,14,29) -hasLocation(#22295,#22296) -enclosing_stmt(#22295,#22289) -expr_containers(#22295,#22183) +typeexprs(#22294,14,#22291,1,"TypeName") +#22295=@"loc,{#10000},14,13,14,30" +locations_default(#22295,#10000,14,13,14,30) +hasLocation(#22294,#22295) +enclosing_stmt(#22294,#22291) +expr_containers(#22294,#22184) +#22296=* +typeexprs(#22296,0,#22294,-1,"TypeName") +hasLocation(#22296,#20441) +enclosing_stmt(#22296,#22291) +expr_containers(#22296,#22184) +literals("TypeName","TypeName",#22296) +typebind(#22296,#22190) #22297=* -typeexprs(#22297,2,#22295,0,"string") -hasLocation(#22297,#20445) -enclosing_stmt(#22297,#22289) -expr_containers(#22297,#22183) -literals("string","string",#22297) -#22298=* -stmts(#22298,35,#22183,6,"type T1 ... void)>;") -#22299=@"loc,{#10000},17,3,17,45" -locations_default(#22299,#10000,17,3,17,45) -hasLocation(#22298,#22299) -stmt_containers(#22298,#22183) +typeexprs(#22297,6,#22294,0,"string[]") +#22298=@"loc,{#10000},14,22,14,29" +locations_default(#22298,#10000,14,22,14,29) +hasLocation(#22297,#22298) +enclosing_stmt(#22297,#22291) +expr_containers(#22297,#22184) +#22299=* +typeexprs(#22299,2,#22297,0,"string") +hasLocation(#22299,#20445) +enclosing_stmt(#22299,#22291) +expr_containers(#22299,#22184) +literals("string","string",#22299) #22300=* -typeexprs(#22300,1,#22298,0,"T10") -hasLocation(#22300,#20457) -enclosing_stmt(#22300,#22298) -expr_containers(#22300,#22183) -literals("T10","T10",#22300) -typedecl(#22300,#22195) -#22301=* -typeexprs(#22301,14,#22298,1,"TypeNam ... void)>") -#22302=@"loc,{#10000},17,14,17,44" -locations_default(#22302,#10000,17,14,17,44) -hasLocation(#22301,#22302) -enclosing_stmt(#22301,#22298) -expr_containers(#22301,#22183) +stmts(#22300,35,#22184,6,"type T1 ... void)>;") +#22301=@"loc,{#10000},17,3,17,45" +locations_default(#22301,#10000,17,3,17,45) +hasLocation(#22300,#22301) +stmt_containers(#22300,#22184) +#22302=* +typeexprs(#22302,1,#22300,0,"T10") +hasLocation(#22302,#20457) +enclosing_stmt(#22302,#22300) +expr_containers(#22302,#22184) +literals("T10","T10",#22302) +typedecl(#22302,#22196) #22303=* -typeexprs(#22303,0,#22301,-1,"TypeName") -hasLocation(#22303,#20461) -enclosing_stmt(#22303,#22298) -expr_containers(#22303,#22183) -literals("TypeName","TypeName",#22303) -typebind(#22303,#22189) -#22304=* -typeexprs(#22304,7,#22301,0,"string ... > void)") -#22305=@"loc,{#10000},17,23,17,43" -locations_default(#22305,#10000,17,23,17,43) -hasLocation(#22304,#22305) -enclosing_stmt(#22304,#22298) -expr_containers(#22304,#22183) +typeexprs(#22303,14,#22300,1,"TypeNam ... void)>") +#22304=@"loc,{#10000},17,14,17,44" +locations_default(#22304,#10000,17,14,17,44) +hasLocation(#22303,#22304) +enclosing_stmt(#22303,#22300) +expr_containers(#22303,#22184) +#22305=* +typeexprs(#22305,0,#22303,-1,"TypeName") +hasLocation(#22305,#20461) +enclosing_stmt(#22305,#22300) +expr_containers(#22305,#22184) +literals("TypeName","TypeName",#22305) +typebind(#22305,#22190) #22306=* -typeexprs(#22306,2,#22304,0,"string") -hasLocation(#22306,#20465) -enclosing_stmt(#22306,#22298) -expr_containers(#22306,#22183) -literals("string","string",#22306) -#22307=* -typeexprs(#22307,10,#22304,1,"(() => void)") -#22308=@"loc,{#10000},17,32,17,43" -locations_default(#22308,#10000,17,32,17,43) -hasLocation(#22307,#22308) -enclosing_stmt(#22307,#22298) -expr_containers(#22307,#22183) +typeexprs(#22306,7,#22303,0,"string ... > void)") +#22307=@"loc,{#10000},17,23,17,43" +locations_default(#22307,#10000,17,23,17,43) +hasLocation(#22306,#22307) +enclosing_stmt(#22306,#22300) +expr_containers(#22306,#22184) +#22308=* +typeexprs(#22308,2,#22306,0,"string") +hasLocation(#22308,#20465) +enclosing_stmt(#22308,#22300) +expr_containers(#22308,#22184) +literals("string","string",#22308) #22309=* -typeexprs(#22309,23,#22307,0,"() => void") -#22310=@"loc,{#10000},17,33,17,42" -locations_default(#22310,#10000,17,33,17,42) +typeexprs(#22309,10,#22306,1,"(() => void)") +#22310=@"loc,{#10000},17,32,17,43" +locations_default(#22310,#10000,17,32,17,43) hasLocation(#22309,#22310) -enclosing_stmt(#22309,#22298) -expr_containers(#22309,#22183) +enclosing_stmt(#22309,#22300) +expr_containers(#22309,#22184) #22311=* -exprs(#22311,9,#22309,0,"() => void") -hasLocation(#22311,#22310) -enclosing_stmt(#22311,#22298) -expr_containers(#22311,#22183) -#22312=* -scopes(#22312,1) -scopenodes(#22311,#22312) -scopenesting(#22312,#22186) -#22313=@"var;{arguments};{#22312}" -variables(#22313,"arguments",#22312) -is_arguments_object(#22313) +typeexprs(#22311,23,#22309,0,"() => void") +#22312=@"loc,{#10000},17,33,17,42" +locations_default(#22312,#10000,17,33,17,42) +hasLocation(#22311,#22312) +enclosing_stmt(#22311,#22300) +expr_containers(#22311,#22184) +#22313=* +exprs(#22313,9,#22311,0,"() => void") +hasLocation(#22313,#22312) +enclosing_stmt(#22313,#22300) +expr_containers(#22313,#22184) #22314=* -typeexprs(#22314,2,#22311,-3,"void") -hasLocation(#22314,#20477) -expr_containers(#22314,#22311) -literals("void","void",#22314) -#22315=* -stmts(#22315,35,#22183,7,"type T1 ... fined>;") -#22316=@"loc,{#10000},18,3,18,53" -locations_default(#22316,#10000,18,3,18,53) -hasLocation(#22315,#22316) -stmt_containers(#22315,#22183) +scopes(#22314,1) +scopenodes(#22313,#22314) +scopenesting(#22314,#22187) +#22315=@"var;{this};{#22314}" +variables(#22315,"this",#22314) +#22316=@"var;{arguments};{#22314}" +variables(#22316,"arguments",#22314) +is_arguments_object(#22316) #22317=* -typeexprs(#22317,1,#22315,0,"T12") -hasLocation(#22317,#20487) -enclosing_stmt(#22317,#22315) -expr_containers(#22317,#22183) -literals("T12","T12",#22317) -typedecl(#22317,#22196) +typeexprs(#22317,2,#22313,-3,"void") +hasLocation(#22317,#20477) +expr_containers(#22317,#22313) +literals("void","void",#22317) #22318=* -typeexprs(#22318,14,#22315,1,"TypeNam ... efined>") -#22319=@"loc,{#10000},18,14,18,52" -locations_default(#22319,#10000,18,14,18,52) +stmts(#22318,35,#22184,7,"type T1 ... fined>;") +#22319=@"loc,{#10000},18,3,18,53" +locations_default(#22319,#10000,18,3,18,53) hasLocation(#22318,#22319) -enclosing_stmt(#22318,#22315) -expr_containers(#22318,#22183) +stmt_containers(#22318,#22184) #22320=* -typeexprs(#22320,0,#22318,-1,"TypeName") -hasLocation(#22320,#20491) -enclosing_stmt(#22320,#22315) -expr_containers(#22320,#22183) -literals("TypeName","TypeName",#22320) -typebind(#22320,#22189) +typeexprs(#22320,1,#22318,0,"T12") +hasLocation(#22320,#20487) +enclosing_stmt(#22320,#22318) +expr_containers(#22320,#22184) +literals("T12","T12",#22320) +typedecl(#22320,#22197) #22321=* -typeexprs(#22321,7,#22318,0,"string ... defined") -#22322=@"loc,{#10000},18,23,18,51" -locations_default(#22322,#10000,18,23,18,51) +typeexprs(#22321,14,#22318,1,"TypeNam ... efined>") +#22322=@"loc,{#10000},18,14,18,52" +locations_default(#22322,#10000,18,14,18,52) hasLocation(#22321,#22322) -enclosing_stmt(#22321,#22315) -expr_containers(#22321,#22183) +enclosing_stmt(#22321,#22318) +expr_containers(#22321,#22184) #22323=* -typeexprs(#22323,2,#22321,0,"string") -hasLocation(#22323,#20495) -enclosing_stmt(#22323,#22315) -expr_containers(#22323,#22183) -literals("string","string",#22323) +typeexprs(#22323,0,#22321,-1,"TypeName") +hasLocation(#22323,#20491) +enclosing_stmt(#22323,#22318) +expr_containers(#22323,#22184) +literals("TypeName","TypeName",#22323) +typebind(#22323,#22190) #22324=* -typeexprs(#22324,6,#22321,1,"string[]") -#22325=@"loc,{#10000},18,32,18,39" -locations_default(#22325,#10000,18,32,18,39) +typeexprs(#22324,7,#22321,0,"string ... defined") +#22325=@"loc,{#10000},18,23,18,51" +locations_default(#22325,#10000,18,23,18,51) hasLocation(#22324,#22325) -enclosing_stmt(#22324,#22315) -expr_containers(#22324,#22183) +enclosing_stmt(#22324,#22318) +expr_containers(#22324,#22184) #22326=* typeexprs(#22326,2,#22324,0,"string") -hasLocation(#22326,#20499) -enclosing_stmt(#22326,#22315) -expr_containers(#22326,#22183) +hasLocation(#22326,#20495) +enclosing_stmt(#22326,#22318) +expr_containers(#22326,#22184) literals("string","string",#22326) #22327=* -typeexprs(#22327,2,#22321,2,"undefined") -hasLocation(#22327,#20507) -enclosing_stmt(#22327,#22315) -expr_containers(#22327,#22183) -literals("undefined","undefined",#22327) -#22328=* -stmts(#22328,35,#22183,8,"type T1 ... ber[]>;") -#22329=@"loc,{#10000},19,3,19,43" -locations_default(#22329,#10000,19,3,19,43) -hasLocation(#22328,#22329) -stmt_containers(#22328,#22183) +typeexprs(#22327,6,#22324,1,"string[]") +#22328=@"loc,{#10000},18,32,18,39" +locations_default(#22328,#10000,18,32,18,39) +hasLocation(#22327,#22328) +enclosing_stmt(#22327,#22318) +expr_containers(#22327,#22184) +#22329=* +typeexprs(#22329,2,#22327,0,"string") +hasLocation(#22329,#20499) +enclosing_stmt(#22329,#22318) +expr_containers(#22329,#22184) +literals("string","string",#22329) #22330=* -typeexprs(#22330,1,#22328,0,"T11") -hasLocation(#22330,#20515) -enclosing_stmt(#22330,#22328) -expr_containers(#22330,#22183) -literals("T11","T11",#22330) -typedecl(#22330,#22197) +typeexprs(#22330,2,#22324,2,"undefined") +hasLocation(#22330,#20507) +enclosing_stmt(#22330,#22318) +expr_containers(#22330,#22184) +literals("undefined","undefined",#22330) #22331=* -typeexprs(#22331,14,#22328,1,"TypeNam ... mber[]>") -#22332=@"loc,{#10000},19,14,19,42" -locations_default(#22332,#10000,19,14,19,42) +stmts(#22331,35,#22184,8,"type T1 ... ber[]>;") +#22332=@"loc,{#10000},19,3,19,43" +locations_default(#22332,#10000,19,3,19,43) hasLocation(#22331,#22332) -enclosing_stmt(#22331,#22328) -expr_containers(#22331,#22183) +stmt_containers(#22331,#22184) #22333=* -typeexprs(#22333,0,#22331,-1,"TypeName") -hasLocation(#22333,#20519) -enclosing_stmt(#22333,#22328) -expr_containers(#22333,#22183) -literals("TypeName","TypeName",#22333) -typebind(#22333,#22189) +typeexprs(#22333,1,#22331,0,"T11") +hasLocation(#22333,#20515) +enclosing_stmt(#22333,#22331) +expr_containers(#22333,#22184) +literals("T11","T11",#22333) +typedecl(#22333,#22198) #22334=* -typeexprs(#22334,7,#22331,0,"string[] | number[]") -#22335=@"loc,{#10000},19,23,19,41" -locations_default(#22335,#10000,19,23,19,41) +typeexprs(#22334,14,#22331,1,"TypeNam ... mber[]>") +#22335=@"loc,{#10000},19,14,19,42" +locations_default(#22335,#10000,19,14,19,42) hasLocation(#22334,#22335) -enclosing_stmt(#22334,#22328) -expr_containers(#22334,#22183) +enclosing_stmt(#22334,#22331) +expr_containers(#22334,#22184) #22336=* -typeexprs(#22336,6,#22334,0,"string[]") -#22337=@"loc,{#10000},19,23,19,30" -locations_default(#22337,#10000,19,23,19,30) -hasLocation(#22336,#22337) -enclosing_stmt(#22336,#22328) -expr_containers(#22336,#22183) -#22338=* -typeexprs(#22338,2,#22336,0,"string") -hasLocation(#22338,#20523) -enclosing_stmt(#22338,#22328) -expr_containers(#22338,#22183) -literals("string","string",#22338) +typeexprs(#22336,0,#22334,-1,"TypeName") +hasLocation(#22336,#20519) +enclosing_stmt(#22336,#22331) +expr_containers(#22336,#22184) +literals("TypeName","TypeName",#22336) +typebind(#22336,#22190) +#22337=* +typeexprs(#22337,7,#22334,0,"string[] | number[]") +#22338=@"loc,{#10000},19,23,19,41" +locations_default(#22338,#10000,19,23,19,41) +hasLocation(#22337,#22338) +enclosing_stmt(#22337,#22331) +expr_containers(#22337,#22184) #22339=* -typeexprs(#22339,6,#22334,1,"number[]") -#22340=@"loc,{#10000},19,34,19,41" -locations_default(#22340,#10000,19,34,19,41) +typeexprs(#22339,6,#22337,0,"string[]") +#22340=@"loc,{#10000},19,23,19,30" +locations_default(#22340,#10000,19,23,19,30) hasLocation(#22339,#22340) -enclosing_stmt(#22339,#22328) -expr_containers(#22339,#22183) +enclosing_stmt(#22339,#22331) +expr_containers(#22339,#22184) #22341=* -typeexprs(#22341,2,#22339,0,"number") -hasLocation(#22341,#20531) -enclosing_stmt(#22341,#22328) -expr_containers(#22341,#22183) -literals("number","number",#22341) +typeexprs(#22341,2,#22339,0,"string") +hasLocation(#22341,#20523) +enclosing_stmt(#22341,#22331) +expr_containers(#22341,#22184) +literals("string","string",#22341) #22342=* -stmts(#22342,35,#22183,9,"type Bo ... e: T };") -#22343=@"loc,{#10000},21,3,21,36" -locations_default(#22343,#10000,21,3,21,36) +typeexprs(#22342,6,#22337,1,"number[]") +#22343=@"loc,{#10000},19,34,19,41" +locations_default(#22343,#10000,19,34,19,41) hasLocation(#22342,#22343) -stmt_containers(#22342,#22183) +enclosing_stmt(#22342,#22331) +expr_containers(#22342,#22184) #22344=* -typeexprs(#22344,1,#22342,0,"BoxedValue") -hasLocation(#22344,#20543) -enclosing_stmt(#22344,#22342) -expr_containers(#22344,#22183) -literals("BoxedValue","BoxedValue",#22344) -typedecl(#22344,#22198) +typeexprs(#22344,2,#22342,0,"number") +hasLocation(#22344,#20531) +enclosing_stmt(#22344,#22331) +expr_containers(#22344,#22184) +literals("number","number",#22344) #22345=* -scopes(#22345,12) -scopenodes(#22342,#22345) -scopenesting(#22345,#22186) -#22346=@"local_type_name;{T};{#22345}" -local_type_names(#22346,"T",#22345) +stmts(#22345,35,#22184,9,"type Bo ... e: T };") +#22346=@"loc,{#10000},21,3,21,36" +locations_default(#22346,#10000,21,3,21,36) +hasLocation(#22345,#22346) +stmt_containers(#22345,#22184) #22347=* -typeexprs(#22347,22,#22342,2,"T") -hasLocation(#22347,#20547) -enclosing_stmt(#22347,#22342) -expr_containers(#22347,#22183) +typeexprs(#22347,1,#22345,0,"BoxedValue") +hasLocation(#22347,#20543) +enclosing_stmt(#22347,#22345) +expr_containers(#22347,#22184) +literals("BoxedValue","BoxedValue",#22347) +typedecl(#22347,#22199) #22348=* -typeexprs(#22348,1,#22347,0,"T") -hasLocation(#22348,#20547) -enclosing_stmt(#22348,#22342) -expr_containers(#22348,#22183) -literals("T","T",#22348) -typedecl(#22348,#22346) -#22349=* -typeexprs(#22349,21,#22342,1,"{ value: T }") -#22350=@"loc,{#10000},21,24,21,35" -locations_default(#22350,#10000,21,24,21,35) -hasLocation(#22349,#22350) -enclosing_stmt(#22349,#22342) -expr_containers(#22349,#22183) +scopes(#22348,12) +scopenodes(#22345,#22348) +scopenesting(#22348,#22187) +#22349=@"local_type_name;{T};{#22348}" +local_type_names(#22349,"T",#22348) +#22350=* +typeexprs(#22350,22,#22345,2,"T") +hasLocation(#22350,#20547) +enclosing_stmt(#22350,#22345) +expr_containers(#22350,#22184) #22351=* -properties(#22351,#22349,0,8,"value: T") -#22352=@"loc,{#10000},21,26,21,33" -locations_default(#22352,#10000,21,26,21,33) -hasLocation(#22351,#22352) -#22353=* -exprs(#22353,0,#22351,0,"value") -hasLocation(#22353,#20555) -enclosing_stmt(#22353,#22342) -expr_containers(#22353,#22183) -literals("value","value",#22353) -is_abstract_member(#22351) +typeexprs(#22351,1,#22350,0,"T") +hasLocation(#22351,#20547) +enclosing_stmt(#22351,#22345) +expr_containers(#22351,#22184) +literals("T","T",#22351) +typedecl(#22351,#22349) +#22352=* +typeexprs(#22352,21,#22345,1,"{ value: T }") +#22353=@"loc,{#10000},21,24,21,35" +locations_default(#22353,#10000,21,24,21,35) +hasLocation(#22352,#22353) +enclosing_stmt(#22352,#22345) +expr_containers(#22352,#22184) #22354=* -typeexprs(#22354,0,#22351,2,"T") -hasLocation(#22354,#20559) -enclosing_stmt(#22354,#22342) -expr_containers(#22354,#22183) -literals("T","T",#22354) -typebind(#22354,#22346) -#22355=* -stmts(#22355,35,#22183,10,"type Bo ... T[] };") -#22356=@"loc,{#10000},22,3,22,38" -locations_default(#22356,#10000,22,3,22,38) -hasLocation(#22355,#22356) -stmt_containers(#22355,#22183) +properties(#22354,#22352,0,8,"value: T") +#22355=@"loc,{#10000},21,26,21,33" +locations_default(#22355,#10000,21,26,21,33) +hasLocation(#22354,#22355) +#22356=* +exprs(#22356,0,#22354,0,"value") +hasLocation(#22356,#20555) +enclosing_stmt(#22356,#22345) +expr_containers(#22356,#22184) +literals("value","value",#22356) +is_abstract_member(#22354) #22357=* -typeexprs(#22357,1,#22355,0,"BoxedArray") -hasLocation(#22357,#20567) -enclosing_stmt(#22357,#22355) -expr_containers(#22357,#22183) -literals("BoxedArray","BoxedArray",#22357) -typedecl(#22357,#22199) +typeexprs(#22357,0,#22354,2,"T") +hasLocation(#22357,#20559) +enclosing_stmt(#22357,#22345) +expr_containers(#22357,#22184) +literals("T","T",#22357) +typebind(#22357,#22349) #22358=* -scopes(#22358,12) -scopenodes(#22355,#22358) -scopenesting(#22358,#22186) -#22359=@"local_type_name;{T};{#22358}" -local_type_names(#22359,"T",#22358) +stmts(#22358,35,#22184,10,"type Bo ... T[] };") +#22359=@"loc,{#10000},22,3,22,38" +locations_default(#22359,#10000,22,3,22,38) +hasLocation(#22358,#22359) +stmt_containers(#22358,#22184) #22360=* -typeexprs(#22360,22,#22355,2,"T") -hasLocation(#22360,#20571) -enclosing_stmt(#22360,#22355) -expr_containers(#22360,#22183) +typeexprs(#22360,1,#22358,0,"BoxedArray") +hasLocation(#22360,#20567) +enclosing_stmt(#22360,#22358) +expr_containers(#22360,#22184) +literals("BoxedArray","BoxedArray",#22360) +typedecl(#22360,#22200) #22361=* -typeexprs(#22361,1,#22360,0,"T") -hasLocation(#22361,#20571) -enclosing_stmt(#22361,#22355) -expr_containers(#22361,#22183) -literals("T","T",#22361) -typedecl(#22361,#22359) -#22362=* -typeexprs(#22362,21,#22355,1,"{ array: T[] }") -#22363=@"loc,{#10000},22,24,22,37" -locations_default(#22363,#10000,22,24,22,37) -hasLocation(#22362,#22363) -enclosing_stmt(#22362,#22355) -expr_containers(#22362,#22183) +scopes(#22361,12) +scopenodes(#22358,#22361) +scopenesting(#22361,#22187) +#22362=@"local_type_name;{T};{#22361}" +local_type_names(#22362,"T",#22361) +#22363=* +typeexprs(#22363,22,#22358,2,"T") +hasLocation(#22363,#20571) +enclosing_stmt(#22363,#22358) +expr_containers(#22363,#22184) #22364=* -properties(#22364,#22362,0,8,"array: T[]") -#22365=@"loc,{#10000},22,26,22,35" -locations_default(#22365,#10000,22,26,22,35) -hasLocation(#22364,#22365) -#22366=* -exprs(#22366,0,#22364,0,"array") -hasLocation(#22366,#20579) -enclosing_stmt(#22366,#22355) -expr_containers(#22366,#22183) -literals("array","array",#22366) -is_abstract_member(#22364) +typeexprs(#22364,1,#22363,0,"T") +hasLocation(#22364,#20571) +enclosing_stmt(#22364,#22358) +expr_containers(#22364,#22184) +literals("T","T",#22364) +typedecl(#22364,#22362) +#22365=* +typeexprs(#22365,21,#22358,1,"{ array: T[] }") +#22366=@"loc,{#10000},22,24,22,37" +locations_default(#22366,#10000,22,24,22,37) +hasLocation(#22365,#22366) +enclosing_stmt(#22365,#22358) +expr_containers(#22365,#22184) #22367=* -typeexprs(#22367,6,#22364,2,"T[]") -#22368=@"loc,{#10000},22,33,22,35" -locations_default(#22368,#10000,22,33,22,35) +properties(#22367,#22365,0,8,"array: T[]") +#22368=@"loc,{#10000},22,26,22,35" +locations_default(#22368,#10000,22,26,22,35) hasLocation(#22367,#22368) -enclosing_stmt(#22367,#22355) -expr_containers(#22367,#22183) #22369=* -typeexprs(#22369,0,#22367,0,"T") -hasLocation(#22369,#20583) -enclosing_stmt(#22369,#22355) -expr_containers(#22369,#22183) -literals("T","T",#22369) -typebind(#22369,#22359) +exprs(#22369,0,#22367,0,"array") +hasLocation(#22369,#20579) +enclosing_stmt(#22369,#22358) +expr_containers(#22369,#22184) +literals("array","array",#22369) +is_abstract_member(#22367) #22370=* -stmts(#22370,35,#22183,11,"type Bo ... lue;") -#22371=@"loc,{#10000},23,3,23,74" -locations_default(#22371,#10000,23,3,23,74) +typeexprs(#22370,6,#22367,2,"T[]") +#22371=@"loc,{#10000},22,33,22,35" +locations_default(#22371,#10000,22,33,22,35) hasLocation(#22370,#22371) -stmt_containers(#22370,#22183) +enclosing_stmt(#22370,#22358) +expr_containers(#22370,#22184) #22372=* -typeexprs(#22372,1,#22370,0,"Boxed") -hasLocation(#22372,#20595) -enclosing_stmt(#22372,#22370) -expr_containers(#22372,#22183) -literals("Boxed","Boxed",#22372) -typedecl(#22372,#22200) +typeexprs(#22372,0,#22370,0,"T") +hasLocation(#22372,#20583) +enclosing_stmt(#22372,#22358) +expr_containers(#22372,#22184) +literals("T","T",#22372) +typebind(#22372,#22362) #22373=* -scopes(#22373,12) -scopenodes(#22370,#22373) -scopenesting(#22373,#22186) -#22374=@"local_type_name;{T};{#22373}" -local_type_names(#22374,"T",#22373) +stmts(#22373,35,#22184,11,"type Bo ... lue;") +#22374=@"loc,{#10000},23,3,23,74" +locations_default(#22374,#10000,23,3,23,74) +hasLocation(#22373,#22374) +stmt_containers(#22373,#22184) #22375=* -typeexprs(#22375,22,#22370,2,"T") -hasLocation(#22375,#20599) -enclosing_stmt(#22375,#22370) -expr_containers(#22375,#22183) +typeexprs(#22375,1,#22373,0,"Boxed") +hasLocation(#22375,#20595) +enclosing_stmt(#22375,#22373) +expr_containers(#22375,#22184) +literals("Boxed","Boxed",#22375) +typedecl(#22375,#22201) #22376=* -typeexprs(#22376,1,#22375,0,"T") -hasLocation(#22376,#20599) -enclosing_stmt(#22376,#22370) -expr_containers(#22376,#22183) -literals("T","T",#22376) -typedecl(#22376,#22374) -#22377=* -typeexprs(#22377,28,#22370,1,"T exten ... alue") -#22378=@"loc,{#10000},23,19,23,73" -locations_default(#22378,#10000,23,19,23,73) -hasLocation(#22377,#22378) -enclosing_stmt(#22377,#22370) -expr_containers(#22377,#22183) +scopes(#22376,12) +scopenodes(#22373,#22376) +scopenesting(#22376,#22187) +#22377=@"local_type_name;{T};{#22376}" +local_type_names(#22377,"T",#22376) +#22378=* +typeexprs(#22378,22,#22373,2,"T") +hasLocation(#22378,#20599) +enclosing_stmt(#22378,#22373) +expr_containers(#22378,#22184) #22379=* -typeexprs(#22379,0,#22377,0,"T") -hasLocation(#22379,#20605) -enclosing_stmt(#22379,#22370) -expr_containers(#22379,#22183) +typeexprs(#22379,1,#22378,0,"T") +hasLocation(#22379,#20599) +enclosing_stmt(#22379,#22373) +expr_containers(#22379,#22184) literals("T","T",#22379) -typebind(#22379,#22374) +typedecl(#22379,#22377) #22380=* -typeexprs(#22380,6,#22377,1,"any[]") -#22381=@"loc,{#10000},23,29,23,33" -locations_default(#22381,#10000,23,29,23,33) +typeexprs(#22380,28,#22373,1,"T exten ... alue") +#22381=@"loc,{#10000},23,19,23,73" +locations_default(#22381,#10000,23,19,23,73) hasLocation(#22380,#22381) -enclosing_stmt(#22380,#22370) -expr_containers(#22380,#22183) +enclosing_stmt(#22380,#22373) +expr_containers(#22380,#22184) #22382=* -typeexprs(#22382,2,#22380,0,"any") -hasLocation(#22382,#20609) -enclosing_stmt(#22382,#22370) -expr_containers(#22382,#22183) -literals("any","any",#22382) +typeexprs(#22382,0,#22380,0,"T") +hasLocation(#22382,#20605) +enclosing_stmt(#22382,#22373) +expr_containers(#22382,#22184) +literals("T","T",#22382) +typebind(#22382,#22377) #22383=* -typeexprs(#22383,14,#22377,2,"BoxedAr ... umber]>") -#22384=@"loc,{#10000},23,37,23,57" -locations_default(#22384,#10000,23,37,23,57) +typeexprs(#22383,6,#22380,1,"any[]") +#22384=@"loc,{#10000},23,29,23,33" +locations_default(#22384,#10000,23,29,23,33) hasLocation(#22383,#22384) -enclosing_stmt(#22383,#22370) -expr_containers(#22383,#22183) +enclosing_stmt(#22383,#22373) +expr_containers(#22383,#22184) #22385=* -typeexprs(#22385,0,#22383,-1,"BoxedArray") -hasLocation(#22385,#20617) -enclosing_stmt(#22385,#22370) -expr_containers(#22385,#22183) -literals("BoxedArray","BoxedArray",#22385) -typebind(#22385,#22199) +typeexprs(#22385,2,#22383,0,"any") +hasLocation(#22385,#20609) +enclosing_stmt(#22385,#22373) +expr_containers(#22385,#22184) +literals("any","any",#22385) #22386=* -typeexprs(#22386,8,#22383,0,"T[number]") -#22387=@"loc,{#10000},23,48,23,56" -locations_default(#22387,#10000,23,48,23,56) +typeexprs(#22386,14,#22380,2,"BoxedAr ... umber]>") +#22387=@"loc,{#10000},23,37,23,57" +locations_default(#22387,#10000,23,37,23,57) hasLocation(#22386,#22387) -enclosing_stmt(#22386,#22370) -expr_containers(#22386,#22183) +enclosing_stmt(#22386,#22373) +expr_containers(#22386,#22184) #22388=* -typeexprs(#22388,0,#22386,0,"T") -hasLocation(#22388,#20621) -enclosing_stmt(#22388,#22370) -expr_containers(#22388,#22183) -literals("T","T",#22388) -typebind(#22388,#22374) +typeexprs(#22388,0,#22386,-1,"BoxedArray") +hasLocation(#22388,#20617) +enclosing_stmt(#22388,#22373) +expr_containers(#22388,#22184) +literals("BoxedArray","BoxedArray",#22388) +typebind(#22388,#22200) #22389=* -typeexprs(#22389,2,#22386,1,"number") -hasLocation(#22389,#20625) -enclosing_stmt(#22389,#22370) -expr_containers(#22389,#22183) -literals("number","number",#22389) -#22390=* -typeexprs(#22390,14,#22377,3,"BoxedValue") -#22391=@"loc,{#10000},23,61,23,73" -locations_default(#22391,#10000,23,61,23,73) -hasLocation(#22390,#22391) -enclosing_stmt(#22390,#22370) -expr_containers(#22390,#22183) +typeexprs(#22389,8,#22386,0,"T[number]") +#22390=@"loc,{#10000},23,48,23,56" +locations_default(#22390,#10000,23,48,23,56) +hasLocation(#22389,#22390) +enclosing_stmt(#22389,#22373) +expr_containers(#22389,#22184) +#22391=* +typeexprs(#22391,0,#22389,0,"T") +hasLocation(#22391,#20621) +enclosing_stmt(#22391,#22373) +expr_containers(#22391,#22184) +literals("T","T",#22391) +typebind(#22391,#22377) #22392=* -typeexprs(#22392,0,#22390,-1,"BoxedValue") -hasLocation(#22392,#20633) -enclosing_stmt(#22392,#22370) -expr_containers(#22392,#22183) -literals("BoxedValue","BoxedValue",#22392) -typebind(#22392,#22198) +typeexprs(#22392,2,#22389,1,"number") +hasLocation(#22392,#20625) +enclosing_stmt(#22392,#22373) +expr_containers(#22392,#22184) +literals("number","number",#22392) #22393=* -typeexprs(#22393,0,#22390,0,"T") -hasLocation(#22393,#20637) -enclosing_stmt(#22393,#22370) -expr_containers(#22393,#22183) -literals("T","T",#22393) -typebind(#22393,#22374) -#22394=* -stmts(#22394,35,#22183,12,"type T2 ... tring>;") -#22395=@"loc,{#10000},25,3,25,27" -locations_default(#22395,#10000,25,3,25,27) -hasLocation(#22394,#22395) -stmt_containers(#22394,#22183) +typeexprs(#22393,14,#22380,3,"BoxedValue") +#22394=@"loc,{#10000},23,61,23,73" +locations_default(#22394,#10000,23,61,23,73) +hasLocation(#22393,#22394) +enclosing_stmt(#22393,#22373) +expr_containers(#22393,#22184) +#22395=* +typeexprs(#22395,0,#22393,-1,"BoxedValue") +hasLocation(#22395,#20633) +enclosing_stmt(#22395,#22373) +expr_containers(#22395,#22184) +literals("BoxedValue","BoxedValue",#22395) +typebind(#22395,#22199) #22396=* -typeexprs(#22396,1,#22394,0,"T20") -hasLocation(#22396,#20645) -enclosing_stmt(#22396,#22394) -expr_containers(#22396,#22183) -literals("T20","T20",#22396) -typedecl(#22396,#22201) +typeexprs(#22396,0,#22393,0,"T") +hasLocation(#22396,#20637) +enclosing_stmt(#22396,#22373) +expr_containers(#22396,#22184) +literals("T","T",#22396) +typebind(#22396,#22377) #22397=* -typeexprs(#22397,14,#22394,1,"Boxed") -#22398=@"loc,{#10000},25,14,25,26" -locations_default(#22398,#10000,25,14,25,26) +stmts(#22397,35,#22184,12,"type T2 ... tring>;") +#22398=@"loc,{#10000},25,3,25,27" +locations_default(#22398,#10000,25,3,25,27) hasLocation(#22397,#22398) -enclosing_stmt(#22397,#22394) -expr_containers(#22397,#22183) +stmt_containers(#22397,#22184) #22399=* -typeexprs(#22399,0,#22397,-1,"Boxed") -hasLocation(#22399,#20649) -enclosing_stmt(#22399,#22394) -expr_containers(#22399,#22183) -literals("Boxed","Boxed",#22399) -typebind(#22399,#22200) +typeexprs(#22399,1,#22397,0,"T20") +hasLocation(#22399,#20645) +enclosing_stmt(#22399,#22397) +expr_containers(#22399,#22184) +literals("T20","T20",#22399) +typedecl(#22399,#22202) #22400=* -typeexprs(#22400,2,#22397,0,"string") -hasLocation(#22400,#20653) -enclosing_stmt(#22400,#22394) -expr_containers(#22400,#22183) -literals("string","string",#22400) -#22401=* -stmts(#22401,35,#22183,13,"type T2 ... ber[]>;") -#22402=@"loc,{#10000},26,3,26,29" -locations_default(#22402,#10000,26,3,26,29) -hasLocation(#22401,#22402) -stmt_containers(#22401,#22183) +typeexprs(#22400,14,#22397,1,"Boxed") +#22401=@"loc,{#10000},25,14,25,26" +locations_default(#22401,#10000,25,14,25,26) +hasLocation(#22400,#22401) +enclosing_stmt(#22400,#22397) +expr_containers(#22400,#22184) +#22402=* +typeexprs(#22402,0,#22400,-1,"Boxed") +hasLocation(#22402,#20649) +enclosing_stmt(#22402,#22397) +expr_containers(#22402,#22184) +literals("Boxed","Boxed",#22402) +typebind(#22402,#22201) #22403=* -typeexprs(#22403,1,#22401,0,"T21") -hasLocation(#22403,#20661) -enclosing_stmt(#22403,#22401) -expr_containers(#22403,#22183) -literals("T21","T21",#22403) -typedecl(#22403,#22202) +typeexprs(#22403,2,#22400,0,"string") +hasLocation(#22403,#20653) +enclosing_stmt(#22403,#22397) +expr_containers(#22403,#22184) +literals("string","string",#22403) #22404=* -typeexprs(#22404,14,#22401,1,"Boxed") -#22405=@"loc,{#10000},26,14,26,28" -locations_default(#22405,#10000,26,14,26,28) +stmts(#22404,35,#22184,13,"type T2 ... ber[]>;") +#22405=@"loc,{#10000},26,3,26,29" +locations_default(#22405,#10000,26,3,26,29) hasLocation(#22404,#22405) -enclosing_stmt(#22404,#22401) -expr_containers(#22404,#22183) +stmt_containers(#22404,#22184) #22406=* -typeexprs(#22406,0,#22404,-1,"Boxed") -hasLocation(#22406,#20665) -enclosing_stmt(#22406,#22401) -expr_containers(#22406,#22183) -literals("Boxed","Boxed",#22406) -typebind(#22406,#22200) +typeexprs(#22406,1,#22404,0,"T21") +hasLocation(#22406,#20661) +enclosing_stmt(#22406,#22404) +expr_containers(#22406,#22184) +literals("T21","T21",#22406) +typedecl(#22406,#22203) #22407=* -typeexprs(#22407,6,#22404,0,"number[]") -#22408=@"loc,{#10000},26,20,26,27" -locations_default(#22408,#10000,26,20,26,27) +typeexprs(#22407,14,#22404,1,"Boxed") +#22408=@"loc,{#10000},26,14,26,28" +locations_default(#22408,#10000,26,14,26,28) hasLocation(#22407,#22408) -enclosing_stmt(#22407,#22401) -expr_containers(#22407,#22183) +enclosing_stmt(#22407,#22404) +expr_containers(#22407,#22184) #22409=* -typeexprs(#22409,2,#22407,0,"number") -hasLocation(#22409,#20669) -enclosing_stmt(#22409,#22401) -expr_containers(#22409,#22183) -literals("number","number",#22409) +typeexprs(#22409,0,#22407,-1,"Boxed") +hasLocation(#22409,#20665) +enclosing_stmt(#22409,#22404) +expr_containers(#22409,#22184) +literals("Boxed","Boxed",#22409) +typebind(#22409,#22201) #22410=* -stmts(#22410,35,#22183,14,"type T2 ... ber[]>;") -#22411=@"loc,{#10000},27,3,27,38" -locations_default(#22411,#10000,27,3,27,38) +typeexprs(#22410,6,#22407,0,"number[]") +#22411=@"loc,{#10000},26,20,26,27" +locations_default(#22411,#10000,26,20,26,27) hasLocation(#22410,#22411) -stmt_containers(#22410,#22183) +enclosing_stmt(#22410,#22404) +expr_containers(#22410,#22184) #22412=* -typeexprs(#22412,1,#22410,0,"T22") -hasLocation(#22412,#20681) -enclosing_stmt(#22412,#22410) -expr_containers(#22412,#22183) -literals("T22","T22",#22412) -typedecl(#22412,#22203) +typeexprs(#22412,2,#22410,0,"number") +hasLocation(#22412,#20669) +enclosing_stmt(#22412,#22404) +expr_containers(#22412,#22184) +literals("number","number",#22412) #22413=* -typeexprs(#22413,14,#22410,1,"Boxed") -#22414=@"loc,{#10000},27,14,27,37" -locations_default(#22414,#10000,27,14,27,37) +stmts(#22413,35,#22184,14,"type T2 ... ber[]>;") +#22414=@"loc,{#10000},27,3,27,38" +locations_default(#22414,#10000,27,3,27,38) hasLocation(#22413,#22414) -enclosing_stmt(#22413,#22410) -expr_containers(#22413,#22183) +stmt_containers(#22413,#22184) #22415=* -typeexprs(#22415,0,#22413,-1,"Boxed") -hasLocation(#22415,#20685) -enclosing_stmt(#22415,#22410) -expr_containers(#22415,#22183) -literals("Boxed","Boxed",#22415) -typebind(#22415,#22200) +typeexprs(#22415,1,#22413,0,"T22") +hasLocation(#22415,#20681) +enclosing_stmt(#22415,#22413) +expr_containers(#22415,#22184) +literals("T22","T22",#22415) +typedecl(#22415,#22204) #22416=* -typeexprs(#22416,7,#22413,0,"string | number[]") -#22417=@"loc,{#10000},27,20,27,36" -locations_default(#22417,#10000,27,20,27,36) +typeexprs(#22416,14,#22413,1,"Boxed") +#22417=@"loc,{#10000},27,14,27,37" +locations_default(#22417,#10000,27,14,27,37) hasLocation(#22416,#22417) -enclosing_stmt(#22416,#22410) -expr_containers(#22416,#22183) +enclosing_stmt(#22416,#22413) +expr_containers(#22416,#22184) #22418=* -typeexprs(#22418,2,#22416,0,"string") -hasLocation(#22418,#20689) -enclosing_stmt(#22418,#22410) -expr_containers(#22418,#22183) -literals("string","string",#22418) +typeexprs(#22418,0,#22416,-1,"Boxed") +hasLocation(#22418,#20685) +enclosing_stmt(#22418,#22413) +expr_containers(#22418,#22184) +literals("Boxed","Boxed",#22418) +typebind(#22418,#22201) #22419=* -typeexprs(#22419,6,#22416,1,"number[]") -#22420=@"loc,{#10000},27,29,27,36" -locations_default(#22420,#10000,27,29,27,36) +typeexprs(#22419,7,#22416,0,"string | number[]") +#22420=@"loc,{#10000},27,20,27,36" +locations_default(#22420,#10000,27,20,27,36) hasLocation(#22419,#22420) -enclosing_stmt(#22419,#22410) -expr_containers(#22419,#22183) +enclosing_stmt(#22419,#22413) +expr_containers(#22419,#22184) #22421=* -typeexprs(#22421,2,#22419,0,"number") -hasLocation(#22421,#20693) -enclosing_stmt(#22421,#22410) -expr_containers(#22421,#22183) -literals("number","number",#22421) +typeexprs(#22421,2,#22419,0,"string") +hasLocation(#22421,#20689) +enclosing_stmt(#22421,#22413) +expr_containers(#22421,#22184) +literals("string","string",#22421) #22422=* -stmts(#22422,35,#22183,15,"type Di ... er : T;") -#22423=@"loc,{#10000},29,3,29,44" -locations_default(#22423,#10000,29,3,29,44) +typeexprs(#22422,6,#22419,1,"number[]") +#22423=@"loc,{#10000},27,29,27,36" +locations_default(#22423,#10000,27,29,27,36) hasLocation(#22422,#22423) -stmt_containers(#22422,#22183) +enclosing_stmt(#22422,#22413) +expr_containers(#22422,#22184) #22424=* -typeexprs(#22424,1,#22422,0,"Diff") -hasLocation(#22424,#20705) -enclosing_stmt(#22424,#22422) -expr_containers(#22424,#22183) -literals("Diff","Diff",#22424) -typedecl(#22424,#22204) +typeexprs(#22424,2,#22422,0,"number") +hasLocation(#22424,#20693) +enclosing_stmt(#22424,#22413) +expr_containers(#22424,#22184) +literals("number","number",#22424) #22425=* -scopes(#22425,12) -scopenodes(#22422,#22425) -scopenesting(#22425,#22186) -#22426=@"local_type_name;{T};{#22425}" -local_type_names(#22426,"T",#22425) -#22427=@"local_type_name;{U};{#22425}" -local_type_names(#22427,"U",#22425) +stmts(#22425,35,#22184,15,"type Di ... er : T;") +#22426=@"loc,{#10000},29,3,29,44" +locations_default(#22426,#10000,29,3,29,44) +hasLocation(#22425,#22426) +stmt_containers(#22425,#22184) +#22427=* +typeexprs(#22427,1,#22425,0,"Diff") +hasLocation(#22427,#20705) +enclosing_stmt(#22427,#22425) +expr_containers(#22427,#22184) +literals("Diff","Diff",#22427) +typedecl(#22427,#22205) #22428=* -typeexprs(#22428,22,#22422,2,"T") -hasLocation(#22428,#20709) -enclosing_stmt(#22428,#22422) -expr_containers(#22428,#22183) -#22429=* -typeexprs(#22429,1,#22428,0,"T") -hasLocation(#22429,#20709) -enclosing_stmt(#22429,#22422) -expr_containers(#22429,#22183) -literals("T","T",#22429) -typedecl(#22429,#22426) -#22430=* -typeexprs(#22430,22,#22422,3,"U") -hasLocation(#22430,#20713) -enclosing_stmt(#22430,#22422) -expr_containers(#22430,#22183) +scopes(#22428,12) +scopenodes(#22425,#22428) +scopenesting(#22428,#22187) +#22429=@"local_type_name;{T};{#22428}" +local_type_names(#22429,"T",#22428) +#22430=@"local_type_name;{U};{#22428}" +local_type_names(#22430,"U",#22428) #22431=* -typeexprs(#22431,1,#22430,0,"U") -hasLocation(#22431,#20713) -enclosing_stmt(#22431,#22422) -expr_containers(#22431,#22183) -literals("U","U",#22431) -typedecl(#22431,#22427) +typeexprs(#22431,22,#22425,2,"T") +hasLocation(#22431,#20709) +enclosing_stmt(#22431,#22425) +expr_containers(#22431,#22184) #22432=* -typeexprs(#22432,28,#22422,1,"T exten ... ver : T") -#22433=@"loc,{#10000},29,21,29,43" -locations_default(#22433,#10000,29,21,29,43) -hasLocation(#22432,#22433) -enclosing_stmt(#22432,#22422) -expr_containers(#22432,#22183) +typeexprs(#22432,1,#22431,0,"T") +hasLocation(#22432,#20709) +enclosing_stmt(#22432,#22425) +expr_containers(#22432,#22184) +literals("T","T",#22432) +typedecl(#22432,#22429) +#22433=* +typeexprs(#22433,22,#22425,3,"U") +hasLocation(#22433,#20713) +enclosing_stmt(#22433,#22425) +expr_containers(#22433,#22184) #22434=* -typeexprs(#22434,0,#22432,0,"T") -hasLocation(#22434,#20719) -enclosing_stmt(#22434,#22422) -expr_containers(#22434,#22183) -literals("T","T",#22434) -typebind(#22434,#22426) +typeexprs(#22434,1,#22433,0,"U") +hasLocation(#22434,#20713) +enclosing_stmt(#22434,#22425) +expr_containers(#22434,#22184) +literals("U","U",#22434) +typedecl(#22434,#22430) #22435=* -typeexprs(#22435,0,#22432,1,"U") -hasLocation(#22435,#20723) -enclosing_stmt(#22435,#22422) -expr_containers(#22435,#22183) -literals("U","U",#22435) -typebind(#22435,#22427) -#22436=* -typeexprs(#22436,2,#22432,2,"never") -hasLocation(#22436,#20727) -enclosing_stmt(#22436,#22422) -expr_containers(#22436,#22183) -literals("never","never",#22436) +typeexprs(#22435,28,#22425,1,"T exten ... ver : T") +#22436=@"loc,{#10000},29,21,29,43" +locations_default(#22436,#10000,29,21,29,43) +hasLocation(#22435,#22436) +enclosing_stmt(#22435,#22425) +expr_containers(#22435,#22184) #22437=* -typeexprs(#22437,0,#22432,3,"T") -hasLocation(#22437,#20731) -enclosing_stmt(#22437,#22422) -expr_containers(#22437,#22183) +typeexprs(#22437,0,#22435,0,"T") +hasLocation(#22437,#20719) +enclosing_stmt(#22437,#22425) +expr_containers(#22437,#22184) literals("T","T",#22437) -typebind(#22437,#22426) +typebind(#22437,#22429) #22438=* -stmts(#22438,35,#22183,16,"type Fi ... never;") -#22439=@"loc,{#10000},30,3,30,46" -locations_default(#22439,#10000,30,3,30,46) -hasLocation(#22438,#22439) -stmt_containers(#22438,#22183) +typeexprs(#22438,0,#22435,1,"U") +hasLocation(#22438,#20723) +enclosing_stmt(#22438,#22425) +expr_containers(#22438,#22184) +literals("U","U",#22438) +typebind(#22438,#22430) +#22439=* +typeexprs(#22439,2,#22435,2,"never") +hasLocation(#22439,#20727) +enclosing_stmt(#22439,#22425) +expr_containers(#22439,#22184) +literals("never","never",#22439) #22440=* -typeexprs(#22440,1,#22438,0,"Filter") -hasLocation(#22440,#20737) -enclosing_stmt(#22440,#22438) -expr_containers(#22440,#22183) -literals("Filter","Filter",#22440) -typedecl(#22440,#22205) +typeexprs(#22440,0,#22435,3,"T") +hasLocation(#22440,#20731) +enclosing_stmt(#22440,#22425) +expr_containers(#22440,#22184) +literals("T","T",#22440) +typebind(#22440,#22429) #22441=* -scopes(#22441,12) -scopenodes(#22438,#22441) -scopenesting(#22441,#22186) -#22442=@"local_type_name;{T};{#22441}" -local_type_names(#22442,"T",#22441) -#22443=@"local_type_name;{U};{#22441}" -local_type_names(#22443,"U",#22441) +stmts(#22441,35,#22184,16,"type Fi ... never;") +#22442=@"loc,{#10000},30,3,30,46" +locations_default(#22442,#10000,30,3,30,46) +hasLocation(#22441,#22442) +stmt_containers(#22441,#22184) +#22443=* +typeexprs(#22443,1,#22441,0,"Filter") +hasLocation(#22443,#20737) +enclosing_stmt(#22443,#22441) +expr_containers(#22443,#22184) +literals("Filter","Filter",#22443) +typedecl(#22443,#22206) #22444=* -typeexprs(#22444,22,#22438,2,"T") -hasLocation(#22444,#20741) -enclosing_stmt(#22444,#22438) -expr_containers(#22444,#22183) -#22445=* -typeexprs(#22445,1,#22444,0,"T") -hasLocation(#22445,#20741) -enclosing_stmt(#22445,#22438) -expr_containers(#22445,#22183) -literals("T","T",#22445) -typedecl(#22445,#22442) -#22446=* -typeexprs(#22446,22,#22438,3,"U") -hasLocation(#22446,#20745) -enclosing_stmt(#22446,#22438) -expr_containers(#22446,#22183) +scopes(#22444,12) +scopenodes(#22441,#22444) +scopenesting(#22444,#22187) +#22445=@"local_type_name;{T};{#22444}" +local_type_names(#22445,"T",#22444) +#22446=@"local_type_name;{U};{#22444}" +local_type_names(#22446,"U",#22444) #22447=* -typeexprs(#22447,1,#22446,0,"U") -hasLocation(#22447,#20745) -enclosing_stmt(#22447,#22438) -expr_containers(#22447,#22183) -literals("U","U",#22447) -typedecl(#22447,#22443) +typeexprs(#22447,22,#22441,2,"T") +hasLocation(#22447,#20741) +enclosing_stmt(#22447,#22441) +expr_containers(#22447,#22184) #22448=* -typeexprs(#22448,28,#22438,1,"T exten ... : never") -#22449=@"loc,{#10000},30,23,30,45" -locations_default(#22449,#10000,30,23,30,45) -hasLocation(#22448,#22449) -enclosing_stmt(#22448,#22438) -expr_containers(#22448,#22183) +typeexprs(#22448,1,#22447,0,"T") +hasLocation(#22448,#20741) +enclosing_stmt(#22448,#22441) +expr_containers(#22448,#22184) +literals("T","T",#22448) +typedecl(#22448,#22445) +#22449=* +typeexprs(#22449,22,#22441,3,"U") +hasLocation(#22449,#20745) +enclosing_stmt(#22449,#22441) +expr_containers(#22449,#22184) #22450=* -typeexprs(#22450,0,#22448,0,"T") -hasLocation(#22450,#20751) -enclosing_stmt(#22450,#22438) -expr_containers(#22450,#22183) -literals("T","T",#22450) -typebind(#22450,#22442) +typeexprs(#22450,1,#22449,0,"U") +hasLocation(#22450,#20745) +enclosing_stmt(#22450,#22441) +expr_containers(#22450,#22184) +literals("U","U",#22450) +typedecl(#22450,#22446) #22451=* -typeexprs(#22451,0,#22448,1,"U") -hasLocation(#22451,#20755) -enclosing_stmt(#22451,#22438) -expr_containers(#22451,#22183) -literals("U","U",#22451) -typebind(#22451,#22443) -#22452=* -typeexprs(#22452,0,#22448,2,"T") -hasLocation(#22452,#20759) -enclosing_stmt(#22452,#22438) -expr_containers(#22452,#22183) -literals("T","T",#22452) -typebind(#22452,#22442) +typeexprs(#22451,28,#22441,1,"T exten ... : never") +#22452=@"loc,{#10000},30,23,30,45" +locations_default(#22452,#10000,30,23,30,45) +hasLocation(#22451,#22452) +enclosing_stmt(#22451,#22441) +expr_containers(#22451,#22184) #22453=* -typeexprs(#22453,2,#22448,3,"never") -hasLocation(#22453,#20763) -enclosing_stmt(#22453,#22438) -expr_containers(#22453,#22183) -literals("never","never",#22453) +typeexprs(#22453,0,#22451,0,"T") +hasLocation(#22453,#20751) +enclosing_stmt(#22453,#22441) +expr_containers(#22453,#22184) +literals("T","T",#22453) +typebind(#22453,#22445) #22454=* -stmts(#22454,35,#22183,17,"type T3 ... | ""f"">;") -#22455=@"loc,{#10000},32,3,32,58" -locations_default(#22455,#10000,32,3,32,58) -hasLocation(#22454,#22455) -stmt_containers(#22454,#22183) +typeexprs(#22454,0,#22451,1,"U") +hasLocation(#22454,#20755) +enclosing_stmt(#22454,#22441) +expr_containers(#22454,#22184) +literals("U","U",#22454) +typebind(#22454,#22446) +#22455=* +typeexprs(#22455,0,#22451,2,"T") +hasLocation(#22455,#20759) +enclosing_stmt(#22455,#22441) +expr_containers(#22455,#22184) +literals("T","T",#22455) +typebind(#22455,#22445) #22456=* -typeexprs(#22456,1,#22454,0,"T30") -hasLocation(#22456,#20769) -enclosing_stmt(#22456,#22454) -expr_containers(#22456,#22183) -literals("T30","T30",#22456) -typedecl(#22456,#22206) +typeexprs(#22456,2,#22451,3,"never") +hasLocation(#22456,#20763) +enclosing_stmt(#22456,#22441) +expr_containers(#22456,#22184) +literals("never","never",#22456) #22457=* -typeexprs(#22457,14,#22454,1,"Diff<""a ... | ""f"">") -#22458=@"loc,{#10000},32,14,32,57" -locations_default(#22458,#10000,32,14,32,57) +stmts(#22457,35,#22184,17,"type T3 ... | ""f"">;") +#22458=@"loc,{#10000},32,3,32,58" +locations_default(#22458,#10000,32,3,32,58) hasLocation(#22457,#22458) -enclosing_stmt(#22457,#22454) -expr_containers(#22457,#22183) +stmt_containers(#22457,#22184) #22459=* -typeexprs(#22459,0,#22457,-1,"Diff") -hasLocation(#22459,#20773) -enclosing_stmt(#22459,#22454) -expr_containers(#22459,#22183) -literals("Diff","Diff",#22459) -typebind(#22459,#22204) +typeexprs(#22459,1,#22457,0,"T30") +hasLocation(#22459,#20769) +enclosing_stmt(#22459,#22457) +expr_containers(#22459,#22184) +literals("T30","T30",#22459) +typedecl(#22459,#22207) #22460=* -typeexprs(#22460,7,#22457,0,"""a"" | "" ... "" | ""d""") -#22461=@"loc,{#10000},32,19,32,39" -locations_default(#22461,#10000,32,19,32,39) +typeexprs(#22460,14,#22457,1,"Diff<""a ... | ""f"">") +#22461=@"loc,{#10000},32,14,32,57" +locations_default(#22461,#10000,32,14,32,57) hasLocation(#22460,#22461) -enclosing_stmt(#22460,#22454) -expr_containers(#22460,#22183) +enclosing_stmt(#22460,#22457) +expr_containers(#22460,#22184) #22462=* -typeexprs(#22462,3,#22460,0,"""a""") -hasLocation(#22462,#20777) -enclosing_stmt(#22462,#22454) -expr_containers(#22462,#22183) -literals("a","""a""",#22462) +typeexprs(#22462,0,#22460,-1,"Diff") +hasLocation(#22462,#20773) +enclosing_stmt(#22462,#22457) +expr_containers(#22462,#22184) +literals("Diff","Diff",#22462) +typebind(#22462,#22205) #22463=* -typeexprs(#22463,3,#22460,1,"""b""") -hasLocation(#22463,#20781) -enclosing_stmt(#22463,#22454) -expr_containers(#22463,#22183) -literals("b","""b""",#22463) -#22464=* -typeexprs(#22464,3,#22460,2,"""c""") -hasLocation(#22464,#20785) -enclosing_stmt(#22464,#22454) -expr_containers(#22464,#22183) -literals("c","""c""",#22464) +typeexprs(#22463,7,#22460,0,"""a"" | "" ... "" | ""d""") +#22464=@"loc,{#10000},32,19,32,39" +locations_default(#22464,#10000,32,19,32,39) +hasLocation(#22463,#22464) +enclosing_stmt(#22463,#22457) +expr_containers(#22463,#22184) #22465=* -typeexprs(#22465,3,#22460,3,"""d""") -hasLocation(#22465,#20789) -enclosing_stmt(#22465,#22454) -expr_containers(#22465,#22183) -literals("d","""d""",#22465) +typeexprs(#22465,3,#22463,0,"""a""") +hasLocation(#22465,#20777) +enclosing_stmt(#22465,#22457) +expr_containers(#22465,#22184) +literals("a","""a""",#22465) #22466=* -typeexprs(#22466,7,#22457,1,"""a"" | ""c"" | ""f""") -#22467=@"loc,{#10000},32,42,32,56" -locations_default(#22467,#10000,32,42,32,56) -hasLocation(#22466,#22467) -enclosing_stmt(#22466,#22454) -expr_containers(#22466,#22183) +typeexprs(#22466,3,#22463,1,"""b""") +hasLocation(#22466,#20781) +enclosing_stmt(#22466,#22457) +expr_containers(#22466,#22184) +literals("b","""b""",#22466) +#22467=* +typeexprs(#22467,3,#22463,2,"""c""") +hasLocation(#22467,#20785) +enclosing_stmt(#22467,#22457) +expr_containers(#22467,#22184) +literals("c","""c""",#22467) #22468=* -typeexprs(#22468,3,#22466,0,"""a""") -hasLocation(#22468,#20793) -enclosing_stmt(#22468,#22454) -expr_containers(#22468,#22183) -literals("a","""a""",#22468) +typeexprs(#22468,3,#22463,3,"""d""") +hasLocation(#22468,#20789) +enclosing_stmt(#22468,#22457) +expr_containers(#22468,#22184) +literals("d","""d""",#22468) #22469=* -typeexprs(#22469,3,#22466,1,"""c""") -hasLocation(#22469,#20797) -enclosing_stmt(#22469,#22454) -expr_containers(#22469,#22183) -literals("c","""c""",#22469) -#22470=* -typeexprs(#22470,3,#22466,2,"""f""") -hasLocation(#22470,#20801) -enclosing_stmt(#22470,#22454) -expr_containers(#22470,#22183) -literals("f","""f""",#22470) +typeexprs(#22469,7,#22460,1,"""a"" | ""c"" | ""f""") +#22470=@"loc,{#10000},32,42,32,56" +locations_default(#22470,#10000,32,42,32,56) +hasLocation(#22469,#22470) +enclosing_stmt(#22469,#22457) +expr_containers(#22469,#22184) #22471=* -stmts(#22471,35,#22183,18,"type T3 ... | ""f"">;") -#22472=@"loc,{#10000},33,3,33,60" -locations_default(#22472,#10000,33,3,33,60) -hasLocation(#22471,#22472) -stmt_containers(#22471,#22183) +typeexprs(#22471,3,#22469,0,"""a""") +hasLocation(#22471,#20793) +enclosing_stmt(#22471,#22457) +expr_containers(#22471,#22184) +literals("a","""a""",#22471) +#22472=* +typeexprs(#22472,3,#22469,1,"""c""") +hasLocation(#22472,#20797) +enclosing_stmt(#22472,#22457) +expr_containers(#22472,#22184) +literals("c","""c""",#22472) #22473=* -typeexprs(#22473,1,#22471,0,"T31") -hasLocation(#22473,#20809) -enclosing_stmt(#22473,#22471) -expr_containers(#22473,#22183) -literals("T31","T31",#22473) -typedecl(#22473,#22207) +typeexprs(#22473,3,#22469,2,"""f""") +hasLocation(#22473,#20801) +enclosing_stmt(#22473,#22457) +expr_containers(#22473,#22184) +literals("f","""f""",#22473) #22474=* -typeexprs(#22474,14,#22471,1,"Filter< ... | ""f"">") -#22475=@"loc,{#10000},33,14,33,59" -locations_default(#22475,#10000,33,14,33,59) +stmts(#22474,35,#22184,18,"type T3 ... | ""f"">;") +#22475=@"loc,{#10000},33,3,33,60" +locations_default(#22475,#10000,33,3,33,60) hasLocation(#22474,#22475) -enclosing_stmt(#22474,#22471) -expr_containers(#22474,#22183) +stmt_containers(#22474,#22184) #22476=* -typeexprs(#22476,0,#22474,-1,"Filter") -hasLocation(#22476,#20813) -enclosing_stmt(#22476,#22471) -expr_containers(#22476,#22183) -literals("Filter","Filter",#22476) -typebind(#22476,#22205) +typeexprs(#22476,1,#22474,0,"T31") +hasLocation(#22476,#20809) +enclosing_stmt(#22476,#22474) +expr_containers(#22476,#22184) +literals("T31","T31",#22476) +typedecl(#22476,#22208) #22477=* -typeexprs(#22477,7,#22474,0,"""a"" | "" ... "" | ""d""") -#22478=@"loc,{#10000},33,21,33,41" -locations_default(#22478,#10000,33,21,33,41) +typeexprs(#22477,14,#22474,1,"Filter< ... | ""f"">") +#22478=@"loc,{#10000},33,14,33,59" +locations_default(#22478,#10000,33,14,33,59) hasLocation(#22477,#22478) -enclosing_stmt(#22477,#22471) -expr_containers(#22477,#22183) +enclosing_stmt(#22477,#22474) +expr_containers(#22477,#22184) #22479=* -typeexprs(#22479,3,#22477,0,"""a""") -hasLocation(#22479,#20817) -enclosing_stmt(#22479,#22471) -expr_containers(#22479,#22183) -literals("a","""a""",#22479) +typeexprs(#22479,0,#22477,-1,"Filter") +hasLocation(#22479,#20813) +enclosing_stmt(#22479,#22474) +expr_containers(#22479,#22184) +literals("Filter","Filter",#22479) +typebind(#22479,#22206) #22480=* -typeexprs(#22480,3,#22477,1,"""b""") -hasLocation(#22480,#20821) -enclosing_stmt(#22480,#22471) -expr_containers(#22480,#22183) -literals("b","""b""",#22480) -#22481=* -typeexprs(#22481,3,#22477,2,"""c""") -hasLocation(#22481,#20825) -enclosing_stmt(#22481,#22471) -expr_containers(#22481,#22183) -literals("c","""c""",#22481) +typeexprs(#22480,7,#22477,0,"""a"" | "" ... "" | ""d""") +#22481=@"loc,{#10000},33,21,33,41" +locations_default(#22481,#10000,33,21,33,41) +hasLocation(#22480,#22481) +enclosing_stmt(#22480,#22474) +expr_containers(#22480,#22184) #22482=* -typeexprs(#22482,3,#22477,3,"""d""") -hasLocation(#22482,#20829) -enclosing_stmt(#22482,#22471) -expr_containers(#22482,#22183) -literals("d","""d""",#22482) +typeexprs(#22482,3,#22480,0,"""a""") +hasLocation(#22482,#20817) +enclosing_stmt(#22482,#22474) +expr_containers(#22482,#22184) +literals("a","""a""",#22482) #22483=* -typeexprs(#22483,7,#22474,1,"""a"" | ""c"" | ""f""") -#22484=@"loc,{#10000},33,44,33,58" -locations_default(#22484,#10000,33,44,33,58) -hasLocation(#22483,#22484) -enclosing_stmt(#22483,#22471) -expr_containers(#22483,#22183) +typeexprs(#22483,3,#22480,1,"""b""") +hasLocation(#22483,#20821) +enclosing_stmt(#22483,#22474) +expr_containers(#22483,#22184) +literals("b","""b""",#22483) +#22484=* +typeexprs(#22484,3,#22480,2,"""c""") +hasLocation(#22484,#20825) +enclosing_stmt(#22484,#22474) +expr_containers(#22484,#22184) +literals("c","""c""",#22484) #22485=* -typeexprs(#22485,3,#22483,0,"""a""") -hasLocation(#22485,#20833) -enclosing_stmt(#22485,#22471) -expr_containers(#22485,#22183) -literals("a","""a""",#22485) +typeexprs(#22485,3,#22480,3,"""d""") +hasLocation(#22485,#20829) +enclosing_stmt(#22485,#22474) +expr_containers(#22485,#22184) +literals("d","""d""",#22485) #22486=* -typeexprs(#22486,3,#22483,1,"""c""") -hasLocation(#22486,#20837) -enclosing_stmt(#22486,#22471) -expr_containers(#22486,#22183) -literals("c","""c""",#22486) -#22487=* -typeexprs(#22487,3,#22483,2,"""f""") -hasLocation(#22487,#20841) -enclosing_stmt(#22487,#22471) -expr_containers(#22487,#22183) -literals("f","""f""",#22487) +typeexprs(#22486,7,#22477,1,"""a"" | ""c"" | ""f""") +#22487=@"loc,{#10000},33,44,33,58" +locations_default(#22487,#10000,33,44,33,58) +hasLocation(#22486,#22487) +enclosing_stmt(#22486,#22474) +expr_containers(#22486,#22184) #22488=* -stmts(#22488,35,#22183,19,"type T3 ... ction>;") -#22489=@"loc,{#10000},34,3,34,60" -locations_default(#22489,#10000,34,3,34,60) -hasLocation(#22488,#22489) -stmt_containers(#22488,#22183) +typeexprs(#22488,3,#22486,0,"""a""") +hasLocation(#22488,#20833) +enclosing_stmt(#22488,#22474) +expr_containers(#22488,#22184) +literals("a","""a""",#22488) +#22489=* +typeexprs(#22489,3,#22486,1,"""c""") +hasLocation(#22489,#20837) +enclosing_stmt(#22489,#22474) +expr_containers(#22489,#22184) +literals("c","""c""",#22489) #22490=* -typeexprs(#22490,1,#22488,0,"T32") -hasLocation(#22490,#20849) -enclosing_stmt(#22490,#22488) -expr_containers(#22490,#22183) -literals("T32","T32",#22490) -typedecl(#22490,#22208) +typeexprs(#22490,3,#22486,2,"""f""") +hasLocation(#22490,#20841) +enclosing_stmt(#22490,#22474) +expr_containers(#22490,#22184) +literals("f","""f""",#22490) #22491=* -typeexprs(#22491,14,#22488,1,"Diff") -#22492=@"loc,{#10000},34,14,34,59" -locations_default(#22492,#10000,34,14,34,59) +stmts(#22491,35,#22184,19,"type T3 ... ction>;") +#22492=@"loc,{#10000},34,3,34,60" +locations_default(#22492,#10000,34,3,34,60) hasLocation(#22491,#22492) -enclosing_stmt(#22491,#22488) -expr_containers(#22491,#22183) +stmt_containers(#22491,#22184) #22493=* -typeexprs(#22493,0,#22491,-1,"Diff") -hasLocation(#22493,#20853) -enclosing_stmt(#22493,#22488) -expr_containers(#22493,#22183) -literals("Diff","Diff",#22493) -typebind(#22493,#22204) +typeexprs(#22493,1,#22491,0,"T32") +hasLocation(#22493,#20849) +enclosing_stmt(#22493,#22491) +expr_containers(#22493,#22184) +literals("T32","T32",#22493) +typedecl(#22493,#22209) #22494=* -typeexprs(#22494,7,#22491,0,"string ... > void)") -#22495=@"loc,{#10000},34,19,34,48" -locations_default(#22495,#10000,34,19,34,48) +typeexprs(#22494,14,#22491,1,"Diff") +#22495=@"loc,{#10000},34,14,34,59" +locations_default(#22495,#10000,34,14,34,59) hasLocation(#22494,#22495) -enclosing_stmt(#22494,#22488) -expr_containers(#22494,#22183) +enclosing_stmt(#22494,#22491) +expr_containers(#22494,#22184) #22496=* -typeexprs(#22496,2,#22494,0,"string") -hasLocation(#22496,#20857) -enclosing_stmt(#22496,#22488) -expr_containers(#22496,#22183) -literals("string","string",#22496) +typeexprs(#22496,0,#22494,-1,"Diff") +hasLocation(#22496,#20853) +enclosing_stmt(#22496,#22491) +expr_containers(#22496,#22184) +literals("Diff","Diff",#22496) +typebind(#22496,#22205) #22497=* -typeexprs(#22497,2,#22494,1,"number") -hasLocation(#22497,#20861) -enclosing_stmt(#22497,#22488) -expr_containers(#22497,#22183) -literals("number","number",#22497) -#22498=* -typeexprs(#22498,10,#22494,2,"(() => void)") -#22499=@"loc,{#10000},34,37,34,48" -locations_default(#22499,#10000,34,37,34,48) -hasLocation(#22498,#22499) -enclosing_stmt(#22498,#22488) -expr_containers(#22498,#22183) +typeexprs(#22497,7,#22494,0,"string ... > void)") +#22498=@"loc,{#10000},34,19,34,48" +locations_default(#22498,#10000,34,19,34,48) +hasLocation(#22497,#22498) +enclosing_stmt(#22497,#22491) +expr_containers(#22497,#22184) +#22499=* +typeexprs(#22499,2,#22497,0,"string") +hasLocation(#22499,#20857) +enclosing_stmt(#22499,#22491) +expr_containers(#22499,#22184) +literals("string","string",#22499) #22500=* -typeexprs(#22500,23,#22498,0,"() => void") -#22501=@"loc,{#10000},34,38,34,47" -locations_default(#22501,#10000,34,38,34,47) -hasLocation(#22500,#22501) -enclosing_stmt(#22500,#22488) -expr_containers(#22500,#22183) -#22502=* -exprs(#22502,9,#22500,0,"() => void") -hasLocation(#22502,#22501) -enclosing_stmt(#22502,#22488) -expr_containers(#22502,#22183) +typeexprs(#22500,2,#22497,1,"number") +hasLocation(#22500,#20861) +enclosing_stmt(#22500,#22491) +expr_containers(#22500,#22184) +literals("number","number",#22500) +#22501=* +typeexprs(#22501,10,#22497,2,"(() => void)") +#22502=@"loc,{#10000},34,37,34,48" +locations_default(#22502,#10000,34,37,34,48) +hasLocation(#22501,#22502) +enclosing_stmt(#22501,#22491) +expr_containers(#22501,#22184) #22503=* -scopes(#22503,1) -scopenodes(#22502,#22503) -scopenesting(#22503,#22186) -#22504=@"var;{arguments};{#22503}" -variables(#22504,"arguments",#22503) -is_arguments_object(#22504) +typeexprs(#22503,23,#22501,0,"() => void") +#22504=@"loc,{#10000},34,38,34,47" +locations_default(#22504,#10000,34,38,34,47) +hasLocation(#22503,#22504) +enclosing_stmt(#22503,#22491) +expr_containers(#22503,#22184) #22505=* -typeexprs(#22505,2,#22502,-3,"void") -hasLocation(#22505,#20873) -expr_containers(#22505,#22502) -literals("void","void",#22505) +exprs(#22505,9,#22503,0,"() => void") +hasLocation(#22505,#22504) +enclosing_stmt(#22505,#22491) +expr_containers(#22505,#22184) #22506=* -typeexprs(#22506,0,#22491,1,"Function") -hasLocation(#22506,#20879) -enclosing_stmt(#22506,#22488) -expr_containers(#22506,#22183) -literals("Function","Function",#22506) -#22507=* -stmts(#22507,35,#22183,20,"type T3 ... ction>;") -#22508=@"loc,{#10000},35,3,35,62" -locations_default(#22508,#10000,35,3,35,62) -hasLocation(#22507,#22508) -stmt_containers(#22507,#22183) +scopes(#22506,1) +scopenodes(#22505,#22506) +scopenesting(#22506,#22187) +#22507=@"var;{this};{#22506}" +variables(#22507,"this",#22506) +#22508=@"var;{arguments};{#22506}" +variables(#22508,"arguments",#22506) +is_arguments_object(#22508) #22509=* -typeexprs(#22509,1,#22507,0,"T33") -hasLocation(#22509,#20887) -enclosing_stmt(#22509,#22507) -expr_containers(#22509,#22183) -literals("T33","T33",#22509) -typedecl(#22509,#22209) +typeexprs(#22509,2,#22505,-3,"void") +hasLocation(#22509,#20873) +expr_containers(#22509,#22505) +literals("void","void",#22509) #22510=* -typeexprs(#22510,14,#22507,1,"Filter< ... nction>") -#22511=@"loc,{#10000},35,14,35,61" -locations_default(#22511,#10000,35,14,35,61) -hasLocation(#22510,#22511) -enclosing_stmt(#22510,#22507) -expr_containers(#22510,#22183) -#22512=* -typeexprs(#22512,0,#22510,-1,"Filter") -hasLocation(#22512,#20891) -enclosing_stmt(#22512,#22507) -expr_containers(#22512,#22183) -literals("Filter","Filter",#22512) -typebind(#22512,#22205) +typeexprs(#22510,0,#22494,1,"Function") +hasLocation(#22510,#20879) +enclosing_stmt(#22510,#22491) +expr_containers(#22510,#22184) +literals("Function","Function",#22510) +#22511=* +stmts(#22511,35,#22184,20,"type T3 ... ction>;") +#22512=@"loc,{#10000},35,3,35,62" +locations_default(#22512,#10000,35,3,35,62) +hasLocation(#22511,#22512) +stmt_containers(#22511,#22184) #22513=* -typeexprs(#22513,7,#22510,0,"string ... > void)") -#22514=@"loc,{#10000},35,21,35,50" -locations_default(#22514,#10000,35,21,35,50) -hasLocation(#22513,#22514) -enclosing_stmt(#22513,#22507) -expr_containers(#22513,#22183) -#22515=* -typeexprs(#22515,2,#22513,0,"string") -hasLocation(#22515,#20895) -enclosing_stmt(#22515,#22507) -expr_containers(#22515,#22183) -literals("string","string",#22515) +typeexprs(#22513,1,#22511,0,"T33") +hasLocation(#22513,#20887) +enclosing_stmt(#22513,#22511) +expr_containers(#22513,#22184) +literals("T33","T33",#22513) +typedecl(#22513,#22210) +#22514=* +typeexprs(#22514,14,#22511,1,"Filter< ... nction>") +#22515=@"loc,{#10000},35,14,35,61" +locations_default(#22515,#10000,35,14,35,61) +hasLocation(#22514,#22515) +enclosing_stmt(#22514,#22511) +expr_containers(#22514,#22184) #22516=* -typeexprs(#22516,2,#22513,1,"number") -hasLocation(#22516,#20899) -enclosing_stmt(#22516,#22507) -expr_containers(#22516,#22183) -literals("number","number",#22516) +typeexprs(#22516,0,#22514,-1,"Filter") +hasLocation(#22516,#20891) +enclosing_stmt(#22516,#22511) +expr_containers(#22516,#22184) +literals("Filter","Filter",#22516) +typebind(#22516,#22206) #22517=* -typeexprs(#22517,10,#22513,2,"(() => void)") -#22518=@"loc,{#10000},35,39,35,50" -locations_default(#22518,#10000,35,39,35,50) +typeexprs(#22517,7,#22514,0,"string ... > void)") +#22518=@"loc,{#10000},35,21,35,50" +locations_default(#22518,#10000,35,21,35,50) hasLocation(#22517,#22518) -enclosing_stmt(#22517,#22507) -expr_containers(#22517,#22183) +enclosing_stmt(#22517,#22511) +expr_containers(#22517,#22184) #22519=* -typeexprs(#22519,23,#22517,0,"() => void") -#22520=@"loc,{#10000},35,40,35,49" -locations_default(#22520,#10000,35,40,35,49) -hasLocation(#22519,#22520) -enclosing_stmt(#22519,#22507) -expr_containers(#22519,#22183) +typeexprs(#22519,2,#22517,0,"string") +hasLocation(#22519,#20895) +enclosing_stmt(#22519,#22511) +expr_containers(#22519,#22184) +literals("string","string",#22519) +#22520=* +typeexprs(#22520,2,#22517,1,"number") +hasLocation(#22520,#20899) +enclosing_stmt(#22520,#22511) +expr_containers(#22520,#22184) +literals("number","number",#22520) #22521=* -exprs(#22521,9,#22519,0,"() => void") -hasLocation(#22521,#22520) -enclosing_stmt(#22521,#22507) -expr_containers(#22521,#22183) -#22522=* -scopes(#22522,1) -scopenodes(#22521,#22522) -scopenesting(#22522,#22186) -#22523=@"var;{arguments};{#22522}" -variables(#22523,"arguments",#22522) -is_arguments_object(#22523) -#22524=* -typeexprs(#22524,2,#22521,-3,"void") -hasLocation(#22524,#20911) -expr_containers(#22524,#22521) -literals("void","void",#22524) +typeexprs(#22521,10,#22517,2,"(() => void)") +#22522=@"loc,{#10000},35,39,35,50" +locations_default(#22522,#10000,35,39,35,50) +hasLocation(#22521,#22522) +enclosing_stmt(#22521,#22511) +expr_containers(#22521,#22184) +#22523=* +typeexprs(#22523,23,#22521,0,"() => void") +#22524=@"loc,{#10000},35,40,35,49" +locations_default(#22524,#10000,35,40,35,49) +hasLocation(#22523,#22524) +enclosing_stmt(#22523,#22511) +expr_containers(#22523,#22184) #22525=* -typeexprs(#22525,0,#22510,1,"Function") -hasLocation(#22525,#20917) -enclosing_stmt(#22525,#22507) -expr_containers(#22525,#22183) -literals("Function","Function",#22525) +exprs(#22525,9,#22523,0,"() => void") +hasLocation(#22525,#22524) +enclosing_stmt(#22525,#22511) +expr_containers(#22525,#22184) #22526=* -stmts(#22526,35,#22183,21,"type No ... fined>;") -#22527=@"loc,{#10000},37,3,37,50" -locations_default(#22527,#10000,37,3,37,50) -hasLocation(#22526,#22527) -stmt_containers(#22526,#22183) -#22528=* -typeexprs(#22528,1,#22526,0,"NonNullable") -hasLocation(#22528,#20925) -enclosing_stmt(#22528,#22526) -expr_containers(#22528,#22183) -literals("NonNullable","NonNullable",#22528) -typedecl(#22528,#22210) +scopes(#22526,1) +scopenodes(#22525,#22526) +scopenesting(#22526,#22187) +#22527=@"var;{this};{#22526}" +variables(#22527,"this",#22526) +#22528=@"var;{arguments};{#22526}" +variables(#22528,"arguments",#22526) +is_arguments_object(#22528) #22529=* -scopes(#22529,12) -scopenodes(#22526,#22529) -scopenesting(#22529,#22186) -#22530=@"local_type_name;{T};{#22529}" -local_type_names(#22530,"T",#22529) +typeexprs(#22529,2,#22525,-3,"void") +hasLocation(#22529,#20911) +expr_containers(#22529,#22525) +literals("void","void",#22529) +#22530=* +typeexprs(#22530,0,#22514,1,"Function") +hasLocation(#22530,#20917) +enclosing_stmt(#22530,#22511) +expr_containers(#22530,#22184) +literals("Function","Function",#22530) #22531=* -typeexprs(#22531,22,#22526,2,"T") -hasLocation(#22531,#20929) -enclosing_stmt(#22531,#22526) -expr_containers(#22531,#22183) -#22532=* -typeexprs(#22532,1,#22531,0,"T") -hasLocation(#22532,#20929) -enclosing_stmt(#22532,#22526) -expr_containers(#22532,#22183) -literals("T","T",#22532) -typedecl(#22532,#22530) +stmts(#22531,35,#22184,21,"type No ... fined>;") +#22532=@"loc,{#10000},37,3,37,50" +locations_default(#22532,#10000,37,3,37,50) +hasLocation(#22531,#22532) +stmt_containers(#22531,#22184) #22533=* -typeexprs(#22533,14,#22526,1,"Diff") -#22534=@"loc,{#10000},37,25,37,49" -locations_default(#22534,#10000,37,25,37,49) -hasLocation(#22533,#22534) -enclosing_stmt(#22533,#22526) -expr_containers(#22533,#22183) -#22535=* -typeexprs(#22535,0,#22533,-1,"Diff") -hasLocation(#22535,#20935) -enclosing_stmt(#22535,#22526) -expr_containers(#22535,#22183) -literals("Diff","Diff",#22535) -typebind(#22535,#22204) +typeexprs(#22533,1,#22531,0,"NonNullable") +hasLocation(#22533,#20925) +enclosing_stmt(#22533,#22531) +expr_containers(#22533,#22184) +literals("NonNullable","NonNullable",#22533) +typedecl(#22533,#22211) +#22534=* +scopes(#22534,12) +scopenodes(#22531,#22534) +scopenesting(#22534,#22187) +#22535=@"local_type_name;{T};{#22534}" +local_type_names(#22535,"T",#22534) #22536=* -typeexprs(#22536,0,#22533,0,"T") -hasLocation(#22536,#20939) -enclosing_stmt(#22536,#22526) -expr_containers(#22536,#22183) -literals("T","T",#22536) -typebind(#22536,#22530) +typeexprs(#22536,22,#22531,2,"T") +hasLocation(#22536,#20929) +enclosing_stmt(#22536,#22531) +expr_containers(#22536,#22184) #22537=* -typeexprs(#22537,7,#22533,1,"null | undefined") -#22538=@"loc,{#10000},37,33,37,48" -locations_default(#22538,#10000,37,33,37,48) -hasLocation(#22537,#22538) -enclosing_stmt(#22537,#22526) -expr_containers(#22537,#22183) -#22539=* -typeexprs(#22539,2,#22537,0,"null") -hasLocation(#22539,#20943) -enclosing_stmt(#22539,#22526) -expr_containers(#22539,#22183) -literals("null","null",#22539) +typeexprs(#22537,1,#22536,0,"T") +hasLocation(#22537,#20929) +enclosing_stmt(#22537,#22531) +expr_containers(#22537,#22184) +literals("T","T",#22537) +typedecl(#22537,#22535) +#22538=* +typeexprs(#22538,14,#22531,1,"Diff") +#22539=@"loc,{#10000},37,25,37,49" +locations_default(#22539,#10000,37,25,37,49) +hasLocation(#22538,#22539) +enclosing_stmt(#22538,#22531) +expr_containers(#22538,#22184) #22540=* -typeexprs(#22540,2,#22537,1,"undefined") -hasLocation(#22540,#20947) -enclosing_stmt(#22540,#22526) -expr_containers(#22540,#22183) -literals("undefined","undefined",#22540) +typeexprs(#22540,0,#22538,-1,"Diff") +hasLocation(#22540,#20935) +enclosing_stmt(#22540,#22531) +expr_containers(#22540,#22184) +literals("Diff","Diff",#22540) +typebind(#22540,#22205) #22541=* -stmts(#22541,35,#22183,22,"type T3 ... fined>;") -#22542=@"loc,{#10000},39,3,39,54" -locations_default(#22542,#10000,39,3,39,54) -hasLocation(#22541,#22542) -stmt_containers(#22541,#22183) -#22543=* -typeexprs(#22543,1,#22541,0,"T34") -hasLocation(#22543,#20955) -enclosing_stmt(#22543,#22541) -expr_containers(#22543,#22183) -literals("T34","T34",#22543) -typedecl(#22543,#22211) +typeexprs(#22541,0,#22538,0,"T") +hasLocation(#22541,#20939) +enclosing_stmt(#22541,#22531) +expr_containers(#22541,#22184) +literals("T","T",#22541) +typebind(#22541,#22535) +#22542=* +typeexprs(#22542,7,#22538,1,"null | undefined") +#22543=@"loc,{#10000},37,33,37,48" +locations_default(#22543,#10000,37,33,37,48) +hasLocation(#22542,#22543) +enclosing_stmt(#22542,#22531) +expr_containers(#22542,#22184) #22544=* -typeexprs(#22544,14,#22541,1,"NonNull ... efined>") -#22545=@"loc,{#10000},39,14,39,53" -locations_default(#22545,#10000,39,14,39,53) -hasLocation(#22544,#22545) -enclosing_stmt(#22544,#22541) -expr_containers(#22544,#22183) +typeexprs(#22544,2,#22542,0,"null") +hasLocation(#22544,#20943) +enclosing_stmt(#22544,#22531) +expr_containers(#22544,#22184) +literals("null","null",#22544) +#22545=* +typeexprs(#22545,2,#22542,1,"undefined") +hasLocation(#22545,#20947) +enclosing_stmt(#22545,#22531) +expr_containers(#22545,#22184) +literals("undefined","undefined",#22545) #22546=* -typeexprs(#22546,0,#22544,-1,"NonNullable") -hasLocation(#22546,#20959) -enclosing_stmt(#22546,#22541) -expr_containers(#22546,#22183) -literals("NonNullable","NonNullable",#22546) -typebind(#22546,#22210) -#22547=* -typeexprs(#22547,7,#22544,0,"string ... defined") -#22548=@"loc,{#10000},39,26,39,52" -locations_default(#22548,#10000,39,26,39,52) -hasLocation(#22547,#22548) -enclosing_stmt(#22547,#22541) -expr_containers(#22547,#22183) +stmts(#22546,35,#22184,22,"type T3 ... fined>;") +#22547=@"loc,{#10000},39,3,39,54" +locations_default(#22547,#10000,39,3,39,54) +hasLocation(#22546,#22547) +stmt_containers(#22546,#22184) +#22548=* +typeexprs(#22548,1,#22546,0,"T34") +hasLocation(#22548,#20955) +enclosing_stmt(#22548,#22546) +expr_containers(#22548,#22184) +literals("T34","T34",#22548) +typedecl(#22548,#22212) #22549=* -typeexprs(#22549,2,#22547,0,"string") -hasLocation(#22549,#20963) -enclosing_stmt(#22549,#22541) -expr_containers(#22549,#22183) -literals("string","string",#22549) -#22550=* -typeexprs(#22550,2,#22547,1,"number") -hasLocation(#22550,#20967) -enclosing_stmt(#22550,#22541) -expr_containers(#22550,#22183) -literals("number","number",#22550) +typeexprs(#22549,14,#22546,1,"NonNull ... efined>") +#22550=@"loc,{#10000},39,14,39,53" +locations_default(#22550,#10000,39,14,39,53) +hasLocation(#22549,#22550) +enclosing_stmt(#22549,#22546) +expr_containers(#22549,#22184) #22551=* -typeexprs(#22551,2,#22547,2,"undefined") -hasLocation(#22551,#20971) -enclosing_stmt(#22551,#22541) -expr_containers(#22551,#22183) -literals("undefined","undefined",#22551) +typeexprs(#22551,0,#22549,-1,"NonNullable") +hasLocation(#22551,#20959) +enclosing_stmt(#22551,#22546) +expr_containers(#22551,#22184) +literals("NonNullable","NonNullable",#22551) +typebind(#22551,#22211) #22552=* -stmts(#22552,35,#22183,23,"type T3 ... fined>;") -#22553=@"loc,{#10000},40,3,40,63" -locations_default(#22553,#10000,40,3,40,63) +typeexprs(#22552,7,#22549,0,"string ... defined") +#22553=@"loc,{#10000},39,26,39,52" +locations_default(#22553,#10000,39,26,39,52) hasLocation(#22552,#22553) -stmt_containers(#22552,#22183) +enclosing_stmt(#22552,#22546) +expr_containers(#22552,#22184) #22554=* -typeexprs(#22554,1,#22552,0,"T35") -hasLocation(#22554,#20979) -enclosing_stmt(#22554,#22552) -expr_containers(#22554,#22183) -literals("T35","T35",#22554) -typedecl(#22554,#22212) +typeexprs(#22554,2,#22552,0,"string") +hasLocation(#22554,#20963) +enclosing_stmt(#22554,#22546) +expr_containers(#22554,#22184) +literals("string","string",#22554) #22555=* -typeexprs(#22555,14,#22552,1,"NonNull ... efined>") -#22556=@"loc,{#10000},40,14,40,62" -locations_default(#22556,#10000,40,14,40,62) -hasLocation(#22555,#22556) -enclosing_stmt(#22555,#22552) -expr_containers(#22555,#22183) +typeexprs(#22555,2,#22552,1,"number") +hasLocation(#22555,#20967) +enclosing_stmt(#22555,#22546) +expr_containers(#22555,#22184) +literals("number","number",#22555) +#22556=* +typeexprs(#22556,2,#22552,2,"undefined") +hasLocation(#22556,#20971) +enclosing_stmt(#22556,#22546) +expr_containers(#22556,#22184) +literals("undefined","undefined",#22556) #22557=* -typeexprs(#22557,0,#22555,-1,"NonNullable") -hasLocation(#22557,#20983) -enclosing_stmt(#22557,#22552) -expr_containers(#22557,#22183) -literals("NonNullable","NonNullable",#22557) -typebind(#22557,#22210) -#22558=* -typeexprs(#22558,7,#22555,0,"string ... defined") -#22559=@"loc,{#10000},40,26,40,61" -locations_default(#22559,#10000,40,26,40,61) -hasLocation(#22558,#22559) -enclosing_stmt(#22558,#22552) -expr_containers(#22558,#22183) +stmts(#22557,35,#22184,23,"type T3 ... fined>;") +#22558=@"loc,{#10000},40,3,40,63" +locations_default(#22558,#10000,40,3,40,63) +hasLocation(#22557,#22558) +stmt_containers(#22557,#22184) +#22559=* +typeexprs(#22559,1,#22557,0,"T35") +hasLocation(#22559,#20979) +enclosing_stmt(#22559,#22557) +expr_containers(#22559,#22184) +literals("T35","T35",#22559) +typedecl(#22559,#22213) #22560=* -typeexprs(#22560,2,#22558,0,"string") -hasLocation(#22560,#20987) -enclosing_stmt(#22560,#22552) -expr_containers(#22560,#22183) -literals("string","string",#22560) -#22561=* -typeexprs(#22561,6,#22558,1,"string[]") -#22562=@"loc,{#10000},40,35,40,42" -locations_default(#22562,#10000,40,35,40,42) -hasLocation(#22561,#22562) -enclosing_stmt(#22561,#22552) -expr_containers(#22561,#22183) +typeexprs(#22560,14,#22557,1,"NonNull ... efined>") +#22561=@"loc,{#10000},40,14,40,62" +locations_default(#22561,#10000,40,14,40,62) +hasLocation(#22560,#22561) +enclosing_stmt(#22560,#22557) +expr_containers(#22560,#22184) +#22562=* +typeexprs(#22562,0,#22560,-1,"NonNullable") +hasLocation(#22562,#20983) +enclosing_stmt(#22562,#22557) +expr_containers(#22562,#22184) +literals("NonNullable","NonNullable",#22562) +typebind(#22562,#22211) #22563=* -typeexprs(#22563,2,#22561,0,"string") -hasLocation(#22563,#20991) -enclosing_stmt(#22563,#22552) -expr_containers(#22563,#22183) -literals("string","string",#22563) -#22564=* -typeexprs(#22564,2,#22558,2,"null") -hasLocation(#22564,#20999) -enclosing_stmt(#22564,#22552) -expr_containers(#22564,#22183) -literals("null","null",#22564) +typeexprs(#22563,7,#22560,0,"string ... defined") +#22564=@"loc,{#10000},40,26,40,61" +locations_default(#22564,#10000,40,26,40,61) +hasLocation(#22563,#22564) +enclosing_stmt(#22563,#22557) +expr_containers(#22563,#22184) #22565=* -typeexprs(#22565,2,#22558,3,"undefined") -hasLocation(#22565,#21003) -enclosing_stmt(#22565,#22552) -expr_containers(#22565,#22183) -literals("undefined","undefined",#22565) +typeexprs(#22565,2,#22563,0,"string") +hasLocation(#22565,#20987) +enclosing_stmt(#22565,#22557) +expr_containers(#22565,#22184) +literals("string","string",#22565) #22566=* -stmts(#22566,17,#22183,24,"functio ... Ok\n }") -#22567=@"loc,{#10000},42,3,44,3" -locations_default(#22567,#10000,42,3,44,3) +typeexprs(#22566,6,#22563,1,"string[]") +#22567=@"loc,{#10000},40,35,40,42" +locations_default(#22567,#10000,40,35,40,42) hasLocation(#22566,#22567) -stmt_containers(#22566,#22183) +enclosing_stmt(#22566,#22557) +expr_containers(#22566,#22184) #22568=* -exprs(#22568,78,#22566,-1,"f1") -hasLocation(#22568,#21011) -expr_containers(#22568,#22566) -literals("f1","f1",#22568) -decl(#22568,#22187) +typeexprs(#22568,2,#22566,0,"string") +hasLocation(#22568,#20991) +enclosing_stmt(#22568,#22557) +expr_containers(#22568,#22184) +literals("string","string",#22568) #22569=* -scopes(#22569,1) -scopenodes(#22566,#22569) -scopenesting(#22569,#22186) -#22570=@"local_type_name;{T};{#22569}" -local_type_names(#22570,"T",#22569) -#22571=@"var;{x};{#22569}" -variables(#22571,"x",#22569) -#22572=* -exprs(#22572,78,#22566,0,"x") -hasLocation(#22572,#21021) -expr_containers(#22572,#22566) -literals("x","x",#22572) -decl(#22572,#22571) -#22573=@"var;{y};{#22569}" -variables(#22573,"y",#22569) +typeexprs(#22569,2,#22563,2,"null") +hasLocation(#22569,#20999) +enclosing_stmt(#22569,#22557) +expr_containers(#22569,#22184) +literals("null","null",#22569) +#22570=* +typeexprs(#22570,2,#22563,3,"undefined") +hasLocation(#22570,#21003) +enclosing_stmt(#22570,#22557) +expr_containers(#22570,#22184) +literals("undefined","undefined",#22570) +#22571=* +stmts(#22571,17,#22184,24,"functio ... Ok\n }") +#22572=@"loc,{#10000},42,3,44,3" +locations_default(#22572,#10000,42,3,44,3) +hasLocation(#22571,#22572) +stmt_containers(#22571,#22184) +#22573=* +exprs(#22573,78,#22571,-1,"f1") +hasLocation(#22573,#21011) +expr_containers(#22573,#22571) +literals("f1","f1",#22573) +decl(#22573,#22188) #22574=* -exprs(#22574,78,#22566,1,"y") -hasLocation(#22574,#21029) -expr_containers(#22574,#22566) -literals("y","y",#22574) -decl(#22574,#22573) -#22575=@"var;{arguments};{#22569}" -variables(#22575,"arguments",#22569) -is_arguments_object(#22575) -#22576=* -typeexprs(#22576,0,#22566,-6,"T") -hasLocation(#22576,#21025) -expr_containers(#22576,#22566) -literals("T","T",#22576) -typebind(#22576,#22570) -#22577=* -typeexprs(#22577,14,#22566,-10,"NonNullable") -#22578=@"loc,{#10000},42,27,42,40" -locations_default(#22578,#10000,42,27,42,40) -hasLocation(#22577,#22578) -expr_containers(#22577,#22566) -#22579=* -typeexprs(#22579,0,#22577,-1,"NonNullable") -hasLocation(#22579,#21033) -expr_containers(#22579,#22566) -literals("NonNullable","NonNullable",#22579) -typebind(#22579,#22210) +scopes(#22574,1) +scopenodes(#22571,#22574) +scopenesting(#22574,#22187) +#22575=@"var;{this};{#22574}" +variables(#22575,"this",#22574) +#22576=@"local_type_name;{T};{#22574}" +local_type_names(#22576,"T",#22574) +#22577=@"var;{x};{#22574}" +variables(#22577,"x",#22574) +#22578=* +exprs(#22578,78,#22571,0,"x") +hasLocation(#22578,#21021) +expr_containers(#22578,#22571) +literals("x","x",#22578) +decl(#22578,#22577) +#22579=@"var;{y};{#22574}" +variables(#22579,"y",#22574) #22580=* -typeexprs(#22580,0,#22577,0,"T") -hasLocation(#22580,#21037) -expr_containers(#22580,#22566) -literals("T","T",#22580) -typebind(#22580,#22570) -#22581=* -typeexprs(#22581,22,#22566,-7,"T") -hasLocation(#22581,#21015) -expr_containers(#22581,#22566) +exprs(#22580,78,#22571,1,"y") +hasLocation(#22580,#21029) +expr_containers(#22580,#22571) +literals("y","y",#22580) +decl(#22580,#22579) +#22581=@"var;{arguments};{#22574}" +variables(#22581,"arguments",#22574) +is_arguments_object(#22581) #22582=* -typeexprs(#22582,1,#22581,0,"T") -hasLocation(#22582,#21015) -expr_containers(#22582,#22566) +typeexprs(#22582,0,#22571,-6,"T") +hasLocation(#22582,#21025) +expr_containers(#22582,#22571) literals("T","T",#22582) -typedecl(#22582,#22570) +typebind(#22582,#22576) #22583=* -stmts(#22583,1,#22566,-2,"{\n ... Ok\n }") -#22584=@"loc,{#10000},42,43,44,3" -locations_default(#22584,#10000,42,43,44,3) +typeexprs(#22583,14,#22571,-10,"NonNullable") +#22584=@"loc,{#10000},42,27,42,40" +locations_default(#22584,#10000,42,27,42,40) hasLocation(#22583,#22584) -stmt_containers(#22583,#22566) +expr_containers(#22583,#22571) #22585=* -stmts(#22585,2,#22583,0,"x = y;") -#22586=@"loc,{#10000},43,7,43,12" -locations_default(#22586,#10000,43,7,43,12) -hasLocation(#22585,#22586) -stmt_containers(#22585,#22566) +typeexprs(#22585,0,#22583,-1,"NonNullable") +hasLocation(#22585,#21033) +expr_containers(#22585,#22571) +literals("NonNullable","NonNullable",#22585) +typebind(#22585,#22211) +#22586=* +typeexprs(#22586,0,#22583,0,"T") +hasLocation(#22586,#21037) +expr_containers(#22586,#22571) +literals("T","T",#22586) +typebind(#22586,#22576) #22587=* -exprs(#22587,47,#22585,0,"x = y") -#22588=@"loc,{#10000},43,7,43,11" -locations_default(#22588,#10000,43,7,43,11) -hasLocation(#22587,#22588) -enclosing_stmt(#22587,#22585) -expr_containers(#22587,#22566) +typeexprs(#22587,22,#22571,-7,"T") +hasLocation(#22587,#21015) +expr_containers(#22587,#22571) +#22588=* +typeexprs(#22588,1,#22587,0,"T") +hasLocation(#22588,#21015) +expr_containers(#22588,#22571) +literals("T","T",#22588) +typedecl(#22588,#22576) #22589=* -exprs(#22589,79,#22587,0,"x") -hasLocation(#22589,#21045) -enclosing_stmt(#22589,#22585) -expr_containers(#22589,#22566) -literals("x","x",#22589) -bind(#22589,#22571) -#22590=* -exprs(#22590,79,#22587,1,"y") -hasLocation(#22590,#21049) -enclosing_stmt(#22590,#22585) -expr_containers(#22590,#22566) -literals("y","y",#22590) -bind(#22590,#22573) +stmts(#22589,1,#22571,-2,"{\n ... Ok\n }") +#22590=@"loc,{#10000},42,43,44,3" +locations_default(#22590,#10000,42,43,44,3) +hasLocation(#22589,#22590) +stmt_containers(#22589,#22571) #22591=* -stmts(#22591,17,#22183,25,"functio ... Ok\n }") -#22592=@"loc,{#10000},46,3,49,3" -locations_default(#22592,#10000,46,3,49,3) +stmts(#22591,2,#22589,0,"x = y;") +#22592=@"loc,{#10000},43,7,43,12" +locations_default(#22592,#10000,43,7,43,12) hasLocation(#22591,#22592) -stmt_containers(#22591,#22183) +stmt_containers(#22591,#22571) #22593=* -exprs(#22593,78,#22591,-1,"f2") -hasLocation(#22593,#21057) -expr_containers(#22593,#22591) -literals("f2","f2",#22593) -decl(#22593,#22188) -#22594=* -scopes(#22594,1) -scopenodes(#22591,#22594) -scopenesting(#22594,#22186) -#22595=@"local_type_name;{T};{#22594}" -local_type_names(#22595,"T",#22594) -#22596=@"var;{x};{#22594}" -variables(#22596,"x",#22594) +exprs(#22593,47,#22591,0,"x = y") +#22594=@"loc,{#10000},43,7,43,11" +locations_default(#22594,#10000,43,7,43,11) +hasLocation(#22593,#22594) +enclosing_stmt(#22593,#22591) +expr_containers(#22593,#22571) +#22595=* +exprs(#22595,79,#22593,0,"x") +hasLocation(#22595,#21045) +enclosing_stmt(#22595,#22591) +expr_containers(#22595,#22571) +literals("x","x",#22595) +bind(#22595,#22577) +#22596=* +exprs(#22596,79,#22593,1,"y") +hasLocation(#22596,#21049) +enclosing_stmt(#22596,#22591) +expr_containers(#22596,#22571) +literals("y","y",#22596) +bind(#22596,#22579) #22597=* -exprs(#22597,78,#22591,0,"x") -hasLocation(#22597,#21075) -expr_containers(#22597,#22591) -literals("x","x",#22597) -decl(#22597,#22596) -#22598=@"var;{y};{#22594}" -variables(#22598,"y",#22594) +stmts(#22597,17,#22184,25,"functio ... Ok\n }") +#22598=@"loc,{#10000},46,3,49,3" +locations_default(#22598,#10000,46,3,49,3) +hasLocation(#22597,#22598) +stmt_containers(#22597,#22184) #22599=* -exprs(#22599,78,#22591,1,"y") -hasLocation(#22599,#21083) -expr_containers(#22599,#22591) -literals("y","y",#22599) -decl(#22599,#22598) -#22600=@"var;{arguments};{#22594}" -variables(#22600,"arguments",#22594) -is_arguments_object(#22600) -#22601=* -typeexprs(#22601,0,#22591,-6,"T") -hasLocation(#22601,#21079) -expr_containers(#22601,#22591) -literals("T","T",#22601) -typebind(#22601,#22595) -#22602=* -typeexprs(#22602,14,#22591,-10,"NonNullable") -#22603=@"loc,{#10000},46,54,46,67" -locations_default(#22603,#10000,46,54,46,67) -hasLocation(#22602,#22603) -expr_containers(#22602,#22591) +exprs(#22599,78,#22597,-1,"f2") +hasLocation(#22599,#21057) +expr_containers(#22599,#22597) +literals("f2","f2",#22599) +decl(#22599,#22189) +#22600=* +scopes(#22600,1) +scopenodes(#22597,#22600) +scopenesting(#22600,#22187) +#22601=@"var;{this};{#22600}" +variables(#22601,"this",#22600) +#22602=@"local_type_name;{T};{#22600}" +local_type_names(#22602,"T",#22600) +#22603=@"var;{x};{#22600}" +variables(#22603,"x",#22600) #22604=* -typeexprs(#22604,0,#22602,-1,"NonNullable") -hasLocation(#22604,#21087) -expr_containers(#22604,#22591) -literals("NonNullable","NonNullable",#22604) -typebind(#22604,#22210) -#22605=* -typeexprs(#22605,0,#22602,0,"T") -hasLocation(#22605,#21091) -expr_containers(#22605,#22591) -literals("T","T",#22605) -typebind(#22605,#22595) +exprs(#22604,78,#22597,0,"x") +hasLocation(#22604,#21075) +expr_containers(#22604,#22597) +literals("x","x",#22604) +decl(#22604,#22603) +#22605=@"var;{y};{#22600}" +variables(#22605,"y",#22600) #22606=* -typeexprs(#22606,22,#22591,-7,"T exten ... defined") -#22607=@"loc,{#10000},46,15,46,42" -locations_default(#22607,#10000,46,15,46,42) -hasLocation(#22606,#22607) -expr_containers(#22606,#22591) +exprs(#22606,78,#22597,1,"y") +hasLocation(#22606,#21083) +expr_containers(#22606,#22597) +literals("y","y",#22606) +decl(#22606,#22605) +#22607=@"var;{arguments};{#22600}" +variables(#22607,"arguments",#22600) +is_arguments_object(#22607) #22608=* -typeexprs(#22608,1,#22606,0,"T") -hasLocation(#22608,#21061) -expr_containers(#22608,#22591) +typeexprs(#22608,0,#22597,-6,"T") +hasLocation(#22608,#21079) +expr_containers(#22608,#22597) literals("T","T",#22608) -typedecl(#22608,#22595) +typebind(#22608,#22602) #22609=* -typeexprs(#22609,7,#22606,1,"string | undefined") -#22610=@"loc,{#10000},46,25,46,42" -locations_default(#22610,#10000,46,25,46,42) +typeexprs(#22609,14,#22597,-10,"NonNullable") +#22610=@"loc,{#10000},46,54,46,67" +locations_default(#22610,#10000,46,54,46,67) hasLocation(#22609,#22610) -expr_containers(#22609,#22591) +expr_containers(#22609,#22597) #22611=* -typeexprs(#22611,2,#22609,0,"string") -hasLocation(#22611,#21065) -expr_containers(#22611,#22591) -literals("string","string",#22611) +typeexprs(#22611,0,#22609,-1,"NonNullable") +hasLocation(#22611,#21087) +expr_containers(#22611,#22597) +literals("NonNullable","NonNullable",#22611) +typebind(#22611,#22211) #22612=* -typeexprs(#22612,2,#22609,1,"undefined") -hasLocation(#22612,#21069) -expr_containers(#22612,#22591) -literals("undefined","undefined",#22612) +typeexprs(#22612,0,#22609,0,"T") +hasLocation(#22612,#21091) +expr_containers(#22612,#22597) +literals("T","T",#22612) +typebind(#22612,#22602) #22613=* -stmts(#22613,1,#22591,-2,"{\n ... Ok\n }") -#22614=@"loc,{#10000},46,70,49,3" -locations_default(#22614,#10000,46,70,49,3) +typeexprs(#22613,22,#22597,-7,"T exten ... defined") +#22614=@"loc,{#10000},46,15,46,42" +locations_default(#22614,#10000,46,15,46,42) hasLocation(#22613,#22614) -stmt_containers(#22613,#22591) +expr_containers(#22613,#22597) #22615=* -scopes(#22615,4) -scopenodes(#22613,#22615) -scopenesting(#22615,#22594) -#22616=@"var;{s2};{#22615}" -variables(#22616,"s2",#22615) -#22617=* -stmts(#22617,2,#22613,0,"x = y;") -#22618=@"loc,{#10000},47,7,47,12" -locations_default(#22618,#10000,47,7,47,12) -hasLocation(#22617,#22618) -stmt_containers(#22617,#22591) +typeexprs(#22615,1,#22613,0,"T") +hasLocation(#22615,#21061) +expr_containers(#22615,#22597) +literals("T","T",#22615) +typedecl(#22615,#22602) +#22616=* +typeexprs(#22616,7,#22613,1,"string | undefined") +#22617=@"loc,{#10000},46,25,46,42" +locations_default(#22617,#10000,46,25,46,42) +hasLocation(#22616,#22617) +expr_containers(#22616,#22597) +#22618=* +typeexprs(#22618,2,#22616,0,"string") +hasLocation(#22618,#21065) +expr_containers(#22618,#22597) +literals("string","string",#22618) #22619=* -exprs(#22619,47,#22617,0,"x = y") -#22620=@"loc,{#10000},47,7,47,11" -locations_default(#22620,#10000,47,7,47,11) -hasLocation(#22619,#22620) -enclosing_stmt(#22619,#22617) -expr_containers(#22619,#22591) -#22621=* -exprs(#22621,79,#22619,0,"x") -hasLocation(#22621,#21099) -enclosing_stmt(#22621,#22617) -expr_containers(#22621,#22591) -literals("x","x",#22621) -bind(#22621,#22596) +typeexprs(#22619,2,#22616,1,"undefined") +hasLocation(#22619,#21069) +expr_containers(#22619,#22597) +literals("undefined","undefined",#22619) +#22620=* +stmts(#22620,1,#22597,-2,"{\n ... Ok\n }") +#22621=@"loc,{#10000},46,70,49,3" +locations_default(#22621,#10000,46,70,49,3) +hasLocation(#22620,#22621) +stmt_containers(#22620,#22597) #22622=* -exprs(#22622,79,#22619,1,"y") -hasLocation(#22622,#21103) -enclosing_stmt(#22622,#22617) -expr_containers(#22622,#22591) -literals("y","y",#22622) -bind(#22622,#22598) -#22623=* -stmts(#22623,23,#22613,1,"let s2: string = y;") -#22624=@"loc,{#10000},48,7,48,25" -locations_default(#22624,#10000,48,7,48,25) -hasLocation(#22623,#22624) -stmt_containers(#22623,#22591) -#22625=* -exprs(#22625,64,#22623,0,"s2: string = y") -#22626=@"loc,{#10000},48,11,48,24" -locations_default(#22626,#10000,48,11,48,24) -hasLocation(#22625,#22626) -enclosing_stmt(#22625,#22623) -expr_containers(#22625,#22591) -#22627=* -exprs(#22627,78,#22625,0,"s2") -hasLocation(#22627,#21109) -enclosing_stmt(#22627,#22623) -expr_containers(#22627,#22591) -literals("s2","s2",#22627) -decl(#22627,#22616) +scopes(#22622,4) +scopenodes(#22620,#22622) +scopenesting(#22622,#22600) +#22623=@"var;{s2};{#22622}" +variables(#22623,"s2",#22622) +#22624=* +stmts(#22624,2,#22620,0,"x = y;") +#22625=@"loc,{#10000},47,7,47,12" +locations_default(#22625,#10000,47,7,47,12) +hasLocation(#22624,#22625) +stmt_containers(#22624,#22597) +#22626=* +exprs(#22626,47,#22624,0,"x = y") +#22627=@"loc,{#10000},47,7,47,11" +locations_default(#22627,#10000,47,7,47,11) +hasLocation(#22626,#22627) +enclosing_stmt(#22626,#22624) +expr_containers(#22626,#22597) #22628=* -exprs(#22628,79,#22625,1,"y") -hasLocation(#22628,#21117) -enclosing_stmt(#22628,#22623) -expr_containers(#22628,#22591) -literals("y","y",#22628) -bind(#22628,#22598) +exprs(#22628,79,#22626,0,"x") +hasLocation(#22628,#21099) +enclosing_stmt(#22628,#22624) +expr_containers(#22628,#22597) +literals("x","x",#22628) +bind(#22628,#22603) #22629=* -typeexprs(#22629,2,#22625,2,"string") -hasLocation(#22629,#21113) -enclosing_stmt(#22629,#22623) -expr_containers(#22629,#22591) -literals("string","string",#22629) +exprs(#22629,79,#22626,1,"y") +hasLocation(#22629,#21103) +enclosing_stmt(#22629,#22624) +expr_containers(#22629,#22597) +literals("y","y",#22629) +bind(#22629,#22605) #22630=* -stmts(#22630,35,#22183,26,"type Fu ... yof T];") -#22631=@"loc,{#10000},51,3,51,97" -locations_default(#22631,#10000,51,3,51,97) +stmts(#22630,23,#22620,1,"let s2: string = y;") +#22631=@"loc,{#10000},48,7,48,25" +locations_default(#22631,#10000,48,7,48,25) hasLocation(#22630,#22631) -stmt_containers(#22630,#22183) +stmt_containers(#22630,#22597) #22632=* -typeexprs(#22632,1,#22630,0,"Functio ... tyNames") -hasLocation(#22632,#21125) +exprs(#22632,64,#22630,0,"s2: string = y") +#22633=@"loc,{#10000},48,11,48,24" +locations_default(#22633,#10000,48,11,48,24) +hasLocation(#22632,#22633) enclosing_stmt(#22632,#22630) -expr_containers(#22632,#22183) -literals("FunctionPropertyNames","FunctionPropertyNames",#22632) -typedecl(#22632,#22213) -#22633=* -scopes(#22633,12) -scopenodes(#22630,#22633) -scopenesting(#22633,#22186) -#22634=@"local_type_name;{T};{#22633}" -local_type_names(#22634,"T",#22633) +expr_containers(#22632,#22597) +#22634=* +exprs(#22634,78,#22632,0,"s2") +hasLocation(#22634,#21109) +enclosing_stmt(#22634,#22630) +expr_containers(#22634,#22597) +literals("s2","s2",#22634) +decl(#22634,#22623) #22635=* -typeexprs(#22635,22,#22630,2,"T") -hasLocation(#22635,#21129) +exprs(#22635,79,#22632,1,"y") +hasLocation(#22635,#21117) enclosing_stmt(#22635,#22630) -expr_containers(#22635,#22183) +expr_containers(#22635,#22597) +literals("y","y",#22635) +bind(#22635,#22605) #22636=* -typeexprs(#22636,1,#22635,0,"T") -hasLocation(#22636,#21129) +typeexprs(#22636,2,#22632,2,"string") +hasLocation(#22636,#21113) enclosing_stmt(#22636,#22630) -expr_containers(#22636,#22183) -literals("T","T",#22636) -typedecl(#22636,#22634) +expr_containers(#22636,#22597) +literals("string","string",#22636) #22637=* -typeexprs(#22637,8,#22630,1,"{ [K in ... eyof T]") -#22638=@"loc,{#10000},51,35,51,96" -locations_default(#22638,#10000,51,35,51,96) +stmts(#22637,35,#22184,26,"type Fu ... yof T];") +#22638=@"loc,{#10000},51,3,51,97" +locations_default(#22638,#10000,51,3,51,97) hasLocation(#22637,#22638) -enclosing_stmt(#22637,#22630) -expr_containers(#22637,#22183) +stmt_containers(#22637,#22184) #22639=* -typeexprs(#22639,27,#22637,0,"{ [K in ... never }") -#22640=@"loc,{#10000},51,35,51,87" -locations_default(#22640,#10000,51,35,51,87) -hasLocation(#22639,#22640) -enclosing_stmt(#22639,#22630) -expr_containers(#22639,#22183) -#22641=* -scopes(#22641,13) -scopenodes(#22639,#22641) -scopenesting(#22641,#22633) -#22642=@"local_type_name;{K};{#22641}" -local_type_names(#22642,"K",#22641) +typeexprs(#22639,1,#22637,0,"Functio ... tyNames") +hasLocation(#22639,#21125) +enclosing_stmt(#22639,#22637) +expr_containers(#22639,#22184) +literals("FunctionPropertyNames","FunctionPropertyNames",#22639) +typedecl(#22639,#22214) +#22640=* +scopes(#22640,12) +scopenodes(#22637,#22640) +scopenesting(#22640,#22187) +#22641=@"local_type_name;{T};{#22640}" +local_type_names(#22641,"T",#22640) +#22642=* +typeexprs(#22642,22,#22637,2,"T") +hasLocation(#22642,#21129) +enclosing_stmt(#22642,#22637) +expr_containers(#22642,#22184) #22643=* -typeexprs(#22643,22,#22639,0,"K in keyof T") -#22644=@"loc,{#10000},51,38,51,49" -locations_default(#22644,#10000,51,38,51,49) -hasLocation(#22643,#22644) -enclosing_stmt(#22643,#22630) -expr_containers(#22643,#22183) -#22645=* -typeexprs(#22645,1,#22643,0,"K") -hasLocation(#22645,#21139) -enclosing_stmt(#22645,#22630) -expr_containers(#22645,#22183) -literals("K","K",#22645) -typedecl(#22645,#22642) +typeexprs(#22643,1,#22642,0,"T") +hasLocation(#22643,#21129) +enclosing_stmt(#22643,#22637) +expr_containers(#22643,#22184) +literals("T","T",#22643) +typedecl(#22643,#22641) +#22644=* +typeexprs(#22644,8,#22637,1,"{ [K in ... eyof T]") +#22645=@"loc,{#10000},51,35,51,96" +locations_default(#22645,#10000,51,35,51,96) +hasLocation(#22644,#22645) +enclosing_stmt(#22644,#22637) +expr_containers(#22644,#22184) #22646=* -typeexprs(#22646,12,#22643,1,"keyof T") -#22647=@"loc,{#10000},51,43,51,49" -locations_default(#22647,#10000,51,43,51,49) +typeexprs(#22646,27,#22644,0,"{ [K in ... never }") +#22647=@"loc,{#10000},51,35,51,87" +locations_default(#22647,#10000,51,35,51,87) hasLocation(#22646,#22647) -enclosing_stmt(#22646,#22630) -expr_containers(#22646,#22183) +enclosing_stmt(#22646,#22637) +expr_containers(#22646,#22184) #22648=* -typeexprs(#22648,0,#22646,0,"T") -hasLocation(#22648,#21145) -enclosing_stmt(#22648,#22630) -expr_containers(#22648,#22183) -literals("T","T",#22648) -typebind(#22648,#22634) -#22649=* -typeexprs(#22649,28,#22639,1,"T[K] ex ... : never") -#22650=@"loc,{#10000},51,53,51,85" -locations_default(#22650,#10000,51,53,51,85) -hasLocation(#22649,#22650) -enclosing_stmt(#22649,#22630) -expr_containers(#22649,#22183) -#22651=* -typeexprs(#22651,8,#22649,0,"T[K]") -#22652=@"loc,{#10000},51,53,51,56" -locations_default(#22652,#10000,51,53,51,56) -hasLocation(#22651,#22652) -enclosing_stmt(#22651,#22630) -expr_containers(#22651,#22183) +scopes(#22648,13) +scopenodes(#22646,#22648) +scopenesting(#22648,#22640) +#22649=@"local_type_name;{K};{#22648}" +local_type_names(#22649,"K",#22648) +#22650=* +typeexprs(#22650,22,#22646,0,"K in keyof T") +#22651=@"loc,{#10000},51,38,51,49" +locations_default(#22651,#10000,51,38,51,49) +hasLocation(#22650,#22651) +enclosing_stmt(#22650,#22637) +expr_containers(#22650,#22184) +#22652=* +typeexprs(#22652,1,#22650,0,"K") +hasLocation(#22652,#21139) +enclosing_stmt(#22652,#22637) +expr_containers(#22652,#22184) +literals("K","K",#22652) +typedecl(#22652,#22649) #22653=* -typeexprs(#22653,0,#22651,0,"T") -hasLocation(#22653,#21151) -enclosing_stmt(#22653,#22630) -expr_containers(#22653,#22183) -literals("T","T",#22653) -typebind(#22653,#22634) -#22654=* -typeexprs(#22654,0,#22651,1,"K") -hasLocation(#22654,#21155) -enclosing_stmt(#22654,#22630) -expr_containers(#22654,#22183) -literals("K","K",#22654) -typebind(#22654,#22642) +typeexprs(#22653,12,#22650,1,"keyof T") +#22654=@"loc,{#10000},51,43,51,49" +locations_default(#22654,#10000,51,43,51,49) +hasLocation(#22653,#22654) +enclosing_stmt(#22653,#22637) +expr_containers(#22653,#22184) #22655=* -typeexprs(#22655,0,#22649,1,"Function") -hasLocation(#22655,#21161) -enclosing_stmt(#22655,#22630) -expr_containers(#22655,#22183) -literals("Function","Function",#22655) +typeexprs(#22655,0,#22653,0,"T") +hasLocation(#22655,#21145) +enclosing_stmt(#22655,#22637) +expr_containers(#22655,#22184) +literals("T","T",#22655) +typebind(#22655,#22641) #22656=* -typeexprs(#22656,0,#22649,2,"K") -hasLocation(#22656,#21165) -enclosing_stmt(#22656,#22630) -expr_containers(#22656,#22183) -literals("K","K",#22656) -typebind(#22656,#22642) -#22657=* -typeexprs(#22657,2,#22649,3,"never") -hasLocation(#22657,#21169) -enclosing_stmt(#22657,#22630) -expr_containers(#22657,#22183) -literals("never","never",#22657) +typeexprs(#22656,28,#22646,1,"T[K] ex ... : never") +#22657=@"loc,{#10000},51,53,51,85" +locations_default(#22657,#10000,51,53,51,85) +hasLocation(#22656,#22657) +enclosing_stmt(#22656,#22637) +expr_containers(#22656,#22184) #22658=* -typeexprs(#22658,12,#22637,1,"keyof T") -#22659=@"loc,{#10000},51,89,51,95" -locations_default(#22659,#10000,51,89,51,95) +typeexprs(#22658,8,#22656,0,"T[K]") +#22659=@"loc,{#10000},51,53,51,56" +locations_default(#22659,#10000,51,53,51,56) hasLocation(#22658,#22659) -enclosing_stmt(#22658,#22630) -expr_containers(#22658,#22183) +enclosing_stmt(#22658,#22637) +expr_containers(#22658,#22184) #22660=* typeexprs(#22660,0,#22658,0,"T") -hasLocation(#22660,#21177) -enclosing_stmt(#22660,#22630) -expr_containers(#22660,#22183) +hasLocation(#22660,#21151) +enclosing_stmt(#22660,#22637) +expr_containers(#22660,#22184) literals("T","T",#22660) -typebind(#22660,#22634) +typebind(#22660,#22641) #22661=* -stmts(#22661,35,#22183,27,"type Fu ... es>;") -#22662=@"loc,{#10000},52,3,52,65" -locations_default(#22662,#10000,52,3,52,65) -hasLocation(#22661,#22662) -stmt_containers(#22661,#22183) +typeexprs(#22661,0,#22658,1,"K") +hasLocation(#22661,#21155) +enclosing_stmt(#22661,#22637) +expr_containers(#22661,#22184) +literals("K","K",#22661) +typebind(#22661,#22649) +#22662=* +typeexprs(#22662,0,#22656,1,"Function") +hasLocation(#22662,#21161) +enclosing_stmt(#22662,#22637) +expr_containers(#22662,#22184) +literals("Function","Function",#22662) #22663=* -typeexprs(#22663,1,#22661,0,"FunctionProperties") -hasLocation(#22663,#21185) -enclosing_stmt(#22663,#22661) -expr_containers(#22663,#22183) -literals("FunctionProperties","FunctionProperties",#22663) -typedecl(#22663,#22214) +typeexprs(#22663,0,#22656,2,"K") +hasLocation(#22663,#21165) +enclosing_stmt(#22663,#22637) +expr_containers(#22663,#22184) +literals("K","K",#22663) +typebind(#22663,#22649) #22664=* -scopes(#22664,12) -scopenodes(#22661,#22664) -scopenesting(#22664,#22186) -#22665=@"local_type_name;{T};{#22664}" -local_type_names(#22665,"T",#22664) -#22666=* -typeexprs(#22666,22,#22661,2,"T") -hasLocation(#22666,#21189) -enclosing_stmt(#22666,#22661) -expr_containers(#22666,#22183) +typeexprs(#22664,2,#22656,3,"never") +hasLocation(#22664,#21169) +enclosing_stmt(#22664,#22637) +expr_containers(#22664,#22184) +literals("never","never",#22664) +#22665=* +typeexprs(#22665,12,#22644,1,"keyof T") +#22666=@"loc,{#10000},51,89,51,95" +locations_default(#22666,#10000,51,89,51,95) +hasLocation(#22665,#22666) +enclosing_stmt(#22665,#22637) +expr_containers(#22665,#22184) #22667=* -typeexprs(#22667,1,#22666,0,"T") -hasLocation(#22667,#21189) -enclosing_stmt(#22667,#22661) -expr_containers(#22667,#22183) +typeexprs(#22667,0,#22665,0,"T") +hasLocation(#22667,#21177) +enclosing_stmt(#22667,#22637) +expr_containers(#22667,#22184) literals("T","T",#22667) -typedecl(#22667,#22665) +typebind(#22667,#22641) #22668=* -typeexprs(#22668,14,#22661,1,"Pick>") -#22669=@"loc,{#10000},52,32,52,64" -locations_default(#22669,#10000,52,32,52,64) +stmts(#22668,35,#22184,27,"type Fu ... es>;") +#22669=@"loc,{#10000},52,3,52,65" +locations_default(#22669,#10000,52,3,52,65) hasLocation(#22668,#22669) -enclosing_stmt(#22668,#22661) -expr_containers(#22668,#22183) +stmt_containers(#22668,#22184) #22670=* -typeexprs(#22670,0,#22668,-1,"Pick") -hasLocation(#22670,#21195) -enclosing_stmt(#22670,#22661) -expr_containers(#22670,#22183) -literals("Pick","Pick",#22670) +typeexprs(#22670,1,#22668,0,"FunctionProperties") +hasLocation(#22670,#21185) +enclosing_stmt(#22670,#22668) +expr_containers(#22670,#22184) +literals("FunctionProperties","FunctionProperties",#22670) +typedecl(#22670,#22215) #22671=* -typeexprs(#22671,0,#22668,0,"T") -hasLocation(#22671,#21199) -enclosing_stmt(#22671,#22661) -expr_containers(#22671,#22183) -literals("T","T",#22671) -typebind(#22671,#22665) -#22672=* -typeexprs(#22672,14,#22668,1,"Functio ... ames") -#22673=@"loc,{#10000},52,40,52,63" -locations_default(#22673,#10000,52,40,52,63) -hasLocation(#22672,#22673) -enclosing_stmt(#22672,#22661) -expr_containers(#22672,#22183) +scopes(#22671,12) +scopenodes(#22668,#22671) +scopenesting(#22671,#22187) +#22672=@"local_type_name;{T};{#22671}" +local_type_names(#22672,"T",#22671) +#22673=* +typeexprs(#22673,22,#22668,2,"T") +hasLocation(#22673,#21189) +enclosing_stmt(#22673,#22668) +expr_containers(#22673,#22184) #22674=* -typeexprs(#22674,0,#22672,-1,"Functio ... tyNames") -hasLocation(#22674,#21203) -enclosing_stmt(#22674,#22661) -expr_containers(#22674,#22183) -literals("FunctionPropertyNames","FunctionPropertyNames",#22674) -typebind(#22674,#22213) +typeexprs(#22674,1,#22673,0,"T") +hasLocation(#22674,#21189) +enclosing_stmt(#22674,#22668) +expr_containers(#22674,#22184) +literals("T","T",#22674) +typedecl(#22674,#22672) #22675=* -typeexprs(#22675,0,#22672,0,"T") -hasLocation(#22675,#21207) -enclosing_stmt(#22675,#22661) -expr_containers(#22675,#22183) -literals("T","T",#22675) -typebind(#22675,#22665) -#22676=* -stmts(#22676,35,#22183,28,"type No ... yof T];") -#22677=@"loc,{#10000},54,3,54,100" -locations_default(#22677,#10000,54,3,54,100) -hasLocation(#22676,#22677) -stmt_containers(#22676,#22183) +typeexprs(#22675,14,#22668,1,"Pick>") +#22676=@"loc,{#10000},52,32,52,64" +locations_default(#22676,#10000,52,32,52,64) +hasLocation(#22675,#22676) +enclosing_stmt(#22675,#22668) +expr_containers(#22675,#22184) +#22677=* +typeexprs(#22677,0,#22675,-1,"Pick") +hasLocation(#22677,#21195) +enclosing_stmt(#22677,#22668) +expr_containers(#22677,#22184) +literals("Pick","Pick",#22677) #22678=* -typeexprs(#22678,1,#22676,0,"NonFunc ... tyNames") -hasLocation(#22678,#21217) -enclosing_stmt(#22678,#22676) -expr_containers(#22678,#22183) -literals("NonFunctionPropertyNames","NonFunctionPropertyNames",#22678) -typedecl(#22678,#22215) +typeexprs(#22678,0,#22675,0,"T") +hasLocation(#22678,#21199) +enclosing_stmt(#22678,#22668) +expr_containers(#22678,#22184) +literals("T","T",#22678) +typebind(#22678,#22672) #22679=* -scopes(#22679,12) -scopenodes(#22676,#22679) -scopenesting(#22679,#22186) -#22680=@"local_type_name;{T};{#22679}" -local_type_names(#22680,"T",#22679) +typeexprs(#22679,14,#22675,1,"Functio ... ames") +#22680=@"loc,{#10000},52,40,52,63" +locations_default(#22680,#10000,52,40,52,63) +hasLocation(#22679,#22680) +enclosing_stmt(#22679,#22668) +expr_containers(#22679,#22184) #22681=* -typeexprs(#22681,22,#22676,2,"T") -hasLocation(#22681,#21221) -enclosing_stmt(#22681,#22676) -expr_containers(#22681,#22183) +typeexprs(#22681,0,#22679,-1,"Functio ... tyNames") +hasLocation(#22681,#21203) +enclosing_stmt(#22681,#22668) +expr_containers(#22681,#22184) +literals("FunctionPropertyNames","FunctionPropertyNames",#22681) +typebind(#22681,#22214) #22682=* -typeexprs(#22682,1,#22681,0,"T") -hasLocation(#22682,#21221) -enclosing_stmt(#22682,#22676) -expr_containers(#22682,#22183) +typeexprs(#22682,0,#22679,0,"T") +hasLocation(#22682,#21207) +enclosing_stmt(#22682,#22668) +expr_containers(#22682,#22184) literals("T","T",#22682) -typedecl(#22682,#22680) +typebind(#22682,#22672) #22683=* -typeexprs(#22683,8,#22676,1,"{ [K in ... eyof T]") -#22684=@"loc,{#10000},54,38,54,99" -locations_default(#22684,#10000,54,38,54,99) +stmts(#22683,35,#22184,28,"type No ... yof T];") +#22684=@"loc,{#10000},54,3,54,100" +locations_default(#22684,#10000,54,3,54,100) hasLocation(#22683,#22684) -enclosing_stmt(#22683,#22676) -expr_containers(#22683,#22183) +stmt_containers(#22683,#22184) #22685=* -typeexprs(#22685,27,#22683,0,"{ [K in ... r : K }") -#22686=@"loc,{#10000},54,38,54,90" -locations_default(#22686,#10000,54,38,54,90) -hasLocation(#22685,#22686) -enclosing_stmt(#22685,#22676) -expr_containers(#22685,#22183) -#22687=* -scopes(#22687,13) -scopenodes(#22685,#22687) -scopenesting(#22687,#22679) -#22688=@"local_type_name;{K};{#22687}" -local_type_names(#22688,"K",#22687) +typeexprs(#22685,1,#22683,0,"NonFunc ... tyNames") +hasLocation(#22685,#21217) +enclosing_stmt(#22685,#22683) +expr_containers(#22685,#22184) +literals("NonFunctionPropertyNames","NonFunctionPropertyNames",#22685) +typedecl(#22685,#22216) +#22686=* +scopes(#22686,12) +scopenodes(#22683,#22686) +scopenesting(#22686,#22187) +#22687=@"local_type_name;{T};{#22686}" +local_type_names(#22687,"T",#22686) +#22688=* +typeexprs(#22688,22,#22683,2,"T") +hasLocation(#22688,#21221) +enclosing_stmt(#22688,#22683) +expr_containers(#22688,#22184) #22689=* -typeexprs(#22689,22,#22685,0,"K in keyof T") -#22690=@"loc,{#10000},54,41,54,52" -locations_default(#22690,#10000,54,41,54,52) -hasLocation(#22689,#22690) -enclosing_stmt(#22689,#22676) -expr_containers(#22689,#22183) -#22691=* -typeexprs(#22691,1,#22689,0,"K") -hasLocation(#22691,#21231) -enclosing_stmt(#22691,#22676) -expr_containers(#22691,#22183) -literals("K","K",#22691) -typedecl(#22691,#22688) +typeexprs(#22689,1,#22688,0,"T") +hasLocation(#22689,#21221) +enclosing_stmt(#22689,#22683) +expr_containers(#22689,#22184) +literals("T","T",#22689) +typedecl(#22689,#22687) +#22690=* +typeexprs(#22690,8,#22683,1,"{ [K in ... eyof T]") +#22691=@"loc,{#10000},54,38,54,99" +locations_default(#22691,#10000,54,38,54,99) +hasLocation(#22690,#22691) +enclosing_stmt(#22690,#22683) +expr_containers(#22690,#22184) #22692=* -typeexprs(#22692,12,#22689,1,"keyof T") -#22693=@"loc,{#10000},54,46,54,52" -locations_default(#22693,#10000,54,46,54,52) +typeexprs(#22692,27,#22690,0,"{ [K in ... r : K }") +#22693=@"loc,{#10000},54,38,54,90" +locations_default(#22693,#10000,54,38,54,90) hasLocation(#22692,#22693) -enclosing_stmt(#22692,#22676) -expr_containers(#22692,#22183) +enclosing_stmt(#22692,#22683) +expr_containers(#22692,#22184) #22694=* -typeexprs(#22694,0,#22692,0,"T") -hasLocation(#22694,#21237) -enclosing_stmt(#22694,#22676) -expr_containers(#22694,#22183) -literals("T","T",#22694) -typebind(#22694,#22680) -#22695=* -typeexprs(#22695,28,#22685,1,"T[K] ex ... ver : K") -#22696=@"loc,{#10000},54,56,54,88" -locations_default(#22696,#10000,54,56,54,88) -hasLocation(#22695,#22696) -enclosing_stmt(#22695,#22676) -expr_containers(#22695,#22183) -#22697=* -typeexprs(#22697,8,#22695,0,"T[K]") -#22698=@"loc,{#10000},54,56,54,59" -locations_default(#22698,#10000,54,56,54,59) -hasLocation(#22697,#22698) -enclosing_stmt(#22697,#22676) -expr_containers(#22697,#22183) +scopes(#22694,13) +scopenodes(#22692,#22694) +scopenesting(#22694,#22686) +#22695=@"local_type_name;{K};{#22694}" +local_type_names(#22695,"K",#22694) +#22696=* +typeexprs(#22696,22,#22692,0,"K in keyof T") +#22697=@"loc,{#10000},54,41,54,52" +locations_default(#22697,#10000,54,41,54,52) +hasLocation(#22696,#22697) +enclosing_stmt(#22696,#22683) +expr_containers(#22696,#22184) +#22698=* +typeexprs(#22698,1,#22696,0,"K") +hasLocation(#22698,#21231) +enclosing_stmt(#22698,#22683) +expr_containers(#22698,#22184) +literals("K","K",#22698) +typedecl(#22698,#22695) #22699=* -typeexprs(#22699,0,#22697,0,"T") -hasLocation(#22699,#21243) -enclosing_stmt(#22699,#22676) -expr_containers(#22699,#22183) -literals("T","T",#22699) -typebind(#22699,#22680) -#22700=* -typeexprs(#22700,0,#22697,1,"K") -hasLocation(#22700,#21247) -enclosing_stmt(#22700,#22676) -expr_containers(#22700,#22183) -literals("K","K",#22700) -typebind(#22700,#22688) +typeexprs(#22699,12,#22696,1,"keyof T") +#22700=@"loc,{#10000},54,46,54,52" +locations_default(#22700,#10000,54,46,54,52) +hasLocation(#22699,#22700) +enclosing_stmt(#22699,#22683) +expr_containers(#22699,#22184) #22701=* -typeexprs(#22701,0,#22695,1,"Function") -hasLocation(#22701,#21253) -enclosing_stmt(#22701,#22676) -expr_containers(#22701,#22183) -literals("Function","Function",#22701) +typeexprs(#22701,0,#22699,0,"T") +hasLocation(#22701,#21237) +enclosing_stmt(#22701,#22683) +expr_containers(#22701,#22184) +literals("T","T",#22701) +typebind(#22701,#22687) #22702=* -typeexprs(#22702,2,#22695,2,"never") -hasLocation(#22702,#21257) -enclosing_stmt(#22702,#22676) -expr_containers(#22702,#22183) -literals("never","never",#22702) -#22703=* -typeexprs(#22703,0,#22695,3,"K") -hasLocation(#22703,#21261) -enclosing_stmt(#22703,#22676) -expr_containers(#22703,#22183) -literals("K","K",#22703) -typebind(#22703,#22688) +typeexprs(#22702,28,#22692,1,"T[K] ex ... ver : K") +#22703=@"loc,{#10000},54,56,54,88" +locations_default(#22703,#10000,54,56,54,88) +hasLocation(#22702,#22703) +enclosing_stmt(#22702,#22683) +expr_containers(#22702,#22184) #22704=* -typeexprs(#22704,12,#22683,1,"keyof T") -#22705=@"loc,{#10000},54,92,54,98" -locations_default(#22705,#10000,54,92,54,98) +typeexprs(#22704,8,#22702,0,"T[K]") +#22705=@"loc,{#10000},54,56,54,59" +locations_default(#22705,#10000,54,56,54,59) hasLocation(#22704,#22705) -enclosing_stmt(#22704,#22676) -expr_containers(#22704,#22183) +enclosing_stmt(#22704,#22683) +expr_containers(#22704,#22184) #22706=* typeexprs(#22706,0,#22704,0,"T") -hasLocation(#22706,#21269) -enclosing_stmt(#22706,#22676) -expr_containers(#22706,#22183) +hasLocation(#22706,#21243) +enclosing_stmt(#22706,#22683) +expr_containers(#22706,#22184) literals("T","T",#22706) -typebind(#22706,#22680) +typebind(#22706,#22687) #22707=* -stmts(#22707,35,#22183,29,"type No ... es>;") -#22708=@"loc,{#10000},55,3,55,71" -locations_default(#22708,#10000,55,3,55,71) -hasLocation(#22707,#22708) -stmt_containers(#22707,#22183) +typeexprs(#22707,0,#22704,1,"K") +hasLocation(#22707,#21247) +enclosing_stmt(#22707,#22683) +expr_containers(#22707,#22184) +literals("K","K",#22707) +typebind(#22707,#22695) +#22708=* +typeexprs(#22708,0,#22702,1,"Function") +hasLocation(#22708,#21253) +enclosing_stmt(#22708,#22683) +expr_containers(#22708,#22184) +literals("Function","Function",#22708) #22709=* -typeexprs(#22709,1,#22707,0,"NonFunc ... perties") -hasLocation(#22709,#21277) -enclosing_stmt(#22709,#22707) -expr_containers(#22709,#22183) -literals("NonFunctionProperties","NonFunctionProperties",#22709) -typedecl(#22709,#22216) +typeexprs(#22709,2,#22702,2,"never") +hasLocation(#22709,#21257) +enclosing_stmt(#22709,#22683) +expr_containers(#22709,#22184) +literals("never","never",#22709) #22710=* -scopes(#22710,12) -scopenodes(#22707,#22710) -scopenesting(#22710,#22186) -#22711=@"local_type_name;{T};{#22710}" -local_type_names(#22711,"T",#22710) -#22712=* -typeexprs(#22712,22,#22707,2,"T") -hasLocation(#22712,#21281) -enclosing_stmt(#22712,#22707) -expr_containers(#22712,#22183) +typeexprs(#22710,0,#22702,3,"K") +hasLocation(#22710,#21261) +enclosing_stmt(#22710,#22683) +expr_containers(#22710,#22184) +literals("K","K",#22710) +typebind(#22710,#22695) +#22711=* +typeexprs(#22711,12,#22690,1,"keyof T") +#22712=@"loc,{#10000},54,92,54,98" +locations_default(#22712,#10000,54,92,54,98) +hasLocation(#22711,#22712) +enclosing_stmt(#22711,#22683) +expr_containers(#22711,#22184) #22713=* -typeexprs(#22713,1,#22712,0,"T") -hasLocation(#22713,#21281) -enclosing_stmt(#22713,#22707) -expr_containers(#22713,#22183) +typeexprs(#22713,0,#22711,0,"T") +hasLocation(#22713,#21269) +enclosing_stmt(#22713,#22683) +expr_containers(#22713,#22184) literals("T","T",#22713) -typedecl(#22713,#22711) +typebind(#22713,#22687) #22714=* -typeexprs(#22714,14,#22707,1,"Pick>") -#22715=@"loc,{#10000},55,35,55,70" -locations_default(#22715,#10000,55,35,55,70) +stmts(#22714,35,#22184,29,"type No ... es>;") +#22715=@"loc,{#10000},55,3,55,71" +locations_default(#22715,#10000,55,3,55,71) hasLocation(#22714,#22715) -enclosing_stmt(#22714,#22707) -expr_containers(#22714,#22183) +stmt_containers(#22714,#22184) #22716=* -typeexprs(#22716,0,#22714,-1,"Pick") -hasLocation(#22716,#21287) -enclosing_stmt(#22716,#22707) -expr_containers(#22716,#22183) -literals("Pick","Pick",#22716) +typeexprs(#22716,1,#22714,0,"NonFunc ... perties") +hasLocation(#22716,#21277) +enclosing_stmt(#22716,#22714) +expr_containers(#22716,#22184) +literals("NonFunctionProperties","NonFunctionProperties",#22716) +typedecl(#22716,#22217) #22717=* -typeexprs(#22717,0,#22714,0,"T") -hasLocation(#22717,#21291) -enclosing_stmt(#22717,#22707) -expr_containers(#22717,#22183) -literals("T","T",#22717) -typebind(#22717,#22711) -#22718=* -typeexprs(#22718,14,#22714,1,"NonFunc ... ames") -#22719=@"loc,{#10000},55,43,55,69" -locations_default(#22719,#10000,55,43,55,69) -hasLocation(#22718,#22719) -enclosing_stmt(#22718,#22707) -expr_containers(#22718,#22183) +scopes(#22717,12) +scopenodes(#22714,#22717) +scopenesting(#22717,#22187) +#22718=@"local_type_name;{T};{#22717}" +local_type_names(#22718,"T",#22717) +#22719=* +typeexprs(#22719,22,#22714,2,"T") +hasLocation(#22719,#21281) +enclosing_stmt(#22719,#22714) +expr_containers(#22719,#22184) #22720=* -typeexprs(#22720,0,#22718,-1,"NonFunc ... tyNames") -hasLocation(#22720,#21295) -enclosing_stmt(#22720,#22707) -expr_containers(#22720,#22183) -literals("NonFunctionPropertyNames","NonFunctionPropertyNames",#22720) -typebind(#22720,#22215) +typeexprs(#22720,1,#22719,0,"T") +hasLocation(#22720,#21281) +enclosing_stmt(#22720,#22714) +expr_containers(#22720,#22184) +literals("T","T",#22720) +typedecl(#22720,#22718) #22721=* -typeexprs(#22721,0,#22718,0,"T") -hasLocation(#22721,#21299) -enclosing_stmt(#22721,#22707) -expr_containers(#22721,#22183) -literals("T","T",#22721) -typebind(#22721,#22711) -#22722=* -stmts(#22722,34,#22183,30,"interfa ... id;\n }") -#22723=@"loc,{#10000},57,3,62,3" -locations_default(#22723,#10000,57,3,62,3) -hasLocation(#22722,#22723) -stmt_containers(#22722,#22183) +typeexprs(#22721,14,#22714,1,"Pick>") +#22722=@"loc,{#10000},55,35,55,70" +locations_default(#22722,#10000,55,35,55,70) +hasLocation(#22721,#22722) +enclosing_stmt(#22721,#22714) +expr_containers(#22721,#22184) +#22723=* +typeexprs(#22723,0,#22721,-1,"Pick") +hasLocation(#22723,#21287) +enclosing_stmt(#22723,#22714) +expr_containers(#22723,#22184) +literals("Pick","Pick",#22723) #22724=* -typeexprs(#22724,1,#22722,0,"Part") -hasLocation(#22724,#21309) -enclosing_stmt(#22724,#22722) -expr_containers(#22724,#22183) -literals("Part","Part",#22724) -typedecl(#22724,#22217) +typeexprs(#22724,0,#22721,0,"T") +hasLocation(#22724,#21291) +enclosing_stmt(#22724,#22714) +expr_containers(#22724,#22184) +literals("T","T",#22724) +typebind(#22724,#22718) #22725=* -properties(#22725,#22722,2,8,"id: number;") -#22726=@"loc,{#10000},58,7,58,17" -locations_default(#22726,#10000,58,7,58,17) +typeexprs(#22725,14,#22721,1,"NonFunc ... ames") +#22726=@"loc,{#10000},55,43,55,69" +locations_default(#22726,#10000,55,43,55,69) hasLocation(#22725,#22726) +enclosing_stmt(#22725,#22714) +expr_containers(#22725,#22184) #22727=* -exprs(#22727,0,#22725,0,"id") -hasLocation(#22727,#21313) -enclosing_stmt(#22727,#22722) -expr_containers(#22727,#22183) -literals("id","id",#22727) -is_abstract_member(#22725) +typeexprs(#22727,0,#22725,-1,"NonFunc ... tyNames") +hasLocation(#22727,#21295) +enclosing_stmt(#22727,#22714) +expr_containers(#22727,#22184) +literals("NonFunctionPropertyNames","NonFunctionPropertyNames",#22727) +typebind(#22727,#22216) #22728=* -typeexprs(#22728,2,#22725,2,"number") -hasLocation(#22728,#21317) -enclosing_stmt(#22728,#22722) -expr_containers(#22728,#22183) -literals("number","number",#22728) +typeexprs(#22728,0,#22725,0,"T") +hasLocation(#22728,#21299) +enclosing_stmt(#22728,#22714) +expr_containers(#22728,#22184) +literals("T","T",#22728) +typebind(#22728,#22718) #22729=* -properties(#22729,#22722,3,8,"name: string;") -#22730=@"loc,{#10000},59,7,59,19" -locations_default(#22730,#10000,59,7,59,19) +stmts(#22729,34,#22184,30,"interfa ... id;\n }") +#22730=@"loc,{#10000},57,3,62,3" +locations_default(#22730,#10000,57,3,62,3) hasLocation(#22729,#22730) +stmt_containers(#22729,#22184) #22731=* -exprs(#22731,0,#22729,0,"name") -hasLocation(#22731,#21321) -enclosing_stmt(#22731,#22722) -expr_containers(#22731,#22183) -literals("name","name",#22731) -is_abstract_member(#22729) +typeexprs(#22731,1,#22729,0,"Part") +hasLocation(#22731,#21309) +enclosing_stmt(#22731,#22729) +expr_containers(#22731,#22184) +literals("Part","Part",#22731) +typedecl(#22731,#22218) #22732=* -typeexprs(#22732,2,#22729,2,"string") -hasLocation(#22732,#21325) -enclosing_stmt(#22732,#22722) -expr_containers(#22732,#22183) -literals("string","string",#22732) -#22733=* -properties(#22733,#22722,4,8,"subparts: Part[];") -#22734=@"loc,{#10000},60,7,60,23" -locations_default(#22734,#10000,60,7,60,23) -hasLocation(#22733,#22734) +properties(#22732,#22729,2,8,"id: number;") +#22733=@"loc,{#10000},58,7,58,17" +locations_default(#22733,#10000,58,7,58,17) +hasLocation(#22732,#22733) +#22734=* +exprs(#22734,0,#22732,0,"id") +hasLocation(#22734,#21313) +enclosing_stmt(#22734,#22729) +expr_containers(#22734,#22184) +literals("id","id",#22734) +is_abstract_member(#22732) #22735=* -exprs(#22735,0,#22733,0,"subparts") -hasLocation(#22735,#21329) -enclosing_stmt(#22735,#22722) -expr_containers(#22735,#22183) -literals("subparts","subparts",#22735) -is_abstract_member(#22733) +typeexprs(#22735,2,#22732,2,"number") +hasLocation(#22735,#21317) +enclosing_stmt(#22735,#22729) +expr_containers(#22735,#22184) +literals("number","number",#22735) #22736=* -typeexprs(#22736,6,#22733,2,"Part[]") -#22737=@"loc,{#10000},60,17,60,22" -locations_default(#22737,#10000,60,17,60,22) +properties(#22736,#22729,3,8,"name: string;") +#22737=@"loc,{#10000},59,7,59,19" +locations_default(#22737,#10000,59,7,59,19) hasLocation(#22736,#22737) -enclosing_stmt(#22736,#22722) -expr_containers(#22736,#22183) #22738=* -typeexprs(#22738,0,#22736,0,"Part") -hasLocation(#22738,#21333) -enclosing_stmt(#22738,#22722) -expr_containers(#22738,#22183) -literals("Part","Part",#22738) -typebind(#22738,#22217) +exprs(#22738,0,#22736,0,"name") +hasLocation(#22738,#21321) +enclosing_stmt(#22738,#22729) +expr_containers(#22738,#22184) +literals("name","name",#22738) +is_abstract_member(#22736) #22739=* -properties(#22739,#22722,5,0,"updateP ... : void;") -#22740=@"loc,{#10000},61,7,61,40" -locations_default(#22740,#10000,61,7,61,40) -hasLocation(#22739,#22740) -#22741=* -exprs(#22741,0,#22739,0,"updatePart") -hasLocation(#22741,#21341) -enclosing_stmt(#22741,#22722) -expr_containers(#22741,#22183) -literals("updatePart","updatePart",#22741) +typeexprs(#22739,2,#22736,2,"string") +hasLocation(#22739,#21325) +enclosing_stmt(#22739,#22729) +expr_containers(#22739,#22184) +literals("string","string",#22739) +#22740=* +properties(#22740,#22729,4,8,"subparts: Part[];") +#22741=@"loc,{#10000},60,7,60,23" +locations_default(#22741,#10000,60,7,60,23) +hasLocation(#22740,#22741) #22742=* -exprs(#22742,9,#22739,1,"updateP ... : void;") -hasLocation(#22742,#22740) -enclosing_stmt(#22742,#22722) -expr_containers(#22742,#22183) +exprs(#22742,0,#22740,0,"subparts") +hasLocation(#22742,#21329) +enclosing_stmt(#22742,#22729) +expr_containers(#22742,#22184) +literals("subparts","subparts",#22742) +is_abstract_member(#22740) #22743=* -scopes(#22743,1) -scopenodes(#22742,#22743) -scopenesting(#22743,#22186) -#22744=@"var;{newName};{#22743}" -variables(#22744,"newName",#22743) +typeexprs(#22743,6,#22740,2,"Part[]") +#22744=@"loc,{#10000},60,17,60,22" +locations_default(#22744,#10000,60,17,60,22) +hasLocation(#22743,#22744) +enclosing_stmt(#22743,#22729) +expr_containers(#22743,#22184) #22745=* -exprs(#22745,78,#22742,0,"newName") -hasLocation(#22745,#21345) -expr_containers(#22745,#22742) -literals("newName","newName",#22745) -decl(#22745,#22744) -#22746=@"var;{arguments};{#22743}" -variables(#22746,"arguments",#22743) -is_arguments_object(#22746) -#22747=* -typeexprs(#22747,2,#22742,-3,"void") -hasLocation(#22747,#21355) -expr_containers(#22747,#22742) -literals("void","void",#22747) +typeexprs(#22745,0,#22743,0,"Part") +hasLocation(#22745,#21333) +enclosing_stmt(#22745,#22729) +expr_containers(#22745,#22184) +literals("Part","Part",#22745) +typebind(#22745,#22218) +#22746=* +properties(#22746,#22729,5,0,"updateP ... : void;") +#22747=@"loc,{#10000},61,7,61,40" +locations_default(#22747,#10000,61,7,61,40) +hasLocation(#22746,#22747) #22748=* -typeexprs(#22748,2,#22742,-6,"string") -hasLocation(#22748,#21349) -expr_containers(#22748,#22742) -literals("string","string",#22748) -is_method(#22739) -is_abstract_member(#22739) +exprs(#22748,0,#22746,0,"updatePart") +hasLocation(#22748,#21341) +enclosing_stmt(#22748,#22729) +expr_containers(#22748,#22184) +literals("updatePart","updatePart",#22748) #22749=* -stmts(#22749,35,#22183,31,"type T4 ... ;") -#22750=@"loc,{#10000},64,3,64,41" -locations_default(#22750,#10000,64,3,64,41) -hasLocation(#22749,#22750) -stmt_containers(#22749,#22183) -#22751=* -typeexprs(#22751,1,#22749,0,"T40") -hasLocation(#22751,#21363) -enclosing_stmt(#22751,#22749) -expr_containers(#22751,#22183) -literals("T40","T40",#22751) -typedecl(#22751,#22218) -#22752=* -typeexprs(#22752,14,#22749,1,"Functio ... s") -#22753=@"loc,{#10000},64,14,64,40" -locations_default(#22753,#10000,64,14,64,40) -hasLocation(#22752,#22753) -enclosing_stmt(#22752,#22749) -expr_containers(#22752,#22183) -#22754=* -typeexprs(#22754,0,#22752,-1,"Functio ... tyNames") -hasLocation(#22754,#21367) -enclosing_stmt(#22754,#22749) -expr_containers(#22754,#22183) -literals("FunctionPropertyNames","FunctionPropertyNames",#22754) -typebind(#22754,#22213) +exprs(#22749,9,#22746,1,"updateP ... : void;") +hasLocation(#22749,#22747) +enclosing_stmt(#22749,#22729) +expr_containers(#22749,#22184) +#22750=* +scopes(#22750,1) +scopenodes(#22749,#22750) +scopenesting(#22750,#22187) +#22751=@"var;{this};{#22750}" +variables(#22751,"this",#22750) +#22752=@"var;{newName};{#22750}" +variables(#22752,"newName",#22750) +#22753=* +exprs(#22753,78,#22749,0,"newName") +hasLocation(#22753,#21345) +expr_containers(#22753,#22749) +literals("newName","newName",#22753) +decl(#22753,#22752) +#22754=@"var;{arguments};{#22750}" +variables(#22754,"arguments",#22750) +is_arguments_object(#22754) #22755=* -typeexprs(#22755,0,#22752,0,"Part") -hasLocation(#22755,#21371) -enclosing_stmt(#22755,#22749) -expr_containers(#22755,#22183) -literals("Part","Part",#22755) -typebind(#22755,#22217) +typeexprs(#22755,2,#22749,-3,"void") +hasLocation(#22755,#21355) +expr_containers(#22755,#22749) +literals("void","void",#22755) #22756=* -stmts(#22756,35,#22183,32,"type T4 ... ;") -#22757=@"loc,{#10000},65,3,65,44" -locations_default(#22757,#10000,65,3,65,44) -hasLocation(#22756,#22757) -stmt_containers(#22756,#22183) -#22758=* -typeexprs(#22758,1,#22756,0,"T41") -hasLocation(#22758,#21379) -enclosing_stmt(#22758,#22756) -expr_containers(#22758,#22183) -literals("T41","T41",#22758) -typedecl(#22758,#22219) +typeexprs(#22756,2,#22749,-6,"string") +hasLocation(#22756,#21349) +expr_containers(#22756,#22749) +literals("string","string",#22756) +is_method(#22746) +is_abstract_member(#22746) +#22757=* +stmts(#22757,35,#22184,31,"type T4 ... ;") +#22758=@"loc,{#10000},64,3,64,41" +locations_default(#22758,#10000,64,3,64,41) +hasLocation(#22757,#22758) +stmt_containers(#22757,#22184) #22759=* -typeexprs(#22759,14,#22756,1,"NonFunc ... s") -#22760=@"loc,{#10000},65,14,65,43" -locations_default(#22760,#10000,65,14,65,43) -hasLocation(#22759,#22760) -enclosing_stmt(#22759,#22756) -expr_containers(#22759,#22183) -#22761=* -typeexprs(#22761,0,#22759,-1,"NonFunc ... tyNames") -hasLocation(#22761,#21383) -enclosing_stmt(#22761,#22756) -expr_containers(#22761,#22183) -literals("NonFunctionPropertyNames","NonFunctionPropertyNames",#22761) -typebind(#22761,#22215) +typeexprs(#22759,1,#22757,0,"T40") +hasLocation(#22759,#21363) +enclosing_stmt(#22759,#22757) +expr_containers(#22759,#22184) +literals("T40","T40",#22759) +typedecl(#22759,#22219) +#22760=* +typeexprs(#22760,14,#22757,1,"Functio ... s") +#22761=@"loc,{#10000},64,14,64,40" +locations_default(#22761,#10000,64,14,64,40) +hasLocation(#22760,#22761) +enclosing_stmt(#22760,#22757) +expr_containers(#22760,#22184) #22762=* -typeexprs(#22762,0,#22759,0,"Part") -hasLocation(#22762,#21387) -enclosing_stmt(#22762,#22756) -expr_containers(#22762,#22183) -literals("Part","Part",#22762) -typebind(#22762,#22217) +typeexprs(#22762,0,#22760,-1,"Functio ... tyNames") +hasLocation(#22762,#21367) +enclosing_stmt(#22762,#22757) +expr_containers(#22762,#22184) +literals("FunctionPropertyNames","FunctionPropertyNames",#22762) +typebind(#22762,#22214) #22763=* -stmts(#22763,35,#22183,33,"type T4 ... ;") -#22764=@"loc,{#10000},66,3,66,38" -locations_default(#22764,#10000,66,3,66,38) -hasLocation(#22763,#22764) -stmt_containers(#22763,#22183) -#22765=* -typeexprs(#22765,1,#22763,0,"T42") -hasLocation(#22765,#21395) -enclosing_stmt(#22765,#22763) -expr_containers(#22765,#22183) -literals("T42","T42",#22765) -typedecl(#22765,#22220) +typeexprs(#22763,0,#22760,0,"Part") +hasLocation(#22763,#21371) +enclosing_stmt(#22763,#22757) +expr_containers(#22763,#22184) +literals("Part","Part",#22763) +typebind(#22763,#22218) +#22764=* +stmts(#22764,35,#22184,32,"type T4 ... ;") +#22765=@"loc,{#10000},65,3,65,44" +locations_default(#22765,#10000,65,3,65,44) +hasLocation(#22764,#22765) +stmt_containers(#22764,#22184) #22766=* -typeexprs(#22766,14,#22763,1,"Functio ... s") -#22767=@"loc,{#10000},66,14,66,37" -locations_default(#22767,#10000,66,14,66,37) -hasLocation(#22766,#22767) -enclosing_stmt(#22766,#22763) -expr_containers(#22766,#22183) -#22768=* -typeexprs(#22768,0,#22766,-1,"FunctionProperties") -hasLocation(#22768,#21399) -enclosing_stmt(#22768,#22763) -expr_containers(#22768,#22183) -literals("FunctionProperties","FunctionProperties",#22768) -typebind(#22768,#22214) +typeexprs(#22766,1,#22764,0,"T41") +hasLocation(#22766,#21379) +enclosing_stmt(#22766,#22764) +expr_containers(#22766,#22184) +literals("T41","T41",#22766) +typedecl(#22766,#22220) +#22767=* +typeexprs(#22767,14,#22764,1,"NonFunc ... s") +#22768=@"loc,{#10000},65,14,65,43" +locations_default(#22768,#10000,65,14,65,43) +hasLocation(#22767,#22768) +enclosing_stmt(#22767,#22764) +expr_containers(#22767,#22184) #22769=* -typeexprs(#22769,0,#22766,0,"Part") -hasLocation(#22769,#21403) -enclosing_stmt(#22769,#22763) -expr_containers(#22769,#22183) -literals("Part","Part",#22769) -typebind(#22769,#22217) +typeexprs(#22769,0,#22767,-1,"NonFunc ... tyNames") +hasLocation(#22769,#21383) +enclosing_stmt(#22769,#22764) +expr_containers(#22769,#22184) +literals("NonFunctionPropertyNames","NonFunctionPropertyNames",#22769) +typebind(#22769,#22216) #22770=* -stmts(#22770,35,#22183,34,"type T4 ... ;") -#22771=@"loc,{#10000},67,3,67,41" -locations_default(#22771,#10000,67,3,67,41) -hasLocation(#22770,#22771) -stmt_containers(#22770,#22183) -#22772=* -typeexprs(#22772,1,#22770,0,"T43") -hasLocation(#22772,#21411) -enclosing_stmt(#22772,#22770) -expr_containers(#22772,#22183) -literals("T43","T43",#22772) -typedecl(#22772,#22221) +typeexprs(#22770,0,#22767,0,"Part") +hasLocation(#22770,#21387) +enclosing_stmt(#22770,#22764) +expr_containers(#22770,#22184) +literals("Part","Part",#22770) +typebind(#22770,#22218) +#22771=* +stmts(#22771,35,#22184,33,"type T4 ... ;") +#22772=@"loc,{#10000},66,3,66,38" +locations_default(#22772,#10000,66,3,66,38) +hasLocation(#22771,#22772) +stmt_containers(#22771,#22184) #22773=* -typeexprs(#22773,14,#22770,1,"NonFunc ... s") -#22774=@"loc,{#10000},67,14,67,40" -locations_default(#22774,#10000,67,14,67,40) -hasLocation(#22773,#22774) -enclosing_stmt(#22773,#22770) -expr_containers(#22773,#22183) -#22775=* -typeexprs(#22775,0,#22773,-1,"NonFunc ... perties") -hasLocation(#22775,#21415) -enclosing_stmt(#22775,#22770) -expr_containers(#22775,#22183) -literals("NonFunctionProperties","NonFunctionProperties",#22775) -typebind(#22775,#22216) +typeexprs(#22773,1,#22771,0,"T42") +hasLocation(#22773,#21395) +enclosing_stmt(#22773,#22771) +expr_containers(#22773,#22184) +literals("T42","T42",#22773) +typedecl(#22773,#22221) +#22774=* +typeexprs(#22774,14,#22771,1,"Functio ... s") +#22775=@"loc,{#10000},66,14,66,37" +locations_default(#22775,#10000,66,14,66,37) +hasLocation(#22774,#22775) +enclosing_stmt(#22774,#22771) +expr_containers(#22774,#22184) #22776=* -typeexprs(#22776,0,#22773,0,"Part") -hasLocation(#22776,#21419) -enclosing_stmt(#22776,#22770) -expr_containers(#22776,#22183) -literals("Part","Part",#22776) -typebind(#22776,#22217) +typeexprs(#22776,0,#22774,-1,"FunctionProperties") +hasLocation(#22776,#21399) +enclosing_stmt(#22776,#22771) +expr_containers(#22776,#22184) +literals("FunctionProperties","FunctionProperties",#22776) +typebind(#22776,#22215) #22777=* -stmts(#22777,35,#22183,35,"type Re ... : any;") -#22778=@"loc,{#10000},69,3,69,71" -locations_default(#22778,#10000,69,3,69,71) -hasLocation(#22777,#22778) -stmt_containers(#22777,#22183) -#22779=* -typeexprs(#22779,1,#22777,0,"ReturnType") -hasLocation(#22779,#21427) -enclosing_stmt(#22779,#22777) -expr_containers(#22779,#22183) -literals("ReturnType","ReturnType",#22779) -typedecl(#22779,#22222) +typeexprs(#22777,0,#22774,0,"Part") +hasLocation(#22777,#21403) +enclosing_stmt(#22777,#22771) +expr_containers(#22777,#22184) +literals("Part","Part",#22777) +typebind(#22777,#22218) +#22778=* +stmts(#22778,35,#22184,34,"type T4 ... ;") +#22779=@"loc,{#10000},67,3,67,41" +locations_default(#22779,#10000,67,3,67,41) +hasLocation(#22778,#22779) +stmt_containers(#22778,#22184) #22780=* -scopes(#22780,12) -scopenodes(#22777,#22780) -scopenesting(#22780,#22186) -#22781=@"local_type_name;{T};{#22780}" -local_type_names(#22781,"T",#22780) -#22782=* -typeexprs(#22782,22,#22777,2,"T") -hasLocation(#22782,#21431) -enclosing_stmt(#22782,#22777) -expr_containers(#22782,#22183) +typeexprs(#22780,1,#22778,0,"T43") +hasLocation(#22780,#21411) +enclosing_stmt(#22780,#22778) +expr_containers(#22780,#22184) +literals("T43","T43",#22780) +typedecl(#22780,#22222) +#22781=* +typeexprs(#22781,14,#22778,1,"NonFunc ... s") +#22782=@"loc,{#10000},67,14,67,40" +locations_default(#22782,#10000,67,14,67,40) +hasLocation(#22781,#22782) +enclosing_stmt(#22781,#22778) +expr_containers(#22781,#22184) #22783=* -typeexprs(#22783,1,#22782,0,"T") -hasLocation(#22783,#21431) -enclosing_stmt(#22783,#22777) -expr_containers(#22783,#22183) -literals("T","T",#22783) -typedecl(#22783,#22781) +typeexprs(#22783,0,#22781,-1,"NonFunc ... perties") +hasLocation(#22783,#21415) +enclosing_stmt(#22783,#22778) +expr_containers(#22783,#22184) +literals("NonFunctionProperties","NonFunctionProperties",#22783) +typebind(#22783,#22217) #22784=* -typeexprs(#22784,28,#22777,1,"T exten ... R : any") -#22785=@"loc,{#10000},69,24,69,70" -locations_default(#22785,#10000,69,24,69,70) -hasLocation(#22784,#22785) -enclosing_stmt(#22784,#22777) -expr_containers(#22784,#22183) -#22786=* -typeexprs(#22786,0,#22784,0,"T") -hasLocation(#22786,#21437) -enclosing_stmt(#22786,#22777) -expr_containers(#22786,#22183) -literals("T","T",#22786) -typebind(#22786,#22781) +typeexprs(#22784,0,#22781,0,"Part") +hasLocation(#22784,#21419) +enclosing_stmt(#22784,#22778) +expr_containers(#22784,#22184) +literals("Part","Part",#22784) +typebind(#22784,#22218) +#22785=* +stmts(#22785,35,#22184,35,"type Re ... : any;") +#22786=@"loc,{#10000},69,3,69,71" +locations_default(#22786,#10000,69,3,69,71) +hasLocation(#22785,#22786) +stmt_containers(#22785,#22184) #22787=* -scopes(#22787,16) -scopenodes(#22784,#22787) -scopenesting(#22787,#22780) -#22788=@"local_type_name;{R};{#22787}" -local_type_names(#22788,"R",#22787) -#22789=* -typeexprs(#22789,23,#22784,1,"(...arg ... infer R") -#22790=@"loc,{#10000},69,34,69,60" -locations_default(#22790,#10000,69,34,69,60) -hasLocation(#22789,#22790) -enclosing_stmt(#22789,#22777) -expr_containers(#22789,#22183) +typeexprs(#22787,1,#22785,0,"ReturnType") +hasLocation(#22787,#21427) +enclosing_stmt(#22787,#22785) +expr_containers(#22787,#22184) +literals("ReturnType","ReturnType",#22787) +typedecl(#22787,#22223) +#22788=* +scopes(#22788,12) +scopenodes(#22785,#22788) +scopenesting(#22788,#22187) +#22789=@"local_type_name;{T};{#22788}" +local_type_names(#22789,"T",#22788) +#22790=* +typeexprs(#22790,22,#22785,2,"T") +hasLocation(#22790,#21431) +enclosing_stmt(#22790,#22785) +expr_containers(#22790,#22184) #22791=* -exprs(#22791,9,#22789,0,"(...arg ... infer R") -hasLocation(#22791,#22790) -enclosing_stmt(#22791,#22777) -expr_containers(#22791,#22183) +typeexprs(#22791,1,#22790,0,"T") +hasLocation(#22791,#21431) +enclosing_stmt(#22791,#22785) +expr_containers(#22791,#22184) +literals("T","T",#22791) +typedecl(#22791,#22789) #22792=* -scopes(#22792,1) -scopenodes(#22791,#22792) -scopenesting(#22792,#22787) -#22793=@"var;{args};{#22792}" -variables(#22793,"args",#22792) +typeexprs(#22792,28,#22785,1,"T exten ... R : any") +#22793=@"loc,{#10000},69,24,69,70" +locations_default(#22793,#10000,69,24,69,70) +hasLocation(#22792,#22793) +enclosing_stmt(#22792,#22785) +expr_containers(#22792,#22184) #22794=* -exprs(#22794,78,#22791,0,"args") -hasLocation(#22794,#21445) -expr_containers(#22794,#22791) -literals("args","args",#22794) -decl(#22794,#22793) -#22795=@"var;{arguments};{#22792}" -variables(#22795,"arguments",#22792) -is_arguments_object(#22795) -#22796=* -typeexprs(#22796,29,#22791,-3,"infer R") -#22797=@"loc,{#10000},69,54,69,60" -locations_default(#22797,#10000,69,54,69,60) -hasLocation(#22796,#22797) -expr_containers(#22796,#22791) -#22798=* -typeexprs(#22798,22,#22796,0,"R") -hasLocation(#22798,#21461) -expr_containers(#22798,#22791) +typeexprs(#22794,0,#22792,0,"T") +hasLocation(#22794,#21437) +enclosing_stmt(#22794,#22785) +expr_containers(#22794,#22184) +literals("T","T",#22794) +typebind(#22794,#22789) +#22795=* +scopes(#22795,16) +scopenodes(#22792,#22795) +scopenesting(#22795,#22788) +#22796=@"local_type_name;{R};{#22795}" +local_type_names(#22796,"R",#22795) +#22797=* +typeexprs(#22797,23,#22792,1,"(...arg ... infer R") +#22798=@"loc,{#10000},69,34,69,60" +locations_default(#22798,#10000,69,34,69,60) +hasLocation(#22797,#22798) +enclosing_stmt(#22797,#22785) +expr_containers(#22797,#22184) #22799=* -typeexprs(#22799,1,#22798,0,"R") -hasLocation(#22799,#21461) -expr_containers(#22799,#22791) -literals("R","R",#22799) -typedecl(#22799,#22788) +exprs(#22799,9,#22797,0,"(...arg ... infer R") +hasLocation(#22799,#22798) +enclosing_stmt(#22799,#22785) +expr_containers(#22799,#22184) #22800=* -typeexprs(#22800,6,#22791,-6,"any[]") -#22801=@"loc,{#10000},69,44,69,48" -locations_default(#22801,#10000,69,44,69,48) -hasLocation(#22800,#22801) -expr_containers(#22800,#22791) -#22802=* -typeexprs(#22802,2,#22800,0,"any") -hasLocation(#22802,#21449) -expr_containers(#22802,#22791) -literals("any","any",#22802) -has_rest_parameter(#22791) +scopes(#22800,1) +scopenodes(#22799,#22800) +scopenesting(#22800,#22795) +#22801=@"var;{this};{#22800}" +variables(#22801,"this",#22800) +#22802=@"var;{args};{#22800}" +variables(#22802,"args",#22800) #22803=* -typeexprs(#22803,0,#22784,2,"R") -hasLocation(#22803,#21465) -enclosing_stmt(#22803,#22777) -expr_containers(#22803,#22183) -literals("R","R",#22803) -typebind(#22803,#22788) -#22804=* -typeexprs(#22804,2,#22784,3,"any") -hasLocation(#22804,#21469) -enclosing_stmt(#22804,#22777) -expr_containers(#22804,#22183) -literals("any","any",#22804) -is_instantiated(#22183) +exprs(#22803,78,#22799,0,"args") +hasLocation(#22803,#21445) +expr_containers(#22803,#22799) +literals("args","args",#22803) +decl(#22803,#22802) +#22804=@"var;{arguments};{#22800}" +variables(#22804,"arguments",#22800) +is_arguments_object(#22804) #22805=* -stmts(#22805,31,#20001,1,"namespa ... any;\n}") -#22806=@"loc,{#10000},72,1,101,1" -locations_default(#22806,#10000,72,1,101,1) +typeexprs(#22805,29,#22799,-3,"infer R") +#22806=@"loc,{#10000},69,54,69,60" +locations_default(#22806,#10000,69,54,69,60) hasLocation(#22805,#22806) -stmt_containers(#22805,#20001) +expr_containers(#22805,#22799) #22807=* -exprs(#22807,78,#22805,-1,"ConditionalTypes2") -hasLocation(#22807,#21476) -enclosing_stmt(#22807,#22805) -expr_containers(#22807,#20001) -literals("ConditionalTypes2","ConditionalTypes2",#22807) -decl(#22807,#22180) -namespacedecl(#22807,#22182) +typeexprs(#22807,22,#22805,0,"R") +hasLocation(#22807,#21461) +expr_containers(#22807,#22799) #22808=* -scopes(#22808,9) -scopenodes(#22805,#22808) -scopenesting(#22808,#20000) -#22809=@"var;{foo};{#22808}" -variables(#22809,"foo",#22808) -#22810=@"local_type_name;{Unpacked};{#22808}" -local_type_names(#22810,"Unpacked",#22808) -#22811=@"local_type_name;{T0};{#22808}" -local_type_names(#22811,"T0",#22808) -#22812=@"local_type_name;{T1};{#22808}" -local_type_names(#22812,"T1",#22808) -#22813=@"local_type_name;{T2};{#22808}" -local_type_names(#22813,"T2",#22808) -#22814=@"local_type_name;{T3};{#22808}" -local_type_names(#22814,"T3",#22808) -#22815=@"local_type_name;{T4};{#22808}" -local_type_names(#22815,"T4",#22808) -#22816=@"local_type_name;{T5};{#22808}" -local_type_names(#22816,"T5",#22808) -#22817=@"local_type_name;{Foo};{#22808}" -local_type_names(#22817,"Foo",#22808) -#22818=@"local_type_name;{T10};{#22808}" -local_type_names(#22818,"T10",#22808) -#22819=@"local_type_name;{T11};{#22808}" -local_type_names(#22819,"T11",#22808) -#22820=@"local_type_name;{Bar};{#22808}" -local_type_names(#22820,"Bar",#22808) -#22821=@"local_type_name;{T20};{#22808}" -local_type_names(#22821,"T20",#22808) -#22822=@"local_type_name;{T21};{#22808}" -local_type_names(#22822,"T21",#22808) -#22823=@"local_type_name;{T30};{#22808}" -local_type_names(#22823,"T30",#22808) -#22824=@"local_type_name;{AnyFunction};{#22808}" -local_type_names(#22824,"AnyFunction",#22808) -#22825=@"local_type_name;{ReturnType};{#22808}" -local_type_names(#22825,"ReturnType",#22808) -#22826=* -stmts(#22826,35,#22805,0,"type Un ... \n T;") -#22827=@"loc,{#10000},73,3,77,6" -locations_default(#22827,#10000,73,3,77,6) -hasLocation(#22826,#22827) -stmt_containers(#22826,#22805) -#22828=* -typeexprs(#22828,1,#22826,0,"Unpacked") -hasLocation(#22828,#21482) -enclosing_stmt(#22828,#22826) -expr_containers(#22828,#22805) -literals("Unpacked","Unpacked",#22828) -typedecl(#22828,#22810) -#22829=* -scopes(#22829,12) -scopenodes(#22826,#22829) -scopenesting(#22829,#22808) -#22830=@"local_type_name;{T};{#22829}" -local_type_names(#22830,"T",#22829) -#22831=* -typeexprs(#22831,22,#22826,2,"T") -hasLocation(#22831,#21486) -enclosing_stmt(#22831,#22826) -expr_containers(#22831,#22805) -#22832=* -typeexprs(#22832,1,#22831,0,"T") -hasLocation(#22832,#21486) -enclosing_stmt(#22832,#22826) -expr_containers(#22832,#22805) -literals("T","T",#22832) -typedecl(#22832,#22830) -#22833=* -typeexprs(#22833,28,#22826,1,"T exten ... :\n T") -#22834=@"loc,{#10000},74,5,77,5" -locations_default(#22834,#10000,74,5,77,5) -hasLocation(#22833,#22834) -enclosing_stmt(#22833,#22826) -expr_containers(#22833,#22805) +typeexprs(#22808,1,#22807,0,"R") +hasLocation(#22808,#21461) +expr_containers(#22808,#22799) +literals("R","R",#22808) +typedecl(#22808,#22796) +#22809=* +typeexprs(#22809,6,#22799,-6,"any[]") +#22810=@"loc,{#10000},69,44,69,48" +locations_default(#22810,#10000,69,44,69,48) +hasLocation(#22809,#22810) +expr_containers(#22809,#22799) +#22811=* +typeexprs(#22811,2,#22809,0,"any") +hasLocation(#22811,#21449) +expr_containers(#22811,#22799) +literals("any","any",#22811) +has_rest_parameter(#22799) +#22812=* +typeexprs(#22812,0,#22792,2,"R") +hasLocation(#22812,#21465) +enclosing_stmt(#22812,#22785) +expr_containers(#22812,#22184) +literals("R","R",#22812) +typebind(#22812,#22796) +#22813=* +typeexprs(#22813,2,#22792,3,"any") +hasLocation(#22813,#21469) +enclosing_stmt(#22813,#22785) +expr_containers(#22813,#22184) +literals("any","any",#22813) +is_instantiated(#22184) +#22814=* +stmts(#22814,31,#20001,1,"namespa ... any;\n}") +#22815=@"loc,{#10000},72,1,101,1" +locations_default(#22815,#10000,72,1,101,1) +hasLocation(#22814,#22815) +stmt_containers(#22814,#20001) +#22816=* +exprs(#22816,78,#22814,-1,"ConditionalTypes2") +hasLocation(#22816,#21476) +enclosing_stmt(#22816,#22814) +expr_containers(#22816,#20001) +literals("ConditionalTypes2","ConditionalTypes2",#22816) +decl(#22816,#22180) +namespacedecl(#22816,#22182) +#22817=* +scopes(#22817,9) +scopenodes(#22814,#22817) +scopenesting(#22817,#20000) +#22818=@"var;{foo};{#22817}" +variables(#22818,"foo",#22817) +#22819=@"local_type_name;{Unpacked};{#22817}" +local_type_names(#22819,"Unpacked",#22817) +#22820=@"local_type_name;{T0};{#22817}" +local_type_names(#22820,"T0",#22817) +#22821=@"local_type_name;{T1};{#22817}" +local_type_names(#22821,"T1",#22817) +#22822=@"local_type_name;{T2};{#22817}" +local_type_names(#22822,"T2",#22817) +#22823=@"local_type_name;{T3};{#22817}" +local_type_names(#22823,"T3",#22817) +#22824=@"local_type_name;{T4};{#22817}" +local_type_names(#22824,"T4",#22817) +#22825=@"local_type_name;{T5};{#22817}" +local_type_names(#22825,"T5",#22817) +#22826=@"local_type_name;{Foo};{#22817}" +local_type_names(#22826,"Foo",#22817) +#22827=@"local_type_name;{T10};{#22817}" +local_type_names(#22827,"T10",#22817) +#22828=@"local_type_name;{T11};{#22817}" +local_type_names(#22828,"T11",#22817) +#22829=@"local_type_name;{Bar};{#22817}" +local_type_names(#22829,"Bar",#22817) +#22830=@"local_type_name;{T20};{#22817}" +local_type_names(#22830,"T20",#22817) +#22831=@"local_type_name;{T21};{#22817}" +local_type_names(#22831,"T21",#22817) +#22832=@"local_type_name;{T30};{#22817}" +local_type_names(#22832,"T30",#22817) +#22833=@"local_type_name;{AnyFunction};{#22817}" +local_type_names(#22833,"AnyFunction",#22817) +#22834=@"local_type_name;{ReturnType};{#22817}" +local_type_names(#22834,"ReturnType",#22817) #22835=* -typeexprs(#22835,0,#22833,0,"T") -hasLocation(#22835,#21492) -enclosing_stmt(#22835,#22826) -expr_containers(#22835,#22805) -literals("T","T",#22835) -typebind(#22835,#22830) -#22836=* -scopes(#22836,16) -scopenodes(#22833,#22836) -scopenesting(#22836,#22829) -#22837=@"local_type_name;{U};{#22836}" -local_type_names(#22837,"U",#22836) +stmts(#22835,35,#22814,0,"type Un ... \n T;") +#22836=@"loc,{#10000},73,3,77,6" +locations_default(#22836,#10000,73,3,77,6) +hasLocation(#22835,#22836) +stmt_containers(#22835,#22814) +#22837=* +typeexprs(#22837,1,#22835,0,"Unpacked") +hasLocation(#22837,#21482) +enclosing_stmt(#22837,#22835) +expr_containers(#22837,#22814) +literals("Unpacked","Unpacked",#22837) +typedecl(#22837,#22819) #22838=* -typeexprs(#22838,6,#22833,1,"(infer U)[]") -#22839=@"loc,{#10000},74,15,74,25" -locations_default(#22839,#10000,74,15,74,25) -hasLocation(#22838,#22839) -enclosing_stmt(#22838,#22826) -expr_containers(#22838,#22805) +scopes(#22838,12) +scopenodes(#22835,#22838) +scopenesting(#22838,#22817) +#22839=@"local_type_name;{T};{#22838}" +local_type_names(#22839,"T",#22838) #22840=* -typeexprs(#22840,10,#22838,0,"(infer U)") -#22841=@"loc,{#10000},74,15,74,23" -locations_default(#22841,#10000,74,15,74,23) -hasLocation(#22840,#22841) -enclosing_stmt(#22840,#22826) -expr_containers(#22840,#22805) +typeexprs(#22840,22,#22835,2,"T") +hasLocation(#22840,#21486) +enclosing_stmt(#22840,#22835) +expr_containers(#22840,#22814) +#22841=* +typeexprs(#22841,1,#22840,0,"T") +hasLocation(#22841,#21486) +enclosing_stmt(#22841,#22835) +expr_containers(#22841,#22814) +literals("T","T",#22841) +typedecl(#22841,#22839) #22842=* -typeexprs(#22842,29,#22840,0,"infer U") -#22843=@"loc,{#10000},74,16,74,22" -locations_default(#22843,#10000,74,16,74,22) +typeexprs(#22842,28,#22835,1,"T exten ... :\n T") +#22843=@"loc,{#10000},74,5,77,5" +locations_default(#22843,#10000,74,5,77,5) hasLocation(#22842,#22843) -enclosing_stmt(#22842,#22826) -expr_containers(#22842,#22805) +enclosing_stmt(#22842,#22835) +expr_containers(#22842,#22814) #22844=* -typeexprs(#22844,22,#22842,0,"U") -hasLocation(#22844,#21500) -enclosing_stmt(#22844,#22826) -expr_containers(#22844,#22805) +typeexprs(#22844,0,#22842,0,"T") +hasLocation(#22844,#21492) +enclosing_stmt(#22844,#22835) +expr_containers(#22844,#22814) +literals("T","T",#22844) +typebind(#22844,#22839) #22845=* -typeexprs(#22845,1,#22844,0,"U") -hasLocation(#22845,#21500) -enclosing_stmt(#22845,#22826) -expr_containers(#22845,#22805) -literals("U","U",#22845) -typedecl(#22845,#22837) -#22846=* -typeexprs(#22846,0,#22833,2,"U") -hasLocation(#22846,#21510) -enclosing_stmt(#22846,#22826) -expr_containers(#22846,#22805) -literals("U","U",#22846) -typebind(#22846,#22837) +scopes(#22845,16) +scopenodes(#22842,#22845) +scopenesting(#22845,#22838) +#22846=@"local_type_name;{U};{#22845}" +local_type_names(#22846,"U",#22845) #22847=* -typeexprs(#22847,28,#22833,3,"T exten ... :\n T") -#22848=@"loc,{#10000},75,5,77,5" -locations_default(#22848,#10000,75,5,77,5) +typeexprs(#22847,6,#22842,1,"(infer U)[]") +#22848=@"loc,{#10000},74,15,74,25" +locations_default(#22848,#10000,74,15,74,25) hasLocation(#22847,#22848) -enclosing_stmt(#22847,#22826) -expr_containers(#22847,#22805) +enclosing_stmt(#22847,#22835) +expr_containers(#22847,#22814) #22849=* -typeexprs(#22849,0,#22847,0,"T") -hasLocation(#22849,#21514) -enclosing_stmt(#22849,#22826) -expr_containers(#22849,#22805) -literals("T","T",#22849) -typebind(#22849,#22830) -#22850=* -scopes(#22850,16) -scopenodes(#22847,#22850) -scopenesting(#22850,#22829) -#22851=@"local_type_name;{U};{#22850}" -local_type_names(#22851,"U",#22850) -#22852=* -typeexprs(#22852,23,#22847,1,"(...arg ... infer U") -#22853=@"loc,{#10000},75,15,75,41" -locations_default(#22853,#10000,75,15,75,41) -hasLocation(#22852,#22853) -enclosing_stmt(#22852,#22826) -expr_containers(#22852,#22805) +typeexprs(#22849,10,#22847,0,"(infer U)") +#22850=@"loc,{#10000},74,15,74,23" +locations_default(#22850,#10000,74,15,74,23) +hasLocation(#22849,#22850) +enclosing_stmt(#22849,#22835) +expr_containers(#22849,#22814) +#22851=* +typeexprs(#22851,29,#22849,0,"infer U") +#22852=@"loc,{#10000},74,16,74,22" +locations_default(#22852,#10000,74,16,74,22) +hasLocation(#22851,#22852) +enclosing_stmt(#22851,#22835) +expr_containers(#22851,#22814) +#22853=* +typeexprs(#22853,22,#22851,0,"U") +hasLocation(#22853,#21500) +enclosing_stmt(#22853,#22835) +expr_containers(#22853,#22814) #22854=* -exprs(#22854,9,#22852,0,"(...arg ... infer U") -hasLocation(#22854,#22853) -enclosing_stmt(#22854,#22826) -expr_containers(#22854,#22805) +typeexprs(#22854,1,#22853,0,"U") +hasLocation(#22854,#21500) +enclosing_stmt(#22854,#22835) +expr_containers(#22854,#22814) +literals("U","U",#22854) +typedecl(#22854,#22846) #22855=* -scopes(#22855,1) -scopenodes(#22854,#22855) -scopenesting(#22855,#22850) -#22856=@"var;{args};{#22855}" -variables(#22856,"args",#22855) -#22857=* -exprs(#22857,78,#22854,0,"args") -hasLocation(#22857,#21522) -expr_containers(#22857,#22854) -literals("args","args",#22857) -decl(#22857,#22856) -#22858=@"var;{arguments};{#22855}" -variables(#22858,"arguments",#22855) -is_arguments_object(#22858) +typeexprs(#22855,0,#22842,2,"U") +hasLocation(#22855,#21510) +enclosing_stmt(#22855,#22835) +expr_containers(#22855,#22814) +literals("U","U",#22855) +typebind(#22855,#22846) +#22856=* +typeexprs(#22856,28,#22842,3,"T exten ... :\n T") +#22857=@"loc,{#10000},75,5,77,5" +locations_default(#22857,#10000,75,5,77,5) +hasLocation(#22856,#22857) +enclosing_stmt(#22856,#22835) +expr_containers(#22856,#22814) +#22858=* +typeexprs(#22858,0,#22856,0,"T") +hasLocation(#22858,#21514) +enclosing_stmt(#22858,#22835) +expr_containers(#22858,#22814) +literals("T","T",#22858) +typebind(#22858,#22839) #22859=* -typeexprs(#22859,29,#22854,-3,"infer U") -#22860=@"loc,{#10000},75,35,75,41" -locations_default(#22860,#10000,75,35,75,41) -hasLocation(#22859,#22860) -expr_containers(#22859,#22854) +scopes(#22859,16) +scopenodes(#22856,#22859) +scopenesting(#22859,#22838) +#22860=@"local_type_name;{U};{#22859}" +local_type_names(#22860,"U",#22859) #22861=* -typeexprs(#22861,22,#22859,0,"U") -hasLocation(#22861,#21538) -expr_containers(#22861,#22854) -#22862=* -typeexprs(#22862,1,#22861,0,"U") -hasLocation(#22862,#21538) -expr_containers(#22862,#22854) -literals("U","U",#22862) -typedecl(#22862,#22851) +typeexprs(#22861,23,#22856,1,"(...arg ... infer U") +#22862=@"loc,{#10000},75,15,75,41" +locations_default(#22862,#10000,75,15,75,41) +hasLocation(#22861,#22862) +enclosing_stmt(#22861,#22835) +expr_containers(#22861,#22814) #22863=* -typeexprs(#22863,6,#22854,-6,"any[]") -#22864=@"loc,{#10000},75,25,75,29" -locations_default(#22864,#10000,75,25,75,29) -hasLocation(#22863,#22864) -expr_containers(#22863,#22854) -#22865=* -typeexprs(#22865,2,#22863,0,"any") -hasLocation(#22865,#21526) -expr_containers(#22865,#22854) -literals("any","any",#22865) -has_rest_parameter(#22854) -#22866=* -typeexprs(#22866,0,#22847,2,"U") -hasLocation(#22866,#21542) -enclosing_stmt(#22866,#22826) -expr_containers(#22866,#22805) -literals("U","U",#22866) -typebind(#22866,#22851) +exprs(#22863,9,#22861,0,"(...arg ... infer U") +hasLocation(#22863,#22862) +enclosing_stmt(#22863,#22835) +expr_containers(#22863,#22814) +#22864=* +scopes(#22864,1) +scopenodes(#22863,#22864) +scopenesting(#22864,#22859) +#22865=@"var;{this};{#22864}" +variables(#22865,"this",#22864) +#22866=@"var;{args};{#22864}" +variables(#22866,"args",#22864) #22867=* -typeexprs(#22867,28,#22847,3,"T exten ... :\n T") -#22868=@"loc,{#10000},76,5,77,5" -locations_default(#22868,#10000,76,5,77,5) -hasLocation(#22867,#22868) -enclosing_stmt(#22867,#22826) -expr_containers(#22867,#22805) +exprs(#22867,78,#22863,0,"args") +hasLocation(#22867,#21522) +expr_containers(#22867,#22863) +literals("args","args",#22867) +decl(#22867,#22866) +#22868=@"var;{arguments};{#22864}" +variables(#22868,"arguments",#22864) +is_arguments_object(#22868) #22869=* -typeexprs(#22869,0,#22867,0,"T") -hasLocation(#22869,#21546) -enclosing_stmt(#22869,#22826) -expr_containers(#22869,#22805) -literals("T","T",#22869) -typebind(#22869,#22830) -#22870=* -scopes(#22870,16) -scopenodes(#22867,#22870) -scopenesting(#22870,#22829) -#22871=@"local_type_name;{U};{#22870}" -local_type_names(#22871,"U",#22870) +typeexprs(#22869,29,#22863,-3,"infer U") +#22870=@"loc,{#10000},75,35,75,41" +locations_default(#22870,#10000,75,35,75,41) +hasLocation(#22869,#22870) +expr_containers(#22869,#22863) +#22871=* +typeexprs(#22871,22,#22869,0,"U") +hasLocation(#22871,#21538) +expr_containers(#22871,#22863) #22872=* -typeexprs(#22872,14,#22867,1,"Promise") -#22873=@"loc,{#10000},76,15,76,30" -locations_default(#22873,#10000,76,15,76,30) -hasLocation(#22872,#22873) -enclosing_stmt(#22872,#22826) -expr_containers(#22872,#22805) -#22874=* -typeexprs(#22874,0,#22872,-1,"Promise") -hasLocation(#22874,#21550) -enclosing_stmt(#22874,#22826) -expr_containers(#22874,#22805) -literals("Promise","Promise",#22874) +typeexprs(#22872,1,#22871,0,"U") +hasLocation(#22872,#21538) +expr_containers(#22872,#22863) +literals("U","U",#22872) +typedecl(#22872,#22860) +#22873=* +typeexprs(#22873,6,#22863,-6,"any[]") +#22874=@"loc,{#10000},75,25,75,29" +locations_default(#22874,#10000,75,25,75,29) +hasLocation(#22873,#22874) +expr_containers(#22873,#22863) #22875=* -typeexprs(#22875,29,#22872,0,"infer U") -#22876=@"loc,{#10000},76,23,76,29" -locations_default(#22876,#10000,76,23,76,29) -hasLocation(#22875,#22876) -enclosing_stmt(#22875,#22826) -expr_containers(#22875,#22805) +typeexprs(#22875,2,#22873,0,"any") +hasLocation(#22875,#21526) +expr_containers(#22875,#22863) +literals("any","any",#22875) +has_rest_parameter(#22863) +#22876=* +typeexprs(#22876,0,#22856,2,"U") +hasLocation(#22876,#21542) +enclosing_stmt(#22876,#22835) +expr_containers(#22876,#22814) +literals("U","U",#22876) +typebind(#22876,#22860) #22877=* -typeexprs(#22877,22,#22875,0,"U") -hasLocation(#22877,#21556) -enclosing_stmt(#22877,#22826) -expr_containers(#22877,#22805) -#22878=* -typeexprs(#22878,1,#22877,0,"U") -hasLocation(#22878,#21556) -enclosing_stmt(#22878,#22826) -expr_containers(#22878,#22805) -literals("U","U",#22878) -typedecl(#22878,#22871) +typeexprs(#22877,28,#22856,3,"T exten ... :\n T") +#22878=@"loc,{#10000},76,5,77,5" +locations_default(#22878,#10000,76,5,77,5) +hasLocation(#22877,#22878) +enclosing_stmt(#22877,#22835) +expr_containers(#22877,#22814) #22879=* -typeexprs(#22879,0,#22867,2,"U") -hasLocation(#22879,#21562) -enclosing_stmt(#22879,#22826) -expr_containers(#22879,#22805) -literals("U","U",#22879) -typebind(#22879,#22871) +typeexprs(#22879,0,#22877,0,"T") +hasLocation(#22879,#21546) +enclosing_stmt(#22879,#22835) +expr_containers(#22879,#22814) +literals("T","T",#22879) +typebind(#22879,#22839) #22880=* -typeexprs(#22880,0,#22867,3,"T") -hasLocation(#22880,#21566) -enclosing_stmt(#22880,#22826) -expr_containers(#22880,#22805) -literals("T","T",#22880) -typebind(#22880,#22830) -#22881=* -stmts(#22881,35,#22805,1,"type T0 ... tring>;") -#22882=@"loc,{#10000},79,3,79,29" -locations_default(#22882,#10000,79,3,79,29) -hasLocation(#22881,#22882) -stmt_containers(#22881,#22805) -#22883=* -typeexprs(#22883,1,#22881,0,"T0") -hasLocation(#22883,#21572) -enclosing_stmt(#22883,#22881) -expr_containers(#22883,#22805) -literals("T0","T0",#22883) -typedecl(#22883,#22811) +scopes(#22880,16) +scopenodes(#22877,#22880) +scopenesting(#22880,#22838) +#22881=@"local_type_name;{U};{#22880}" +local_type_names(#22881,"U",#22880) +#22882=* +typeexprs(#22882,14,#22877,1,"Promise") +#22883=@"loc,{#10000},76,15,76,30" +locations_default(#22883,#10000,76,15,76,30) +hasLocation(#22882,#22883) +enclosing_stmt(#22882,#22835) +expr_containers(#22882,#22814) #22884=* -typeexprs(#22884,14,#22881,1,"Unpacked") -#22885=@"loc,{#10000},79,13,79,28" -locations_default(#22885,#10000,79,13,79,28) -hasLocation(#22884,#22885) -enclosing_stmt(#22884,#22881) -expr_containers(#22884,#22805) -#22886=* -typeexprs(#22886,0,#22884,-1,"Unpacked") -hasLocation(#22886,#21576) -enclosing_stmt(#22886,#22881) -expr_containers(#22886,#22805) -literals("Unpacked","Unpacked",#22886) -typebind(#22886,#22810) +typeexprs(#22884,0,#22882,-1,"Promise") +hasLocation(#22884,#21550) +enclosing_stmt(#22884,#22835) +expr_containers(#22884,#22814) +literals("Promise","Promise",#22884) +#22885=* +typeexprs(#22885,29,#22882,0,"infer U") +#22886=@"loc,{#10000},76,23,76,29" +locations_default(#22886,#10000,76,23,76,29) +hasLocation(#22885,#22886) +enclosing_stmt(#22885,#22835) +expr_containers(#22885,#22814) #22887=* -typeexprs(#22887,2,#22884,0,"string") -hasLocation(#22887,#21580) -enclosing_stmt(#22887,#22881) -expr_containers(#22887,#22805) -literals("string","string",#22887) +typeexprs(#22887,22,#22885,0,"U") +hasLocation(#22887,#21556) +enclosing_stmt(#22887,#22835) +expr_containers(#22887,#22814) #22888=* -stmts(#22888,35,#22805,2,"type T1 ... ing[]>;") -#22889=@"loc,{#10000},80,3,80,31" -locations_default(#22889,#10000,80,3,80,31) -hasLocation(#22888,#22889) -stmt_containers(#22888,#22805) +typeexprs(#22888,1,#22887,0,"U") +hasLocation(#22888,#21556) +enclosing_stmt(#22888,#22835) +expr_containers(#22888,#22814) +literals("U","U",#22888) +typedecl(#22888,#22881) +#22889=* +typeexprs(#22889,0,#22877,2,"U") +hasLocation(#22889,#21562) +enclosing_stmt(#22889,#22835) +expr_containers(#22889,#22814) +literals("U","U",#22889) +typebind(#22889,#22881) #22890=* -typeexprs(#22890,1,#22888,0,"T1") -hasLocation(#22890,#21588) -enclosing_stmt(#22890,#22888) -expr_containers(#22890,#22805) -literals("T1","T1",#22890) -typedecl(#22890,#22812) +typeexprs(#22890,0,#22877,3,"T") +hasLocation(#22890,#21566) +enclosing_stmt(#22890,#22835) +expr_containers(#22890,#22814) +literals("T","T",#22890) +typebind(#22890,#22839) #22891=* -typeexprs(#22891,14,#22888,1,"Unpacked") -#22892=@"loc,{#10000},80,13,80,30" -locations_default(#22892,#10000,80,13,80,30) +stmts(#22891,35,#22814,1,"type T0 ... tring>;") +#22892=@"loc,{#10000},79,3,79,29" +locations_default(#22892,#10000,79,3,79,29) hasLocation(#22891,#22892) -enclosing_stmt(#22891,#22888) -expr_containers(#22891,#22805) +stmt_containers(#22891,#22814) #22893=* -typeexprs(#22893,0,#22891,-1,"Unpacked") -hasLocation(#22893,#21592) -enclosing_stmt(#22893,#22888) -expr_containers(#22893,#22805) -literals("Unpacked","Unpacked",#22893) -typebind(#22893,#22810) +typeexprs(#22893,1,#22891,0,"T0") +hasLocation(#22893,#21572) +enclosing_stmt(#22893,#22891) +expr_containers(#22893,#22814) +literals("T0","T0",#22893) +typedecl(#22893,#22820) #22894=* -typeexprs(#22894,6,#22891,0,"string[]") -#22895=@"loc,{#10000},80,22,80,29" -locations_default(#22895,#10000,80,22,80,29) +typeexprs(#22894,14,#22891,1,"Unpacked") +#22895=@"loc,{#10000},79,13,79,28" +locations_default(#22895,#10000,79,13,79,28) hasLocation(#22894,#22895) -enclosing_stmt(#22894,#22888) -expr_containers(#22894,#22805) +enclosing_stmt(#22894,#22891) +expr_containers(#22894,#22814) #22896=* -typeexprs(#22896,2,#22894,0,"string") -hasLocation(#22896,#21596) -enclosing_stmt(#22896,#22888) -expr_containers(#22896,#22805) -literals("string","string",#22896) +typeexprs(#22896,0,#22894,-1,"Unpacked") +hasLocation(#22896,#21576) +enclosing_stmt(#22896,#22891) +expr_containers(#22896,#22814) +literals("Unpacked","Unpacked",#22896) +typebind(#22896,#22819) #22897=* -stmts(#22897,35,#22805,3,"type T2 ... tring>;") -#22898=@"loc,{#10000},81,3,81,35" -locations_default(#22898,#10000,81,3,81,35) -hasLocation(#22897,#22898) -stmt_containers(#22897,#22805) -#22899=* -typeexprs(#22899,1,#22897,0,"T2") -hasLocation(#22899,#21608) -enclosing_stmt(#22899,#22897) -expr_containers(#22899,#22805) -literals("T2","T2",#22899) -typedecl(#22899,#22813) +typeexprs(#22897,2,#22894,0,"string") +hasLocation(#22897,#21580) +enclosing_stmt(#22897,#22891) +expr_containers(#22897,#22814) +literals("string","string",#22897) +#22898=* +stmts(#22898,35,#22814,2,"type T1 ... ing[]>;") +#22899=@"loc,{#10000},80,3,80,31" +locations_default(#22899,#10000,80,3,80,31) +hasLocation(#22898,#22899) +stmt_containers(#22898,#22814) #22900=* -typeexprs(#22900,14,#22897,1,"Unpacke ... string>") -#22901=@"loc,{#10000},81,13,81,34" -locations_default(#22901,#10000,81,13,81,34) -hasLocation(#22900,#22901) -enclosing_stmt(#22900,#22897) -expr_containers(#22900,#22805) -#22902=* -typeexprs(#22902,0,#22900,-1,"Unpacked") -hasLocation(#22902,#21612) -enclosing_stmt(#22902,#22897) -expr_containers(#22902,#22805) -literals("Unpacked","Unpacked",#22902) -typebind(#22902,#22810) +typeexprs(#22900,1,#22898,0,"T1") +hasLocation(#22900,#21588) +enclosing_stmt(#22900,#22898) +expr_containers(#22900,#22814) +literals("T1","T1",#22900) +typedecl(#22900,#22821) +#22901=* +typeexprs(#22901,14,#22898,1,"Unpacked") +#22902=@"loc,{#10000},80,13,80,30" +locations_default(#22902,#10000,80,13,80,30) +hasLocation(#22901,#22902) +enclosing_stmt(#22901,#22898) +expr_containers(#22901,#22814) #22903=* -typeexprs(#22903,23,#22900,0,"() => string") -#22904=@"loc,{#10000},81,22,81,33" -locations_default(#22904,#10000,81,22,81,33) -hasLocation(#22903,#22904) -enclosing_stmt(#22903,#22897) -expr_containers(#22903,#22805) -#22905=* -exprs(#22905,9,#22903,0,"() => string") -hasLocation(#22905,#22904) -enclosing_stmt(#22905,#22897) -expr_containers(#22905,#22805) +typeexprs(#22903,0,#22901,-1,"Unpacked") +hasLocation(#22903,#21592) +enclosing_stmt(#22903,#22898) +expr_containers(#22903,#22814) +literals("Unpacked","Unpacked",#22903) +typebind(#22903,#22819) +#22904=* +typeexprs(#22904,6,#22901,0,"string[]") +#22905=@"loc,{#10000},80,22,80,29" +locations_default(#22905,#10000,80,22,80,29) +hasLocation(#22904,#22905) +enclosing_stmt(#22904,#22898) +expr_containers(#22904,#22814) #22906=* -scopes(#22906,1) -scopenodes(#22905,#22906) -scopenesting(#22906,#22808) -#22907=@"var;{arguments};{#22906}" -variables(#22907,"arguments",#22906) -is_arguments_object(#22907) -#22908=* -typeexprs(#22908,2,#22905,-3,"string") -hasLocation(#22908,#21622) -expr_containers(#22908,#22905) -literals("string","string",#22908) +typeexprs(#22906,2,#22904,0,"string") +hasLocation(#22906,#21596) +enclosing_stmt(#22906,#22898) +expr_containers(#22906,#22814) +literals("string","string",#22906) +#22907=* +stmts(#22907,35,#22814,3,"type T2 ... tring>;") +#22908=@"loc,{#10000},81,3,81,35" +locations_default(#22908,#10000,81,3,81,35) +hasLocation(#22907,#22908) +stmt_containers(#22907,#22814) #22909=* -stmts(#22909,35,#22805,4,"type T3 ... ring>>;") -#22910=@"loc,{#10000},82,3,82,38" -locations_default(#22910,#10000,82,3,82,38) -hasLocation(#22909,#22910) -stmt_containers(#22909,#22805) -#22911=* -typeexprs(#22911,1,#22909,0,"T3") -hasLocation(#22911,#21630) -enclosing_stmt(#22911,#22909) -expr_containers(#22911,#22805) -literals("T3","T3",#22911) -typedecl(#22911,#22814) +typeexprs(#22909,1,#22907,0,"T2") +hasLocation(#22909,#21608) +enclosing_stmt(#22909,#22907) +expr_containers(#22909,#22814) +literals("T2","T2",#22909) +typedecl(#22909,#22822) +#22910=* +typeexprs(#22910,14,#22907,1,"Unpacke ... string>") +#22911=@"loc,{#10000},81,13,81,34" +locations_default(#22911,#10000,81,13,81,34) +hasLocation(#22910,#22911) +enclosing_stmt(#22910,#22907) +expr_containers(#22910,#22814) #22912=* -typeexprs(#22912,14,#22909,1,"Unpacke ... tring>>") -#22913=@"loc,{#10000},82,13,82,37" -locations_default(#22913,#10000,82,13,82,37) -hasLocation(#22912,#22913) -enclosing_stmt(#22912,#22909) -expr_containers(#22912,#22805) -#22914=* -typeexprs(#22914,0,#22912,-1,"Unpacked") -hasLocation(#22914,#21634) -enclosing_stmt(#22914,#22909) -expr_containers(#22914,#22805) -literals("Unpacked","Unpacked",#22914) -typebind(#22914,#22810) +typeexprs(#22912,0,#22910,-1,"Unpacked") +hasLocation(#22912,#21612) +enclosing_stmt(#22912,#22907) +expr_containers(#22912,#22814) +literals("Unpacked","Unpacked",#22912) +typebind(#22912,#22819) +#22913=* +typeexprs(#22913,23,#22910,0,"() => string") +#22914=@"loc,{#10000},81,22,81,33" +locations_default(#22914,#10000,81,22,81,33) +hasLocation(#22913,#22914) +enclosing_stmt(#22913,#22907) +expr_containers(#22913,#22814) #22915=* -typeexprs(#22915,14,#22912,0,"Promise") -#22916=@"loc,{#10000},82,22,82,36" -locations_default(#22916,#10000,82,22,82,36) -hasLocation(#22915,#22916) -enclosing_stmt(#22915,#22909) -expr_containers(#22915,#22805) -#22917=* -typeexprs(#22917,0,#22915,-1,"Promise") -hasLocation(#22917,#21638) -enclosing_stmt(#22917,#22909) -expr_containers(#22917,#22805) -literals("Promise","Promise",#22917) -#22918=* -typeexprs(#22918,2,#22915,0,"string") -hasLocation(#22918,#21642) -enclosing_stmt(#22918,#22909) -expr_containers(#22918,#22805) -literals("string","string",#22918) +exprs(#22915,9,#22913,0,"() => string") +hasLocation(#22915,#22914) +enclosing_stmt(#22915,#22907) +expr_containers(#22915,#22814) +#22916=* +scopes(#22916,1) +scopenodes(#22915,#22916) +scopenesting(#22916,#22817) +#22917=@"var;{this};{#22916}" +variables(#22917,"this",#22916) +#22918=@"var;{arguments};{#22916}" +variables(#22918,"arguments",#22916) +is_arguments_object(#22918) #22919=* -stmts(#22919,35,#22805,5,"type T4 ... ng>[]>;") -#22920=@"loc,{#10000},83,3,83,40" -locations_default(#22920,#10000,83,3,83,40) -hasLocation(#22919,#22920) -stmt_containers(#22919,#22805) -#22921=* -typeexprs(#22921,1,#22919,0,"T4") -hasLocation(#22921,#21652) -enclosing_stmt(#22921,#22919) -expr_containers(#22921,#22805) -literals("T4","T4",#22921) -typedecl(#22921,#22815) +typeexprs(#22919,2,#22915,-3,"string") +hasLocation(#22919,#21622) +expr_containers(#22919,#22915) +literals("string","string",#22919) +#22920=* +stmts(#22920,35,#22814,4,"type T3 ... ring>>;") +#22921=@"loc,{#10000},82,3,82,38" +locations_default(#22921,#10000,82,3,82,38) +hasLocation(#22920,#22921) +stmt_containers(#22920,#22814) #22922=* -typeexprs(#22922,14,#22919,1,"Unpacke ... ing>[]>") -#22923=@"loc,{#10000},83,13,83,39" -locations_default(#22923,#10000,83,13,83,39) -hasLocation(#22922,#22923) -enclosing_stmt(#22922,#22919) -expr_containers(#22922,#22805) -#22924=* -typeexprs(#22924,0,#22922,-1,"Unpacked") -hasLocation(#22924,#21656) -enclosing_stmt(#22924,#22919) -expr_containers(#22924,#22805) -literals("Unpacked","Unpacked",#22924) -typebind(#22924,#22810) +typeexprs(#22922,1,#22920,0,"T3") +hasLocation(#22922,#21630) +enclosing_stmt(#22922,#22920) +expr_containers(#22922,#22814) +literals("T3","T3",#22922) +typedecl(#22922,#22823) +#22923=* +typeexprs(#22923,14,#22920,1,"Unpacke ... tring>>") +#22924=@"loc,{#10000},82,13,82,37" +locations_default(#22924,#10000,82,13,82,37) +hasLocation(#22923,#22924) +enclosing_stmt(#22923,#22920) +expr_containers(#22923,#22814) #22925=* -typeexprs(#22925,6,#22922,0,"Promise[]") -#22926=@"loc,{#10000},83,22,83,38" -locations_default(#22926,#10000,83,22,83,38) -hasLocation(#22925,#22926) -enclosing_stmt(#22925,#22919) -expr_containers(#22925,#22805) -#22927=* -typeexprs(#22927,14,#22925,0,"Promise") -#22928=@"loc,{#10000},83,22,83,36" -locations_default(#22928,#10000,83,22,83,36) -hasLocation(#22927,#22928) -enclosing_stmt(#22927,#22919) -expr_containers(#22927,#22805) +typeexprs(#22925,0,#22923,-1,"Unpacked") +hasLocation(#22925,#21634) +enclosing_stmt(#22925,#22920) +expr_containers(#22925,#22814) +literals("Unpacked","Unpacked",#22925) +typebind(#22925,#22819) +#22926=* +typeexprs(#22926,14,#22923,0,"Promise") +#22927=@"loc,{#10000},82,22,82,36" +locations_default(#22927,#10000,82,22,82,36) +hasLocation(#22926,#22927) +enclosing_stmt(#22926,#22920) +expr_containers(#22926,#22814) +#22928=* +typeexprs(#22928,0,#22926,-1,"Promise") +hasLocation(#22928,#21638) +enclosing_stmt(#22928,#22920) +expr_containers(#22928,#22814) +literals("Promise","Promise",#22928) #22929=* -typeexprs(#22929,0,#22927,-1,"Promise") -hasLocation(#22929,#21660) -enclosing_stmt(#22929,#22919) -expr_containers(#22929,#22805) -literals("Promise","Promise",#22929) +typeexprs(#22929,2,#22926,0,"string") +hasLocation(#22929,#21642) +enclosing_stmt(#22929,#22920) +expr_containers(#22929,#22814) +literals("string","string",#22929) #22930=* -typeexprs(#22930,2,#22927,0,"string") -hasLocation(#22930,#21664) -enclosing_stmt(#22930,#22919) -expr_containers(#22930,#22805) -literals("string","string",#22930) -#22931=* -stmts(#22931,35,#22805,6,"type T5 ... g>[]>>;") -#22932=@"loc,{#10000},84,3,84,50" -locations_default(#22932,#10000,84,3,84,50) -hasLocation(#22931,#22932) -stmt_containers(#22931,#22805) +stmts(#22930,35,#22814,5,"type T4 ... ng>[]>;") +#22931=@"loc,{#10000},83,3,83,40" +locations_default(#22931,#10000,83,3,83,40) +hasLocation(#22930,#22931) +stmt_containers(#22930,#22814) +#22932=* +typeexprs(#22932,1,#22930,0,"T4") +hasLocation(#22932,#21652) +enclosing_stmt(#22932,#22930) +expr_containers(#22932,#22814) +literals("T4","T4",#22932) +typedecl(#22932,#22824) #22933=* -typeexprs(#22933,1,#22931,0,"T5") -hasLocation(#22933,#21678) -enclosing_stmt(#22933,#22931) -expr_containers(#22933,#22805) -literals("T5","T5",#22933) -typedecl(#22933,#22816) -#22934=* -typeexprs(#22934,14,#22931,1,"Unpacke ... ng>[]>>") -#22935=@"loc,{#10000},84,13,84,49" -locations_default(#22935,#10000,84,13,84,49) -hasLocation(#22934,#22935) -enclosing_stmt(#22934,#22931) -expr_containers(#22934,#22805) +typeexprs(#22933,14,#22930,1,"Unpacke ... ing>[]>") +#22934=@"loc,{#10000},83,13,83,39" +locations_default(#22934,#10000,83,13,83,39) +hasLocation(#22933,#22934) +enclosing_stmt(#22933,#22930) +expr_containers(#22933,#22814) +#22935=* +typeexprs(#22935,0,#22933,-1,"Unpacked") +hasLocation(#22935,#21656) +enclosing_stmt(#22935,#22930) +expr_containers(#22935,#22814) +literals("Unpacked","Unpacked",#22935) +typebind(#22935,#22819) #22936=* -typeexprs(#22936,0,#22934,-1,"Unpacked") -hasLocation(#22936,#21682) -enclosing_stmt(#22936,#22931) -expr_containers(#22936,#22805) -literals("Unpacked","Unpacked",#22936) -typebind(#22936,#22810) -#22937=* -typeexprs(#22937,14,#22934,0,"Unpacke ... ing>[]>") -#22938=@"loc,{#10000},84,22,84,48" -locations_default(#22938,#10000,84,22,84,48) -hasLocation(#22937,#22938) -enclosing_stmt(#22937,#22931) -expr_containers(#22937,#22805) -#22939=* -typeexprs(#22939,0,#22937,-1,"Unpacked") -hasLocation(#22939,#21686) -enclosing_stmt(#22939,#22931) -expr_containers(#22939,#22805) -literals("Unpacked","Unpacked",#22939) -typebind(#22939,#22810) +typeexprs(#22936,6,#22933,0,"Promise[]") +#22937=@"loc,{#10000},83,22,83,38" +locations_default(#22937,#10000,83,22,83,38) +hasLocation(#22936,#22937) +enclosing_stmt(#22936,#22930) +expr_containers(#22936,#22814) +#22938=* +typeexprs(#22938,14,#22936,0,"Promise") +#22939=@"loc,{#10000},83,22,83,36" +locations_default(#22939,#10000,83,22,83,36) +hasLocation(#22938,#22939) +enclosing_stmt(#22938,#22930) +expr_containers(#22938,#22814) #22940=* -typeexprs(#22940,6,#22937,0,"Promise[]") -#22941=@"loc,{#10000},84,31,84,47" -locations_default(#22941,#10000,84,31,84,47) -hasLocation(#22940,#22941) -enclosing_stmt(#22940,#22931) -expr_containers(#22940,#22805) +typeexprs(#22940,0,#22938,-1,"Promise") +hasLocation(#22940,#21660) +enclosing_stmt(#22940,#22930) +expr_containers(#22940,#22814) +literals("Promise","Promise",#22940) +#22941=* +typeexprs(#22941,2,#22938,0,"string") +hasLocation(#22941,#21664) +enclosing_stmt(#22941,#22930) +expr_containers(#22941,#22814) +literals("string","string",#22941) #22942=* -typeexprs(#22942,14,#22940,0,"Promise") -#22943=@"loc,{#10000},84,31,84,45" -locations_default(#22943,#10000,84,31,84,45) +stmts(#22942,35,#22814,6,"type T5 ... g>[]>>;") +#22943=@"loc,{#10000},84,3,84,50" +locations_default(#22943,#10000,84,3,84,50) hasLocation(#22942,#22943) -enclosing_stmt(#22942,#22931) -expr_containers(#22942,#22805) +stmt_containers(#22942,#22814) #22944=* -typeexprs(#22944,0,#22942,-1,"Promise") -hasLocation(#22944,#21690) -enclosing_stmt(#22944,#22931) -expr_containers(#22944,#22805) -literals("Promise","Promise",#22944) +typeexprs(#22944,1,#22942,0,"T5") +hasLocation(#22944,#21678) +enclosing_stmt(#22944,#22942) +expr_containers(#22944,#22814) +literals("T5","T5",#22944) +typedecl(#22944,#22825) #22945=* -typeexprs(#22945,2,#22942,0,"string") -hasLocation(#22945,#21694) -enclosing_stmt(#22945,#22931) -expr_containers(#22945,#22805) -literals("string","string",#22945) -#22946=* -stmts(#22946,35,#22805,7,"type Fo ... never;") -#22947=@"loc,{#10000},86,3,86,65" -locations_default(#22947,#10000,86,3,86,65) -hasLocation(#22946,#22947) -stmt_containers(#22946,#22805) +typeexprs(#22945,14,#22942,1,"Unpacke ... ng>[]>>") +#22946=@"loc,{#10000},84,13,84,49" +locations_default(#22946,#10000,84,13,84,49) +hasLocation(#22945,#22946) +enclosing_stmt(#22945,#22942) +expr_containers(#22945,#22814) +#22947=* +typeexprs(#22947,0,#22945,-1,"Unpacked") +hasLocation(#22947,#21682) +enclosing_stmt(#22947,#22942) +expr_containers(#22947,#22814) +literals("Unpacked","Unpacked",#22947) +typebind(#22947,#22819) #22948=* -typeexprs(#22948,1,#22946,0,"Foo") -hasLocation(#22948,#21710) -enclosing_stmt(#22948,#22946) -expr_containers(#22948,#22805) -literals("Foo","Foo",#22948) -typedecl(#22948,#22817) -#22949=* -scopes(#22949,12) -scopenodes(#22946,#22949) -scopenesting(#22949,#22808) -#22950=@"local_type_name;{T};{#22949}" -local_type_names(#22950,"T",#22949) +typeexprs(#22948,14,#22945,0,"Unpacke ... ing>[]>") +#22949=@"loc,{#10000},84,22,84,48" +locations_default(#22949,#10000,84,22,84,48) +hasLocation(#22948,#22949) +enclosing_stmt(#22948,#22942) +expr_containers(#22948,#22814) +#22950=* +typeexprs(#22950,0,#22948,-1,"Unpacked") +hasLocation(#22950,#21686) +enclosing_stmt(#22950,#22942) +expr_containers(#22950,#22814) +literals("Unpacked","Unpacked",#22950) +typebind(#22950,#22819) #22951=* -typeexprs(#22951,22,#22946,2,"T") -hasLocation(#22951,#21714) -enclosing_stmt(#22951,#22946) -expr_containers(#22951,#22805) -#22952=* -typeexprs(#22952,1,#22951,0,"T") -hasLocation(#22952,#21714) -enclosing_stmt(#22952,#22946) -expr_containers(#22952,#22805) -literals("T","T",#22952) -typedecl(#22952,#22950) +typeexprs(#22951,6,#22948,0,"Promise[]") +#22952=@"loc,{#10000},84,31,84,47" +locations_default(#22952,#10000,84,31,84,47) +hasLocation(#22951,#22952) +enclosing_stmt(#22951,#22942) +expr_containers(#22951,#22814) #22953=* -typeexprs(#22953,28,#22946,1,"T exten ... : never") -#22954=@"loc,{#10000},86,17,86,64" -locations_default(#22954,#10000,86,17,86,64) +typeexprs(#22953,14,#22951,0,"Promise") +#22954=@"loc,{#10000},84,31,84,45" +locations_default(#22954,#10000,84,31,84,45) hasLocation(#22953,#22954) -enclosing_stmt(#22953,#22946) -expr_containers(#22953,#22805) +enclosing_stmt(#22953,#22942) +expr_containers(#22953,#22814) #22955=* -typeexprs(#22955,0,#22953,0,"T") -hasLocation(#22955,#21720) -enclosing_stmt(#22955,#22946) -expr_containers(#22955,#22805) -literals("T","T",#22955) -typebind(#22955,#22950) +typeexprs(#22955,0,#22953,-1,"Promise") +hasLocation(#22955,#21690) +enclosing_stmt(#22955,#22942) +expr_containers(#22955,#22814) +literals("Promise","Promise",#22955) #22956=* -typeexprs(#22956,21,#22953,1,"{ a: in ... fer U }") -#22957=@"loc,{#10000},86,27,86,52" -locations_default(#22957,#10000,86,27,86,52) -hasLocation(#22956,#22957) -enclosing_stmt(#22956,#22946) -expr_containers(#22956,#22805) -#22958=* -properties(#22958,#22956,0,8,"a: infer U,") -#22959=@"loc,{#10000},86,29,86,39" -locations_default(#22959,#10000,86,29,86,39) -hasLocation(#22958,#22959) +typeexprs(#22956,2,#22953,0,"string") +hasLocation(#22956,#21694) +enclosing_stmt(#22956,#22942) +expr_containers(#22956,#22814) +literals("string","string",#22956) +#22957=* +stmts(#22957,35,#22814,7,"type Fo ... never;") +#22958=@"loc,{#10000},86,3,86,65" +locations_default(#22958,#10000,86,3,86,65) +hasLocation(#22957,#22958) +stmt_containers(#22957,#22814) +#22959=* +typeexprs(#22959,1,#22957,0,"Foo") +hasLocation(#22959,#21710) +enclosing_stmt(#22959,#22957) +expr_containers(#22959,#22814) +literals("Foo","Foo",#22959) +typedecl(#22959,#22826) #22960=* -exprs(#22960,0,#22958,0,"a") -hasLocation(#22960,#21726) -enclosing_stmt(#22960,#22946) -expr_containers(#22960,#22805) -literals("a","a",#22960) -is_abstract_member(#22958) -#22961=* -typeexprs(#22961,29,#22958,2,"infer U") -#22962=@"loc,{#10000},86,32,86,38" -locations_default(#22962,#10000,86,32,86,38) -hasLocation(#22961,#22962) -enclosing_stmt(#22961,#22946) -expr_containers(#22961,#22805) +scopes(#22960,12) +scopenodes(#22957,#22960) +scopenesting(#22960,#22817) +#22961=@"local_type_name;{T};{#22960}" +local_type_names(#22961,"T",#22960) +#22962=* +typeexprs(#22962,22,#22957,2,"T") +hasLocation(#22962,#21714) +enclosing_stmt(#22962,#22957) +expr_containers(#22962,#22814) #22963=* -typeexprs(#22963,22,#22961,0,"U") -hasLocation(#22963,#21732) -enclosing_stmt(#22963,#22946) -expr_containers(#22963,#22805) +typeexprs(#22963,1,#22962,0,"T") +hasLocation(#22963,#21714) +enclosing_stmt(#22963,#22957) +expr_containers(#22963,#22814) +literals("T","T",#22963) +typedecl(#22963,#22961) #22964=* -typeexprs(#22964,1,#22963,0,"U") -hasLocation(#22964,#21732) -enclosing_stmt(#22964,#22946) -expr_containers(#22964,#22805) -literals("U","U",#22964) -#22965=* -properties(#22965,#22956,1,8,"b: infer U") -#22966=@"loc,{#10000},86,41,86,50" -locations_default(#22966,#10000,86,41,86,50) -hasLocation(#22965,#22966) +typeexprs(#22964,28,#22957,1,"T exten ... : never") +#22965=@"loc,{#10000},86,17,86,64" +locations_default(#22965,#10000,86,17,86,64) +hasLocation(#22964,#22965) +enclosing_stmt(#22964,#22957) +expr_containers(#22964,#22814) +#22966=* +typeexprs(#22966,0,#22964,0,"T") +hasLocation(#22966,#21720) +enclosing_stmt(#22966,#22957) +expr_containers(#22966,#22814) +literals("T","T",#22966) +typebind(#22966,#22961) #22967=* -exprs(#22967,0,#22965,0,"b") -hasLocation(#22967,#21736) -enclosing_stmt(#22967,#22946) -expr_containers(#22967,#22805) -literals("b","b",#22967) -is_abstract_member(#22965) -#22968=* -typeexprs(#22968,29,#22965,2,"infer U") -#22969=@"loc,{#10000},86,44,86,50" -locations_default(#22969,#10000,86,44,86,50) -hasLocation(#22968,#22969) -enclosing_stmt(#22968,#22946) -expr_containers(#22968,#22805) -#22970=* -typeexprs(#22970,22,#22968,0,"U") -hasLocation(#22970,#21742) -enclosing_stmt(#22970,#22946) -expr_containers(#22970,#22805) +typeexprs(#22967,21,#22964,1,"{ a: in ... fer U }") +#22968=@"loc,{#10000},86,27,86,52" +locations_default(#22968,#10000,86,27,86,52) +hasLocation(#22967,#22968) +enclosing_stmt(#22967,#22957) +expr_containers(#22967,#22814) +#22969=* +properties(#22969,#22967,0,8,"a: infer U,") +#22970=@"loc,{#10000},86,29,86,39" +locations_default(#22970,#10000,86,29,86,39) +hasLocation(#22969,#22970) #22971=* -typeexprs(#22971,1,#22970,0,"U") -hasLocation(#22971,#21742) -enclosing_stmt(#22971,#22946) -expr_containers(#22971,#22805) -literals("U","U",#22971) +exprs(#22971,0,#22969,0,"a") +hasLocation(#22971,#21726) +enclosing_stmt(#22971,#22957) +expr_containers(#22971,#22814) +literals("a","a",#22971) +is_abstract_member(#22969) #22972=* -typeexprs(#22972,0,#22953,2,"U") -hasLocation(#22972,#21748) -enclosing_stmt(#22972,#22946) -expr_containers(#22972,#22805) -literals("U","U",#22972) -#22973=* -typeexprs(#22973,2,#22953,3,"never") -hasLocation(#22973,#21752) -enclosing_stmt(#22973,#22946) -expr_containers(#22973,#22805) -literals("never","never",#22973) +typeexprs(#22972,29,#22969,2,"infer U") +#22973=@"loc,{#10000},86,32,86,38" +locations_default(#22973,#10000,86,32,86,38) +hasLocation(#22972,#22973) +enclosing_stmt(#22972,#22957) +expr_containers(#22972,#22814) #22974=* -stmts(#22974,35,#22805,8,"type T1 ... ing }>;") -#22975=@"loc,{#10000},87,3,87,43" -locations_default(#22975,#10000,87,3,87,43) -hasLocation(#22974,#22975) -stmt_containers(#22974,#22805) +typeexprs(#22974,22,#22972,0,"U") +hasLocation(#22974,#21732) +enclosing_stmt(#22974,#22957) +expr_containers(#22974,#22814) +#22975=* +typeexprs(#22975,1,#22974,0,"U") +hasLocation(#22975,#21732) +enclosing_stmt(#22975,#22957) +expr_containers(#22975,#22814) +literals("U","U",#22975) #22976=* -typeexprs(#22976,1,#22974,0,"T10") -hasLocation(#22976,#21758) -enclosing_stmt(#22976,#22974) -expr_containers(#22976,#22805) -literals("T10","T10",#22976) -typedecl(#22976,#22818) -#22977=* -typeexprs(#22977,14,#22974,1,"Foo<{ a ... ring }>") -#22978=@"loc,{#10000},87,14,87,42" -locations_default(#22978,#10000,87,14,87,42) -hasLocation(#22977,#22978) -enclosing_stmt(#22977,#22974) -expr_containers(#22977,#22805) +properties(#22976,#22967,1,8,"b: infer U") +#22977=@"loc,{#10000},86,41,86,50" +locations_default(#22977,#10000,86,41,86,50) +hasLocation(#22976,#22977) +#22978=* +exprs(#22978,0,#22976,0,"b") +hasLocation(#22978,#21736) +enclosing_stmt(#22978,#22957) +expr_containers(#22978,#22814) +literals("b","b",#22978) +is_abstract_member(#22976) #22979=* -typeexprs(#22979,0,#22977,-1,"Foo") -hasLocation(#22979,#21762) -enclosing_stmt(#22979,#22974) -expr_containers(#22979,#22805) -literals("Foo","Foo",#22979) -typebind(#22979,#22817) -#22980=* -typeexprs(#22980,21,#22977,0,"{ a: st ... tring }") -#22981=@"loc,{#10000},87,18,87,41" -locations_default(#22981,#10000,87,18,87,41) -hasLocation(#22980,#22981) -enclosing_stmt(#22980,#22974) -expr_containers(#22980,#22805) +typeexprs(#22979,29,#22976,2,"infer U") +#22980=@"loc,{#10000},86,44,86,50" +locations_default(#22980,#10000,86,44,86,50) +hasLocation(#22979,#22980) +enclosing_stmt(#22979,#22957) +expr_containers(#22979,#22814) +#22981=* +typeexprs(#22981,22,#22979,0,"U") +hasLocation(#22981,#21742) +enclosing_stmt(#22981,#22957) +expr_containers(#22981,#22814) #22982=* -properties(#22982,#22980,0,8,"a: string,") -#22983=@"loc,{#10000},87,20,87,29" -locations_default(#22983,#10000,87,20,87,29) -hasLocation(#22982,#22983) +typeexprs(#22982,1,#22981,0,"U") +hasLocation(#22982,#21742) +enclosing_stmt(#22982,#22957) +expr_containers(#22982,#22814) +literals("U","U",#22982) +#22983=* +typeexprs(#22983,0,#22964,2,"U") +hasLocation(#22983,#21748) +enclosing_stmt(#22983,#22957) +expr_containers(#22983,#22814) +literals("U","U",#22983) #22984=* -exprs(#22984,0,#22982,0,"a") -hasLocation(#22984,#21768) -enclosing_stmt(#22984,#22974) -expr_containers(#22984,#22805) -literals("a","a",#22984) -is_abstract_member(#22982) +typeexprs(#22984,2,#22964,3,"never") +hasLocation(#22984,#21752) +enclosing_stmt(#22984,#22957) +expr_containers(#22984,#22814) +literals("never","never",#22984) #22985=* -typeexprs(#22985,2,#22982,2,"string") -hasLocation(#22985,#21772) -enclosing_stmt(#22985,#22974) -expr_containers(#22985,#22805) -literals("string","string",#22985) -#22986=* -properties(#22986,#22980,1,8,"b: string") -#22987=@"loc,{#10000},87,31,87,39" -locations_default(#22987,#10000,87,31,87,39) -hasLocation(#22986,#22987) +stmts(#22985,35,#22814,8,"type T1 ... ing }>;") +#22986=@"loc,{#10000},87,3,87,43" +locations_default(#22986,#10000,87,3,87,43) +hasLocation(#22985,#22986) +stmt_containers(#22985,#22814) +#22987=* +typeexprs(#22987,1,#22985,0,"T10") +hasLocation(#22987,#21758) +enclosing_stmt(#22987,#22985) +expr_containers(#22987,#22814) +literals("T10","T10",#22987) +typedecl(#22987,#22827) #22988=* -exprs(#22988,0,#22986,0,"b") -hasLocation(#22988,#21776) -enclosing_stmt(#22988,#22974) -expr_containers(#22988,#22805) -literals("b","b",#22988) -is_abstract_member(#22986) -#22989=* -typeexprs(#22989,2,#22986,2,"string") -hasLocation(#22989,#21780) -enclosing_stmt(#22989,#22974) -expr_containers(#22989,#22805) -literals("string","string",#22989) +typeexprs(#22988,14,#22985,1,"Foo<{ a ... ring }>") +#22989=@"loc,{#10000},87,14,87,42" +locations_default(#22989,#10000,87,14,87,42) +hasLocation(#22988,#22989) +enclosing_stmt(#22988,#22985) +expr_containers(#22988,#22814) #22990=* -stmts(#22990,35,#22805,9,"type T1 ... ber }>;") -#22991=@"loc,{#10000},88,3,88,43" -locations_default(#22991,#10000,88,3,88,43) -hasLocation(#22990,#22991) -stmt_containers(#22990,#22805) -#22992=* -typeexprs(#22992,1,#22990,0,"T11") -hasLocation(#22992,#21790) -enclosing_stmt(#22992,#22990) -expr_containers(#22992,#22805) -literals("T11","T11",#22992) -typedecl(#22992,#22819) +typeexprs(#22990,0,#22988,-1,"Foo") +hasLocation(#22990,#21762) +enclosing_stmt(#22990,#22985) +expr_containers(#22990,#22814) +literals("Foo","Foo",#22990) +typebind(#22990,#22826) +#22991=* +typeexprs(#22991,21,#22988,0,"{ a: st ... tring }") +#22992=@"loc,{#10000},87,18,87,41" +locations_default(#22992,#10000,87,18,87,41) +hasLocation(#22991,#22992) +enclosing_stmt(#22991,#22985) +expr_containers(#22991,#22814) #22993=* -typeexprs(#22993,14,#22990,1,"Foo<{ a ... mber }>") -#22994=@"loc,{#10000},88,14,88,42" -locations_default(#22994,#10000,88,14,88,42) +properties(#22993,#22991,0,8,"a: string,") +#22994=@"loc,{#10000},87,20,87,29" +locations_default(#22994,#10000,87,20,87,29) hasLocation(#22993,#22994) -enclosing_stmt(#22993,#22990) -expr_containers(#22993,#22805) #22995=* -typeexprs(#22995,0,#22993,-1,"Foo") -hasLocation(#22995,#21794) -enclosing_stmt(#22995,#22990) -expr_containers(#22995,#22805) -literals("Foo","Foo",#22995) -typebind(#22995,#22817) +exprs(#22995,0,#22993,0,"a") +hasLocation(#22995,#21768) +enclosing_stmt(#22995,#22985) +expr_containers(#22995,#22814) +literals("a","a",#22995) +is_abstract_member(#22993) #22996=* -typeexprs(#22996,21,#22993,0,"{ a: st ... umber }") -#22997=@"loc,{#10000},88,18,88,41" -locations_default(#22997,#10000,88,18,88,41) -hasLocation(#22996,#22997) -enclosing_stmt(#22996,#22990) -expr_containers(#22996,#22805) -#22998=* -properties(#22998,#22996,0,8,"a: string,") -#22999=@"loc,{#10000},88,20,88,29" -locations_default(#22999,#10000,88,20,88,29) -hasLocation(#22998,#22999) +typeexprs(#22996,2,#22993,2,"string") +hasLocation(#22996,#21772) +enclosing_stmt(#22996,#22985) +expr_containers(#22996,#22814) +literals("string","string",#22996) +#22997=* +properties(#22997,#22991,1,8,"b: string") +#22998=@"loc,{#10000},87,31,87,39" +locations_default(#22998,#10000,87,31,87,39) +hasLocation(#22997,#22998) +#22999=* +exprs(#22999,0,#22997,0,"b") +hasLocation(#22999,#21776) +enclosing_stmt(#22999,#22985) +expr_containers(#22999,#22814) +literals("b","b",#22999) +is_abstract_member(#22997) #23000=* -exprs(#23000,0,#22998,0,"a") -hasLocation(#23000,#21800) -enclosing_stmt(#23000,#22990) -expr_containers(#23000,#22805) -literals("a","a",#23000) -is_abstract_member(#22998) +typeexprs(#23000,2,#22997,2,"string") +hasLocation(#23000,#21780) +enclosing_stmt(#23000,#22985) +expr_containers(#23000,#22814) +literals("string","string",#23000) #23001=* -typeexprs(#23001,2,#22998,2,"string") -hasLocation(#23001,#21804) -enclosing_stmt(#23001,#22990) -expr_containers(#23001,#22805) -literals("string","string",#23001) -#23002=* -properties(#23002,#22996,1,8,"b: number") -#23003=@"loc,{#10000},88,31,88,39" -locations_default(#23003,#10000,88,31,88,39) -hasLocation(#23002,#23003) +stmts(#23001,35,#22814,9,"type T1 ... ber }>;") +#23002=@"loc,{#10000},88,3,88,43" +locations_default(#23002,#10000,88,3,88,43) +hasLocation(#23001,#23002) +stmt_containers(#23001,#22814) +#23003=* +typeexprs(#23003,1,#23001,0,"T11") +hasLocation(#23003,#21790) +enclosing_stmt(#23003,#23001) +expr_containers(#23003,#22814) +literals("T11","T11",#23003) +typedecl(#23003,#22828) #23004=* -exprs(#23004,0,#23002,0,"b") -hasLocation(#23004,#21808) -enclosing_stmt(#23004,#22990) -expr_containers(#23004,#22805) -literals("b","b",#23004) -is_abstract_member(#23002) -#23005=* -typeexprs(#23005,2,#23002,2,"number") -hasLocation(#23005,#21812) -enclosing_stmt(#23005,#22990) -expr_containers(#23005,#22805) -literals("number","number",#23005) +typeexprs(#23004,14,#23001,1,"Foo<{ a ... mber }>") +#23005=@"loc,{#10000},88,14,88,42" +locations_default(#23005,#10000,88,14,88,42) +hasLocation(#23004,#23005) +enclosing_stmt(#23004,#23001) +expr_containers(#23004,#22814) #23006=* -stmts(#23006,35,#22805,10,"type Ba ... never;") -#23007=@"loc,{#10000},90,3,90,91" -locations_default(#23007,#10000,90,3,90,91) -hasLocation(#23006,#23007) -stmt_containers(#23006,#22805) -#23008=* -typeexprs(#23008,1,#23006,0,"Bar") -hasLocation(#23008,#21822) -enclosing_stmt(#23008,#23006) -expr_containers(#23008,#22805) -literals("Bar","Bar",#23008) -typedecl(#23008,#22820) +typeexprs(#23006,0,#23004,-1,"Foo") +hasLocation(#23006,#21794) +enclosing_stmt(#23006,#23001) +expr_containers(#23006,#22814) +literals("Foo","Foo",#23006) +typebind(#23006,#22826) +#23007=* +typeexprs(#23007,21,#23004,0,"{ a: st ... umber }") +#23008=@"loc,{#10000},88,18,88,41" +locations_default(#23008,#10000,88,18,88,41) +hasLocation(#23007,#23008) +enclosing_stmt(#23007,#23001) +expr_containers(#23007,#22814) #23009=* -scopes(#23009,12) -scopenodes(#23006,#23009) -scopenesting(#23009,#22808) -#23010=@"local_type_name;{T};{#23009}" -local_type_names(#23010,"T",#23009) +properties(#23009,#23007,0,8,"a: string,") +#23010=@"loc,{#10000},88,20,88,29" +locations_default(#23010,#10000,88,20,88,29) +hasLocation(#23009,#23010) #23011=* -typeexprs(#23011,22,#23006,2,"T") -hasLocation(#23011,#21826) -enclosing_stmt(#23011,#23006) -expr_containers(#23011,#22805) +exprs(#23011,0,#23009,0,"a") +hasLocation(#23011,#21800) +enclosing_stmt(#23011,#23001) +expr_containers(#23011,#22814) +literals("a","a",#23011) +is_abstract_member(#23009) #23012=* -typeexprs(#23012,1,#23011,0,"T") -hasLocation(#23012,#21826) -enclosing_stmt(#23012,#23006) -expr_containers(#23012,#22805) -literals("T","T",#23012) -typedecl(#23012,#23010) +typeexprs(#23012,2,#23009,2,"string") +hasLocation(#23012,#21804) +enclosing_stmt(#23012,#23001) +expr_containers(#23012,#22814) +literals("string","string",#23012) #23013=* -typeexprs(#23013,28,#23006,1,"T exten ... : never") -#23014=@"loc,{#10000},90,17,90,90" -locations_default(#23014,#10000,90,17,90,90) +properties(#23013,#23007,1,8,"b: number") +#23014=@"loc,{#10000},88,31,88,39" +locations_default(#23014,#10000,88,31,88,39) hasLocation(#23013,#23014) -enclosing_stmt(#23013,#23006) -expr_containers(#23013,#22805) #23015=* -typeexprs(#23015,0,#23013,0,"T") -hasLocation(#23015,#21832) -enclosing_stmt(#23015,#23006) -expr_containers(#23015,#22805) -literals("T","T",#23015) -typebind(#23015,#23010) +exprs(#23015,0,#23013,0,"b") +hasLocation(#23015,#21808) +enclosing_stmt(#23015,#23001) +expr_containers(#23015,#22814) +literals("b","b",#23015) +is_abstract_member(#23013) #23016=* -typeexprs(#23016,21,#23013,1,"{ a: (x ... void }") -#23017=@"loc,{#10000},90,27,90,78" -locations_default(#23017,#10000,90,27,90,78) -hasLocation(#23016,#23017) -enclosing_stmt(#23016,#23006) -expr_containers(#23016,#22805) -#23018=* -properties(#23018,#23016,0,8,"a: (x: ... > void,") -#23019=@"loc,{#10000},90,29,90,52" -locations_default(#23019,#10000,90,29,90,52) -hasLocation(#23018,#23019) +typeexprs(#23016,2,#23013,2,"number") +hasLocation(#23016,#21812) +enclosing_stmt(#23016,#23001) +expr_containers(#23016,#22814) +literals("number","number",#23016) +#23017=* +stmts(#23017,35,#22814,10,"type Ba ... never;") +#23018=@"loc,{#10000},90,3,90,91" +locations_default(#23018,#10000,90,3,90,91) +hasLocation(#23017,#23018) +stmt_containers(#23017,#22814) +#23019=* +typeexprs(#23019,1,#23017,0,"Bar") +hasLocation(#23019,#21822) +enclosing_stmt(#23019,#23017) +expr_containers(#23019,#22814) +literals("Bar","Bar",#23019) +typedecl(#23019,#22829) #23020=* -exprs(#23020,0,#23018,0,"a") -hasLocation(#23020,#21838) -enclosing_stmt(#23020,#23006) -expr_containers(#23020,#22805) -literals("a","a",#23020) -is_abstract_member(#23018) -#23021=* -typeexprs(#23021,23,#23018,2,"(x: infer U) => void") -#23022=@"loc,{#10000},90,32,90,51" -locations_default(#23022,#10000,90,32,90,51) -hasLocation(#23021,#23022) -enclosing_stmt(#23021,#23006) -expr_containers(#23021,#22805) +scopes(#23020,12) +scopenodes(#23017,#23020) +scopenesting(#23020,#22817) +#23021=@"local_type_name;{T};{#23020}" +local_type_names(#23021,"T",#23020) +#23022=* +typeexprs(#23022,22,#23017,2,"T") +hasLocation(#23022,#21826) +enclosing_stmt(#23022,#23017) +expr_containers(#23022,#22814) #23023=* -exprs(#23023,9,#23021,0,"(x: infer U) => void") -hasLocation(#23023,#23022) -enclosing_stmt(#23023,#23006) -expr_containers(#23023,#22805) +typeexprs(#23023,1,#23022,0,"T") +hasLocation(#23023,#21826) +enclosing_stmt(#23023,#23017) +expr_containers(#23023,#22814) +literals("T","T",#23023) +typedecl(#23023,#23021) #23024=* -scopes(#23024,1) -scopenodes(#23023,#23024) -scopenesting(#23024,#23009) -#23025=@"var;{x};{#23024}" -variables(#23025,"x",#23024) +typeexprs(#23024,28,#23017,1,"T exten ... : never") +#23025=@"loc,{#10000},90,17,90,90" +locations_default(#23025,#10000,90,17,90,90) +hasLocation(#23024,#23025) +enclosing_stmt(#23024,#23017) +expr_containers(#23024,#22814) #23026=* -exprs(#23026,78,#23023,0,"x") -hasLocation(#23026,#21844) -expr_containers(#23026,#23023) -literals("x","x",#23026) -decl(#23026,#23025) -#23027=@"var;{arguments};{#23024}" -variables(#23027,"arguments",#23024) -is_arguments_object(#23027) -#23028=* -typeexprs(#23028,2,#23023,-3,"void") -hasLocation(#23028,#21856) -expr_containers(#23028,#23023) -literals("void","void",#23028) +typeexprs(#23026,0,#23024,0,"T") +hasLocation(#23026,#21832) +enclosing_stmt(#23026,#23017) +expr_containers(#23026,#22814) +literals("T","T",#23026) +typebind(#23026,#23021) +#23027=* +typeexprs(#23027,21,#23024,1,"{ a: (x ... void }") +#23028=@"loc,{#10000},90,27,90,78" +locations_default(#23028,#10000,90,27,90,78) +hasLocation(#23027,#23028) +enclosing_stmt(#23027,#23017) +expr_containers(#23027,#22814) #23029=* -typeexprs(#23029,29,#23023,-6,"infer U") -#23030=@"loc,{#10000},90,36,90,42" -locations_default(#23030,#10000,90,36,90,42) +properties(#23029,#23027,0,8,"a: (x: ... > void,") +#23030=@"loc,{#10000},90,29,90,52" +locations_default(#23030,#10000,90,29,90,52) hasLocation(#23029,#23030) -expr_containers(#23029,#23023) #23031=* -typeexprs(#23031,22,#23029,0,"U") -hasLocation(#23031,#21850) -expr_containers(#23031,#23023) +exprs(#23031,0,#23029,0,"a") +hasLocation(#23031,#21838) +enclosing_stmt(#23031,#23017) +expr_containers(#23031,#22814) +literals("a","a",#23031) +is_abstract_member(#23029) #23032=* -typeexprs(#23032,1,#23031,0,"U") -hasLocation(#23032,#21850) -expr_containers(#23032,#23023) -literals("U","U",#23032) -#23033=* -properties(#23033,#23016,1,8,"b: (x: ... => void") -#23034=@"loc,{#10000},90,54,90,76" -locations_default(#23034,#10000,90,54,90,76) -hasLocation(#23033,#23034) +typeexprs(#23032,23,#23029,2,"(x: infer U) => void") +#23033=@"loc,{#10000},90,32,90,51" +locations_default(#23033,#10000,90,32,90,51) +hasLocation(#23032,#23033) +enclosing_stmt(#23032,#23017) +expr_containers(#23032,#22814) +#23034=* +exprs(#23034,9,#23032,0,"(x: infer U) => void") +hasLocation(#23034,#23033) +enclosing_stmt(#23034,#23017) +expr_containers(#23034,#22814) #23035=* -exprs(#23035,0,#23033,0,"b") -hasLocation(#23035,#21860) -enclosing_stmt(#23035,#23006) -expr_containers(#23035,#22805) -literals("b","b",#23035) -is_abstract_member(#23033) -#23036=* -typeexprs(#23036,23,#23033,2,"(x: infer U) => void") -#23037=@"loc,{#10000},90,57,90,76" -locations_default(#23037,#10000,90,57,90,76) -hasLocation(#23036,#23037) -enclosing_stmt(#23036,#23006) -expr_containers(#23036,#22805) +scopes(#23035,1) +scopenodes(#23034,#23035) +scopenesting(#23035,#23020) +#23036=@"var;{this};{#23035}" +variables(#23036,"this",#23035) +#23037=@"var;{x};{#23035}" +variables(#23037,"x",#23035) #23038=* -exprs(#23038,9,#23036,0,"(x: infer U) => void") -hasLocation(#23038,#23037) -enclosing_stmt(#23038,#23006) -expr_containers(#23038,#22805) -#23039=* -scopes(#23039,1) -scopenodes(#23038,#23039) -scopenesting(#23039,#23009) -#23040=@"var;{x};{#23039}" -variables(#23040,"x",#23039) +exprs(#23038,78,#23034,0,"x") +hasLocation(#23038,#21844) +expr_containers(#23038,#23034) +literals("x","x",#23038) +decl(#23038,#23037) +#23039=@"var;{arguments};{#23035}" +variables(#23039,"arguments",#23035) +is_arguments_object(#23039) +#23040=* +typeexprs(#23040,2,#23034,-3,"void") +hasLocation(#23040,#21856) +expr_containers(#23040,#23034) +literals("void","void",#23040) #23041=* -exprs(#23041,78,#23038,0,"x") -hasLocation(#23041,#21866) -expr_containers(#23041,#23038) -literals("x","x",#23041) -decl(#23041,#23040) -#23042=@"var;{arguments};{#23039}" -variables(#23042,"arguments",#23039) -is_arguments_object(#23042) +typeexprs(#23041,29,#23034,-6,"infer U") +#23042=@"loc,{#10000},90,36,90,42" +locations_default(#23042,#10000,90,36,90,42) +hasLocation(#23041,#23042) +expr_containers(#23041,#23034) #23043=* -typeexprs(#23043,2,#23038,-3,"void") -hasLocation(#23043,#21878) -expr_containers(#23043,#23038) -literals("void","void",#23043) +typeexprs(#23043,22,#23041,0,"U") +hasLocation(#23043,#21850) +expr_containers(#23043,#23034) #23044=* -typeexprs(#23044,29,#23038,-6,"infer U") -#23045=@"loc,{#10000},90,61,90,67" -locations_default(#23045,#10000,90,61,90,67) -hasLocation(#23044,#23045) -expr_containers(#23044,#23038) -#23046=* -typeexprs(#23046,22,#23044,0,"U") -hasLocation(#23046,#21872) -expr_containers(#23046,#23038) +typeexprs(#23044,1,#23043,0,"U") +hasLocation(#23044,#21850) +expr_containers(#23044,#23034) +literals("U","U",#23044) +#23045=* +properties(#23045,#23027,1,8,"b: (x: ... => void") +#23046=@"loc,{#10000},90,54,90,76" +locations_default(#23046,#10000,90,54,90,76) +hasLocation(#23045,#23046) #23047=* -typeexprs(#23047,1,#23046,0,"U") -hasLocation(#23047,#21872) -expr_containers(#23047,#23038) -literals("U","U",#23047) +exprs(#23047,0,#23045,0,"b") +hasLocation(#23047,#21860) +enclosing_stmt(#23047,#23017) +expr_containers(#23047,#22814) +literals("b","b",#23047) +is_abstract_member(#23045) #23048=* -typeexprs(#23048,0,#23013,2,"U") -hasLocation(#23048,#21884) -enclosing_stmt(#23048,#23006) -expr_containers(#23048,#22805) -literals("U","U",#23048) -#23049=* -typeexprs(#23049,2,#23013,3,"never") -hasLocation(#23049,#21888) -enclosing_stmt(#23049,#23006) -expr_containers(#23049,#22805) -literals("never","never",#23049) +typeexprs(#23048,23,#23045,2,"(x: infer U) => void") +#23049=@"loc,{#10000},90,57,90,76" +locations_default(#23049,#10000,90,57,90,76) +hasLocation(#23048,#23049) +enclosing_stmt(#23048,#23017) +expr_containers(#23048,#22814) #23050=* -stmts(#23050,35,#22805,11,"type T2 ... oid }>;") -#23051=@"loc,{#10000},91,3,91,69" -locations_default(#23051,#10000,91,3,91,69) -hasLocation(#23050,#23051) -stmt_containers(#23050,#22805) -#23052=* -typeexprs(#23052,1,#23050,0,"T20") -hasLocation(#23052,#21894) -enclosing_stmt(#23052,#23050) -expr_containers(#23052,#22805) -literals("T20","T20",#23052) -typedecl(#23052,#22821) -#23053=* -typeexprs(#23053,14,#23050,1,"Bar<{ a ... void }>") -#23054=@"loc,{#10000},91,14,91,68" -locations_default(#23054,#10000,91,14,91,68) -hasLocation(#23053,#23054) -enclosing_stmt(#23053,#23050) -expr_containers(#23053,#22805) -#23055=* -typeexprs(#23055,0,#23053,-1,"Bar") -hasLocation(#23055,#21898) -enclosing_stmt(#23055,#23050) -expr_containers(#23055,#22805) -literals("Bar","Bar",#23055) -typebind(#23055,#22820) +exprs(#23050,9,#23048,0,"(x: infer U) => void") +hasLocation(#23050,#23049) +enclosing_stmt(#23050,#23017) +expr_containers(#23050,#22814) +#23051=* +scopes(#23051,1) +scopenodes(#23050,#23051) +scopenesting(#23051,#23020) +#23052=@"var;{this};{#23051}" +variables(#23052,"this",#23051) +#23053=@"var;{x};{#23051}" +variables(#23053,"x",#23051) +#23054=* +exprs(#23054,78,#23050,0,"x") +hasLocation(#23054,#21866) +expr_containers(#23054,#23050) +literals("x","x",#23054) +decl(#23054,#23053) +#23055=@"var;{arguments};{#23051}" +variables(#23055,"arguments",#23051) +is_arguments_object(#23055) #23056=* -typeexprs(#23056,21,#23053,0,"{ a: (x ... void }") -#23057=@"loc,{#10000},91,18,91,67" -locations_default(#23057,#10000,91,18,91,67) -hasLocation(#23056,#23057) -enclosing_stmt(#23056,#23050) -expr_containers(#23056,#22805) -#23058=* -properties(#23058,#23056,0,8,"a: (x: ... > void,") -#23059=@"loc,{#10000},91,20,91,42" -locations_default(#23059,#10000,91,20,91,42) -hasLocation(#23058,#23059) +typeexprs(#23056,2,#23050,-3,"void") +hasLocation(#23056,#21878) +expr_containers(#23056,#23050) +literals("void","void",#23056) +#23057=* +typeexprs(#23057,29,#23050,-6,"infer U") +#23058=@"loc,{#10000},90,61,90,67" +locations_default(#23058,#10000,90,61,90,67) +hasLocation(#23057,#23058) +expr_containers(#23057,#23050) +#23059=* +typeexprs(#23059,22,#23057,0,"U") +hasLocation(#23059,#21872) +expr_containers(#23059,#23050) #23060=* -exprs(#23060,0,#23058,0,"a") -hasLocation(#23060,#21904) -enclosing_stmt(#23060,#23050) -expr_containers(#23060,#22805) -literals("a","a",#23060) -is_abstract_member(#23058) +typeexprs(#23060,1,#23059,0,"U") +hasLocation(#23060,#21872) +expr_containers(#23060,#23050) +literals("U","U",#23060) #23061=* -typeexprs(#23061,23,#23058,2,"(x: string) => void") -#23062=@"loc,{#10000},91,23,91,41" -locations_default(#23062,#10000,91,23,91,41) -hasLocation(#23061,#23062) -enclosing_stmt(#23061,#23050) -expr_containers(#23061,#22805) +typeexprs(#23061,0,#23024,2,"U") +hasLocation(#23061,#21884) +enclosing_stmt(#23061,#23017) +expr_containers(#23061,#22814) +literals("U","U",#23061) +#23062=* +typeexprs(#23062,2,#23024,3,"never") +hasLocation(#23062,#21888) +enclosing_stmt(#23062,#23017) +expr_containers(#23062,#22814) +literals("never","never",#23062) #23063=* -exprs(#23063,9,#23061,0,"(x: string) => void") -hasLocation(#23063,#23062) -enclosing_stmt(#23063,#23050) -expr_containers(#23063,#22805) -#23064=* -scopes(#23064,1) -scopenodes(#23063,#23064) -scopenesting(#23064,#22808) -#23065=@"var;{x};{#23064}" -variables(#23065,"x",#23064) +stmts(#23063,35,#22814,11,"type T2 ... oid }>;") +#23064=@"loc,{#10000},91,3,91,69" +locations_default(#23064,#10000,91,3,91,69) +hasLocation(#23063,#23064) +stmt_containers(#23063,#22814) +#23065=* +typeexprs(#23065,1,#23063,0,"T20") +hasLocation(#23065,#21894) +enclosing_stmt(#23065,#23063) +expr_containers(#23065,#22814) +literals("T20","T20",#23065) +typedecl(#23065,#22830) #23066=* -exprs(#23066,78,#23063,0,"x") -hasLocation(#23066,#21910) -expr_containers(#23066,#23063) -literals("x","x",#23066) -decl(#23066,#23065) -#23067=@"var;{arguments};{#23064}" -variables(#23067,"arguments",#23064) -is_arguments_object(#23067) +typeexprs(#23066,14,#23063,1,"Bar<{ a ... void }>") +#23067=@"loc,{#10000},91,14,91,68" +locations_default(#23067,#10000,91,14,91,68) +hasLocation(#23066,#23067) +enclosing_stmt(#23066,#23063) +expr_containers(#23066,#22814) #23068=* -typeexprs(#23068,2,#23063,-3,"void") -hasLocation(#23068,#21920) -expr_containers(#23068,#23063) -literals("void","void",#23068) +typeexprs(#23068,0,#23066,-1,"Bar") +hasLocation(#23068,#21898) +enclosing_stmt(#23068,#23063) +expr_containers(#23068,#22814) +literals("Bar","Bar",#23068) +typebind(#23068,#22829) #23069=* -typeexprs(#23069,2,#23063,-6,"string") -hasLocation(#23069,#21914) -expr_containers(#23069,#23063) -literals("string","string",#23069) -#23070=* -properties(#23070,#23056,1,8,"b: (x: ... => void") -#23071=@"loc,{#10000},91,44,91,65" -locations_default(#23071,#10000,91,44,91,65) -hasLocation(#23070,#23071) -#23072=* -exprs(#23072,0,#23070,0,"b") -hasLocation(#23072,#21924) -enclosing_stmt(#23072,#23050) -expr_containers(#23072,#22805) -literals("b","b",#23072) -is_abstract_member(#23070) +typeexprs(#23069,21,#23066,0,"{ a: (x ... void }") +#23070=@"loc,{#10000},91,18,91,67" +locations_default(#23070,#10000,91,18,91,67) +hasLocation(#23069,#23070) +enclosing_stmt(#23069,#23063) +expr_containers(#23069,#22814) +#23071=* +properties(#23071,#23069,0,8,"a: (x: ... > void,") +#23072=@"loc,{#10000},91,20,91,42" +locations_default(#23072,#10000,91,20,91,42) +hasLocation(#23071,#23072) #23073=* -typeexprs(#23073,23,#23070,2,"(x: string) => void") -#23074=@"loc,{#10000},91,47,91,65" -locations_default(#23074,#10000,91,47,91,65) -hasLocation(#23073,#23074) -enclosing_stmt(#23073,#23050) -expr_containers(#23073,#22805) -#23075=* -exprs(#23075,9,#23073,0,"(x: string) => void") -hasLocation(#23075,#23074) -enclosing_stmt(#23075,#23050) -expr_containers(#23075,#22805) +exprs(#23073,0,#23071,0,"a") +hasLocation(#23073,#21904) +enclosing_stmt(#23073,#23063) +expr_containers(#23073,#22814) +literals("a","a",#23073) +is_abstract_member(#23071) +#23074=* +typeexprs(#23074,23,#23071,2,"(x: string) => void") +#23075=@"loc,{#10000},91,23,91,41" +locations_default(#23075,#10000,91,23,91,41) +hasLocation(#23074,#23075) +enclosing_stmt(#23074,#23063) +expr_containers(#23074,#22814) #23076=* -scopes(#23076,1) -scopenodes(#23075,#23076) -scopenesting(#23076,#22808) -#23077=@"var;{x};{#23076}" -variables(#23077,"x",#23076) -#23078=* -exprs(#23078,78,#23075,0,"x") -hasLocation(#23078,#21930) -expr_containers(#23078,#23075) -literals("x","x",#23078) -decl(#23078,#23077) -#23079=@"var;{arguments};{#23076}" -variables(#23079,"arguments",#23076) -is_arguments_object(#23079) +exprs(#23076,9,#23074,0,"(x: string) => void") +hasLocation(#23076,#23075) +enclosing_stmt(#23076,#23063) +expr_containers(#23076,#22814) +#23077=* +scopes(#23077,1) +scopenodes(#23076,#23077) +scopenesting(#23077,#22817) +#23078=@"var;{this};{#23077}" +variables(#23078,"this",#23077) +#23079=@"var;{x};{#23077}" +variables(#23079,"x",#23077) #23080=* -typeexprs(#23080,2,#23075,-3,"void") -hasLocation(#23080,#21940) -expr_containers(#23080,#23075) -literals("void","void",#23080) -#23081=* -typeexprs(#23081,2,#23075,-6,"string") -hasLocation(#23081,#21934) -expr_containers(#23081,#23075) -literals("string","string",#23081) +exprs(#23080,78,#23076,0,"x") +hasLocation(#23080,#21910) +expr_containers(#23080,#23076) +literals("x","x",#23080) +decl(#23080,#23079) +#23081=@"var;{arguments};{#23077}" +variables(#23081,"arguments",#23077) +is_arguments_object(#23081) #23082=* -stmts(#23082,35,#22805,12,"type T2 ... oid }>;") -#23083=@"loc,{#10000},92,3,92,69" -locations_default(#23083,#10000,92,3,92,69) -hasLocation(#23082,#23083) -stmt_containers(#23082,#22805) +typeexprs(#23082,2,#23076,-3,"void") +hasLocation(#23082,#21920) +expr_containers(#23082,#23076) +literals("void","void",#23082) +#23083=* +typeexprs(#23083,2,#23076,-6,"string") +hasLocation(#23083,#21914) +expr_containers(#23083,#23076) +literals("string","string",#23083) #23084=* -typeexprs(#23084,1,#23082,0,"T21") -hasLocation(#23084,#21950) -enclosing_stmt(#23084,#23082) -expr_containers(#23084,#22805) -literals("T21","T21",#23084) -typedecl(#23084,#22822) -#23085=* -typeexprs(#23085,14,#23082,1,"Bar<{ a ... void }>") -#23086=@"loc,{#10000},92,14,92,68" -locations_default(#23086,#10000,92,14,92,68) -hasLocation(#23085,#23086) -enclosing_stmt(#23085,#23082) -expr_containers(#23085,#22805) +properties(#23084,#23069,1,8,"b: (x: ... => void") +#23085=@"loc,{#10000},91,44,91,65" +locations_default(#23085,#10000,91,44,91,65) +hasLocation(#23084,#23085) +#23086=* +exprs(#23086,0,#23084,0,"b") +hasLocation(#23086,#21924) +enclosing_stmt(#23086,#23063) +expr_containers(#23086,#22814) +literals("b","b",#23086) +is_abstract_member(#23084) #23087=* -typeexprs(#23087,0,#23085,-1,"Bar") -hasLocation(#23087,#21954) -enclosing_stmt(#23087,#23082) -expr_containers(#23087,#22805) -literals("Bar","Bar",#23087) -typebind(#23087,#22820) -#23088=* -typeexprs(#23088,21,#23085,0,"{ a: (x ... void }") -#23089=@"loc,{#10000},92,18,92,67" -locations_default(#23089,#10000,92,18,92,67) -hasLocation(#23088,#23089) -enclosing_stmt(#23088,#23082) -expr_containers(#23088,#22805) +typeexprs(#23087,23,#23084,2,"(x: string) => void") +#23088=@"loc,{#10000},91,47,91,65" +locations_default(#23088,#10000,91,47,91,65) +hasLocation(#23087,#23088) +enclosing_stmt(#23087,#23063) +expr_containers(#23087,#22814) +#23089=* +exprs(#23089,9,#23087,0,"(x: string) => void") +hasLocation(#23089,#23088) +enclosing_stmt(#23089,#23063) +expr_containers(#23089,#22814) #23090=* -properties(#23090,#23088,0,8,"a: (x: ... > void,") -#23091=@"loc,{#10000},92,20,92,42" -locations_default(#23091,#10000,92,20,92,42) -hasLocation(#23090,#23091) -#23092=* -exprs(#23092,0,#23090,0,"a") -hasLocation(#23092,#21960) -enclosing_stmt(#23092,#23082) -expr_containers(#23092,#22805) -literals("a","a",#23092) -is_abstract_member(#23090) +scopes(#23090,1) +scopenodes(#23089,#23090) +scopenesting(#23090,#22817) +#23091=@"var;{this};{#23090}" +variables(#23091,"this",#23090) +#23092=@"var;{x};{#23090}" +variables(#23092,"x",#23090) #23093=* -typeexprs(#23093,23,#23090,2,"(x: string) => void") -#23094=@"loc,{#10000},92,23,92,41" -locations_default(#23094,#10000,92,23,92,41) -hasLocation(#23093,#23094) -enclosing_stmt(#23093,#23082) -expr_containers(#23093,#22805) +exprs(#23093,78,#23089,0,"x") +hasLocation(#23093,#21930) +expr_containers(#23093,#23089) +literals("x","x",#23093) +decl(#23093,#23092) +#23094=@"var;{arguments};{#23090}" +variables(#23094,"arguments",#23090) +is_arguments_object(#23094) #23095=* -exprs(#23095,9,#23093,0,"(x: string) => void") -hasLocation(#23095,#23094) -enclosing_stmt(#23095,#23082) -expr_containers(#23095,#22805) +typeexprs(#23095,2,#23089,-3,"void") +hasLocation(#23095,#21940) +expr_containers(#23095,#23089) +literals("void","void",#23095) #23096=* -scopes(#23096,1) -scopenodes(#23095,#23096) -scopenesting(#23096,#22808) -#23097=@"var;{x};{#23096}" -variables(#23097,"x",#23096) -#23098=* -exprs(#23098,78,#23095,0,"x") -hasLocation(#23098,#21966) -expr_containers(#23098,#23095) -literals("x","x",#23098) -decl(#23098,#23097) -#23099=@"var;{arguments};{#23096}" -variables(#23099,"arguments",#23096) -is_arguments_object(#23099) +typeexprs(#23096,2,#23089,-6,"string") +hasLocation(#23096,#21934) +expr_containers(#23096,#23089) +literals("string","string",#23096) +#23097=* +stmts(#23097,35,#22814,12,"type T2 ... oid }>;") +#23098=@"loc,{#10000},92,3,92,69" +locations_default(#23098,#10000,92,3,92,69) +hasLocation(#23097,#23098) +stmt_containers(#23097,#22814) +#23099=* +typeexprs(#23099,1,#23097,0,"T21") +hasLocation(#23099,#21950) +enclosing_stmt(#23099,#23097) +expr_containers(#23099,#22814) +literals("T21","T21",#23099) +typedecl(#23099,#22831) #23100=* -typeexprs(#23100,2,#23095,-3,"void") -hasLocation(#23100,#21976) -expr_containers(#23100,#23095) -literals("void","void",#23100) -#23101=* -typeexprs(#23101,2,#23095,-6,"string") -hasLocation(#23101,#21970) -expr_containers(#23101,#23095) -literals("string","string",#23101) +typeexprs(#23100,14,#23097,1,"Bar<{ a ... void }>") +#23101=@"loc,{#10000},92,14,92,68" +locations_default(#23101,#10000,92,14,92,68) +hasLocation(#23100,#23101) +enclosing_stmt(#23100,#23097) +expr_containers(#23100,#22814) #23102=* -properties(#23102,#23088,1,8,"b: (x: ... => void") -#23103=@"loc,{#10000},92,44,92,65" -locations_default(#23103,#10000,92,44,92,65) -hasLocation(#23102,#23103) -#23104=* -exprs(#23104,0,#23102,0,"b") -hasLocation(#23104,#21980) -enclosing_stmt(#23104,#23082) -expr_containers(#23104,#22805) -literals("b","b",#23104) -is_abstract_member(#23102) +typeexprs(#23102,0,#23100,-1,"Bar") +hasLocation(#23102,#21954) +enclosing_stmt(#23102,#23097) +expr_containers(#23102,#22814) +literals("Bar","Bar",#23102) +typebind(#23102,#22829) +#23103=* +typeexprs(#23103,21,#23100,0,"{ a: (x ... void }") +#23104=@"loc,{#10000},92,18,92,67" +locations_default(#23104,#10000,92,18,92,67) +hasLocation(#23103,#23104) +enclosing_stmt(#23103,#23097) +expr_containers(#23103,#22814) #23105=* -typeexprs(#23105,23,#23102,2,"(x: number) => void") -#23106=@"loc,{#10000},92,47,92,65" -locations_default(#23106,#10000,92,47,92,65) +properties(#23105,#23103,0,8,"a: (x: ... > void,") +#23106=@"loc,{#10000},92,20,92,42" +locations_default(#23106,#10000,92,20,92,42) hasLocation(#23105,#23106) -enclosing_stmt(#23105,#23082) -expr_containers(#23105,#22805) #23107=* -exprs(#23107,9,#23105,0,"(x: number) => void") -hasLocation(#23107,#23106) -enclosing_stmt(#23107,#23082) -expr_containers(#23107,#22805) +exprs(#23107,0,#23105,0,"a") +hasLocation(#23107,#21960) +enclosing_stmt(#23107,#23097) +expr_containers(#23107,#22814) +literals("a","a",#23107) +is_abstract_member(#23105) #23108=* -scopes(#23108,1) -scopenodes(#23107,#23108) -scopenesting(#23108,#22808) -#23109=@"var;{x};{#23108}" -variables(#23109,"x",#23108) +typeexprs(#23108,23,#23105,2,"(x: string) => void") +#23109=@"loc,{#10000},92,23,92,41" +locations_default(#23109,#10000,92,23,92,41) +hasLocation(#23108,#23109) +enclosing_stmt(#23108,#23097) +expr_containers(#23108,#22814) #23110=* -exprs(#23110,78,#23107,0,"x") -hasLocation(#23110,#21986) -expr_containers(#23110,#23107) -literals("x","x",#23110) -decl(#23110,#23109) -#23111=@"var;{arguments};{#23108}" -variables(#23111,"arguments",#23108) -is_arguments_object(#23111) -#23112=* -typeexprs(#23112,2,#23107,-3,"void") -hasLocation(#23112,#21996) -expr_containers(#23112,#23107) -literals("void","void",#23112) -#23113=* -typeexprs(#23113,2,#23107,-6,"number") -hasLocation(#23113,#21990) -expr_containers(#23113,#23107) -literals("number","number",#23113) +exprs(#23110,9,#23108,0,"(x: string) => void") +hasLocation(#23110,#23109) +enclosing_stmt(#23110,#23097) +expr_containers(#23110,#22814) +#23111=* +scopes(#23111,1) +scopenodes(#23110,#23111) +scopenesting(#23111,#22817) +#23112=@"var;{this};{#23111}" +variables(#23112,"this",#23111) +#23113=@"var;{x};{#23111}" +variables(#23113,"x",#23111) #23114=* -stmts(#23114,17,#22805,13,"declare ... number;") -#23115=@"loc,{#10000},94,3,94,42" -locations_default(#23115,#10000,94,3,94,42) -hasLocation(#23114,#23115) -stmt_containers(#23114,#22805) -has_declare_keyword(#23114) +exprs(#23114,78,#23110,0,"x") +hasLocation(#23114,#21966) +expr_containers(#23114,#23110) +literals("x","x",#23114) +decl(#23114,#23113) +#23115=@"var;{arguments};{#23111}" +variables(#23115,"arguments",#23111) +is_arguments_object(#23115) #23116=* -exprs(#23116,78,#23114,-1,"foo") -hasLocation(#23116,#22008) -expr_containers(#23116,#23114) -literals("foo","foo",#23116) -decl(#23116,#22809) +typeexprs(#23116,2,#23110,-3,"void") +hasLocation(#23116,#21976) +expr_containers(#23116,#23110) +literals("void","void",#23116) #23117=* -scopes(#23117,1) -scopenodes(#23114,#23117) -scopenesting(#23117,#22808) -#23118=@"var;{x};{#23117}" -variables(#23118,"x",#23117) -#23119=* -exprs(#23119,78,#23114,0,"x") -hasLocation(#23119,#22012) -expr_containers(#23119,#23114) -literals("x","x",#23119) -decl(#23119,#23118) -#23120=@"var;{arguments};{#23117}" -variables(#23120,"arguments",#23117) -is_arguments_object(#23120) +typeexprs(#23117,2,#23110,-6,"string") +hasLocation(#23117,#21970) +expr_containers(#23117,#23110) +literals("string","string",#23117) +#23118=* +properties(#23118,#23103,1,8,"b: (x: ... => void") +#23119=@"loc,{#10000},92,44,92,65" +locations_default(#23119,#10000,92,44,92,65) +hasLocation(#23118,#23119) +#23120=* +exprs(#23120,0,#23118,0,"b") +hasLocation(#23120,#21980) +enclosing_stmt(#23120,#23097) +expr_containers(#23120,#22814) +literals("b","b",#23120) +is_abstract_member(#23118) #23121=* -typeexprs(#23121,2,#23114,-3,"number") -hasLocation(#23121,#22022) -expr_containers(#23121,#23114) -literals("number","number",#23121) -#23122=* -typeexprs(#23122,2,#23114,-6,"string") -hasLocation(#23122,#22016) -expr_containers(#23122,#23114) -literals("string","string",#23122) +typeexprs(#23121,23,#23118,2,"(x: number) => void") +#23122=@"loc,{#10000},92,47,92,65" +locations_default(#23122,#10000,92,47,92,65) +hasLocation(#23121,#23122) +enclosing_stmt(#23121,#23097) +expr_containers(#23121,#22814) #23123=* -stmts(#23123,17,#22805,14,"declare ... string;") -#23124=@"loc,{#10000},95,3,95,42" -locations_default(#23124,#10000,95,3,95,42) -hasLocation(#23123,#23124) -stmt_containers(#23123,#22805) -has_declare_keyword(#23123) -#23125=* -exprs(#23125,78,#23123,-1,"foo") -hasLocation(#23125,#22030) -expr_containers(#23125,#23123) -literals("foo","foo",#23125) -decl(#23125,#22809) -#23126=* -scopes(#23126,1) -scopenodes(#23123,#23126) -scopenesting(#23126,#22808) -#23127=@"var;{x};{#23126}" -variables(#23127,"x",#23126) -#23128=* -exprs(#23128,78,#23123,0,"x") -hasLocation(#23128,#22034) -expr_containers(#23128,#23123) -literals("x","x",#23128) -decl(#23128,#23127) -#23129=@"var;{arguments};{#23126}" -variables(#23129,"arguments",#23126) -is_arguments_object(#23129) +exprs(#23123,9,#23121,0,"(x: number) => void") +hasLocation(#23123,#23122) +enclosing_stmt(#23123,#23097) +expr_containers(#23123,#22814) +#23124=* +scopes(#23124,1) +scopenodes(#23123,#23124) +scopenesting(#23124,#22817) +#23125=@"var;{this};{#23124}" +variables(#23125,"this",#23124) +#23126=@"var;{x};{#23124}" +variables(#23126,"x",#23124) +#23127=* +exprs(#23127,78,#23123,0,"x") +hasLocation(#23127,#21986) +expr_containers(#23127,#23123) +literals("x","x",#23127) +decl(#23127,#23126) +#23128=@"var;{arguments};{#23124}" +variables(#23128,"arguments",#23124) +is_arguments_object(#23128) +#23129=* +typeexprs(#23129,2,#23123,-3,"void") +hasLocation(#23129,#21996) +expr_containers(#23129,#23123) +literals("void","void",#23129) #23130=* -typeexprs(#23130,2,#23123,-3,"string") -hasLocation(#23130,#22044) +typeexprs(#23130,2,#23123,-6,"number") +hasLocation(#23130,#21990) expr_containers(#23130,#23123) -literals("string","string",#23130) +literals("number","number",#23130) #23131=* -typeexprs(#23131,2,#23123,-6,"number") -hasLocation(#23131,#22038) -expr_containers(#23131,#23123) -literals("number","number",#23131) -#23132=* -stmts(#23132,17,#22805,15,"declare ... number;") -#23133=@"loc,{#10000},96,3,96,60" -locations_default(#23133,#10000,96,3,96,60) -hasLocation(#23132,#23133) -stmt_containers(#23132,#22805) -has_declare_keyword(#23132) +stmts(#23131,17,#22814,13,"declare ... number;") +#23132=@"loc,{#10000},94,3,94,42" +locations_default(#23132,#10000,94,3,94,42) +hasLocation(#23131,#23132) +stmt_containers(#23131,#22814) +has_declare_keyword(#23131) +#23133=* +exprs(#23133,78,#23131,-1,"foo") +hasLocation(#23133,#22008) +expr_containers(#23133,#23131) +literals("foo","foo",#23133) +decl(#23133,#22818) #23134=* -exprs(#23134,78,#23132,-1,"foo") -hasLocation(#23134,#22052) -expr_containers(#23134,#23132) -literals("foo","foo",#23134) -decl(#23134,#22809) -#23135=* -scopes(#23135,1) -scopenodes(#23132,#23135) -scopenesting(#23135,#22808) -#23136=@"var;{x};{#23135}" -variables(#23136,"x",#23135) +scopes(#23134,1) +scopenodes(#23131,#23134) +scopenesting(#23134,#22817) +#23135=@"var;{this};{#23134}" +variables(#23135,"this",#23134) +#23136=@"var;{x};{#23134}" +variables(#23136,"x",#23134) #23137=* -exprs(#23137,78,#23132,0,"x") -hasLocation(#23137,#22056) -expr_containers(#23137,#23132) +exprs(#23137,78,#23131,0,"x") +hasLocation(#23137,#22012) +expr_containers(#23137,#23131) literals("x","x",#23137) decl(#23137,#23136) -#23138=@"var;{arguments};{#23135}" -variables(#23138,"arguments",#23135) +#23138=@"var;{arguments};{#23134}" +variables(#23138,"arguments",#23134) is_arguments_object(#23138) #23139=* -typeexprs(#23139,7,#23132,-3,"string | number") -#23140=@"loc,{#10000},96,45,96,59" -locations_default(#23140,#10000,96,45,96,59) -hasLocation(#23139,#23140) -expr_containers(#23139,#23132) +typeexprs(#23139,2,#23131,-3,"number") +hasLocation(#23139,#22022) +expr_containers(#23139,#23131) +literals("number","number",#23139) +#23140=* +typeexprs(#23140,2,#23131,-6,"string") +hasLocation(#23140,#22016) +expr_containers(#23140,#23131) +literals("string","string",#23140) #23141=* -typeexprs(#23141,2,#23139,0,"string") -hasLocation(#23141,#22070) -expr_containers(#23141,#23132) -literals("string","string",#23141) -#23142=* -typeexprs(#23142,2,#23139,1,"number") -hasLocation(#23142,#22074) -expr_containers(#23142,#23132) -literals("number","number",#23142) +stmts(#23141,17,#22814,14,"declare ... string;") +#23142=@"loc,{#10000},95,3,95,42" +locations_default(#23142,#10000,95,3,95,42) +hasLocation(#23141,#23142) +stmt_containers(#23141,#22814) +has_declare_keyword(#23141) #23143=* -typeexprs(#23143,7,#23132,-6,"string | number") -#23144=@"loc,{#10000},96,27,96,41" -locations_default(#23144,#10000,96,27,96,41) -hasLocation(#23143,#23144) -expr_containers(#23143,#23132) -#23145=* -typeexprs(#23145,2,#23143,0,"string") -hasLocation(#23145,#22060) -expr_containers(#23145,#23132) -literals("string","string",#23145) -#23146=* -typeexprs(#23146,2,#23143,1,"number") -hasLocation(#23146,#22064) -expr_containers(#23146,#23132) -literals("number","number",#23146) +exprs(#23143,78,#23141,-1,"foo") +hasLocation(#23143,#22030) +expr_containers(#23143,#23141) +literals("foo","foo",#23143) +decl(#23143,#22818) +#23144=* +scopes(#23144,1) +scopenodes(#23141,#23144) +scopenesting(#23144,#22817) +#23145=@"var;{this};{#23144}" +variables(#23145,"this",#23144) +#23146=@"var;{x};{#23144}" +variables(#23146,"x",#23144) #23147=* -stmts(#23147,35,#22805,16,"type T3 ... f foo>;") -#23148=@"loc,{#10000},97,3,97,36" -locations_default(#23148,#10000,97,3,97,36) -hasLocation(#23147,#23148) -stmt_containers(#23147,#22805) +exprs(#23147,78,#23141,0,"x") +hasLocation(#23147,#22034) +expr_containers(#23147,#23141) +literals("x","x",#23147) +decl(#23147,#23146) +#23148=@"var;{arguments};{#23144}" +variables(#23148,"arguments",#23144) +is_arguments_object(#23148) #23149=* -typeexprs(#23149,1,#23147,0,"T30") -hasLocation(#23149,#22080) -enclosing_stmt(#23149,#23147) -expr_containers(#23149,#22805) -literals("T30","T30",#23149) -typedecl(#23149,#22823) +typeexprs(#23149,2,#23141,-3,"string") +hasLocation(#23149,#22044) +expr_containers(#23149,#23141) +literals("string","string",#23149) #23150=* -typeexprs(#23150,14,#23147,1,"ReturnT ... of foo>") -#23151=@"loc,{#10000},97,14,97,35" -locations_default(#23151,#10000,97,14,97,35) -hasLocation(#23150,#23151) -enclosing_stmt(#23150,#23147) -expr_containers(#23150,#22805) -#23152=* -typeexprs(#23152,0,#23150,-1,"ReturnType") -hasLocation(#23152,#22084) -enclosing_stmt(#23152,#23147) -expr_containers(#23152,#22805) -literals("ReturnType","ReturnType",#23152) -typebind(#23152,#22825) +typeexprs(#23150,2,#23141,-6,"number") +hasLocation(#23150,#22038) +expr_containers(#23150,#23141) +literals("number","number",#23150) +#23151=* +stmts(#23151,17,#22814,15,"declare ... number;") +#23152=@"loc,{#10000},96,3,96,60" +locations_default(#23152,#10000,96,3,96,60) +hasLocation(#23151,#23152) +stmt_containers(#23151,#22814) +has_declare_keyword(#23151) #23153=* -typeexprs(#23153,16,#23150,0,"typeof foo") -#23154=@"loc,{#10000},97,25,97,34" -locations_default(#23154,#10000,97,25,97,34) -hasLocation(#23153,#23154) -enclosing_stmt(#23153,#23147) -expr_containers(#23153,#22805) -#23155=* -typeexprs(#23155,17,#23153,0,"foo") -hasLocation(#23155,#22090) -enclosing_stmt(#23155,#23147) -expr_containers(#23155,#22805) -literals("foo","foo",#23155) -bind(#23155,#22809) -#23156=* -stmts(#23156,35,#22805,17,"type An ... => any;") -#23157=@"loc,{#10000},99,3,99,45" -locations_default(#23157,#10000,99,3,99,45) -hasLocation(#23156,#23157) -stmt_containers(#23156,#22805) -#23158=* -typeexprs(#23158,1,#23156,0,"AnyFunction") -hasLocation(#23158,#22098) -enclosing_stmt(#23158,#23156) -expr_containers(#23158,#22805) -literals("AnyFunction","AnyFunction",#23158) -typedecl(#23158,#22824) +exprs(#23153,78,#23151,-1,"foo") +hasLocation(#23153,#22052) +expr_containers(#23153,#23151) +literals("foo","foo",#23153) +decl(#23153,#22818) +#23154=* +scopes(#23154,1) +scopenodes(#23151,#23154) +scopenesting(#23154,#22817) +#23155=@"var;{this};{#23154}" +variables(#23155,"this",#23154) +#23156=@"var;{x};{#23154}" +variables(#23156,"x",#23154) +#23157=* +exprs(#23157,78,#23151,0,"x") +hasLocation(#23157,#22056) +expr_containers(#23157,#23151) +literals("x","x",#23157) +decl(#23157,#23156) +#23158=@"var;{arguments};{#23154}" +variables(#23158,"arguments",#23154) +is_arguments_object(#23158) #23159=* -typeexprs(#23159,23,#23156,1,"(...arg ... => any") -#23160=@"loc,{#10000},99,22,99,44" -locations_default(#23160,#10000,99,22,99,44) +typeexprs(#23159,7,#23151,-3,"string | number") +#23160=@"loc,{#10000},96,45,96,59" +locations_default(#23160,#10000,96,45,96,59) hasLocation(#23159,#23160) -enclosing_stmt(#23159,#23156) -expr_containers(#23159,#22805) +expr_containers(#23159,#23151) #23161=* -exprs(#23161,9,#23159,0,"(...arg ... => any") -hasLocation(#23161,#23160) -enclosing_stmt(#23161,#23156) -expr_containers(#23161,#22805) +typeexprs(#23161,2,#23159,0,"string") +hasLocation(#23161,#22070) +expr_containers(#23161,#23151) +literals("string","string",#23161) #23162=* -scopes(#23162,1) -scopenodes(#23161,#23162) -scopenesting(#23162,#22808) -#23163=@"var;{args};{#23162}" -variables(#23163,"args",#23162) -#23164=* -exprs(#23164,78,#23161,0,"args") -hasLocation(#23164,#22106) -expr_containers(#23164,#23161) -literals("args","args",#23164) -decl(#23164,#23163) -#23165=@"var;{arguments};{#23162}" -variables(#23165,"arguments",#23162) -is_arguments_object(#23165) +typeexprs(#23162,2,#23159,1,"number") +hasLocation(#23162,#22074) +expr_containers(#23162,#23151) +literals("number","number",#23162) +#23163=* +typeexprs(#23163,7,#23151,-6,"string | number") +#23164=@"loc,{#10000},96,27,96,41" +locations_default(#23164,#10000,96,27,96,41) +hasLocation(#23163,#23164) +expr_containers(#23163,#23151) +#23165=* +typeexprs(#23165,2,#23163,0,"string") +hasLocation(#23165,#22060) +expr_containers(#23165,#23151) +literals("string","string",#23165) #23166=* -typeexprs(#23166,2,#23161,-3,"any") -hasLocation(#23166,#22120) -expr_containers(#23166,#23161) -literals("any","any",#23166) +typeexprs(#23166,2,#23163,1,"number") +hasLocation(#23166,#22064) +expr_containers(#23166,#23151) +literals("number","number",#23166) #23167=* -typeexprs(#23167,6,#23161,-6,"any[]") -#23168=@"loc,{#10000},99,32,99,36" -locations_default(#23168,#10000,99,32,99,36) +stmts(#23167,35,#22814,16,"type T3 ... f foo>;") +#23168=@"loc,{#10000},97,3,97,36" +locations_default(#23168,#10000,97,3,97,36) hasLocation(#23167,#23168) -expr_containers(#23167,#23161) +stmt_containers(#23167,#22814) #23169=* -typeexprs(#23169,2,#23167,0,"any") -hasLocation(#23169,#22110) -expr_containers(#23169,#23161) -literals("any","any",#23169) -has_rest_parameter(#23161) +typeexprs(#23169,1,#23167,0,"T30") +hasLocation(#23169,#22080) +enclosing_stmt(#23169,#23167) +expr_containers(#23169,#22814) +literals("T30","T30",#23169) +typedecl(#23169,#22832) #23170=* -stmts(#23170,35,#22805,18,"type Re ... : any;") -#23171=@"loc,{#10000},100,3,100,91" -locations_default(#23171,#10000,100,3,100,91) +typeexprs(#23170,14,#23167,1,"ReturnT ... of foo>") +#23171=@"loc,{#10000},97,14,97,35" +locations_default(#23171,#10000,97,14,97,35) hasLocation(#23170,#23171) -stmt_containers(#23170,#22805) +enclosing_stmt(#23170,#23167) +expr_containers(#23170,#22814) #23172=* -typeexprs(#23172,1,#23170,0,"ReturnType") -hasLocation(#23172,#22126) -enclosing_stmt(#23172,#23170) -expr_containers(#23172,#22805) +typeexprs(#23172,0,#23170,-1,"ReturnType") +hasLocation(#23172,#22084) +enclosing_stmt(#23172,#23167) +expr_containers(#23172,#22814) literals("ReturnType","ReturnType",#23172) -typedecl(#23172,#22825) +typebind(#23172,#22834) #23173=* -scopes(#23173,12) -scopenodes(#23170,#23173) -scopenesting(#23173,#22808) -#23174=@"local_type_name;{T};{#23173}" -local_type_names(#23174,"T",#23173) +typeexprs(#23173,16,#23170,0,"typeof foo") +#23174=@"loc,{#10000},97,25,97,34" +locations_default(#23174,#10000,97,25,97,34) +hasLocation(#23173,#23174) +enclosing_stmt(#23173,#23167) +expr_containers(#23173,#22814) #23175=* -typeexprs(#23175,22,#23170,2,"T exten ... unction") -#23176=@"loc,{#10000},100,19,100,39" -locations_default(#23176,#10000,100,19,100,39) -hasLocation(#23175,#23176) -enclosing_stmt(#23175,#23170) -expr_containers(#23175,#22805) -#23177=* -typeexprs(#23177,1,#23175,0,"T") -hasLocation(#23177,#22130) -enclosing_stmt(#23177,#23170) -expr_containers(#23177,#22805) -literals("T","T",#23177) -typedecl(#23177,#23174) +typeexprs(#23175,17,#23173,0,"foo") +hasLocation(#23175,#22090) +enclosing_stmt(#23175,#23167) +expr_containers(#23175,#22814) +literals("foo","foo",#23175) +bind(#23175,#22818) +#23176=* +stmts(#23176,35,#22814,17,"type An ... => any;") +#23177=@"loc,{#10000},99,3,99,45" +locations_default(#23177,#10000,99,3,99,45) +hasLocation(#23176,#23177) +stmt_containers(#23176,#22814) #23178=* -typeexprs(#23178,0,#23175,1,"AnyFunction") -hasLocation(#23178,#22134) -enclosing_stmt(#23178,#23170) -expr_containers(#23178,#22805) +typeexprs(#23178,1,#23176,0,"AnyFunction") +hasLocation(#23178,#22098) +enclosing_stmt(#23178,#23176) +expr_containers(#23178,#22814) literals("AnyFunction","AnyFunction",#23178) -typebind(#23178,#22824) +typedecl(#23178,#22833) #23179=* -typeexprs(#23179,28,#23170,1,"T exten ... R : any") -#23180=@"loc,{#10000},100,44,100,90" -locations_default(#23180,#10000,100,44,100,90) +typeexprs(#23179,23,#23176,1,"(...arg ... => any") +#23180=@"loc,{#10000},99,22,99,44" +locations_default(#23180,#10000,99,22,99,44) hasLocation(#23179,#23180) -enclosing_stmt(#23179,#23170) -expr_containers(#23179,#22805) +enclosing_stmt(#23179,#23176) +expr_containers(#23179,#22814) #23181=* -typeexprs(#23181,0,#23179,0,"T") -hasLocation(#23181,#22140) -enclosing_stmt(#23181,#23170) -expr_containers(#23181,#22805) -literals("T","T",#23181) -typebind(#23181,#23174) +exprs(#23181,9,#23179,0,"(...arg ... => any") +hasLocation(#23181,#23180) +enclosing_stmt(#23181,#23176) +expr_containers(#23181,#22814) #23182=* -scopes(#23182,16) -scopenodes(#23179,#23182) -scopenesting(#23182,#23173) -#23183=@"local_type_name;{R};{#23182}" -local_type_names(#23183,"R",#23182) -#23184=* -typeexprs(#23184,23,#23179,1,"(...arg ... infer R") -#23185=@"loc,{#10000},100,54,100,80" -locations_default(#23185,#10000,100,54,100,80) -hasLocation(#23184,#23185) -enclosing_stmt(#23184,#23170) -expr_containers(#23184,#22805) -#23186=* -exprs(#23186,9,#23184,0,"(...arg ... infer R") -hasLocation(#23186,#23185) -enclosing_stmt(#23186,#23170) -expr_containers(#23186,#22805) +scopes(#23182,1) +scopenodes(#23181,#23182) +scopenesting(#23182,#22817) +#23183=@"var;{this};{#23182}" +variables(#23183,"this",#23182) +#23184=@"var;{args};{#23182}" +variables(#23184,"args",#23182) +#23185=* +exprs(#23185,78,#23181,0,"args") +hasLocation(#23185,#22106) +expr_containers(#23185,#23181) +literals("args","args",#23185) +decl(#23185,#23184) +#23186=@"var;{arguments};{#23182}" +variables(#23186,"arguments",#23182) +is_arguments_object(#23186) #23187=* -scopes(#23187,1) -scopenodes(#23186,#23187) -scopenesting(#23187,#23182) -#23188=@"var;{args};{#23187}" -variables(#23188,"args",#23187) -#23189=* -exprs(#23189,78,#23186,0,"args") -hasLocation(#23189,#22148) -expr_containers(#23189,#23186) -literals("args","args",#23189) -decl(#23189,#23188) -#23190=@"var;{arguments};{#23187}" -variables(#23190,"arguments",#23187) -is_arguments_object(#23190) +typeexprs(#23187,2,#23181,-3,"any") +hasLocation(#23187,#22120) +expr_containers(#23187,#23181) +literals("any","any",#23187) +#23188=* +typeexprs(#23188,6,#23181,-6,"any[]") +#23189=@"loc,{#10000},99,32,99,36" +locations_default(#23189,#10000,99,32,99,36) +hasLocation(#23188,#23189) +expr_containers(#23188,#23181) +#23190=* +typeexprs(#23190,2,#23188,0,"any") +hasLocation(#23190,#22110) +expr_containers(#23190,#23181) +literals("any","any",#23190) +has_rest_parameter(#23181) #23191=* -typeexprs(#23191,29,#23186,-3,"infer R") -#23192=@"loc,{#10000},100,74,100,80" -locations_default(#23192,#10000,100,74,100,80) +stmts(#23191,35,#22814,18,"type Re ... : any;") +#23192=@"loc,{#10000},100,3,100,91" +locations_default(#23192,#10000,100,3,100,91) hasLocation(#23191,#23192) -expr_containers(#23191,#23186) +stmt_containers(#23191,#22814) #23193=* -typeexprs(#23193,22,#23191,0,"R") -hasLocation(#23193,#22164) -expr_containers(#23193,#23186) +typeexprs(#23193,1,#23191,0,"ReturnType") +hasLocation(#23193,#22126) +enclosing_stmt(#23193,#23191) +expr_containers(#23193,#22814) +literals("ReturnType","ReturnType",#23193) +typedecl(#23193,#22834) #23194=* -typeexprs(#23194,1,#23193,0,"R") -hasLocation(#23194,#22164) -expr_containers(#23194,#23186) -literals("R","R",#23194) -typedecl(#23194,#23183) -#23195=* -typeexprs(#23195,6,#23186,-6,"any[]") -#23196=@"loc,{#10000},100,64,100,68" -locations_default(#23196,#10000,100,64,100,68) -hasLocation(#23195,#23196) -expr_containers(#23195,#23186) -#23197=* -typeexprs(#23197,2,#23195,0,"any") -hasLocation(#23197,#22152) -expr_containers(#23197,#23186) -literals("any","any",#23197) -has_rest_parameter(#23186) +scopes(#23194,12) +scopenodes(#23191,#23194) +scopenesting(#23194,#22817) +#23195=@"local_type_name;{T};{#23194}" +local_type_names(#23195,"T",#23194) +#23196=* +typeexprs(#23196,22,#23191,2,"T exten ... unction") +#23197=@"loc,{#10000},100,19,100,39" +locations_default(#23197,#10000,100,19,100,39) +hasLocation(#23196,#23197) +enclosing_stmt(#23196,#23191) +expr_containers(#23196,#22814) #23198=* -typeexprs(#23198,0,#23179,2,"R") -hasLocation(#23198,#22168) -enclosing_stmt(#23198,#23170) -expr_containers(#23198,#22805) -literals("R","R",#23198) -typebind(#23198,#23183) +typeexprs(#23198,1,#23196,0,"T") +hasLocation(#23198,#22130) +enclosing_stmt(#23198,#23191) +expr_containers(#23198,#22814) +literals("T","T",#23198) +typedecl(#23198,#23195) #23199=* -typeexprs(#23199,2,#23179,3,"any") -hasLocation(#23199,#22172) -enclosing_stmt(#23199,#23170) -expr_containers(#23199,#22805) -literals("any","any",#23199) -is_instantiated(#22805) +typeexprs(#23199,0,#23196,1,"AnyFunction") +hasLocation(#23199,#22134) +enclosing_stmt(#23199,#23191) +expr_containers(#23199,#22814) +literals("AnyFunction","AnyFunction",#23199) +typebind(#23199,#22833) #23200=* -entry_cfg_node(#23200,#20001) -#23201=@"loc,{#10000},1,1,1,0" -locations_default(#23201,#10000,1,1,1,0) +typeexprs(#23200,28,#23191,1,"T exten ... R : any") +#23201=@"loc,{#10000},100,44,100,90" +locations_default(#23201,#10000,100,44,100,90) hasLocation(#23200,#23201) +enclosing_stmt(#23200,#23191) +expr_containers(#23200,#22814) #23202=* -exit_cfg_node(#23202,#20001) -hasLocation(#23202,#22177) -successor(#22807,#22805) -successor(#23170,#23202) -successor(#23156,#23170) -successor(#23147,#23156) -successor(#23132,#23147) -successor(#23123,#23132) -successor(#23114,#23123) -successor(#23082,#23114) -successor(#23050,#23082) -successor(#23006,#23050) -successor(#22990,#23006) -successor(#22974,#22990) -successor(#22946,#22974) -successor(#22931,#22946) -successor(#22919,#22931) -successor(#22909,#22919) -successor(#22897,#22909) -successor(#22888,#22897) -successor(#22881,#22888) -successor(#22826,#22881) -successor(#22805,#22826) -successor(#22185,#22183) -successor(#22777,#22807) -successor(#22770,#22777) -successor(#22763,#22770) -successor(#22756,#22763) -successor(#22749,#22756) -successor(#22722,#22749) -successor(#22707,#22722) -successor(#22676,#22707) -successor(#22661,#22676) -successor(#22630,#22661) -successor(#22591,#22630) +typeexprs(#23202,0,#23200,0,"T") +hasLocation(#23202,#22140) +enclosing_stmt(#23202,#23191) +expr_containers(#23202,#22814) +literals("T","T",#23202) +typebind(#23202,#23195) #23203=* -entry_cfg_node(#23203,#22591) -#23204=@"loc,{#10000},46,3,46,2" -locations_default(#23204,#10000,46,3,46,2) -hasLocation(#23203,#23204) +scopes(#23203,16) +scopenodes(#23200,#23203) +scopenesting(#23203,#23194) +#23204=@"local_type_name;{R};{#23203}" +local_type_names(#23204,"R",#23203) #23205=* -exit_cfg_node(#23205,#22591) -#23206=@"loc,{#10000},49,4,49,3" -locations_default(#23206,#10000,49,4,49,3) +typeexprs(#23205,23,#23200,1,"(...arg ... infer R") +#23206=@"loc,{#10000},100,54,100,80" +locations_default(#23206,#10000,100,54,100,80) hasLocation(#23205,#23206) -successor(#22623,#22627) -successor(#22628,#22625) -successor(#22627,#22628) -successor(#22625,#23205) -successor(#22617,#22621) -successor(#22622,#22619) -successor(#22621,#22622) -successor(#22619,#22623) -successor(#22613,#22617) -successor(#22599,#22613) -successor(#22597,#22599) -successor(#23203,#22597) -successor(#22566,#22591) +enclosing_stmt(#23205,#23191) +expr_containers(#23205,#22814) #23207=* -entry_cfg_node(#23207,#22566) -#23208=@"loc,{#10000},42,3,42,2" -locations_default(#23208,#10000,42,3,42,2) -hasLocation(#23207,#23208) -#23209=* -exit_cfg_node(#23209,#22566) -#23210=@"loc,{#10000},44,4,44,3" -locations_default(#23210,#10000,44,4,44,3) -hasLocation(#23209,#23210) -successor(#22585,#22589) -successor(#22590,#22587) -successor(#22589,#22590) -successor(#22587,#23209) -successor(#22583,#22585) -successor(#22574,#22583) -successor(#22572,#22574) -successor(#23207,#22572) -successor(#22552,#22566) -successor(#22541,#22552) -successor(#22526,#22541) -successor(#22507,#22526) -successor(#22488,#22507) -successor(#22471,#22488) -successor(#22454,#22471) -successor(#22438,#22454) -successor(#22422,#22438) -successor(#22410,#22422) -successor(#22401,#22410) -successor(#22394,#22401) -successor(#22370,#22394) -successor(#22355,#22370) -successor(#22342,#22355) -successor(#22328,#22342) -successor(#22315,#22328) -successor(#22298,#22315) -successor(#22289,#22298) -successor(#22277,#22289) -successor(#22270,#22277) -successor(#22263,#22270) -successor(#22256,#22263) -successor(#22223,#22256) -successor(#22593,#22223) -successor(#22568,#22593) -successor(#22183,#22568) -successor(#23200,#22185) +exprs(#23207,9,#23205,0,"(...arg ... infer R") +hasLocation(#23207,#23206) +enclosing_stmt(#23207,#23191) +expr_containers(#23207,#22814) +#23208=* +scopes(#23208,1) +scopenodes(#23207,#23208) +scopenesting(#23208,#23203) +#23209=@"var;{this};{#23208}" +variables(#23209,"this",#23208) +#23210=@"var;{args};{#23208}" +variables(#23210,"args",#23208) +#23211=* +exprs(#23211,78,#23207,0,"args") +hasLocation(#23211,#22148) +expr_containers(#23211,#23207) +literals("args","args",#23211) +decl(#23211,#23210) +#23212=@"var;{arguments};{#23208}" +variables(#23212,"arguments",#23208) +is_arguments_object(#23212) +#23213=* +typeexprs(#23213,29,#23207,-3,"infer R") +#23214=@"loc,{#10000},100,74,100,80" +locations_default(#23214,#10000,100,74,100,80) +hasLocation(#23213,#23214) +expr_containers(#23213,#23207) +#23215=* +typeexprs(#23215,22,#23213,0,"R") +hasLocation(#23215,#22164) +expr_containers(#23215,#23207) +#23216=* +typeexprs(#23216,1,#23215,0,"R") +hasLocation(#23216,#22164) +expr_containers(#23216,#23207) +literals("R","R",#23216) +typedecl(#23216,#23204) +#23217=* +typeexprs(#23217,6,#23207,-6,"any[]") +#23218=@"loc,{#10000},100,64,100,68" +locations_default(#23218,#10000,100,64,100,68) +hasLocation(#23217,#23218) +expr_containers(#23217,#23207) +#23219=* +typeexprs(#23219,2,#23217,0,"any") +hasLocation(#23219,#22152) +expr_containers(#23219,#23207) +literals("any","any",#23219) +has_rest_parameter(#23207) +#23220=* +typeexprs(#23220,0,#23200,2,"R") +hasLocation(#23220,#22168) +enclosing_stmt(#23220,#23191) +expr_containers(#23220,#22814) +literals("R","R",#23220) +typebind(#23220,#23204) +#23221=* +typeexprs(#23221,2,#23200,3,"any") +hasLocation(#23221,#22172) +enclosing_stmt(#23221,#23191) +expr_containers(#23221,#22814) +literals("any","any",#23221) +is_instantiated(#22814) +#23222=* +entry_cfg_node(#23222,#20001) +#23223=@"loc,{#10000},1,1,1,0" +locations_default(#23223,#10000,1,1,1,0) +hasLocation(#23222,#23223) +#23224=* +exit_cfg_node(#23224,#20001) +hasLocation(#23224,#22177) +successor(#22816,#22814) +successor(#23191,#23224) +successor(#23176,#23191) +successor(#23167,#23176) +successor(#23151,#23167) +successor(#23141,#23151) +successor(#23131,#23141) +successor(#23097,#23131) +successor(#23063,#23097) +successor(#23017,#23063) +successor(#23001,#23017) +successor(#22985,#23001) +successor(#22957,#22985) +successor(#22942,#22957) +successor(#22930,#22942) +successor(#22920,#22930) +successor(#22907,#22920) +successor(#22898,#22907) +successor(#22891,#22898) +successor(#22835,#22891) +successor(#22814,#22835) +successor(#22186,#22184) +successor(#22785,#22816) +successor(#22778,#22785) +successor(#22771,#22778) +successor(#22764,#22771) +successor(#22757,#22764) +successor(#22729,#22757) +successor(#22714,#22729) +successor(#22683,#22714) +successor(#22668,#22683) +successor(#22637,#22668) +successor(#22597,#22637) +#23225=* +entry_cfg_node(#23225,#22597) +#23226=@"loc,{#10000},46,3,46,2" +locations_default(#23226,#10000,46,3,46,2) +hasLocation(#23225,#23226) +#23227=* +exit_cfg_node(#23227,#22597) +#23228=@"loc,{#10000},49,4,49,3" +locations_default(#23228,#10000,49,4,49,3) +hasLocation(#23227,#23228) +successor(#22630,#22634) +successor(#22635,#22632) +successor(#22634,#22635) +successor(#22632,#23227) +successor(#22624,#22628) +successor(#22629,#22626) +successor(#22628,#22629) +successor(#22626,#22630) +successor(#22620,#22624) +successor(#22606,#22620) +successor(#22604,#22606) +successor(#23225,#22604) +successor(#22571,#22597) +#23229=* +entry_cfg_node(#23229,#22571) +#23230=@"loc,{#10000},42,3,42,2" +locations_default(#23230,#10000,42,3,42,2) +hasLocation(#23229,#23230) +#23231=* +exit_cfg_node(#23231,#22571) +#23232=@"loc,{#10000},44,4,44,3" +locations_default(#23232,#10000,44,4,44,3) +hasLocation(#23231,#23232) +successor(#22591,#22595) +successor(#22596,#22593) +successor(#22595,#22596) +successor(#22593,#23231) +successor(#22589,#22591) +successor(#22580,#22589) +successor(#22578,#22580) +successor(#23229,#22578) +successor(#22557,#22571) +successor(#22546,#22557) +successor(#22531,#22546) +successor(#22511,#22531) +successor(#22491,#22511) +successor(#22474,#22491) +successor(#22457,#22474) +successor(#22441,#22457) +successor(#22425,#22441) +successor(#22413,#22425) +successor(#22404,#22413) +successor(#22397,#22404) +successor(#22373,#22397) +successor(#22358,#22373) +successor(#22345,#22358) +successor(#22331,#22345) +successor(#22318,#22331) +successor(#22300,#22318) +successor(#22291,#22300) +successor(#22278,#22291) +successor(#22271,#22278) +successor(#22264,#22271) +successor(#22257,#22264) +successor(#22224,#22257) +successor(#22599,#22224) +successor(#22573,#22599) +successor(#22184,#22573) +successor(#23222,#22186) numlines(#10000,102,79,38) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/ctordecl.ts.trap b/javascript/extractor/tests/ts/output/trap/ctordecl.ts.trap index 9653669e31fe..d0d40695fcb7 100644 --- a/javascript/extractor/tests/ts/output/trap/ctordecl.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/ctordecl.ts.trap @@ -168,147 +168,155 @@ hasLocation(#20001,#20059) variables(#20060,"A",#20000) #20061=@"local_type_name;{A};{#20000}" local_type_names(#20061,"A",#20000) -#20062=* -stmts(#20062,26,#20001,0,"class A ... y) {}\n}") -hasLocation(#20062,#20059) -stmt_containers(#20062,#20001) +#20062=@"var;{this};{#20000}" +variables(#20062,"this",#20000) #20063=* -exprs(#20063,78,#20062,0,"A") -hasLocation(#20063,#20015) -enclosing_stmt(#20063,#20062) -expr_containers(#20063,#20001) -literals("A","A",#20063) -decl(#20063,#20060) -typedecl(#20063,#20061) +stmts(#20063,26,#20001,0,"class A ... y) {}\n}") +hasLocation(#20063,#20059) +stmt_containers(#20063,#20001) #20064=* -scopes(#20064,10) -scopenodes(#20062,#20064) -scopenesting(#20064,#20000) +exprs(#20064,78,#20063,0,"A") +hasLocation(#20064,#20015) +enclosing_stmt(#20064,#20063) +expr_containers(#20064,#20001) +literals("A","A",#20064) +decl(#20064,#20060) +typedecl(#20064,#20061) #20065=* -properties(#20065,#20062,2,8,"y = 42;") -#20066=@"loc,{#10000},2,3,2,9" -locations_default(#20066,#10000,2,3,2,9) -hasLocation(#20065,#20066) +scopes(#20065,10) +scopenodes(#20063,#20065) +scopenesting(#20065,#20000) +#20066=@"var;{this};{#20065}" +variables(#20066,"this",#20065) #20067=* -#20068=* -exprs(#20068,0,#20065,0,"y") -hasLocation(#20068,#20019) -expr_containers(#20068,#20067) -literals("y","y",#20068) +properties(#20067,#20063,2,8,"y = 42;") +#20068=@"loc,{#10000},2,3,2,9" +locations_default(#20068,#10000,2,3,2,9) +hasLocation(#20067,#20068) #20069=* -exprs(#20069,3,#20065,1,"42") -hasLocation(#20069,#20023) -expr_containers(#20069,#20067) -literals("42","42",#20069) #20070=* -properties(#20070,#20062,3,0,"constru ... tring);") -#20071=@"loc,{#10000},3,3,3,24" -locations_default(#20071,#10000,3,3,3,24) -hasLocation(#20070,#20071) +exprs(#20070,0,#20067,0,"y") +hasLocation(#20070,#20019) +expr_containers(#20070,#20069) +literals("y","y",#20070) +#20071=* +exprs(#20071,3,#20067,1,"42") +hasLocation(#20071,#20023) +expr_containers(#20071,#20069) +literals("42","42",#20071) #20072=* -exprs(#20072,0,#20070,0,"constru ... tring);") -hasLocation(#20072,#20071) -enclosing_stmt(#20072,#20062) -expr_containers(#20072,#20001) -literals("constructor","constructor",#20072) -exprs(#20067,9,#20070,1,"constru ... tring);") -hasLocation(#20067,#20071) -enclosing_stmt(#20067,#20062) -expr_containers(#20067,#20001) -#20073=* -scopes(#20073,1) -scopenodes(#20067,#20073) -scopenesting(#20073,#20064) -#20074=@"var;{x};{#20073}" -variables(#20074,"x",#20073) +properties(#20072,#20063,3,0,"constru ... tring);") +#20073=@"loc,{#10000},3,3,3,24" +locations_default(#20073,#10000,3,3,3,24) +hasLocation(#20072,#20073) +#20074=* +exprs(#20074,0,#20072,0,"constru ... tring);") +hasLocation(#20074,#20073) +enclosing_stmt(#20074,#20063) +expr_containers(#20074,#20001) +literals("constructor","constructor",#20074) +exprs(#20069,9,#20072,1,"constru ... tring);") +hasLocation(#20069,#20073) +enclosing_stmt(#20069,#20063) +expr_containers(#20069,#20001) #20075=* -exprs(#20075,78,#20067,0,"x") -hasLocation(#20075,#20031) -expr_containers(#20075,#20067) -literals("x","x",#20075) -decl(#20075,#20074) -#20076=@"var;{arguments};{#20073}" -variables(#20076,"arguments",#20073) -is_arguments_object(#20076) -#20077=* -typeexprs(#20077,2,#20067,-6,"string") -hasLocation(#20077,#20035) -expr_containers(#20077,#20067) -literals("string","string",#20077) -is_method(#20070) +scopes(#20075,1) +scopenodes(#20069,#20075) +scopenesting(#20075,#20065) +#20076=@"var;{this};{#20075}" +variables(#20076,"this",#20075) +#20077=@"var;{x};{#20075}" +variables(#20077,"x",#20075) #20078=* -properties(#20078,#20062,4,0,"constru ... any) {}") -#20079=@"loc,{#10000},4,3,4,23" -locations_default(#20079,#10000,4,3,4,23) -hasLocation(#20078,#20079) +exprs(#20078,78,#20069,0,"x") +hasLocation(#20078,#20031) +expr_containers(#20078,#20069) +literals("x","x",#20078) +decl(#20078,#20077) +#20079=@"var;{arguments};{#20075}" +variables(#20079,"arguments",#20075) +is_arguments_object(#20079) #20080=* -exprs(#20080,0,#20078,0,"constru ... any) {}") -hasLocation(#20080,#20079) -enclosing_stmt(#20080,#20062) -expr_containers(#20080,#20001) -literals("constructor","constructor",#20080) +typeexprs(#20080,2,#20069,-6,"string") +hasLocation(#20080,#20035) +expr_containers(#20080,#20069) +literals("string","string",#20080) +is_method(#20072) #20081=* -exprs(#20081,9,#20078,1,"constru ... any) {}") -hasLocation(#20081,#20079) -enclosing_stmt(#20081,#20062) -expr_containers(#20081,#20001) -#20082=* -scopes(#20082,1) -scopenodes(#20081,#20082) -scopenesting(#20082,#20064) -#20083=@"var;{x};{#20082}" -variables(#20083,"x",#20082) +properties(#20081,#20063,4,0,"constru ... any) {}") +#20082=@"loc,{#10000},4,3,4,23" +locations_default(#20082,#10000,4,3,4,23) +hasLocation(#20081,#20082) +#20083=* +exprs(#20083,0,#20081,0,"constru ... any) {}") +hasLocation(#20083,#20082) +enclosing_stmt(#20083,#20063) +expr_containers(#20083,#20001) +literals("constructor","constructor",#20083) #20084=* -exprs(#20084,78,#20081,0,"x") -hasLocation(#20084,#20045) -expr_containers(#20084,#20081) -literals("x","x",#20084) -decl(#20084,#20083) -#20085=@"var;{arguments};{#20082}" -variables(#20085,"arguments",#20082) -is_arguments_object(#20085) -#20086=* -typeexprs(#20086,2,#20081,-6,"any") -hasLocation(#20086,#20049) -expr_containers(#20086,#20081) -literals("any","any",#20086) -#20087=* -stmts(#20087,1,#20081,-2,"{}") -#20088=@"loc,{#10000},4,22,4,23" -locations_default(#20088,#10000,4,22,4,23) -hasLocation(#20087,#20088) -stmt_containers(#20087,#20081) -is_method(#20078) -#20089=* -entry_cfg_node(#20089,#20001) -#20090=@"loc,{#10000},1,1,1,0" -locations_default(#20090,#10000,1,1,1,0) -hasLocation(#20089,#20090) +exprs(#20084,9,#20081,1,"constru ... any) {}") +hasLocation(#20084,#20082) +enclosing_stmt(#20084,#20063) +expr_containers(#20084,#20001) +#20085=* +scopes(#20085,1) +scopenodes(#20084,#20085) +scopenesting(#20085,#20065) +#20086=@"var;{this};{#20085}" +variables(#20086,"this",#20085) +#20087=@"var;{x};{#20085}" +variables(#20087,"x",#20085) +#20088=* +exprs(#20088,78,#20084,0,"x") +hasLocation(#20088,#20045) +expr_containers(#20088,#20084) +literals("x","x",#20088) +decl(#20088,#20087) +#20089=@"var;{arguments};{#20085}" +variables(#20089,"arguments",#20085) +is_arguments_object(#20089) +#20090=* +typeexprs(#20090,2,#20084,-6,"any") +hasLocation(#20090,#20049) +expr_containers(#20090,#20084) +literals("any","any",#20090) #20091=* -exit_cfg_node(#20091,#20001) -hasLocation(#20091,#20058) -successor(#20069,#20065) -successor(#20068,#20069) -successor(#20081,#20078) -#20092=* -entry_cfg_node(#20092,#20081) -#20093=@"loc,{#10000},4,3,4,2" -locations_default(#20093,#10000,4,3,4,2) -hasLocation(#20092,#20093) -successor(#20065,#20087) -#20094=* -exit_cfg_node(#20094,#20081) -#20095=@"loc,{#10000},4,24,4,23" -locations_default(#20095,#10000,4,24,4,23) -hasLocation(#20094,#20095) -successor(#20087,#20094) -successor(#20084,#20068) -successor(#20092,#20084) -successor(#20080,#20081) -successor(#20078,#20062) -successor(#20070,#20080) -successor(#20063,#20070) -successor(#20062,#20091) -successor(#20089,#20063) +stmts(#20091,1,#20084,-2,"{}") +#20092=@"loc,{#10000},4,22,4,23" +locations_default(#20092,#10000,4,22,4,23) +hasLocation(#20091,#20092) +stmt_containers(#20091,#20084) +is_method(#20081) +#20093=* +entry_cfg_node(#20093,#20001) +#20094=@"loc,{#10000},1,1,1,0" +locations_default(#20094,#10000,1,1,1,0) +hasLocation(#20093,#20094) +#20095=* +exit_cfg_node(#20095,#20001) +hasLocation(#20095,#20058) +successor(#20071,#20067) +successor(#20070,#20071) +successor(#20084,#20081) +#20096=* +entry_cfg_node(#20096,#20084) +#20097=@"loc,{#10000},4,3,4,2" +locations_default(#20097,#10000,4,3,4,2) +hasLocation(#20096,#20097) +successor(#20067,#20091) +#20098=* +exit_cfg_node(#20098,#20084) +#20099=@"loc,{#10000},4,24,4,23" +locations_default(#20099,#10000,4,24,4,23) +hasLocation(#20098,#20099) +successor(#20091,#20098) +successor(#20088,#20070) +successor(#20096,#20088) +successor(#20083,#20084) +successor(#20081,#20063) +successor(#20072,#20083) +successor(#20064,#20072) +successor(#20063,#20095) +successor(#20093,#20064) numlines(#10000,5,5,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/declareClass.ts.trap b/javascript/extractor/tests/ts/output/trap/declareClass.ts.trap index 83ada22ef89a..043ef7e5433c 100644 --- a/javascript/extractor/tests/ts/output/trap/declareClass.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/declareClass.ts.trap @@ -54,60 +54,66 @@ hasLocation(#20001,#20016) variables(#20017,"C",#20000) #20018=@"local_type_name;{C};{#20000}" local_type_names(#20018,"C",#20000) -#20019=* -stmts(#20019,26,#20001,0,"declare class C {}") -hasLocation(#20019,#20003) -stmt_containers(#20019,#20001) -has_declare_keyword(#20019) +#20019=@"var;{this};{#20000}" +variables(#20019,"this",#20000) #20020=* -exprs(#20020,78,#20019,0,"C") -hasLocation(#20020,#20009) -enclosing_stmt(#20020,#20019) -expr_containers(#20020,#20001) -literals("C","C",#20020) -decl(#20020,#20017) -typedecl(#20020,#20018) +stmts(#20020,26,#20001,0,"declare class C {}") +hasLocation(#20020,#20003) +stmt_containers(#20020,#20001) +has_declare_keyword(#20020) #20021=* -scopes(#20021,10) -scopenodes(#20019,#20021) -scopenesting(#20021,#20000) +exprs(#20021,78,#20020,0,"C") +hasLocation(#20021,#20009) +enclosing_stmt(#20021,#20020) +expr_containers(#20021,#20001) +literals("C","C",#20021) +decl(#20021,#20017) +typedecl(#20021,#20018) #20022=* -properties(#20022,#20019,2,0,"constructor() {}") -#20023=@"loc,{#10000},1,17,1,16" -locations_default(#20023,#10000,1,17,1,16) -hasLocation(#20022,#20023) +scopes(#20022,10) +scopenodes(#20020,#20022) +scopenesting(#20022,#20000) +#20023=@"var;{this};{#20022}" +variables(#20023,"this",#20022) #20024=* -exprs(#20024,0,#20022,0,"constructor") -hasLocation(#20024,#20023) -enclosing_stmt(#20024,#20019) -expr_containers(#20024,#20001) -literals("constructor","constructor",#20024) -#20025=* -exprs(#20025,9,#20022,1,"() {}") -hasLocation(#20025,#20023) -enclosing_stmt(#20025,#20019) -expr_containers(#20025,#20001) +properties(#20024,#20020,2,0,"constructor() {}") +#20025=@"loc,{#10000},1,17,1,16" +locations_default(#20025,#10000,1,17,1,16) +hasLocation(#20024,#20025) #20026=* -scopes(#20026,1) -scopenodes(#20025,#20026) -scopenesting(#20026,#20021) -#20027=@"var;{arguments};{#20026}" -variables(#20027,"arguments",#20026) -is_arguments_object(#20027) +exprs(#20026,0,#20024,0,"constructor") +hasLocation(#20026,#20025) +enclosing_stmt(#20026,#20020) +expr_containers(#20026,#20001) +literals("constructor","constructor",#20026) +#20027=* +exprs(#20027,9,#20024,1,"() {}") +hasLocation(#20027,#20025) +enclosing_stmt(#20027,#20020) +expr_containers(#20027,#20001) #20028=* -stmts(#20028,1,#20025,-2,"{}") -hasLocation(#20028,#20023) -stmt_containers(#20028,#20025) -is_method(#20022) -#20029=* -entry_cfg_node(#20029,#20001) -#20030=@"loc,{#10000},1,1,1,0" -locations_default(#20030,#10000,1,1,1,0) -hasLocation(#20029,#20030) +scopes(#20028,1) +scopenodes(#20027,#20028) +scopenesting(#20028,#20022) +#20029=@"var;{this};{#20028}" +variables(#20029,"this",#20028) +#20030=@"var;{arguments};{#20028}" +variables(#20030,"arguments",#20028) +is_arguments_object(#20030) #20031=* -exit_cfg_node(#20031,#20001) -hasLocation(#20031,#20015) -successor(#20019,#20031) -successor(#20029,#20019) +stmts(#20031,1,#20027,-2,"{}") +hasLocation(#20031,#20025) +stmt_containers(#20031,#20027) +is_method(#20024) +#20032=* +entry_cfg_node(#20032,#20001) +#20033=@"loc,{#10000},1,1,1,0" +locations_default(#20033,#10000,1,1,1,0) +hasLocation(#20032,#20033) +#20034=* +exit_cfg_node(#20034,#20001) +hasLocation(#20034,#20015) +successor(#20020,#20034) +successor(#20032,#20020) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/decorators.ts.trap b/javascript/extractor/tests/ts/output/trap/decorators.ts.trap index 4a29c482a694..9932a6ee4a11 100644 --- a/javascript/extractor/tests/ts/output/trap/decorators.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/decorators.ts.trap @@ -321,340 +321,355 @@ variables(#20115,"Class2",#20112) local_type_names(#20116,"Class",#20112) #20117=@"local_type_name;{Class2};{#20112}" local_type_names(#20117,"Class2",#20112) -#20118=* -stmts(#20118,26,#20001,0,"class C ... mber;\n}") -#20119=@"loc,{#10000},2,1,8,1" -locations_default(#20119,#10000,2,1,8,1) -hasLocation(#20118,#20119) -stmt_containers(#20118,#20001) -#20120=* -exprs(#20120,94,#20118,-2,"@classDecorator") -hasLocation(#20120,#20003) -enclosing_stmt(#20120,#20118) -expr_containers(#20120,#20001) +#20118=@"var;{this};{#20112}" +variables(#20118,"this",#20112) +#20119=* +stmts(#20119,26,#20001,0,"class C ... mber;\n}") +#20120=@"loc,{#10000},2,1,8,1" +locations_default(#20120,#10000,2,1,8,1) +hasLocation(#20119,#20120) +stmt_containers(#20119,#20001) #20121=* -exprs(#20121,79,#20120,0,"classDecorator") -hasLocation(#20121,#20033) -enclosing_stmt(#20121,#20118) +exprs(#20121,94,#20119,-2,"@classDecorator") +hasLocation(#20121,#20003) +enclosing_stmt(#20121,#20119) expr_containers(#20121,#20001) -literals("classDecorator","classDecorator",#20121) -#20122=@"var;{classDecorator};{#20000}" -variables(#20122,"classDecorator",#20000) -bind(#20121,#20122) -#20123=* -exprs(#20123,78,#20118,0,"Class") -hasLocation(#20123,#20037) -enclosing_stmt(#20123,#20118) -expr_containers(#20123,#20001) -literals("Class","Class",#20123) -decl(#20123,#20113) -typedecl(#20123,#20116) +#20122=* +exprs(#20122,79,#20121,0,"classDecorator") +hasLocation(#20122,#20033) +enclosing_stmt(#20122,#20119) +expr_containers(#20122,#20001) +literals("classDecorator","classDecorator",#20122) +#20123=@"var;{classDecorator};{#20000}" +variables(#20123,"classDecorator",#20000) +bind(#20122,#20123) #20124=* -scopes(#20124,10) -scopenodes(#20118,#20124) -scopenesting(#20124,#20112) +exprs(#20124,78,#20119,0,"Class") +hasLocation(#20124,#20037) +enclosing_stmt(#20124,#20119) +expr_containers(#20124,#20001) +literals("Class","Class",#20124) +decl(#20124,#20113) +typedecl(#20124,#20116) #20125=* -properties(#20125,#20118,2,0,"method( ... field }") -#20126=@"loc,{#10000},4,3,4,40" -locations_default(#20126,#10000,4,3,4,40) -hasLocation(#20125,#20126) +scopes(#20125,10) +scopenodes(#20119,#20125) +scopenesting(#20125,#20112) +#20126=@"var;{this};{#20125}" +variables(#20126,"this",#20125) #20127=* -exprs(#20127,94,#20125,-1,"@methodDecorator") -#20128=@"loc,{#10000},3,3,3,18" -locations_default(#20128,#10000,3,3,3,18) +properties(#20127,#20119,2,0,"method( ... field }") +#20128=@"loc,{#10000},4,3,4,40" +locations_default(#20128,#10000,4,3,4,40) hasLocation(#20127,#20128) -enclosing_stmt(#20127,#20118) -expr_containers(#20127,#20001) #20129=* -exprs(#20129,79,#20127,0,"methodDecorator") -hasLocation(#20129,#20043) -enclosing_stmt(#20129,#20118) +exprs(#20129,94,#20127,-1,"@methodDecorator") +#20130=@"loc,{#10000},3,3,3,18" +locations_default(#20130,#10000,3,3,3,18) +hasLocation(#20129,#20130) +enclosing_stmt(#20129,#20119) expr_containers(#20129,#20001) -literals("methodDecorator","methodDecorator",#20129) -#20130=@"var;{methodDecorator};{#20000}" -variables(#20130,"methodDecorator",#20000) -bind(#20129,#20130) #20131=* -exprs(#20131,0,#20125,0,"method") -hasLocation(#20131,#20045) -enclosing_stmt(#20131,#20118) +exprs(#20131,79,#20129,0,"methodDecorator") +hasLocation(#20131,#20043) +enclosing_stmt(#20131,#20119) expr_containers(#20131,#20001) -literals("method","method",#20131) -#20132=* -exprs(#20132,9,#20125,1,"method( ... field }") -hasLocation(#20132,#20126) -enclosing_stmt(#20132,#20118) -expr_containers(#20132,#20001) +literals("methodDecorator","methodDecorator",#20131) +#20132=@"var;{methodDecorator};{#20000}" +variables(#20132,"methodDecorator",#20000) +bind(#20131,#20132) #20133=* -scopes(#20133,1) -scopenodes(#20132,#20133) -scopenesting(#20133,#20124) -#20134=@"var;{arguments};{#20133}" -variables(#20134,"arguments",#20133) -is_arguments_object(#20134) +exprs(#20133,0,#20127,0,"method") +hasLocation(#20133,#20045) +enclosing_stmt(#20133,#20119) +expr_containers(#20133,#20001) +literals("method","method",#20133) +#20134=* +exprs(#20134,9,#20127,1,"method( ... field }") +hasLocation(#20134,#20128) +enclosing_stmt(#20134,#20119) +expr_containers(#20134,#20001) #20135=* -typeexprs(#20135,2,#20132,-3,"number") -hasLocation(#20135,#20053) -expr_containers(#20135,#20132) -literals("number","number",#20135) -#20136=* -stmts(#20136,1,#20132,-2,"{ retur ... field }") -#20137=@"loc,{#10000},4,20,4,40" -locations_default(#20137,#10000,4,20,4,40) -hasLocation(#20136,#20137) -stmt_containers(#20136,#20132) +scopes(#20135,1) +scopenodes(#20134,#20135) +scopenesting(#20135,#20125) +#20136=@"var;{this};{#20135}" +variables(#20136,"this",#20135) +#20137=@"var;{arguments};{#20135}" +variables(#20137,"arguments",#20135) +is_arguments_object(#20137) #20138=* -stmts(#20138,9,#20136,0,"return this.field") -#20139=@"loc,{#10000},4,22,4,38" -locations_default(#20139,#10000,4,22,4,38) -hasLocation(#20138,#20139) -stmt_containers(#20138,#20132) -#20140=* -exprs(#20140,14,#20138,0,"this.field") -#20141=@"loc,{#10000},4,29,4,38" -locations_default(#20141,#10000,4,29,4,38) -hasLocation(#20140,#20141) -enclosing_stmt(#20140,#20138) -expr_containers(#20140,#20132) -#20142=* -exprs(#20142,6,#20140,0,"this") -hasLocation(#20142,#20059) -enclosing_stmt(#20142,#20138) -expr_containers(#20142,#20132) +typeexprs(#20138,2,#20134,-3,"number") +hasLocation(#20138,#20053) +expr_containers(#20138,#20134) +literals("number","number",#20138) +#20139=* +stmts(#20139,1,#20134,-2,"{ retur ... field }") +#20140=@"loc,{#10000},4,20,4,40" +locations_default(#20140,#10000,4,20,4,40) +hasLocation(#20139,#20140) +stmt_containers(#20139,#20134) +#20141=* +stmts(#20141,9,#20139,0,"return this.field") +#20142=@"loc,{#10000},4,22,4,38" +locations_default(#20142,#10000,4,22,4,38) +hasLocation(#20141,#20142) +stmt_containers(#20141,#20134) #20143=* -exprs(#20143,0,#20140,1,"field") -hasLocation(#20143,#20063) -enclosing_stmt(#20143,#20138) -expr_containers(#20143,#20132) -literals("field","field",#20143) -is_method(#20125) -#20144=* -properties(#20144,#20118,3,8,"field: number;") -#20145=@"loc,{#10000},7,3,7,16" -locations_default(#20145,#10000,7,3,7,16) -hasLocation(#20144,#20145) +exprs(#20143,14,#20141,0,"this.field") +#20144=@"loc,{#10000},4,29,4,38" +locations_default(#20144,#10000,4,29,4,38) +hasLocation(#20143,#20144) +enclosing_stmt(#20143,#20141) +expr_containers(#20143,#20134) +#20145=* +exprs(#20145,6,#20143,0,"this") +hasLocation(#20145,#20059) +enclosing_stmt(#20145,#20141) +expr_containers(#20145,#20134) +bind(#20145,#20136) #20146=* -exprs(#20146,94,#20144,-1,"@fieldDecorator") -#20147=@"loc,{#10000},6,3,6,17" -locations_default(#20147,#10000,6,3,6,17) -hasLocation(#20146,#20147) -enclosing_stmt(#20146,#20118) -expr_containers(#20146,#20001) -#20148=* -exprs(#20148,79,#20146,0,"fieldDecorator") -hasLocation(#20148,#20069) -enclosing_stmt(#20148,#20118) -expr_containers(#20148,#20001) -literals("fieldDecorator","fieldDecorator",#20148) -#20149=@"var;{fieldDecorator};{#20000}" -variables(#20149,"fieldDecorator",#20000) -bind(#20148,#20149) -#20150=* +exprs(#20146,0,#20143,1,"field") +hasLocation(#20146,#20063) +enclosing_stmt(#20146,#20141) +expr_containers(#20146,#20134) +literals("field","field",#20146) +is_method(#20127) +#20147=* +properties(#20147,#20119,3,8,"field: number;") +#20148=@"loc,{#10000},7,3,7,16" +locations_default(#20148,#10000,7,3,7,16) +hasLocation(#20147,#20148) +#20149=* +exprs(#20149,94,#20147,-1,"@fieldDecorator") +#20150=@"loc,{#10000},6,3,6,17" +locations_default(#20150,#10000,6,3,6,17) +hasLocation(#20149,#20150) +enclosing_stmt(#20149,#20119) +expr_containers(#20149,#20001) #20151=* -exprs(#20151,0,#20144,0,"field") -hasLocation(#20151,#20071) -expr_containers(#20151,#20150) -literals("field","field",#20151) -#20152=* -typeexprs(#20152,2,#20144,2,"number") -hasLocation(#20152,#20075) -enclosing_stmt(#20152,#20118) -expr_containers(#20152,#20001) -literals("number","number",#20152) +exprs(#20151,79,#20149,0,"fieldDecorator") +hasLocation(#20151,#20069) +enclosing_stmt(#20151,#20119) +expr_containers(#20151,#20001) +literals("fieldDecorator","fieldDecorator",#20151) +#20152=@"var;{fieldDecorator};{#20000}" +variables(#20152,"fieldDecorator",#20000) +bind(#20151,#20152) #20153=* -properties(#20153,#20118,4,0,"constructor() {}") -#20154=@"loc,{#10000},2,13,2,12" -locations_default(#20154,#10000,2,13,2,12) -hasLocation(#20153,#20154) +#20154=* +exprs(#20154,0,#20147,0,"field") +hasLocation(#20154,#20071) +expr_containers(#20154,#20153) +literals("field","field",#20154) #20155=* -exprs(#20155,0,#20153,0,"constructor") -hasLocation(#20155,#20154) -enclosing_stmt(#20155,#20118) +typeexprs(#20155,2,#20147,2,"number") +hasLocation(#20155,#20075) +enclosing_stmt(#20155,#20119) expr_containers(#20155,#20001) -literals("constructor","constructor",#20155) -exprs(#20150,9,#20153,1,"() {}") -hasLocation(#20150,#20154) -enclosing_stmt(#20150,#20118) -expr_containers(#20150,#20001) +literals("number","number",#20155) #20156=* -scopes(#20156,1) -scopenodes(#20150,#20156) -scopenesting(#20156,#20124) -#20157=@"var;{arguments};{#20156}" -variables(#20157,"arguments",#20156) -is_arguments_object(#20157) +properties(#20156,#20119,4,0,"constructor() {}") +#20157=@"loc,{#10000},2,13,2,12" +locations_default(#20157,#10000,2,13,2,12) +hasLocation(#20156,#20157) #20158=* -stmts(#20158,1,#20150,-2,"{}") -hasLocation(#20158,#20154) -stmt_containers(#20158,#20150) -is_method(#20153) +exprs(#20158,0,#20156,0,"constructor") +hasLocation(#20158,#20157) +enclosing_stmt(#20158,#20119) +expr_containers(#20158,#20001) +literals("constructor","constructor",#20158) +exprs(#20153,9,#20156,1,"() {}") +hasLocation(#20153,#20157) +enclosing_stmt(#20153,#20119) +expr_containers(#20153,#20001) #20159=* -stmts(#20159,17,#20001,1,"@functi ... un() {}") -#20160=@"loc,{#10000},10,1,11,17" -locations_default(#20160,#10000,10,1,11,17) -hasLocation(#20159,#20160) -stmt_containers(#20159,#20001) -#20161=* -exprs(#20161,78,#20159,-1,"fun") -hasLocation(#20161,#20086) -expr_containers(#20161,#20159) -literals("fun","fun",#20161) -decl(#20161,#20114) +scopes(#20159,1) +scopenodes(#20153,#20159) +scopenesting(#20159,#20125) +#20160=@"var;{this};{#20159}" +variables(#20160,"this",#20159) +#20161=@"var;{arguments};{#20159}" +variables(#20161,"arguments",#20159) +is_arguments_object(#20161) #20162=* -scopes(#20162,1) -scopenodes(#20159,#20162) -scopenesting(#20162,#20112) -#20163=@"var;{arguments};{#20162}" -variables(#20163,"arguments",#20162) -is_arguments_object(#20163) -#20164=* -stmts(#20164,1,#20159,-2,"{}") -#20165=@"loc,{#10000},11,16,11,17" -locations_default(#20165,#10000,11,16,11,17) -hasLocation(#20164,#20165) -stmt_containers(#20164,#20159) +stmts(#20162,1,#20153,-2,"{}") +hasLocation(#20162,#20157) +stmt_containers(#20162,#20153) +is_method(#20156) +#20163=* +stmts(#20163,17,#20001,1,"@functi ... un() {}") +#20164=@"loc,{#10000},10,1,11,17" +locations_default(#20164,#10000,10,1,11,17) +hasLocation(#20163,#20164) +stmt_containers(#20163,#20001) +#20165=* +exprs(#20165,78,#20163,-1,"fun") +hasLocation(#20165,#20086) +expr_containers(#20165,#20163) +literals("fun","fun",#20165) +decl(#20165,#20114) #20166=* -stmts(#20166,30,#20001,2,"export ... ass2 {}") -hasLocation(#20166,#20029) -stmt_containers(#20166,#20001) -#20167=* -stmts(#20167,26,#20166,-1,"class Class2 {}") -#20168=@"loc,{#10000},14,8,14,22" -locations_default(#20168,#10000,14,8,14,22) -hasLocation(#20167,#20168) -stmt_containers(#20167,#20001) +scopes(#20166,1) +scopenodes(#20163,#20166) +scopenesting(#20166,#20112) +#20167=@"var;{this};{#20166}" +variables(#20167,"this",#20166) +#20168=@"var;{arguments};{#20166}" +variables(#20168,"arguments",#20166) +is_arguments_object(#20168) #20169=* -exprs(#20169,94,#20167,-2,"@classDecorator2") -hasLocation(#20169,#20027) -enclosing_stmt(#20169,#20167) -expr_containers(#20169,#20001) -#20170=* -exprs(#20170,79,#20169,0,"classDecorator2") -hasLocation(#20170,#20098) -enclosing_stmt(#20170,#20167) -expr_containers(#20170,#20001) -literals("classDecorator2","classDecorator2",#20170) -#20171=@"var;{classDecorator2};{#20000}" -variables(#20171,"classDecorator2",#20000) -bind(#20170,#20171) +stmts(#20169,1,#20163,-2,"{}") +#20170=@"loc,{#10000},11,16,11,17" +locations_default(#20170,#10000,11,16,11,17) +hasLocation(#20169,#20170) +stmt_containers(#20169,#20163) +#20171=* +stmts(#20171,30,#20001,2,"export ... ass2 {}") +hasLocation(#20171,#20029) +stmt_containers(#20171,#20001) #20172=* -exprs(#20172,78,#20167,0,"Class2") -hasLocation(#20172,#20104) -enclosing_stmt(#20172,#20167) -expr_containers(#20172,#20001) -literals("Class2","Class2",#20172) -decl(#20172,#20115) -typedecl(#20172,#20117) -#20173=* -scopes(#20173,10) -scopenodes(#20167,#20173) -scopenesting(#20173,#20112) +stmts(#20172,26,#20171,-1,"class Class2 {}") +#20173=@"loc,{#10000},14,8,14,22" +locations_default(#20173,#10000,14,8,14,22) +hasLocation(#20172,#20173) +stmt_containers(#20172,#20001) #20174=* -properties(#20174,#20167,2,0,"constructor() {}") -#20175=@"loc,{#10000},14,21,14,20" -locations_default(#20175,#10000,14,21,14,20) -hasLocation(#20174,#20175) -#20176=* -exprs(#20176,0,#20174,0,"constructor") -hasLocation(#20176,#20175) -enclosing_stmt(#20176,#20167) -expr_containers(#20176,#20001) -literals("constructor","constructor",#20176) +exprs(#20174,94,#20172,-2,"@classDecorator2") +hasLocation(#20174,#20027) +enclosing_stmt(#20174,#20172) +expr_containers(#20174,#20001) +#20175=* +exprs(#20175,79,#20174,0,"classDecorator2") +hasLocation(#20175,#20098) +enclosing_stmt(#20175,#20172) +expr_containers(#20175,#20001) +literals("classDecorator2","classDecorator2",#20175) +#20176=@"var;{classDecorator2};{#20000}" +variables(#20176,"classDecorator2",#20000) +bind(#20175,#20176) #20177=* -exprs(#20177,9,#20174,1,"() {}") -hasLocation(#20177,#20175) -enclosing_stmt(#20177,#20167) +exprs(#20177,78,#20172,0,"Class2") +hasLocation(#20177,#20104) +enclosing_stmt(#20177,#20172) expr_containers(#20177,#20001) +literals("Class2","Class2",#20177) +decl(#20177,#20115) +typedecl(#20177,#20117) #20178=* -scopes(#20178,1) -scopenodes(#20177,#20178) -scopenesting(#20178,#20173) -#20179=@"var;{arguments};{#20178}" -variables(#20179,"arguments",#20178) -is_arguments_object(#20179) +scopes(#20178,10) +scopenodes(#20172,#20178) +scopenesting(#20178,#20112) +#20179=@"var;{this};{#20178}" +variables(#20179,"this",#20178) #20180=* -stmts(#20180,1,#20177,-2,"{}") -hasLocation(#20180,#20175) -stmt_containers(#20180,#20177) -is_method(#20174) -#20181=* -entry_cfg_node(#20181,#20001) -#20182=@"loc,{#10000},1,1,1,0" -locations_default(#20182,#10000,1,1,1,0) -hasLocation(#20181,#20182) +properties(#20180,#20172,2,0,"constructor() {}") +#20181=@"loc,{#10000},14,21,14,20" +locations_default(#20181,#10000,14,21,14,20) +hasLocation(#20180,#20181) +#20182=* +exprs(#20182,0,#20180,0,"constructor") +hasLocation(#20182,#20181) +enclosing_stmt(#20182,#20172) +expr_containers(#20182,#20001) +literals("constructor","constructor",#20182) #20183=* -exit_cfg_node(#20183,#20001) -hasLocation(#20183,#20110) -successor(#20166,#20172) -successor(#20177,#20174) +exprs(#20183,9,#20180,1,"() {}") +hasLocation(#20183,#20181) +enclosing_stmt(#20183,#20172) +expr_containers(#20183,#20001) #20184=* -entry_cfg_node(#20184,#20177) -hasLocation(#20184,#20175) -#20185=* -exit_cfg_node(#20185,#20177) -hasLocation(#20185,#20175) -successor(#20180,#20185) -successor(#20184,#20180) -successor(#20176,#20177) -successor(#20174,#20167) -successor(#20172,#20176) -successor(#20170,#20169) -successor(#20169,#20183) -successor(#20167,#20170) -successor(#20159,#20166) -#20186=* -entry_cfg_node(#20186,#20159) -#20187=@"loc,{#10000},10,1,10,0" -locations_default(#20187,#10000,10,1,10,0) -hasLocation(#20186,#20187) +scopes(#20184,1) +scopenodes(#20183,#20184) +scopenesting(#20184,#20178) +#20185=@"var;{this};{#20184}" +variables(#20185,"this",#20184) +#20186=@"var;{arguments};{#20184}" +variables(#20186,"arguments",#20184) +is_arguments_object(#20186) +#20187=* +stmts(#20187,1,#20183,-2,"{}") +hasLocation(#20187,#20181) +stmt_containers(#20187,#20183) +is_method(#20180) #20188=* -exit_cfg_node(#20188,#20159) -#20189=@"loc,{#10000},11,18,11,17" -locations_default(#20189,#10000,11,18,11,17) +entry_cfg_node(#20188,#20001) +#20189=@"loc,{#10000},1,1,1,0" +locations_default(#20189,#10000,1,1,1,0) hasLocation(#20188,#20189) -successor(#20164,#20188) -successor(#20186,#20164) -successor(#20151,#20144) -successor(#20150,#20153) #20190=* -entry_cfg_node(#20190,#20150) -hasLocation(#20190,#20154) -successor(#20144,#20158) +exit_cfg_node(#20190,#20001) +hasLocation(#20190,#20110) +successor(#20171,#20177) +successor(#20183,#20180) #20191=* -exit_cfg_node(#20191,#20150) -hasLocation(#20191,#20154) -successor(#20158,#20191) -successor(#20190,#20151) -successor(#20155,#20150) -successor(#20153,#20118) -successor(#20132,#20125) +entry_cfg_node(#20191,#20183) +hasLocation(#20191,#20181) #20192=* -entry_cfg_node(#20192,#20132) -#20193=@"loc,{#10000},4,3,4,2" -locations_default(#20193,#10000,4,3,4,2) -hasLocation(#20192,#20193) -#20194=* -exit_cfg_node(#20194,#20132) -#20195=@"loc,{#10000},4,41,4,40" -locations_default(#20195,#10000,4,41,4,40) -hasLocation(#20194,#20195) -successor(#20143,#20140) -successor(#20142,#20143) -successor(#20140,#20138) -successor(#20138,#20194) -successor(#20136,#20142) -successor(#20192,#20136) -successor(#20131,#20132) -successor(#20125,#20155) -successor(#20123,#20131) -successor(#20121,#20120) -successor(#20120,#20159) -successor(#20148,#20146) -successor(#20146,#20121) -successor(#20129,#20127) -successor(#20127,#20148) -successor(#20118,#20129) -successor(#20161,#20123) -successor(#20181,#20161) +exit_cfg_node(#20192,#20183) +hasLocation(#20192,#20181) +successor(#20187,#20192) +successor(#20191,#20187) +successor(#20182,#20183) +successor(#20180,#20172) +successor(#20177,#20182) +successor(#20175,#20174) +successor(#20174,#20190) +successor(#20172,#20175) +successor(#20163,#20171) +#20193=* +entry_cfg_node(#20193,#20163) +#20194=@"loc,{#10000},10,1,10,0" +locations_default(#20194,#10000,10,1,10,0) +hasLocation(#20193,#20194) +#20195=* +exit_cfg_node(#20195,#20163) +#20196=@"loc,{#10000},11,18,11,17" +locations_default(#20196,#10000,11,18,11,17) +hasLocation(#20195,#20196) +successor(#20169,#20195) +successor(#20193,#20169) +successor(#20154,#20147) +successor(#20153,#20156) +#20197=* +entry_cfg_node(#20197,#20153) +hasLocation(#20197,#20157) +successor(#20147,#20162) +#20198=* +exit_cfg_node(#20198,#20153) +hasLocation(#20198,#20157) +successor(#20162,#20198) +successor(#20197,#20154) +successor(#20158,#20153) +successor(#20156,#20119) +successor(#20134,#20127) +#20199=* +entry_cfg_node(#20199,#20134) +#20200=@"loc,{#10000},4,3,4,2" +locations_default(#20200,#10000,4,3,4,2) +hasLocation(#20199,#20200) +#20201=* +exit_cfg_node(#20201,#20134) +#20202=@"loc,{#10000},4,41,4,40" +locations_default(#20202,#10000,4,41,4,40) +hasLocation(#20201,#20202) +successor(#20146,#20143) +successor(#20145,#20146) +successor(#20143,#20141) +successor(#20141,#20201) +successor(#20139,#20145) +successor(#20199,#20139) +successor(#20133,#20134) +successor(#20127,#20158) +successor(#20124,#20133) +successor(#20122,#20121) +successor(#20121,#20163) +successor(#20151,#20149) +successor(#20149,#20122) +successor(#20131,#20129) +successor(#20129,#20151) +successor(#20119,#20131) +successor(#20165,#20124) +successor(#20188,#20165) numlines(#10000,14,11,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/dynamic-type.ts.trap b/javascript/extractor/tests/ts/output/trap/dynamic-type.ts.trap index 71410d093cc8..50a8d2155dbd 100644 --- a/javascript/extractor/tests/ts/output/trap/dynamic-type.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/dynamic-type.ts.trap @@ -82,58 +82,60 @@ locations_default(#20028,#10000,1,1,2,0) hasLocation(#20001,#20028) #20029=@"local_type_name;{Foo};{#20000}" local_type_names(#20029,"Foo",#20000) -#20030=* -stmts(#20030,34,#20001,0,"interfa ... .Bar {}") -hasLocation(#20030,#20003) -stmt_containers(#20030,#20001) +#20030=@"var;{this};{#20000}" +variables(#20030,"this",#20000) #20031=* -typeexprs(#20031,13,#20030,-1,"import(""foo"").Bar") -#20032=@"loc,{#10000},1,23,1,39" -locations_default(#20032,#10000,1,23,1,39) -hasLocation(#20031,#20032) -enclosing_stmt(#20031,#20030) -expr_containers(#20031,#20001) -#20033=* -typeexprs(#20033,31,#20031,0,"import(""foo"")") -#20034=@"loc,{#10000},1,23,1,35" -locations_default(#20034,#10000,1,23,1,35) -hasLocation(#20033,#20034) -enclosing_stmt(#20033,#20030) -expr_containers(#20033,#20001) -#20035=* -exprs(#20035,4,#20033,0,"""foo""") -hasLocation(#20035,#20015) -enclosing_stmt(#20035,#20030) -expr_containers(#20035,#20001) -literals("foo","""foo""",#20035) +stmts(#20031,34,#20001,0,"interfa ... .Bar {}") +hasLocation(#20031,#20003) +stmt_containers(#20031,#20001) +#20032=* +typeexprs(#20032,13,#20031,-1,"import(""foo"").Bar") +#20033=@"loc,{#10000},1,23,1,39" +locations_default(#20033,#10000,1,23,1,39) +hasLocation(#20032,#20033) +enclosing_stmt(#20032,#20031) +expr_containers(#20032,#20001) +#20034=* +typeexprs(#20034,31,#20032,0,"import(""foo"")") +#20035=@"loc,{#10000},1,23,1,35" +locations_default(#20035,#10000,1,23,1,35) +hasLocation(#20034,#20035) +enclosing_stmt(#20034,#20031) +expr_containers(#20034,#20001) #20036=* -regexpterm(#20036,14,#20035,0,"foo") -#20037=@"loc,{#10000},1,31,1,33" -locations_default(#20037,#10000,1,31,1,33) -hasLocation(#20036,#20037) -regexp_const_value(#20036,"foo") -#20038=* -typeexprs(#20038,15,#20031,1,"Bar") -hasLocation(#20038,#20021) -enclosing_stmt(#20038,#20030) -expr_containers(#20038,#20001) -literals("Bar","Bar",#20038) +exprs(#20036,4,#20034,0,"""foo""") +hasLocation(#20036,#20015) +enclosing_stmt(#20036,#20031) +expr_containers(#20036,#20001) +literals("foo","""foo""",#20036) +#20037=* +regexpterm(#20037,14,#20036,0,"foo") +#20038=@"loc,{#10000},1,31,1,33" +locations_default(#20038,#10000,1,31,1,33) +hasLocation(#20037,#20038) +regexp_const_value(#20037,"foo") #20039=* -typeexprs(#20039,1,#20030,0,"Foo") -hasLocation(#20039,#20007) -enclosing_stmt(#20039,#20030) +typeexprs(#20039,15,#20032,1,"Bar") +hasLocation(#20039,#20021) +enclosing_stmt(#20039,#20031) expr_containers(#20039,#20001) -literals("Foo","Foo",#20039) -typedecl(#20039,#20029) +literals("Bar","Bar",#20039) #20040=* -entry_cfg_node(#20040,#20001) -#20041=@"loc,{#10000},1,1,1,0" -locations_default(#20041,#10000,1,1,1,0) -hasLocation(#20040,#20041) -#20042=* -exit_cfg_node(#20042,#20001) -hasLocation(#20042,#20027) -successor(#20030,#20042) -successor(#20040,#20030) +typeexprs(#20040,1,#20031,0,"Foo") +hasLocation(#20040,#20007) +enclosing_stmt(#20040,#20031) +expr_containers(#20040,#20001) +literals("Foo","Foo",#20040) +typedecl(#20040,#20029) +#20041=* +entry_cfg_node(#20041,#20001) +#20042=@"loc,{#10000},1,1,1,0" +locations_default(#20042,#10000,1,1,1,0) +hasLocation(#20041,#20042) +#20043=* +exit_cfg_node(#20043,#20001) +hasLocation(#20043,#20027) +successor(#20031,#20043) +successor(#20041,#20031) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/enum.ts.trap b/javascript/extractor/tests/ts/output/trap/enum.ts.trap index c6a36ea1cc09..2c5ee0fbd427 100644 --- a/javascript/extractor/tests/ts/output/trap/enum.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/enum.ts.trap @@ -571,541 +571,545 @@ local_namespace_names(#20218,"DeclaredConstEnum",#20000) local_namespace_names(#20219,"ComplexInitializer",#20000) #20220=@"local_namespace_name;{StringLiteralEnumMember};{#20000}" local_namespace_names(#20220,"StringLiteralEnumMember",#20000) -#20221=* -stmts(#20221,36,#20001,0,"enum Co ... blue }") -hasLocation(#20221,#20003) -stmt_containers(#20221,#20001) +#20221=@"var;{this};{#20000}" +variables(#20221,"this",#20000) #20222=* -exprs(#20222,78,#20221,0,"Color") -hasLocation(#20222,#20041) -enclosing_stmt(#20222,#20221) -expr_containers(#20222,#20001) -literals("Color","Color",#20222) -decl(#20222,#20203) -typedecl(#20222,#20209) -namespacedecl(#20222,#20215) +stmts(#20222,36,#20001,0,"enum Co ... blue }") +hasLocation(#20222,#20003) +stmt_containers(#20222,#20001) #20223=* -scopes(#20223,14) -scopenodes(#20221,#20223) -scopenesting(#20223,#20000) -#20224=@"var;{red};{#20223}" -variables(#20224,"red",#20223) -#20225=@"local_type_name;{red};{#20223}" -local_type_names(#20225,"red",#20223) -#20226=@"var;{green};{#20223}" -variables(#20226,"green",#20223) -#20227=@"local_type_name;{green};{#20223}" -local_type_names(#20227,"green",#20223) -#20228=@"var;{blue};{#20223}" -variables(#20228,"blue",#20223) -#20229=@"local_type_name;{blue};{#20223}" -local_type_names(#20229,"blue",#20223) -#20230=* -properties(#20230,#20221,1,7,"red = 1") -#20231=@"loc,{#10000},1,14,1,20" -locations_default(#20231,#10000,1,14,1,20) -hasLocation(#20230,#20231) -#20232=* -exprs(#20232,78,#20230,0,"red") -hasLocation(#20232,#20045) -enclosing_stmt(#20232,#20221) -expr_containers(#20232,#20001) -literals("red","red",#20232) -decl(#20232,#20224) -typedecl(#20232,#20225) +exprs(#20223,78,#20222,0,"Color") +hasLocation(#20223,#20041) +enclosing_stmt(#20223,#20222) +expr_containers(#20223,#20001) +literals("Color","Color",#20223) +decl(#20223,#20203) +typedecl(#20223,#20209) +namespacedecl(#20223,#20215) +#20224=* +scopes(#20224,14) +scopenodes(#20222,#20224) +scopenesting(#20224,#20000) +#20225=@"var;{red};{#20224}" +variables(#20225,"red",#20224) +#20226=@"local_type_name;{red};{#20224}" +local_type_names(#20226,"red",#20224) +#20227=@"var;{green};{#20224}" +variables(#20227,"green",#20224) +#20228=@"local_type_name;{green};{#20224}" +local_type_names(#20228,"green",#20224) +#20229=@"var;{blue};{#20224}" +variables(#20229,"blue",#20224) +#20230=@"local_type_name;{blue};{#20224}" +local_type_names(#20230,"blue",#20224) +#20231=* +properties(#20231,#20222,1,7,"red = 1") +#20232=@"loc,{#10000},1,14,1,20" +locations_default(#20232,#10000,1,14,1,20) +hasLocation(#20231,#20232) #20233=* -exprs(#20233,3,#20230,1,"1") -hasLocation(#20233,#20049) -enclosing_stmt(#20233,#20221) +exprs(#20233,78,#20231,0,"red") +hasLocation(#20233,#20045) +enclosing_stmt(#20233,#20222) expr_containers(#20233,#20001) -literals("1","1",#20233) +literals("red","red",#20233) +decl(#20233,#20225) +typedecl(#20233,#20226) #20234=* -properties(#20234,#20221,2,7,"green") -hasLocation(#20234,#20053) +exprs(#20234,3,#20231,1,"1") +hasLocation(#20234,#20049) +enclosing_stmt(#20234,#20222) +expr_containers(#20234,#20001) +literals("1","1",#20234) #20235=* -exprs(#20235,78,#20234,0,"green") +properties(#20235,#20222,2,7,"green") hasLocation(#20235,#20053) -enclosing_stmt(#20235,#20221) -expr_containers(#20235,#20001) -literals("green","green",#20235) -decl(#20235,#20226) -typedecl(#20235,#20227) #20236=* -properties(#20236,#20221,3,7,"blue") -hasLocation(#20236,#20057) +exprs(#20236,78,#20235,0,"green") +hasLocation(#20236,#20053) +enclosing_stmt(#20236,#20222) +expr_containers(#20236,#20001) +literals("green","green",#20236) +decl(#20236,#20227) +typedecl(#20236,#20228) #20237=* -exprs(#20237,78,#20236,0,"blue") +properties(#20237,#20222,3,7,"blue") hasLocation(#20237,#20057) -enclosing_stmt(#20237,#20221) -expr_containers(#20237,#20001) -literals("blue","blue",#20237) -decl(#20237,#20228) -typedecl(#20237,#20229) #20238=* -stmts(#20238,36,#20001,1,"declare ... a, b }") -hasLocation(#20238,#20007) -stmt_containers(#20238,#20001) +exprs(#20238,78,#20237,0,"blue") +hasLocation(#20238,#20057) +enclosing_stmt(#20238,#20222) +expr_containers(#20238,#20001) +literals("blue","blue",#20238) +decl(#20238,#20229) +typedecl(#20238,#20230) #20239=* -exprs(#20239,78,#20238,0,"DeclaredEnum") -hasLocation(#20239,#20065) -enclosing_stmt(#20239,#20238) -expr_containers(#20239,#20001) -literals("DeclaredEnum","DeclaredEnum",#20239) -decl(#20239,#20204) -typedecl(#20239,#20210) -namespacedecl(#20239,#20216) +stmts(#20239,36,#20001,1,"declare ... a, b }") +hasLocation(#20239,#20007) +stmt_containers(#20239,#20001) #20240=* -scopes(#20240,14) -scopenodes(#20238,#20240) -scopenesting(#20240,#20000) -#20241=@"var;{a};{#20240}" -variables(#20241,"a",#20240) -#20242=@"local_type_name;{a};{#20240}" -local_type_names(#20242,"a",#20240) -#20243=@"var;{b};{#20240}" -variables(#20243,"b",#20240) -#20244=@"local_type_name;{b};{#20240}" -local_type_names(#20244,"b",#20240) -#20245=* -properties(#20245,#20238,1,7,"a") -hasLocation(#20245,#20069) +exprs(#20240,78,#20239,0,"DeclaredEnum") +hasLocation(#20240,#20065) +enclosing_stmt(#20240,#20239) +expr_containers(#20240,#20001) +literals("DeclaredEnum","DeclaredEnum",#20240) +decl(#20240,#20204) +typedecl(#20240,#20210) +namespacedecl(#20240,#20216) +#20241=* +scopes(#20241,14) +scopenodes(#20239,#20241) +scopenesting(#20241,#20000) +#20242=@"var;{a};{#20241}" +variables(#20242,"a",#20241) +#20243=@"local_type_name;{a};{#20241}" +local_type_names(#20243,"a",#20241) +#20244=@"var;{b};{#20241}" +variables(#20244,"b",#20241) +#20245=@"local_type_name;{b};{#20241}" +local_type_names(#20245,"b",#20241) #20246=* -exprs(#20246,78,#20245,0,"a") +properties(#20246,#20239,1,7,"a") hasLocation(#20246,#20069) -enclosing_stmt(#20246,#20238) -expr_containers(#20246,#20001) -literals("a","a",#20246) -decl(#20246,#20241) -typedecl(#20246,#20242) #20247=* -properties(#20247,#20238,2,7,"b") -hasLocation(#20247,#20073) +exprs(#20247,78,#20246,0,"a") +hasLocation(#20247,#20069) +enclosing_stmt(#20247,#20239) +expr_containers(#20247,#20001) +literals("a","a",#20247) +decl(#20247,#20242) +typedecl(#20247,#20243) #20248=* -exprs(#20248,78,#20247,0,"b") +properties(#20248,#20239,2,7,"b") hasLocation(#20248,#20073) -enclosing_stmt(#20248,#20238) -expr_containers(#20248,#20001) -literals("b","b",#20248) -decl(#20248,#20243) -typedecl(#20248,#20244) -has_declare_keyword(#20238) #20249=* -stmts(#20249,36,#20001,2,"const e ... +2, b }") -hasLocation(#20249,#20009) -stmt_containers(#20249,#20001) +exprs(#20249,78,#20248,0,"b") +hasLocation(#20249,#20073) +enclosing_stmt(#20249,#20239) +expr_containers(#20249,#20001) +literals("b","b",#20249) +decl(#20249,#20244) +typedecl(#20249,#20245) +has_declare_keyword(#20239) #20250=* -exprs(#20250,78,#20249,0,"ConstEnum") -hasLocation(#20250,#20081) -enclosing_stmt(#20250,#20249) -expr_containers(#20250,#20001) -literals("ConstEnum","ConstEnum",#20250) -decl(#20250,#20205) -typedecl(#20250,#20211) -namespacedecl(#20250,#20217) +stmts(#20250,36,#20001,2,"const e ... +2, b }") +hasLocation(#20250,#20009) +stmt_containers(#20250,#20001) #20251=* -scopes(#20251,14) -scopenodes(#20249,#20251) -scopenesting(#20251,#20000) -#20252=@"var;{a};{#20251}" -variables(#20252,"a",#20251) -#20253=@"local_type_name;{a};{#20251}" -local_type_names(#20253,"a",#20251) -#20254=@"var;{b};{#20251}" -variables(#20254,"b",#20251) -#20255=@"local_type_name;{b};{#20251}" -local_type_names(#20255,"b",#20251) -#20256=* -properties(#20256,#20249,1,7,"a = 1+2") -#20257=@"loc,{#10000},4,24,4,30" -locations_default(#20257,#10000,4,24,4,30) -hasLocation(#20256,#20257) -#20258=* -exprs(#20258,78,#20256,0,"a") -hasLocation(#20258,#20085) -enclosing_stmt(#20258,#20249) -expr_containers(#20258,#20001) -literals("a","a",#20258) -decl(#20258,#20252) -typedecl(#20258,#20253) +exprs(#20251,78,#20250,0,"ConstEnum") +hasLocation(#20251,#20081) +enclosing_stmt(#20251,#20250) +expr_containers(#20251,#20001) +literals("ConstEnum","ConstEnum",#20251) +decl(#20251,#20205) +typedecl(#20251,#20211) +namespacedecl(#20251,#20217) +#20252=* +scopes(#20252,14) +scopenodes(#20250,#20252) +scopenesting(#20252,#20000) +#20253=@"var;{a};{#20252}" +variables(#20253,"a",#20252) +#20254=@"local_type_name;{a};{#20252}" +local_type_names(#20254,"a",#20252) +#20255=@"var;{b};{#20252}" +variables(#20255,"b",#20252) +#20256=@"local_type_name;{b};{#20252}" +local_type_names(#20256,"b",#20252) +#20257=* +properties(#20257,#20250,1,7,"a = 1+2") +#20258=@"loc,{#10000},4,24,4,30" +locations_default(#20258,#10000,4,24,4,30) +hasLocation(#20257,#20258) #20259=* -exprs(#20259,34,#20256,1,"1+2") -#20260=@"loc,{#10000},4,28,4,30" -locations_default(#20260,#10000,4,28,4,30) -hasLocation(#20259,#20260) -enclosing_stmt(#20259,#20249) +exprs(#20259,78,#20257,0,"a") +hasLocation(#20259,#20085) +enclosing_stmt(#20259,#20250) expr_containers(#20259,#20001) -#20261=* -exprs(#20261,3,#20259,0,"1") -hasLocation(#20261,#20089) -enclosing_stmt(#20261,#20249) -expr_containers(#20261,#20001) -literals("1","1",#20261) +literals("a","a",#20259) +decl(#20259,#20253) +typedecl(#20259,#20254) +#20260=* +exprs(#20260,34,#20257,1,"1+2") +#20261=@"loc,{#10000},4,28,4,30" +locations_default(#20261,#10000,4,28,4,30) +hasLocation(#20260,#20261) +enclosing_stmt(#20260,#20250) +expr_containers(#20260,#20001) #20262=* -exprs(#20262,3,#20259,1,"2") -hasLocation(#20262,#20093) -enclosing_stmt(#20262,#20249) +exprs(#20262,3,#20260,0,"1") +hasLocation(#20262,#20089) +enclosing_stmt(#20262,#20250) expr_containers(#20262,#20001) -literals("2","2",#20262) +literals("1","1",#20262) #20263=* -properties(#20263,#20249,2,7,"b") -hasLocation(#20263,#20097) +exprs(#20263,3,#20260,1,"2") +hasLocation(#20263,#20093) +enclosing_stmt(#20263,#20250) +expr_containers(#20263,#20001) +literals("2","2",#20263) #20264=* -exprs(#20264,78,#20263,0,"b") +properties(#20264,#20250,2,7,"b") hasLocation(#20264,#20097) -enclosing_stmt(#20264,#20249) -expr_containers(#20264,#20001) -literals("b","b",#20264) -decl(#20264,#20254) -typedecl(#20264,#20255) -is_const_enum(#20249) #20265=* -stmts(#20265,36,#20001,3,"declare ... a, b }") -hasLocation(#20265,#20011) -stmt_containers(#20265,#20001) +exprs(#20265,78,#20264,0,"b") +hasLocation(#20265,#20097) +enclosing_stmt(#20265,#20250) +expr_containers(#20265,#20001) +literals("b","b",#20265) +decl(#20265,#20255) +typedecl(#20265,#20256) +is_const_enum(#20250) #20266=* -exprs(#20266,78,#20265,0,"DeclaredConstEnum") -hasLocation(#20266,#20107) -enclosing_stmt(#20266,#20265) -expr_containers(#20266,#20001) -literals("DeclaredConstEnum","DeclaredConstEnum",#20266) -decl(#20266,#20206) -typedecl(#20266,#20212) -namespacedecl(#20266,#20218) +stmts(#20266,36,#20001,3,"declare ... a, b }") +hasLocation(#20266,#20011) +stmt_containers(#20266,#20001) #20267=* -scopes(#20267,14) -scopenodes(#20265,#20267) -scopenesting(#20267,#20000) -#20268=@"var;{a};{#20267}" -variables(#20268,"a",#20267) -#20269=@"local_type_name;{a};{#20267}" -local_type_names(#20269,"a",#20267) -#20270=@"var;{b};{#20267}" -variables(#20270,"b",#20267) -#20271=@"local_type_name;{b};{#20267}" -local_type_names(#20271,"b",#20267) -#20272=* -properties(#20272,#20265,1,7,"a") -hasLocation(#20272,#20111) +exprs(#20267,78,#20266,0,"DeclaredConstEnum") +hasLocation(#20267,#20107) +enclosing_stmt(#20267,#20266) +expr_containers(#20267,#20001) +literals("DeclaredConstEnum","DeclaredConstEnum",#20267) +decl(#20267,#20206) +typedecl(#20267,#20212) +namespacedecl(#20267,#20218) +#20268=* +scopes(#20268,14) +scopenodes(#20266,#20268) +scopenesting(#20268,#20000) +#20269=@"var;{a};{#20268}" +variables(#20269,"a",#20268) +#20270=@"local_type_name;{a};{#20268}" +local_type_names(#20270,"a",#20268) +#20271=@"var;{b};{#20268}" +variables(#20271,"b",#20268) +#20272=@"local_type_name;{b};{#20268}" +local_type_names(#20272,"b",#20268) #20273=* -exprs(#20273,78,#20272,0,"a") +properties(#20273,#20266,1,7,"a") hasLocation(#20273,#20111) -enclosing_stmt(#20273,#20265) -expr_containers(#20273,#20001) -literals("a","a",#20273) -decl(#20273,#20268) -typedecl(#20273,#20269) #20274=* -properties(#20274,#20265,2,7,"b") -hasLocation(#20274,#20115) +exprs(#20274,78,#20273,0,"a") +hasLocation(#20274,#20111) +enclosing_stmt(#20274,#20266) +expr_containers(#20274,#20001) +literals("a","a",#20274) +decl(#20274,#20269) +typedecl(#20274,#20270) #20275=* -exprs(#20275,78,#20274,0,"b") +properties(#20275,#20266,2,7,"b") hasLocation(#20275,#20115) -enclosing_stmt(#20275,#20265) -expr_containers(#20275,#20001) -literals("b","b",#20275) -decl(#20275,#20270) -typedecl(#20275,#20271) -is_const_enum(#20265) -has_declare_keyword(#20265) #20276=* -stmts(#20276,17,#20001,4,"functio ... rn x; }") -hasLocation(#20276,#20015) -stmt_containers(#20276,#20001) +exprs(#20276,78,#20275,0,"b") +hasLocation(#20276,#20115) +enclosing_stmt(#20276,#20266) +expr_containers(#20276,#20001) +literals("b","b",#20276) +decl(#20276,#20271) +typedecl(#20276,#20272) +is_const_enum(#20266) +has_declare_keyword(#20266) #20277=* -exprs(#20277,78,#20276,-1,"foo") -hasLocation(#20277,#20121) -expr_containers(#20277,#20276) -literals("foo","foo",#20277) -decl(#20277,#20201) +stmts(#20277,17,#20001,4,"functio ... rn x; }") +hasLocation(#20277,#20015) +stmt_containers(#20277,#20001) #20278=* -scopes(#20278,1) -scopenodes(#20276,#20278) -scopenesting(#20278,#20000) -#20279=@"var;{x};{#20278}" -variables(#20279,"x",#20278) -#20280=* -exprs(#20280,78,#20276,0,"x") -hasLocation(#20280,#20125) -expr_containers(#20280,#20276) -literals("x","x",#20280) -decl(#20280,#20279) -#20281=@"var;{arguments};{#20278}" -variables(#20281,"arguments",#20278) -is_arguments_object(#20281) +exprs(#20278,78,#20277,-1,"foo") +hasLocation(#20278,#20121) +expr_containers(#20278,#20277) +literals("foo","foo",#20278) +decl(#20278,#20201) +#20279=* +scopes(#20279,1) +scopenodes(#20277,#20279) +scopenesting(#20279,#20000) +#20280=@"var;{this};{#20279}" +variables(#20280,"this",#20279) +#20281=@"var;{x};{#20279}" +variables(#20281,"x",#20279) #20282=* -stmts(#20282,1,#20276,-2,"{ return x; }") -#20283=@"loc,{#10000},7,17,7,29" -locations_default(#20283,#10000,7,17,7,29) -hasLocation(#20282,#20283) -stmt_containers(#20282,#20276) +exprs(#20282,78,#20277,0,"x") +hasLocation(#20282,#20125) +expr_containers(#20282,#20277) +literals("x","x",#20282) +decl(#20282,#20281) +#20283=@"var;{arguments};{#20279}" +variables(#20283,"arguments",#20279) +is_arguments_object(#20283) #20284=* -stmts(#20284,9,#20282,0,"return x;") -#20285=@"loc,{#10000},7,19,7,27" -locations_default(#20285,#10000,7,19,7,27) +stmts(#20284,1,#20277,-2,"{ return x; }") +#20285=@"loc,{#10000},7,17,7,29" +locations_default(#20285,#10000,7,17,7,29) hasLocation(#20284,#20285) -stmt_containers(#20284,#20276) +stmt_containers(#20284,#20277) #20286=* -exprs(#20286,79,#20284,0,"x") -hasLocation(#20286,#20133) -enclosing_stmt(#20286,#20284) -expr_containers(#20286,#20276) -literals("x","x",#20286) -bind(#20286,#20279) -#20287=* -stmts(#20287,36,#20001,5,"enum Co ... + 2)\n}") -#20288=@"loc,{#10000},9,1,11,1" -locations_default(#20288,#10000,9,1,11,1) -hasLocation(#20287,#20288) -stmt_containers(#20287,#20001) +stmts(#20286,9,#20284,0,"return x;") +#20287=@"loc,{#10000},7,19,7,27" +locations_default(#20287,#10000,7,19,7,27) +hasLocation(#20286,#20287) +stmt_containers(#20286,#20277) +#20288=* +exprs(#20288,79,#20286,0,"x") +hasLocation(#20288,#20133) +enclosing_stmt(#20288,#20286) +expr_containers(#20288,#20277) +literals("x","x",#20288) +bind(#20288,#20281) #20289=* -exprs(#20289,78,#20287,0,"ComplexInitializer") -hasLocation(#20289,#20141) -enclosing_stmt(#20289,#20287) -expr_containers(#20289,#20001) -literals("ComplexInitializer","ComplexInitializer",#20289) -decl(#20289,#20207) -typedecl(#20289,#20213) -namespacedecl(#20289,#20219) -#20290=* -scopes(#20290,14) -scopenodes(#20287,#20290) -scopenesting(#20290,#20000) -#20291=@"var;{a};{#20290}" -variables(#20291,"a",#20290) -#20292=@"local_type_name;{a};{#20290}" -local_type_names(#20292,"a",#20290) -#20293=* -properties(#20293,#20287,1,7,"a = foo(1 + 2)") -#20294=@"loc,{#10000},10,3,10,16" -locations_default(#20294,#10000,10,3,10,16) -hasLocation(#20293,#20294) +stmts(#20289,36,#20001,5,"enum Co ... + 2)\n}") +#20290=@"loc,{#10000},9,1,11,1" +locations_default(#20290,#10000,9,1,11,1) +hasLocation(#20289,#20290) +stmt_containers(#20289,#20001) +#20291=* +exprs(#20291,78,#20289,0,"ComplexInitializer") +hasLocation(#20291,#20141) +enclosing_stmt(#20291,#20289) +expr_containers(#20291,#20001) +literals("ComplexInitializer","ComplexInitializer",#20291) +decl(#20291,#20207) +typedecl(#20291,#20213) +namespacedecl(#20291,#20219) +#20292=* +scopes(#20292,14) +scopenodes(#20289,#20292) +scopenesting(#20292,#20000) +#20293=@"var;{a};{#20292}" +variables(#20293,"a",#20292) +#20294=@"local_type_name;{a};{#20292}" +local_type_names(#20294,"a",#20292) #20295=* -exprs(#20295,78,#20293,0,"a") -hasLocation(#20295,#20145) -enclosing_stmt(#20295,#20287) -expr_containers(#20295,#20001) -literals("a","a",#20295) -decl(#20295,#20291) -typedecl(#20295,#20292) -#20296=* -exprs(#20296,13,#20293,1,"foo(1 + 2)") -#20297=@"loc,{#10000},10,7,10,16" -locations_default(#20297,#10000,10,7,10,16) -hasLocation(#20296,#20297) -enclosing_stmt(#20296,#20287) -expr_containers(#20296,#20001) +properties(#20295,#20289,1,7,"a = foo(1 + 2)") +#20296=@"loc,{#10000},10,3,10,16" +locations_default(#20296,#10000,10,3,10,16) +hasLocation(#20295,#20296) +#20297=* +exprs(#20297,78,#20295,0,"a") +hasLocation(#20297,#20145) +enclosing_stmt(#20297,#20289) +expr_containers(#20297,#20001) +literals("a","a",#20297) +decl(#20297,#20293) +typedecl(#20297,#20294) #20298=* -exprs(#20298,79,#20296,-1,"foo") -hasLocation(#20298,#20149) -enclosing_stmt(#20298,#20287) +exprs(#20298,13,#20295,1,"foo(1 + 2)") +#20299=@"loc,{#10000},10,7,10,16" +locations_default(#20299,#10000,10,7,10,16) +hasLocation(#20298,#20299) +enclosing_stmt(#20298,#20289) expr_containers(#20298,#20001) -literals("foo","foo",#20298) -bind(#20298,#20201) -#20299=* -exprs(#20299,34,#20296,0,"1 + 2") -#20300=@"loc,{#10000},10,11,10,15" -locations_default(#20300,#10000,10,11,10,15) -hasLocation(#20299,#20300) -enclosing_stmt(#20299,#20287) -expr_containers(#20299,#20001) +#20300=* +exprs(#20300,79,#20298,-1,"foo") +hasLocation(#20300,#20149) +enclosing_stmt(#20300,#20289) +expr_containers(#20300,#20001) +literals("foo","foo",#20300) +bind(#20300,#20201) #20301=* -exprs(#20301,3,#20299,0,"1") -hasLocation(#20301,#20153) -enclosing_stmt(#20301,#20287) +exprs(#20301,34,#20298,0,"1 + 2") +#20302=@"loc,{#10000},10,11,10,15" +locations_default(#20302,#10000,10,11,10,15) +hasLocation(#20301,#20302) +enclosing_stmt(#20301,#20289) expr_containers(#20301,#20001) -literals("1","1",#20301) -#20302=* -exprs(#20302,3,#20299,1,"2") -hasLocation(#20302,#20157) -enclosing_stmt(#20302,#20287) -expr_containers(#20302,#20001) -literals("2","2",#20302) #20303=* -stmts(#20303,36,#20001,6,"enum St ... b = a\n}") -#20304=@"loc,{#10000},13,1,16,1" -locations_default(#20304,#10000,13,1,16,1) -hasLocation(#20303,#20304) -stmt_containers(#20303,#20001) +exprs(#20303,3,#20301,0,"1") +hasLocation(#20303,#20153) +enclosing_stmt(#20303,#20289) +expr_containers(#20303,#20001) +literals("1","1",#20303) +#20304=* +exprs(#20304,3,#20301,1,"2") +hasLocation(#20304,#20157) +enclosing_stmt(#20304,#20289) +expr_containers(#20304,#20001) +literals("2","2",#20304) #20305=* -exprs(#20305,78,#20303,0,"StringL ... mMember") -hasLocation(#20305,#20164) -enclosing_stmt(#20305,#20303) -expr_containers(#20305,#20001) -literals("StringLiteralEnumMember","StringLiteralEnumMember",#20305) -decl(#20305,#20208) -typedecl(#20305,#20214) -namespacedecl(#20305,#20220) -#20306=* -scopes(#20306,14) -scopenodes(#20303,#20306) -scopenesting(#20306,#20000) -#20307=@"var;{a};{#20306}" -variables(#20307,"a",#20306) -#20308=@"local_type_name;{a};{#20306}" -local_type_names(#20308,"a",#20306) -#20309=@"var;{b};{#20306}" -variables(#20309,"b",#20306) -#20310=@"local_type_name;{b};{#20306}" -local_type_names(#20310,"b",#20306) -#20311=* -properties(#20311,#20303,1,7,"""a"" = 2") -#20312=@"loc,{#10000},14,3,14,9" -locations_default(#20312,#10000,14,3,14,9) -hasLocation(#20311,#20312) +stmts(#20305,36,#20001,6,"enum St ... b = a\n}") +#20306=@"loc,{#10000},13,1,16,1" +locations_default(#20306,#10000,13,1,16,1) +hasLocation(#20305,#20306) +stmt_containers(#20305,#20001) +#20307=* +exprs(#20307,78,#20305,0,"StringL ... mMember") +hasLocation(#20307,#20164) +enclosing_stmt(#20307,#20305) +expr_containers(#20307,#20001) +literals("StringLiteralEnumMember","StringLiteralEnumMember",#20307) +decl(#20307,#20208) +typedecl(#20307,#20214) +namespacedecl(#20307,#20220) +#20308=* +scopes(#20308,14) +scopenodes(#20305,#20308) +scopenesting(#20308,#20000) +#20309=@"var;{a};{#20308}" +variables(#20309,"a",#20308) +#20310=@"local_type_name;{a};{#20308}" +local_type_names(#20310,"a",#20308) +#20311=@"var;{b};{#20308}" +variables(#20311,"b",#20308) +#20312=@"local_type_name;{b};{#20308}" +local_type_names(#20312,"b",#20308) #20313=* -exprs(#20313,78,#20311,0,"""a""") -hasLocation(#20313,#20168) -enclosing_stmt(#20313,#20303) -expr_containers(#20313,#20001) -literals("a","a",#20313) -decl(#20313,#20307) -typedecl(#20313,#20308) -#20314=* -exprs(#20314,3,#20311,1,"2") -hasLocation(#20314,#20172) -enclosing_stmt(#20314,#20303) -expr_containers(#20314,#20001) -literals("2","2",#20314) +properties(#20313,#20305,1,7,"""a"" = 2") +#20314=@"loc,{#10000},14,3,14,9" +locations_default(#20314,#10000,14,3,14,9) +hasLocation(#20313,#20314) #20315=* -properties(#20315,#20303,2,7,"b = a") -#20316=@"loc,{#10000},15,3,15,7" -locations_default(#20316,#10000,15,3,15,7) -hasLocation(#20315,#20316) +exprs(#20315,78,#20313,0,"""a""") +hasLocation(#20315,#20168) +enclosing_stmt(#20315,#20305) +expr_containers(#20315,#20001) +literals("a","a",#20315) +decl(#20315,#20309) +typedecl(#20315,#20310) +#20316=* +exprs(#20316,3,#20313,1,"2") +hasLocation(#20316,#20172) +enclosing_stmt(#20316,#20305) +expr_containers(#20316,#20001) +literals("2","2",#20316) #20317=* -exprs(#20317,78,#20315,0,"b") -hasLocation(#20317,#20176) -enclosing_stmt(#20317,#20303) -expr_containers(#20317,#20001) -literals("b","b",#20317) -decl(#20317,#20309) -typedecl(#20317,#20310) -#20318=* -exprs(#20318,79,#20315,1,"a") -hasLocation(#20318,#20180) -enclosing_stmt(#20318,#20303) -expr_containers(#20318,#20001) -literals("a","a",#20318) -bind(#20318,#20307) +properties(#20317,#20305,2,7,"b = a") +#20318=@"loc,{#10000},15,3,15,7" +locations_default(#20318,#10000,15,3,15,7) +hasLocation(#20317,#20318) #20319=* -stmts(#20319,18,#20001,7,"var x : ... r.a = 2") -hasLocation(#20319,#20037) -stmt_containers(#20319,#20001) +exprs(#20319,78,#20317,0,"b") +hasLocation(#20319,#20176) +enclosing_stmt(#20319,#20305) +expr_containers(#20319,#20001) +literals("b","b",#20319) +decl(#20319,#20311) +typedecl(#20319,#20312) #20320=* -exprs(#20320,64,#20319,0,"x : Str ... r.a = 2") -#20321=@"loc,{#10000},18,5,18,37" -locations_default(#20321,#10000,18,5,18,37) -hasLocation(#20320,#20321) -enclosing_stmt(#20320,#20319) +exprs(#20320,79,#20317,1,"a") +hasLocation(#20320,#20180) +enclosing_stmt(#20320,#20305) expr_containers(#20320,#20001) +literals("a","a",#20320) +bind(#20320,#20309) +#20321=* +stmts(#20321,18,#20001,7,"var x : ... r.a = 2") +hasLocation(#20321,#20037) +stmt_containers(#20321,#20001) #20322=* -exprs(#20322,78,#20320,0,"x") -hasLocation(#20322,#20185) -enclosing_stmt(#20322,#20319) +exprs(#20322,64,#20321,0,"x : Str ... r.a = 2") +#20323=@"loc,{#10000},18,5,18,37" +locations_default(#20323,#10000,18,5,18,37) +hasLocation(#20322,#20323) +enclosing_stmt(#20322,#20321) expr_containers(#20322,#20001) -literals("x","x",#20322) -decl(#20322,#20202) -#20323=* -exprs(#20323,3,#20320,1,"2") -hasLocation(#20323,#20197) -enclosing_stmt(#20323,#20319) -expr_containers(#20323,#20001) -literals("2","2",#20323) #20324=* -typeexprs(#20324,13,#20320,2,"StringL ... ember.a") -#20325=@"loc,{#10000},18,9,18,33" -locations_default(#20325,#10000,18,9,18,33) -hasLocation(#20324,#20325) -enclosing_stmt(#20324,#20319) +exprs(#20324,78,#20322,0,"x") +hasLocation(#20324,#20185) +enclosing_stmt(#20324,#20321) expr_containers(#20324,#20001) +literals("x","x",#20324) +decl(#20324,#20202) +#20325=* +exprs(#20325,3,#20322,1,"2") +hasLocation(#20325,#20197) +enclosing_stmt(#20325,#20321) +expr_containers(#20325,#20001) +literals("2","2",#20325) #20326=* -typeexprs(#20326,25,#20324,0,"StringL ... mMember") -hasLocation(#20326,#20189) -enclosing_stmt(#20326,#20319) +typeexprs(#20326,13,#20322,2,"StringL ... ember.a") +#20327=@"loc,{#10000},18,9,18,33" +locations_default(#20327,#10000,18,9,18,33) +hasLocation(#20326,#20327) +enclosing_stmt(#20326,#20321) expr_containers(#20326,#20001) -literals("StringLiteralEnumMember","StringLiteralEnumMember",#20326) -namespacebind(#20326,#20220) -#20327=* -typeexprs(#20327,15,#20324,1,"a") -hasLocation(#20327,#20193) -enclosing_stmt(#20327,#20319) -expr_containers(#20327,#20001) -literals("a","a",#20327) #20328=* -entry_cfg_node(#20328,#20001) -#20329=@"loc,{#10000},1,1,1,0" -locations_default(#20329,#10000,1,1,1,0) -hasLocation(#20328,#20329) +typeexprs(#20328,25,#20326,0,"StringL ... mMember") +hasLocation(#20328,#20189) +enclosing_stmt(#20328,#20321) +expr_containers(#20328,#20001) +literals("StringLiteralEnumMember","StringLiteralEnumMember",#20328) +namespacebind(#20328,#20220) +#20329=* +typeexprs(#20329,15,#20326,1,"a") +hasLocation(#20329,#20193) +enclosing_stmt(#20329,#20321) +expr_containers(#20329,#20001) +literals("a","a",#20329) #20330=* -exit_cfg_node(#20330,#20001) -hasLocation(#20330,#20199) -successor(#20319,#20322) -successor(#20323,#20320) -successor(#20322,#20323) -successor(#20320,#20330) -successor(#20318,#20315) -successor(#20317,#20318) -successor(#20315,#20303) -successor(#20314,#20311) -successor(#20313,#20314) -successor(#20311,#20317) -successor(#20305,#20313) -successor(#20303,#20319) -successor(#20302,#20299) -successor(#20301,#20302) -successor(#20299,#20296) -successor(#20298,#20301) -successor(#20296,#20293) -successor(#20295,#20298) -successor(#20293,#20287) -successor(#20289,#20295) -successor(#20287,#20305) -successor(#20276,#20289) -#20331=* -entry_cfg_node(#20331,#20276) -#20332=@"loc,{#10000},7,1,7,0" -locations_default(#20332,#10000,7,1,7,0) -hasLocation(#20331,#20332) +entry_cfg_node(#20330,#20001) +#20331=@"loc,{#10000},1,1,1,0" +locations_default(#20331,#10000,1,1,1,0) +hasLocation(#20330,#20331) +#20332=* +exit_cfg_node(#20332,#20001) +hasLocation(#20332,#20199) +successor(#20321,#20324) +successor(#20325,#20322) +successor(#20324,#20325) +successor(#20322,#20332) +successor(#20320,#20317) +successor(#20319,#20320) +successor(#20317,#20305) +successor(#20316,#20313) +successor(#20315,#20316) +successor(#20313,#20319) +successor(#20307,#20315) +successor(#20305,#20321) +successor(#20304,#20301) +successor(#20303,#20304) +successor(#20301,#20298) +successor(#20300,#20303) +successor(#20298,#20295) +successor(#20297,#20300) +successor(#20295,#20289) +successor(#20291,#20297) +successor(#20289,#20307) +successor(#20277,#20291) #20333=* -exit_cfg_node(#20333,#20276) -#20334=@"loc,{#10000},7,30,7,29" -locations_default(#20334,#10000,7,30,7,29) +entry_cfg_node(#20333,#20277) +#20334=@"loc,{#10000},7,1,7,0" +locations_default(#20334,#10000,7,1,7,0) hasLocation(#20333,#20334) -successor(#20286,#20284) -successor(#20284,#20333) -successor(#20282,#20286) -successor(#20280,#20282) -successor(#20331,#20280) -successor(#20275,#20274) -successor(#20274,#20265) -successor(#20273,#20272) -successor(#20272,#20275) -successor(#20266,#20273) -successor(#20265,#20276) -successor(#20264,#20263) -successor(#20263,#20249) -successor(#20262,#20259) -successor(#20261,#20262) -successor(#20259,#20256) -successor(#20258,#20261) -successor(#20256,#20264) -successor(#20250,#20258) -successor(#20249,#20266) -successor(#20248,#20247) -successor(#20247,#20238) -successor(#20246,#20245) -successor(#20245,#20248) -successor(#20239,#20246) -successor(#20238,#20250) -successor(#20237,#20236) -successor(#20236,#20221) -successor(#20235,#20234) -successor(#20234,#20237) -successor(#20233,#20230) -successor(#20232,#20233) -successor(#20230,#20235) -successor(#20222,#20232) -successor(#20221,#20239) -successor(#20277,#20222) -successor(#20328,#20277) +#20335=* +exit_cfg_node(#20335,#20277) +#20336=@"loc,{#10000},7,30,7,29" +locations_default(#20336,#10000,7,30,7,29) +hasLocation(#20335,#20336) +successor(#20288,#20286) +successor(#20286,#20335) +successor(#20284,#20288) +successor(#20282,#20284) +successor(#20333,#20282) +successor(#20276,#20275) +successor(#20275,#20266) +successor(#20274,#20273) +successor(#20273,#20276) +successor(#20267,#20274) +successor(#20266,#20277) +successor(#20265,#20264) +successor(#20264,#20250) +successor(#20263,#20260) +successor(#20262,#20263) +successor(#20260,#20257) +successor(#20259,#20262) +successor(#20257,#20265) +successor(#20251,#20259) +successor(#20250,#20267) +successor(#20249,#20248) +successor(#20248,#20239) +successor(#20247,#20246) +successor(#20246,#20249) +successor(#20240,#20247) +successor(#20239,#20251) +successor(#20238,#20237) +successor(#20237,#20222) +successor(#20236,#20235) +successor(#20235,#20238) +successor(#20234,#20231) +successor(#20233,#20234) +successor(#20231,#20236) +successor(#20223,#20233) +successor(#20222,#20240) +successor(#20278,#20223) +successor(#20330,#20278) numlines(#10000,18,13,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/export.ts.trap b/javascript/extractor/tests/ts/output/trap/export.ts.trap index 18fdbb8f7c29..eb8ca7f4cd1a 100644 --- a/javascript/extractor/tests/ts/output/trap/export.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/export.ts.trap @@ -163,164 +163,172 @@ variables(#20057,"C",#20055) variables(#20058,"f",#20055) #20059=@"local_type_name;{C};{#20055}" local_type_names(#20059,"C",#20055) -#20060=* -stmts(#20060,30,#20001,0,"export ... o = 42;") -hasLocation(#20060,#20003) -stmt_containers(#20060,#20001) +#20060=@"var;{this};{#20055}" +variables(#20060,"this",#20055) #20061=* -stmts(#20061,22,#20060,-1,"const foo = 42;") -#20062=@"loc,{#10000},1,8,1,22" -locations_default(#20062,#10000,1,8,1,22) -hasLocation(#20061,#20062) +stmts(#20061,30,#20001,0,"export ... o = 42;") +hasLocation(#20061,#20003) stmt_containers(#20061,#20001) -#20063=* -exprs(#20063,64,#20061,0,"foo = 42") -#20064=@"loc,{#10000},1,14,1,21" -locations_default(#20064,#10000,1,14,1,21) -hasLocation(#20063,#20064) -enclosing_stmt(#20063,#20061) -expr_containers(#20063,#20001) -#20065=* -exprs(#20065,78,#20063,0,"foo") -hasLocation(#20065,#20017) -enclosing_stmt(#20065,#20061) -expr_containers(#20065,#20001) -literals("foo","foo",#20065) -decl(#20065,#20056) +#20062=* +stmts(#20062,22,#20061,-1,"const foo = 42;") +#20063=@"loc,{#10000},1,8,1,22" +locations_default(#20063,#10000,1,8,1,22) +hasLocation(#20062,#20063) +stmt_containers(#20062,#20001) +#20064=* +exprs(#20064,64,#20062,0,"foo = 42") +#20065=@"loc,{#10000},1,14,1,21" +locations_default(#20065,#10000,1,14,1,21) +hasLocation(#20064,#20065) +enclosing_stmt(#20064,#20062) +expr_containers(#20064,#20001) #20066=* -exprs(#20066,3,#20063,1,"42") -hasLocation(#20066,#20021) -enclosing_stmt(#20066,#20061) +exprs(#20066,78,#20064,0,"foo") +hasLocation(#20066,#20017) +enclosing_stmt(#20066,#20062) expr_containers(#20066,#20001) -literals("42","42",#20066) +literals("foo","foo",#20066) +decl(#20066,#20056) #20067=* -stmts(#20067,30,#20001,1,"export class C {}") -hasLocation(#20067,#20007) -stmt_containers(#20067,#20001) +exprs(#20067,3,#20064,1,"42") +hasLocation(#20067,#20021) +enclosing_stmt(#20067,#20062) +expr_containers(#20067,#20001) +literals("42","42",#20067) #20068=* -stmts(#20068,26,#20067,-1,"class C {}") -#20069=@"loc,{#10000},3,8,3,17" -locations_default(#20069,#10000,3,8,3,17) -hasLocation(#20068,#20069) +stmts(#20068,30,#20001,1,"export class C {}") +hasLocation(#20068,#20007) stmt_containers(#20068,#20001) -#20070=* -exprs(#20070,78,#20068,0,"C") -hasLocation(#20070,#20029) -enclosing_stmt(#20070,#20068) -expr_containers(#20070,#20001) -literals("C","C",#20070) -decl(#20070,#20057) -typedecl(#20070,#20059) +#20069=* +stmts(#20069,26,#20068,-1,"class C {}") +#20070=@"loc,{#10000},3,8,3,17" +locations_default(#20070,#10000,3,8,3,17) +hasLocation(#20069,#20070) +stmt_containers(#20069,#20001) #20071=* -scopes(#20071,10) -scopenodes(#20068,#20071) -scopenesting(#20071,#20055) +exprs(#20071,78,#20069,0,"C") +hasLocation(#20071,#20029) +enclosing_stmt(#20071,#20069) +expr_containers(#20071,#20001) +literals("C","C",#20071) +decl(#20071,#20057) +typedecl(#20071,#20059) #20072=* -properties(#20072,#20068,2,0,"constructor() {}") -#20073=@"loc,{#10000},3,16,3,15" -locations_default(#20073,#10000,3,16,3,15) -hasLocation(#20072,#20073) +scopes(#20072,10) +scopenodes(#20069,#20072) +scopenesting(#20072,#20055) +#20073=@"var;{this};{#20072}" +variables(#20073,"this",#20072) #20074=* -exprs(#20074,0,#20072,0,"constructor") -hasLocation(#20074,#20073) -enclosing_stmt(#20074,#20068) -expr_containers(#20074,#20001) -literals("constructor","constructor",#20074) -#20075=* -exprs(#20075,9,#20072,1,"() {}") -hasLocation(#20075,#20073) -enclosing_stmt(#20075,#20068) -expr_containers(#20075,#20001) +properties(#20074,#20069,2,0,"constructor() {}") +#20075=@"loc,{#10000},3,16,3,15" +locations_default(#20075,#10000,3,16,3,15) +hasLocation(#20074,#20075) #20076=* -scopes(#20076,1) -scopenodes(#20075,#20076) -scopenesting(#20076,#20071) -#20077=@"var;{arguments};{#20076}" -variables(#20077,"arguments",#20076) -is_arguments_object(#20077) +exprs(#20076,0,#20074,0,"constructor") +hasLocation(#20076,#20075) +enclosing_stmt(#20076,#20069) +expr_containers(#20076,#20001) +literals("constructor","constructor",#20076) +#20077=* +exprs(#20077,9,#20074,1,"() {}") +hasLocation(#20077,#20075) +enclosing_stmt(#20077,#20069) +expr_containers(#20077,#20001) #20078=* -stmts(#20078,1,#20075,-2,"{}") -hasLocation(#20078,#20073) -stmt_containers(#20078,#20075) -is_method(#20072) -#20079=* -stmts(#20079,29,#20001,2,"export ... f() {}") -#20080=@"loc,{#10000},5,1,5,30" -locations_default(#20080,#10000,5,1,5,30) -hasLocation(#20079,#20080) -stmt_containers(#20079,#20001) +scopes(#20078,1) +scopenodes(#20077,#20078) +scopenesting(#20078,#20072) +#20079=@"var;{this};{#20078}" +variables(#20079,"this",#20078) +#20080=@"var;{arguments};{#20078}" +variables(#20080,"arguments",#20078) +is_arguments_object(#20080) #20081=* -stmts(#20081,17,#20079,0,"function f() {}") -#20082=@"loc,{#10000},5,16,5,30" -locations_default(#20082,#10000,5,16,5,30) -hasLocation(#20081,#20082) -stmt_containers(#20081,#20001) -#20083=* -exprs(#20083,78,#20081,-1,"f") -hasLocation(#20083,#20041) -expr_containers(#20083,#20081) -literals("f","f",#20083) -decl(#20083,#20058) +stmts(#20081,1,#20077,-2,"{}") +hasLocation(#20081,#20075) +stmt_containers(#20081,#20077) +is_method(#20074) +#20082=* +stmts(#20082,29,#20001,2,"export ... f() {}") +#20083=@"loc,{#10000},5,1,5,30" +locations_default(#20083,#10000,5,1,5,30) +hasLocation(#20082,#20083) +stmt_containers(#20082,#20001) #20084=* -scopes(#20084,1) -scopenodes(#20081,#20084) -scopenesting(#20084,#20055) -#20085=@"var;{arguments};{#20084}" -variables(#20085,"arguments",#20084) -is_arguments_object(#20085) +stmts(#20084,17,#20082,0,"function f() {}") +#20085=@"loc,{#10000},5,16,5,30" +locations_default(#20085,#10000,5,16,5,30) +hasLocation(#20084,#20085) +stmt_containers(#20084,#20001) #20086=* -stmts(#20086,1,#20081,-2,"{}") -#20087=@"loc,{#10000},5,29,5,30" -locations_default(#20087,#10000,5,29,5,30) -hasLocation(#20086,#20087) -stmt_containers(#20086,#20081) -#20088=* -stmts(#20088,0,#20001,3,";") -hasLocation(#20088,#20051) -stmt_containers(#20088,#20001) -#20089=* -entry_cfg_node(#20089,#20001) -#20090=@"loc,{#10000},1,1,1,0" -locations_default(#20090,#10000,1,1,1,0) -hasLocation(#20089,#20090) -#20091=* -exit_cfg_node(#20091,#20001) -hasLocation(#20091,#20053) -successor(#20088,#20091) -successor(#20079,#20081) -successor(#20081,#20088) +exprs(#20086,78,#20084,-1,"f") +hasLocation(#20086,#20041) +expr_containers(#20086,#20084) +literals("f","f",#20086) +decl(#20086,#20058) +#20087=* +scopes(#20087,1) +scopenodes(#20084,#20087) +scopenesting(#20087,#20055) +#20088=@"var;{this};{#20087}" +variables(#20088,"this",#20087) +#20089=@"var;{arguments};{#20087}" +variables(#20089,"arguments",#20087) +is_arguments_object(#20089) +#20090=* +stmts(#20090,1,#20084,-2,"{}") +#20091=@"loc,{#10000},5,29,5,30" +locations_default(#20091,#10000,5,29,5,30) +hasLocation(#20090,#20091) +stmt_containers(#20090,#20084) #20092=* -entry_cfg_node(#20092,#20081) -#20093=@"loc,{#10000},5,16,5,15" -locations_default(#20093,#10000,5,16,5,15) -hasLocation(#20092,#20093) -#20094=* -exit_cfg_node(#20094,#20081) -#20095=@"loc,{#10000},5,31,5,30" -locations_default(#20095,#10000,5,31,5,30) -hasLocation(#20094,#20095) -successor(#20086,#20094) -successor(#20092,#20086) -successor(#20067,#20070) -successor(#20075,#20072) +stmts(#20092,0,#20001,3,";") +hasLocation(#20092,#20051) +stmt_containers(#20092,#20001) +#20093=* +entry_cfg_node(#20093,#20001) +#20094=@"loc,{#10000},1,1,1,0" +locations_default(#20094,#10000,1,1,1,0) +hasLocation(#20093,#20094) +#20095=* +exit_cfg_node(#20095,#20001) +hasLocation(#20095,#20053) +successor(#20092,#20095) +successor(#20082,#20084) +successor(#20084,#20092) #20096=* -entry_cfg_node(#20096,#20075) -hasLocation(#20096,#20073) -#20097=* -exit_cfg_node(#20097,#20075) -hasLocation(#20097,#20073) -successor(#20078,#20097) -successor(#20096,#20078) -successor(#20074,#20075) -successor(#20072,#20068) -successor(#20070,#20074) -successor(#20068,#20079) -successor(#20060,#20061) -successor(#20061,#20065) -successor(#20066,#20063) -successor(#20065,#20066) -successor(#20063,#20067) -successor(#20083,#20060) -successor(#20089,#20083) +entry_cfg_node(#20096,#20084) +#20097=@"loc,{#10000},5,16,5,15" +locations_default(#20097,#10000,5,16,5,15) +hasLocation(#20096,#20097) +#20098=* +exit_cfg_node(#20098,#20084) +#20099=@"loc,{#10000},5,31,5,30" +locations_default(#20099,#10000,5,31,5,30) +hasLocation(#20098,#20099) +successor(#20090,#20098) +successor(#20096,#20090) +successor(#20068,#20071) +successor(#20077,#20074) +#20100=* +entry_cfg_node(#20100,#20077) +hasLocation(#20100,#20075) +#20101=* +exit_cfg_node(#20101,#20077) +hasLocation(#20101,#20075) +successor(#20081,#20101) +successor(#20100,#20081) +successor(#20076,#20077) +successor(#20074,#20069) +successor(#20071,#20076) +successor(#20069,#20082) +successor(#20061,#20062) +successor(#20062,#20066) +successor(#20067,#20064) +successor(#20066,#20067) +successor(#20064,#20068) +successor(#20086,#20061) +successor(#20093,#20086) numlines(#10000,5,3,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/export2.ts.trap b/javascript/extractor/tests/ts/output/trap/export2.ts.trap index 7b433d0d1d34..31d4e768f892 100644 --- a/javascript/extractor/tests/ts/output/trap/export2.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/export2.ts.trap @@ -51,26 +51,28 @@ scopenodes(#20001,#20015) scopenesting(#20015,#20000) is_module(#20001) is_es2015_module(#20001) -#20016=* -stmts(#20016,29,#20001,0,"export default 42;") -hasLocation(#20016,#20003) -stmt_containers(#20016,#20001) +#20016=@"var;{this};{#20015}" +variables(#20016,"this",#20015) #20017=* -exprs(#20017,3,#20016,0,"42") -hasLocation(#20017,#20009) -enclosing_stmt(#20017,#20016) -expr_containers(#20017,#20001) -literals("42","42",#20017) +stmts(#20017,29,#20001,0,"export default 42;") +hasLocation(#20017,#20003) +stmt_containers(#20017,#20001) #20018=* -entry_cfg_node(#20018,#20001) -#20019=@"loc,{#10000},1,1,1,0" -locations_default(#20019,#10000,1,1,1,0) -hasLocation(#20018,#20019) -#20020=* -exit_cfg_node(#20020,#20001) -hasLocation(#20020,#20013) -successor(#20016,#20017) -successor(#20017,#20020) -successor(#20018,#20016) +exprs(#20018,3,#20017,0,"42") +hasLocation(#20018,#20009) +enclosing_stmt(#20018,#20017) +expr_containers(#20018,#20001) +literals("42","42",#20018) +#20019=* +entry_cfg_node(#20019,#20001) +#20020=@"loc,{#10000},1,1,1,0" +locations_default(#20020,#10000,1,1,1,0) +hasLocation(#20019,#20020) +#20021=* +exit_cfg_node(#20021,#20001) +hasLocation(#20021,#20013) +successor(#20017,#20018) +successor(#20018,#20021) +successor(#20019,#20017) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/exportasnamespace.d.ts.trap b/javascript/extractor/tests/ts/output/trap/exportasnamespace.d.ts.trap index 2dcb1426943c..477782d62c5d 100644 --- a/javascript/extractor/tests/ts/output/trap/exportasnamespace.d.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/exportasnamespace.d.ts.trap @@ -99,51 +99,55 @@ is_module(#20001) is_es2015_module(#20001) #20034=@"var;{foo};{#20033}" variables(#20034,"foo",#20033) -#20035=* -stmts(#20035,30,#20001,0,"export ... foo();") -hasLocation(#20035,#20003) -stmt_containers(#20035,#20001) +#20035=@"var;{this};{#20033}" +variables(#20035,"this",#20033) #20036=* -stmts(#20036,17,#20035,-1,"declare ... foo();") -#20037=@"loc,{#10000},1,8,1,30" -locations_default(#20037,#10000,1,8,1,30) -hasLocation(#20036,#20037) +stmts(#20036,30,#20001,0,"export ... foo();") +hasLocation(#20036,#20003) stmt_containers(#20036,#20001) -has_declare_keyword(#20036) -#20038=* -exprs(#20038,78,#20036,-1,"foo") -hasLocation(#20038,#20013) -expr_containers(#20038,#20036) -literals("foo","foo",#20038) -decl(#20038,#20034) +#20037=* +stmts(#20037,17,#20036,-1,"declare ... foo();") +#20038=@"loc,{#10000},1,8,1,30" +locations_default(#20038,#10000,1,8,1,30) +hasLocation(#20037,#20038) +stmt_containers(#20037,#20001) +has_declare_keyword(#20037) #20039=* -scopes(#20039,1) -scopenodes(#20036,#20039) -scopenesting(#20039,#20033) -#20040=@"var;{arguments};{#20039}" -variables(#20040,"arguments",#20039) -is_arguments_object(#20040) -#20041=* -stmts(#20041,38,#20001,1,"export ... ce bar;") -hasLocation(#20041,#20005) -stmt_containers(#20041,#20001) -#20042=* -exprs(#20042,0,#20041,0,"bar") -hasLocation(#20042,#20027) -enclosing_stmt(#20042,#20041) -expr_containers(#20042,#20001) -literals("bar","bar",#20042) +exprs(#20039,78,#20037,-1,"foo") +hasLocation(#20039,#20013) +expr_containers(#20039,#20037) +literals("foo","foo",#20039) +decl(#20039,#20034) +#20040=* +scopes(#20040,1) +scopenodes(#20037,#20040) +scopenesting(#20040,#20033) +#20041=@"var;{this};{#20040}" +variables(#20041,"this",#20040) +#20042=@"var;{arguments};{#20040}" +variables(#20042,"arguments",#20040) +is_arguments_object(#20042) #20043=* -entry_cfg_node(#20043,#20001) -#20044=@"loc,{#10000},1,1,1,0" -locations_default(#20044,#10000,1,1,1,0) -hasLocation(#20043,#20044) +stmts(#20043,38,#20001,1,"export ... ce bar;") +hasLocation(#20043,#20005) +stmt_containers(#20043,#20001) +#20044=* +exprs(#20044,0,#20043,0,"bar") +hasLocation(#20044,#20027) +enclosing_stmt(#20044,#20043) +expr_containers(#20044,#20001) +literals("bar","bar",#20044) #20045=* -exit_cfg_node(#20045,#20001) -hasLocation(#20045,#20031) -successor(#20041,#20045) -successor(#20035,#20036) -successor(#20036,#20041) -successor(#20043,#20035) +entry_cfg_node(#20045,#20001) +#20046=@"loc,{#10000},1,1,1,0" +locations_default(#20046,#10000,1,1,1,0) +hasLocation(#20045,#20046) +#20047=* +exit_cfg_node(#20047,#20001) +hasLocation(#20047,#20031) +successor(#20043,#20047) +successor(#20036,#20037) +successor(#20037,#20043) +successor(#20045,#20036) numlines(#10000,2,2,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/exportassign.ts.trap b/javascript/extractor/tests/ts/output/trap/exportassign.ts.trap index 792efab29325..202a2af163d2 100644 --- a/javascript/extractor/tests/ts/output/trap/exportassign.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/exportassign.ts.trap @@ -51,26 +51,28 @@ scopenodes(#20001,#20015) scopenesting(#20015,#20000) is_module(#20001) is_es2015_module(#20001) -#20016=* -stmts(#20016,33,#20001,0,"export = 42;") -hasLocation(#20016,#20003) -stmt_containers(#20016,#20001) +#20016=@"var;{this};{#20015}" +variables(#20016,"this",#20015) #20017=* -exprs(#20017,3,#20016,0,"42") -hasLocation(#20017,#20009) -enclosing_stmt(#20017,#20016) -expr_containers(#20017,#20001) -literals("42","42",#20017) +stmts(#20017,33,#20001,0,"export = 42;") +hasLocation(#20017,#20003) +stmt_containers(#20017,#20001) #20018=* -entry_cfg_node(#20018,#20001) -#20019=@"loc,{#10000},1,1,1,0" -locations_default(#20019,#10000,1,1,1,0) -hasLocation(#20018,#20019) -#20020=* -exit_cfg_node(#20020,#20001) -hasLocation(#20020,#20013) -successor(#20016,#20017) -successor(#20017,#20020) -successor(#20018,#20016) +exprs(#20018,3,#20017,0,"42") +hasLocation(#20018,#20009) +enclosing_stmt(#20018,#20017) +expr_containers(#20018,#20001) +literals("42","42",#20018) +#20019=* +entry_cfg_node(#20019,#20001) +#20020=@"loc,{#10000},1,1,1,0" +locations_default(#20020,#10000,1,1,1,0) +hasLocation(#20019,#20020) +#20021=* +exit_cfg_node(#20021,#20001) +hasLocation(#20021,#20013) +successor(#20017,#20018) +successor(#20018,#20021) +successor(#20019,#20017) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/exportclass.ts.trap b/javascript/extractor/tests/ts/output/trap/exportclass.ts.trap index 7c8bd5baf2de..0196615e2b1d 100644 --- a/javascript/extractor/tests/ts/output/trap/exportclass.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/exportclass.ts.trap @@ -51,64 +51,74 @@ scopenodes(#20001,#20015) scopenesting(#20015,#20000) is_module(#20001) is_es2015_module(#20001) -#20016=* -stmts(#20016,30,#20001,0,"export class {}") -hasLocation(#20016,#20003) -stmt_containers(#20016,#20001) +#20016=@"var;{this};{#20015}" +variables(#20016,"this",#20015) #20017=* -stmts(#20017,26,#20016,-1,"class {}") -#20018=@"loc,{#10000},1,8,1,15" -locations_default(#20018,#10000,1,8,1,15) -hasLocation(#20017,#20018) +stmts(#20017,30,#20001,0,"export class {}") +hasLocation(#20017,#20003) stmt_containers(#20017,#20001) -#20019=* -properties(#20019,#20017,2,0,"constructor() {}") -#20020=@"loc,{#10000},1,6,1,5" -locations_default(#20020,#10000,1,6,1,5) -hasLocation(#20019,#20020) -#20021=* -exprs(#20021,0,#20019,0,"constructor") -hasLocation(#20021,#20020) -enclosing_stmt(#20021,#20017) -expr_containers(#20021,#20001) -literals("constructor","constructor",#20021) +#20018=* +stmts(#20018,26,#20017,-1,"class {}") +#20019=@"loc,{#10000},1,8,1,15" +locations_default(#20019,#10000,1,8,1,15) +hasLocation(#20018,#20019) +stmt_containers(#20018,#20001) +#20020=* +scopes(#20020,10) +scopenodes(#20018,#20020) +scopenesting(#20020,#20015) +#20021=@"var;{this};{#20020}" +variables(#20021,"this",#20020) #20022=* -exprs(#20022,9,#20019,1,"() {}") -hasLocation(#20022,#20020) -enclosing_stmt(#20022,#20017) -expr_containers(#20022,#20001) -#20023=* -scopes(#20023,1) -scopenodes(#20022,#20023) -scopenesting(#20023,#20015) -#20024=@"var;{arguments};{#20023}" -variables(#20024,"arguments",#20023) -is_arguments_object(#20024) +properties(#20022,#20018,2,0,"constructor() {}") +#20023=@"loc,{#10000},1,6,1,5" +locations_default(#20023,#10000,1,6,1,5) +hasLocation(#20022,#20023) +#20024=* +exprs(#20024,0,#20022,0,"constructor") +hasLocation(#20024,#20023) +enclosing_stmt(#20024,#20018) +expr_containers(#20024,#20001) +literals("constructor","constructor",#20024) #20025=* -stmts(#20025,1,#20022,-2,"{}") -hasLocation(#20025,#20020) -stmt_containers(#20025,#20022) -is_method(#20019) +exprs(#20025,9,#20022,1,"() {}") +hasLocation(#20025,#20023) +enclosing_stmt(#20025,#20018) +expr_containers(#20025,#20001) #20026=* -entry_cfg_node(#20026,#20001) -#20027=@"loc,{#10000},1,1,1,0" -locations_default(#20027,#10000,1,1,1,0) -hasLocation(#20026,#20027) -#20028=* -exit_cfg_node(#20028,#20001) -hasLocation(#20028,#20013) -successor(#20022,#20019) +scopes(#20026,1) +scopenodes(#20025,#20026) +scopenesting(#20026,#20020) +#20027=@"var;{this};{#20026}" +variables(#20027,"this",#20026) +#20028=@"var;{arguments};{#20026}" +variables(#20028,"arguments",#20026) +is_arguments_object(#20028) #20029=* -entry_cfg_node(#20029,#20022) -hasLocation(#20029,#20020) +stmts(#20029,1,#20025,-2,"{}") +hasLocation(#20029,#20023) +stmt_containers(#20029,#20025) +is_method(#20022) #20030=* -exit_cfg_node(#20030,#20022) -hasLocation(#20030,#20020) -successor(#20025,#20030) -successor(#20029,#20025) -successor(#20021,#20022) -successor(#20019,#20017) -successor(#20017,#20028) -successor(#20026,#20016) +entry_cfg_node(#20030,#20001) +#20031=@"loc,{#10000},1,1,1,0" +locations_default(#20031,#10000,1,1,1,0) +hasLocation(#20030,#20031) +#20032=* +exit_cfg_node(#20032,#20001) +hasLocation(#20032,#20013) +successor(#20025,#20022) +#20033=* +entry_cfg_node(#20033,#20025) +hasLocation(#20033,#20023) +#20034=* +exit_cfg_node(#20034,#20025) +hasLocation(#20034,#20023) +successor(#20029,#20034) +successor(#20033,#20029) +successor(#20024,#20025) +successor(#20022,#20018) +successor(#20018,#20032) +successor(#20030,#20017) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/exprs.ts.trap b/javascript/extractor/tests/ts/output/trap/exprs.ts.trap index 02fe28fbb608..5f6452e38712 100644 --- a/javascript/extractor/tests/ts/output/trap/exprs.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/exprs.ts.trap @@ -171,178 +171,182 @@ locations_default(#20061,#10000,1,1,5,1) hasLocation(#20001,#20061) #20062=@"var;{f};{#20000}" variables(#20062,"f",#20000) -#20063=* -stmts(#20063,17,#20001,0,"functio ... = z;\n}") -hasLocation(#20063,#20061) -stmt_containers(#20063,#20001) +#20063=@"var;{this};{#20000}" +variables(#20063,"this",#20000) #20064=* -exprs(#20064,78,#20063,-1,"f") -hasLocation(#20064,#20015) -expr_containers(#20064,#20063) -literals("f","f",#20064) -decl(#20064,#20062) +stmts(#20064,17,#20001,0,"functio ... = z;\n}") +hasLocation(#20064,#20061) +stmt_containers(#20064,#20001) #20065=* -scopes(#20065,1) -scopenodes(#20063,#20065) -scopenesting(#20065,#20000) -#20066=@"var;{z};{#20065}" -variables(#20066,"z",#20065) -#20067=* -exprs(#20067,78,#20063,0,"z") -hasLocation(#20067,#20019) -expr_containers(#20067,#20063) -literals("z","z",#20067) -decl(#20067,#20066) -#20068=@"var;{arguments};{#20065}" -variables(#20068,"arguments",#20065) -is_arguments_object(#20068) +exprs(#20065,78,#20064,-1,"f") +hasLocation(#20065,#20015) +expr_containers(#20065,#20064) +literals("f","f",#20065) +decl(#20065,#20062) +#20066=* +scopes(#20066,1) +scopenodes(#20064,#20066) +scopenesting(#20066,#20000) +#20067=@"var;{this};{#20066}" +variables(#20067,"this",#20066) +#20068=@"var;{z};{#20066}" +variables(#20068,"z",#20066) #20069=* -stmts(#20069,1,#20063,-2,"{\n let ... = z;\n}") -#20070=@"loc,{#10000},1,15,5,1" -locations_default(#20070,#10000,1,15,5,1) -hasLocation(#20069,#20070) -stmt_containers(#20069,#20063) +exprs(#20069,78,#20064,0,"z") +hasLocation(#20069,#20019) +expr_containers(#20069,#20064) +literals("z","z",#20069) +decl(#20069,#20068) +#20070=@"var;{arguments};{#20066}" +variables(#20070,"arguments",#20066) +is_arguments_object(#20070) #20071=* -scopes(#20071,4) -scopenodes(#20069,#20071) -scopenesting(#20071,#20065) -#20072=@"var;{x};{#20071}" -variables(#20072,"x",#20071) -#20073=@"var;{y};{#20071}" -variables(#20073,"y",#20071) -#20074=* -stmts(#20074,23,#20069,0,"let x, y;") -#20075=@"loc,{#10000},2,3,2,11" -locations_default(#20075,#10000,2,3,2,11) -hasLocation(#20074,#20075) -stmt_containers(#20074,#20063) +stmts(#20071,1,#20064,-2,"{\n let ... = z;\n}") +#20072=@"loc,{#10000},1,15,5,1" +locations_default(#20072,#10000,1,15,5,1) +hasLocation(#20071,#20072) +stmt_containers(#20071,#20064) +#20073=* +scopes(#20073,4) +scopenodes(#20071,#20073) +scopenesting(#20073,#20066) +#20074=@"var;{x};{#20073}" +variables(#20074,"x",#20073) +#20075=@"var;{y};{#20073}" +variables(#20075,"y",#20073) #20076=* -exprs(#20076,64,#20074,0,"x") -hasLocation(#20076,#20027) -enclosing_stmt(#20076,#20074) -expr_containers(#20076,#20063) -#20077=* -exprs(#20077,78,#20076,0,"x") -hasLocation(#20077,#20027) -enclosing_stmt(#20077,#20074) -expr_containers(#20077,#20063) -literals("x","x",#20077) -decl(#20077,#20072) +stmts(#20076,23,#20071,0,"let x, y;") +#20077=@"loc,{#10000},2,3,2,11" +locations_default(#20077,#10000,2,3,2,11) +hasLocation(#20076,#20077) +stmt_containers(#20076,#20064) #20078=* -exprs(#20078,64,#20074,1,"y") -hasLocation(#20078,#20031) -enclosing_stmt(#20078,#20074) -expr_containers(#20078,#20063) +exprs(#20078,64,#20076,0,"x") +hasLocation(#20078,#20027) +enclosing_stmt(#20078,#20076) +expr_containers(#20078,#20064) #20079=* -exprs(#20079,78,#20078,0,"y") -hasLocation(#20079,#20031) -enclosing_stmt(#20079,#20074) -expr_containers(#20079,#20063) -literals("y","y",#20079) -decl(#20079,#20073) +exprs(#20079,78,#20078,0,"x") +hasLocation(#20079,#20027) +enclosing_stmt(#20079,#20076) +expr_containers(#20079,#20064) +literals("x","x",#20079) +decl(#20079,#20074) #20080=* -stmts(#20080,2,#20069,1,"x, y;") -#20081=@"loc,{#10000},3,3,3,7" -locations_default(#20081,#10000,3,3,3,7) -hasLocation(#20080,#20081) -stmt_containers(#20080,#20063) +exprs(#20080,64,#20076,1,"y") +hasLocation(#20080,#20031) +enclosing_stmt(#20080,#20076) +expr_containers(#20080,#20064) +#20081=* +exprs(#20081,78,#20080,0,"y") +hasLocation(#20081,#20031) +enclosing_stmt(#20081,#20076) +expr_containers(#20081,#20064) +literals("y","y",#20081) +decl(#20081,#20075) #20082=* -exprs(#20082,10,#20080,0,"x, y") -#20083=@"loc,{#10000},3,3,3,6" -locations_default(#20083,#10000,3,3,3,6) +stmts(#20082,2,#20071,1,"x, y;") +#20083=@"loc,{#10000},3,3,3,7" +locations_default(#20083,#10000,3,3,3,7) hasLocation(#20082,#20083) -enclosing_stmt(#20082,#20080) -expr_containers(#20082,#20063) +stmt_containers(#20082,#20064) #20084=* -exprs(#20084,79,#20082,0,"x") -hasLocation(#20084,#20035) -enclosing_stmt(#20084,#20080) -expr_containers(#20084,#20063) -literals("x","x",#20084) -bind(#20084,#20072) -#20085=* -exprs(#20085,79,#20082,1,"y") -hasLocation(#20085,#20039) -enclosing_stmt(#20085,#20080) -expr_containers(#20085,#20063) -literals("y","y",#20085) -bind(#20085,#20073) +exprs(#20084,10,#20082,0,"x, y") +#20085=@"loc,{#10000},3,3,3,6" +locations_default(#20085,#10000,3,3,3,6) +hasLocation(#20084,#20085) +enclosing_stmt(#20084,#20082) +expr_containers(#20084,#20064) #20086=* -stmts(#20086,2,#20069,2,"[x, y] = z;") -#20087=@"loc,{#10000},4,3,4,13" -locations_default(#20087,#10000,4,3,4,13) -hasLocation(#20086,#20087) -stmt_containers(#20086,#20063) +exprs(#20086,79,#20084,0,"x") +hasLocation(#20086,#20035) +enclosing_stmt(#20086,#20082) +expr_containers(#20086,#20064) +literals("x","x",#20086) +bind(#20086,#20074) +#20087=* +exprs(#20087,79,#20084,1,"y") +hasLocation(#20087,#20039) +enclosing_stmt(#20087,#20082) +expr_containers(#20087,#20064) +literals("y","y",#20087) +bind(#20087,#20075) #20088=* -exprs(#20088,47,#20086,0,"[x, y] = z") -#20089=@"loc,{#10000},4,3,4,12" -locations_default(#20089,#10000,4,3,4,12) +stmts(#20088,2,#20071,2,"[x, y] = z;") +#20089=@"loc,{#10000},4,3,4,13" +locations_default(#20089,#10000,4,3,4,13) hasLocation(#20088,#20089) -enclosing_stmt(#20088,#20086) -expr_containers(#20088,#20063) +stmt_containers(#20088,#20064) #20090=* -exprs(#20090,67,#20088,0,"[x, y]") -#20091=@"loc,{#10000},4,3,4,8" -locations_default(#20091,#10000,4,3,4,8) +exprs(#20090,47,#20088,0,"[x, y] = z") +#20091=@"loc,{#10000},4,3,4,12" +locations_default(#20091,#10000,4,3,4,12) hasLocation(#20090,#20091) -enclosing_stmt(#20090,#20086) -expr_containers(#20090,#20063) +enclosing_stmt(#20090,#20088) +expr_containers(#20090,#20064) #20092=* -exprs(#20092,79,#20090,0,"x") -hasLocation(#20092,#20045) -enclosing_stmt(#20092,#20086) -expr_containers(#20092,#20063) -literals("x","x",#20092) -bind(#20092,#20072) -#20093=* -exprs(#20093,79,#20090,1,"y") -hasLocation(#20093,#20049) -enclosing_stmt(#20093,#20086) -expr_containers(#20093,#20063) -literals("y","y",#20093) -bind(#20093,#20073) -array_size(#20090,2) +exprs(#20092,67,#20090,0,"[x, y]") +#20093=@"loc,{#10000},4,3,4,8" +locations_default(#20093,#10000,4,3,4,8) +hasLocation(#20092,#20093) +enclosing_stmt(#20092,#20088) +expr_containers(#20092,#20064) #20094=* -exprs(#20094,79,#20088,1,"z") -hasLocation(#20094,#20055) -enclosing_stmt(#20094,#20086) -expr_containers(#20094,#20063) -literals("z","z",#20094) -bind(#20094,#20066) +exprs(#20094,79,#20092,0,"x") +hasLocation(#20094,#20045) +enclosing_stmt(#20094,#20088) +expr_containers(#20094,#20064) +literals("x","x",#20094) +bind(#20094,#20074) #20095=* -entry_cfg_node(#20095,#20001) -#20096=@"loc,{#10000},1,1,1,0" -locations_default(#20096,#10000,1,1,1,0) -hasLocation(#20095,#20096) +exprs(#20095,79,#20092,1,"y") +hasLocation(#20095,#20049) +enclosing_stmt(#20095,#20088) +expr_containers(#20095,#20064) +literals("y","y",#20095) +bind(#20095,#20075) +array_size(#20092,2) +#20096=* +exprs(#20096,79,#20090,1,"z") +hasLocation(#20096,#20055) +enclosing_stmt(#20096,#20088) +expr_containers(#20096,#20064) +literals("z","z",#20096) +bind(#20096,#20068) #20097=* -exit_cfg_node(#20097,#20001) -hasLocation(#20097,#20060) -successor(#20063,#20097) -#20098=* -entry_cfg_node(#20098,#20063) -hasLocation(#20098,#20096) +entry_cfg_node(#20097,#20001) +#20098=@"loc,{#10000},1,1,1,0" +locations_default(#20098,#10000,1,1,1,0) +hasLocation(#20097,#20098) #20099=* -exit_cfg_node(#20099,#20063) +exit_cfg_node(#20099,#20001) hasLocation(#20099,#20060) -successor(#20086,#20094) -successor(#20090,#20092) -successor(#20093,#20088) -successor(#20092,#20093) -successor(#20094,#20090) -successor(#20088,#20099) -successor(#20080,#20082) +successor(#20064,#20099) +#20100=* +entry_cfg_node(#20100,#20064) +hasLocation(#20100,#20098) +#20101=* +exit_cfg_node(#20101,#20064) +hasLocation(#20101,#20060) +successor(#20088,#20096) +successor(#20092,#20094) +successor(#20095,#20090) +successor(#20094,#20095) +successor(#20096,#20092) +successor(#20090,#20101) successor(#20082,#20084) -successor(#20085,#20086) -successor(#20084,#20085) -successor(#20074,#20077) -successor(#20079,#20078) -successor(#20078,#20080) -successor(#20077,#20076) +successor(#20084,#20086) +successor(#20087,#20088) +successor(#20086,#20087) successor(#20076,#20079) -successor(#20069,#20074) -successor(#20067,#20069) -successor(#20098,#20067) -successor(#20064,#20063) -successor(#20095,#20064) +successor(#20081,#20080) +successor(#20080,#20082) +successor(#20079,#20078) +successor(#20078,#20081) +successor(#20071,#20076) +successor(#20069,#20071) +successor(#20100,#20069) +successor(#20065,#20064) +successor(#20097,#20065) numlines(#10000,5,5,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/externalmodule.ts.trap b/javascript/extractor/tests/ts/output/trap/externalmodule.ts.trap index 0c2d918cd919..c9e120662a37 100644 --- a/javascript/extractor/tests/ts/output/trap/externalmodule.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/externalmodule.ts.trap @@ -228,149 +228,153 @@ toplevels(#20001,0) #20081=@"loc,{#10000},1,1,10,0" locations_default(#20081,#10000,1,1,10,0) hasLocation(#20001,#20081) -#20082=* -stmts(#20082,37,#20001,0,"declare ... = M;\n}") -#20083=@"loc,{#10000},1,1,9,1" -locations_default(#20083,#10000,1,1,9,1) -hasLocation(#20082,#20083) -stmt_containers(#20082,#20001) -has_declare_keyword(#20082) -#20084=* -exprs(#20084,4,#20082,-1,"""X""") -hasLocation(#20084,#20025) -enclosing_stmt(#20084,#20082) -expr_containers(#20084,#20001) -literals("X","""X""",#20084) +#20082=@"var;{this};{#20000}" +variables(#20082,"this",#20000) +#20083=* +stmts(#20083,37,#20001,0,"declare ... = M;\n}") +#20084=@"loc,{#10000},1,1,9,1" +locations_default(#20084,#10000,1,1,9,1) +hasLocation(#20083,#20084) +stmt_containers(#20083,#20001) +has_declare_keyword(#20083) #20085=* -regexpterm(#20085,14,#20084,0,"X") -#20086=@"loc,{#10000},1,17,1,17" -locations_default(#20086,#10000,1,17,1,17) -hasLocation(#20085,#20086) -regexp_const_value(#20085,"X") -#20087=* -scopes(#20087,15) -scopenodes(#20082,#20087) -scopenesting(#20087,#20000) -#20088=@"local_namespace_name;{M};{#20087}" -local_namespace_names(#20088,"M",#20087) -#20089=@"local_type_name;{M};{#20087}" -local_type_names(#20089,"M",#20087) -#20090=* -stmts(#20090,31,#20082,0,"module ... {}\n }") -#20091=@"loc,{#10000},2,3,4,3" -locations_default(#20091,#10000,2,3,4,3) -hasLocation(#20090,#20091) -stmt_containers(#20090,#20082) -#20092=* -exprs(#20092,78,#20090,-1,"M") -hasLocation(#20092,#20031) -enclosing_stmt(#20092,#20090) -expr_containers(#20092,#20082) -literals("M","M",#20092) -namespacedecl(#20092,#20088) +exprs(#20085,4,#20083,-1,"""X""") +hasLocation(#20085,#20025) +enclosing_stmt(#20085,#20083) +expr_containers(#20085,#20001) +literals("X","""X""",#20085) +#20086=* +regexpterm(#20086,14,#20085,0,"X") +#20087=@"loc,{#10000},1,17,1,17" +locations_default(#20087,#10000,1,17,1,17) +hasLocation(#20086,#20087) +regexp_const_value(#20086,"X") +#20088=* +scopes(#20088,15) +scopenodes(#20083,#20088) +scopenesting(#20088,#20000) +#20089=@"local_namespace_name;{M};{#20088}" +local_namespace_names(#20089,"M",#20088) +#20090=@"local_type_name;{M};{#20088}" +local_type_names(#20090,"M",#20088) +#20091=* +stmts(#20091,31,#20083,0,"module ... {}\n }") +#20092=@"loc,{#10000},2,3,4,3" +locations_default(#20092,#10000,2,3,4,3) +hasLocation(#20091,#20092) +stmt_containers(#20091,#20083) #20093=* -scopes(#20093,9) -scopenodes(#20090,#20093) -scopenesting(#20093,#20087) -#20094=@"local_type_name;{I};{#20093}" -local_type_names(#20094,"I",#20093) -#20095=* -stmts(#20095,30,#20090,0,"export ... ce I {}") -#20096=@"loc,{#10000},3,5,3,25" -locations_default(#20096,#10000,3,5,3,25) -hasLocation(#20095,#20096) -stmt_containers(#20095,#20090) -#20097=* -stmts(#20097,34,#20095,-1,"interface I {}") -#20098=@"loc,{#10000},3,12,3,25" -locations_default(#20098,#10000,3,12,3,25) -hasLocation(#20097,#20098) -stmt_containers(#20097,#20090) -#20099=* -typeexprs(#20099,1,#20097,0,"I") -hasLocation(#20099,#20039) -enclosing_stmt(#20099,#20097) -expr_containers(#20099,#20090) -literals("I","I",#20099) -typedecl(#20099,#20094) +exprs(#20093,78,#20091,-1,"M") +hasLocation(#20093,#20031) +enclosing_stmt(#20093,#20091) +expr_containers(#20093,#20083) +literals("M","M",#20093) +namespacedecl(#20093,#20089) +#20094=* +scopes(#20094,9) +scopenodes(#20091,#20094) +scopenesting(#20094,#20088) +#20095=@"local_type_name;{I};{#20094}" +local_type_names(#20095,"I",#20094) +#20096=* +stmts(#20096,30,#20091,0,"export ... ce I {}") +#20097=@"loc,{#10000},3,5,3,25" +locations_default(#20097,#10000,3,5,3,25) +hasLocation(#20096,#20097) +stmt_containers(#20096,#20091) +#20098=* +stmts(#20098,34,#20096,-1,"interface I {}") +#20099=@"loc,{#10000},3,12,3,25" +locations_default(#20099,#10000,3,12,3,25) +hasLocation(#20098,#20099) +stmt_containers(#20098,#20091) #20100=* -stmts(#20100,34,#20082,1,"interfa ... .I;\n }") -#20101=@"loc,{#10000},5,3,7,3" -locations_default(#20101,#10000,5,3,7,3) -hasLocation(#20100,#20101) -stmt_containers(#20100,#20082) -#20102=* -typeexprs(#20102,1,#20100,0,"M") -hasLocation(#20102,#20049) -enclosing_stmt(#20102,#20100) -expr_containers(#20102,#20082) -literals("M","M",#20102) -typedecl(#20102,#20089) +typeexprs(#20100,1,#20098,0,"I") +hasLocation(#20100,#20039) +enclosing_stmt(#20100,#20098) +expr_containers(#20100,#20091) +literals("I","I",#20100) +typedecl(#20100,#20095) +#20101=* +stmts(#20101,34,#20083,1,"interfa ... .I;\n }") +#20102=@"loc,{#10000},5,3,7,3" +locations_default(#20102,#10000,5,3,7,3) +hasLocation(#20101,#20102) +stmt_containers(#20101,#20083) #20103=* -properties(#20103,#20100,2,0,"method(): M.I;") -#20104=@"loc,{#10000},6,5,6,18" -locations_default(#20104,#10000,6,5,6,18) -hasLocation(#20103,#20104) -#20105=* -exprs(#20105,0,#20103,0,"method") -hasLocation(#20105,#20053) -enclosing_stmt(#20105,#20100) -expr_containers(#20105,#20082) -literals("method","method",#20105) +typeexprs(#20103,1,#20101,0,"M") +hasLocation(#20103,#20049) +enclosing_stmt(#20103,#20101) +expr_containers(#20103,#20083) +literals("M","M",#20103) +typedecl(#20103,#20090) +#20104=* +properties(#20104,#20101,2,0,"method(): M.I;") +#20105=@"loc,{#10000},6,5,6,18" +locations_default(#20105,#10000,6,5,6,18) +hasLocation(#20104,#20105) #20106=* -exprs(#20106,9,#20103,1,"method(): M.I;") -hasLocation(#20106,#20104) -enclosing_stmt(#20106,#20100) -expr_containers(#20106,#20082) +exprs(#20106,0,#20104,0,"method") +hasLocation(#20106,#20053) +enclosing_stmt(#20106,#20101) +expr_containers(#20106,#20083) +literals("method","method",#20106) #20107=* -scopes(#20107,1) -scopenodes(#20106,#20107) -scopenesting(#20107,#20087) -#20108=@"var;{arguments};{#20107}" -variables(#20108,"arguments",#20107) -is_arguments_object(#20108) -#20109=* -typeexprs(#20109,13,#20106,-3,"M.I") -#20110=@"loc,{#10000},6,15,6,17" -locations_default(#20110,#10000,6,15,6,17) -hasLocation(#20109,#20110) -expr_containers(#20109,#20106) +exprs(#20107,9,#20104,1,"method(): M.I;") +hasLocation(#20107,#20105) +enclosing_stmt(#20107,#20101) +expr_containers(#20107,#20083) +#20108=* +scopes(#20108,1) +scopenodes(#20107,#20108) +scopenesting(#20108,#20088) +#20109=@"var;{this};{#20108}" +variables(#20109,"this",#20108) +#20110=@"var;{arguments};{#20108}" +variables(#20110,"arguments",#20108) +is_arguments_object(#20110) #20111=* -typeexprs(#20111,25,#20109,0,"M") -hasLocation(#20111,#20061) -expr_containers(#20111,#20106) -literals("M","M",#20111) -namespacebind(#20111,#20088) -#20112=* -typeexprs(#20112,15,#20109,1,"I") -hasLocation(#20112,#20065) -expr_containers(#20112,#20106) -literals("I","I",#20112) -is_method(#20103) -is_abstract_member(#20103) +typeexprs(#20111,13,#20107,-3,"M.I") +#20112=@"loc,{#10000},6,15,6,17" +locations_default(#20112,#10000,6,15,6,17) +hasLocation(#20111,#20112) +expr_containers(#20111,#20107) #20113=* -stmts(#20113,33,#20082,2,"export = M;") -#20114=@"loc,{#10000},8,3,8,13" -locations_default(#20114,#10000,8,3,8,13) -hasLocation(#20113,#20114) -stmt_containers(#20113,#20082) +typeexprs(#20113,25,#20111,0,"M") +hasLocation(#20113,#20061) +expr_containers(#20113,#20107) +literals("M","M",#20113) +namespacebind(#20113,#20089) +#20114=* +typeexprs(#20114,15,#20111,1,"I") +hasLocation(#20114,#20065) +expr_containers(#20114,#20107) +literals("I","I",#20114) +is_method(#20104) +is_abstract_member(#20104) #20115=* -exprs(#20115,103,#20113,0,"M") -hasLocation(#20115,#20075) -enclosing_stmt(#20115,#20113) -expr_containers(#20115,#20082) -literals("M","M",#20115) -typebind(#20115,#20089) -namespacebind(#20115,#20088) -#20116=* -entry_cfg_node(#20116,#20001) -#20117=@"loc,{#10000},1,1,1,0" -locations_default(#20117,#10000,1,1,1,0) -hasLocation(#20116,#20117) +stmts(#20115,33,#20083,2,"export = M;") +#20116=@"loc,{#10000},8,3,8,13" +locations_default(#20116,#10000,8,3,8,13) +hasLocation(#20115,#20116) +stmt_containers(#20115,#20083) +#20117=* +exprs(#20117,103,#20115,0,"M") +hasLocation(#20117,#20075) +enclosing_stmt(#20117,#20115) +expr_containers(#20117,#20083) +literals("M","M",#20117) +typebind(#20117,#20090) +namespacebind(#20117,#20089) #20118=* -exit_cfg_node(#20118,#20001) -hasLocation(#20118,#20080) -successor(#20082,#20118) -successor(#20116,#20082) +entry_cfg_node(#20118,#20001) +#20119=@"loc,{#10000},1,1,1,0" +locations_default(#20119,#10000,1,1,1,0) +hasLocation(#20118,#20119) +#20120=* +exit_cfg_node(#20120,#20001) +hasLocation(#20120,#20080) +successor(#20083,#20120) +successor(#20118,#20083) numlines(#10000,9,9,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/functiondecorators.ts.trap b/javascript/extractor/tests/ts/output/trap/functiondecorators.ts.trap index 00276bb64641..00577ab98e7d 100644 --- a/javascript/extractor/tests/ts/output/trap/functiondecorators.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/functiondecorators.ts.trap @@ -593,765 +593,785 @@ variables(#20224,"C",#20000) variables(#20224,"C",#20000) #20225=@"local_type_name;{C};{#20000}" local_type_names(#20225,"C",#20000) -#20226=* -stmts(#20226,18,#20001,0,"declare var A : any;") -hasLocation(#20226,#20003) -stmt_containers(#20226,#20001) -has_declare_keyword(#20226) +#20226=@"var;{this};{#20000}" +variables(#20226,"this",#20000) #20227=* -exprs(#20227,64,#20226,0,"A : any") -#20228=@"loc,{#10000},1,13,1,19" -locations_default(#20228,#10000,1,13,1,19) -hasLocation(#20227,#20228) -enclosing_stmt(#20227,#20226) -expr_containers(#20227,#20001) -#20229=* -exprs(#20229,78,#20227,0,"A") -hasLocation(#20229,#20037) -enclosing_stmt(#20229,#20226) -expr_containers(#20229,#20001) -literals("A","A",#20229) -decl(#20229,#20222) +stmts(#20227,18,#20001,0,"declare var A : any;") +hasLocation(#20227,#20003) +stmt_containers(#20227,#20001) +has_declare_keyword(#20227) +#20228=* +exprs(#20228,64,#20227,0,"A : any") +#20229=@"loc,{#10000},1,13,1,19" +locations_default(#20229,#10000,1,13,1,19) +hasLocation(#20228,#20229) +enclosing_stmt(#20228,#20227) +expr_containers(#20228,#20001) #20230=* -typeexprs(#20230,2,#20227,2,"any") -hasLocation(#20230,#20041) -enclosing_stmt(#20230,#20226) +exprs(#20230,78,#20228,0,"A") +hasLocation(#20230,#20037) +enclosing_stmt(#20230,#20227) expr_containers(#20230,#20001) -literals("any","any",#20230) +literals("A","A",#20230) +decl(#20230,#20222) #20231=* -stmts(#20231,18,#20001,1,"declare var B : any;") -hasLocation(#20231,#20005) -stmt_containers(#20231,#20001) -has_declare_keyword(#20231) +typeexprs(#20231,2,#20228,2,"any") +hasLocation(#20231,#20041) +enclosing_stmt(#20231,#20227) +expr_containers(#20231,#20001) +literals("any","any",#20231) #20232=* -exprs(#20232,64,#20231,0,"B : any") -#20233=@"loc,{#10000},2,13,2,19" -locations_default(#20233,#10000,2,13,2,19) -hasLocation(#20232,#20233) -enclosing_stmt(#20232,#20231) -expr_containers(#20232,#20001) -#20234=* -exprs(#20234,78,#20232,0,"B") -hasLocation(#20234,#20049) -enclosing_stmt(#20234,#20231) -expr_containers(#20234,#20001) -literals("B","B",#20234) -decl(#20234,#20223) +stmts(#20232,18,#20001,1,"declare var B : any;") +hasLocation(#20232,#20005) +stmt_containers(#20232,#20001) +has_declare_keyword(#20232) +#20233=* +exprs(#20233,64,#20232,0,"B : any") +#20234=@"loc,{#10000},2,13,2,19" +locations_default(#20234,#10000,2,13,2,19) +hasLocation(#20233,#20234) +enclosing_stmt(#20233,#20232) +expr_containers(#20233,#20001) #20235=* -typeexprs(#20235,2,#20232,2,"any") -hasLocation(#20235,#20053) -enclosing_stmt(#20235,#20231) +exprs(#20235,78,#20233,0,"B") +hasLocation(#20235,#20049) +enclosing_stmt(#20235,#20232) expr_containers(#20235,#20001) -literals("any","any",#20235) +literals("B","B",#20235) +decl(#20235,#20223) #20236=* -stmts(#20236,18,#20001,2,"declare var C : any;") -hasLocation(#20236,#20007) -stmt_containers(#20236,#20001) -has_declare_keyword(#20236) +typeexprs(#20236,2,#20233,2,"any") +hasLocation(#20236,#20053) +enclosing_stmt(#20236,#20232) +expr_containers(#20236,#20001) +literals("any","any",#20236) #20237=* -exprs(#20237,64,#20236,0,"C : any") -#20238=@"loc,{#10000},3,13,3,19" -locations_default(#20238,#10000,3,13,3,19) -hasLocation(#20237,#20238) -enclosing_stmt(#20237,#20236) -expr_containers(#20237,#20001) -#20239=* -exprs(#20239,78,#20237,0,"C") -hasLocation(#20239,#20061) -enclosing_stmt(#20239,#20236) -expr_containers(#20239,#20001) -literals("C","C",#20239) -decl(#20239,#20224) +stmts(#20237,18,#20001,2,"declare var C : any;") +hasLocation(#20237,#20007) +stmt_containers(#20237,#20001) +has_declare_keyword(#20237) +#20238=* +exprs(#20238,64,#20237,0,"C : any") +#20239=@"loc,{#10000},3,13,3,19" +locations_default(#20239,#10000,3,13,3,19) +hasLocation(#20238,#20239) +enclosing_stmt(#20238,#20237) +expr_containers(#20238,#20001) #20240=* -typeexprs(#20240,2,#20237,2,"any") -hasLocation(#20240,#20065) -enclosing_stmt(#20240,#20236) +exprs(#20240,78,#20238,0,"C") +hasLocation(#20240,#20061) +enclosing_stmt(#20240,#20237) expr_containers(#20240,#20001) -literals("any","any",#20240) +literals("C","C",#20240) +decl(#20240,#20224) #20241=* -stmts(#20241,26,#20001,3,"class C ... c) {}\n}") -#20242=@"loc,{#10000},5,1,15,1" -locations_default(#20242,#10000,5,1,15,1) -hasLocation(#20241,#20242) -stmt_containers(#20241,#20001) -#20243=* -exprs(#20243,78,#20241,0,"C") -hasLocation(#20243,#20071) -enclosing_stmt(#20243,#20241) -expr_containers(#20243,#20001) -literals("C","C",#20243) -decl(#20243,#20224) -typedecl(#20243,#20225) +typeexprs(#20241,2,#20238,2,"any") +hasLocation(#20241,#20065) +enclosing_stmt(#20241,#20237) +expr_containers(#20241,#20001) +literals("any","any",#20241) +#20242=* +stmts(#20242,26,#20001,3,"class C ... c) {}\n}") +#20243=@"loc,{#10000},5,1,15,1" +locations_default(#20243,#10000,5,1,15,1) +hasLocation(#20242,#20243) +stmt_containers(#20242,#20001) #20244=* -scopes(#20244,10) -scopenodes(#20241,#20244) -scopenesting(#20244,#20000) +exprs(#20244,78,#20242,0,"C") +hasLocation(#20244,#20071) +enclosing_stmt(#20244,#20242) +expr_containers(#20244,#20001) +literals("C","C",#20244) +decl(#20244,#20224) +typedecl(#20244,#20225) #20245=* -properties(#20245,#20241,2,0,"m1(none) {}") -#20246=@"loc,{#10000},6,3,6,13" -locations_default(#20246,#10000,6,3,6,13) -hasLocation(#20245,#20246) +scopes(#20245,10) +scopenodes(#20242,#20245) +scopenesting(#20245,#20000) +#20246=@"var;{this};{#20245}" +variables(#20246,"this",#20245) #20247=* -exprs(#20247,0,#20245,0,"m1") -hasLocation(#20247,#20075) -enclosing_stmt(#20247,#20241) -expr_containers(#20247,#20001) -literals("m1","m1",#20247) -#20248=* -exprs(#20248,9,#20245,1,"m1(none) {}") -hasLocation(#20248,#20246) -enclosing_stmt(#20248,#20241) -expr_containers(#20248,#20001) +properties(#20247,#20242,2,0,"m1(none) {}") +#20248=@"loc,{#10000},6,3,6,13" +locations_default(#20248,#10000,6,3,6,13) +hasLocation(#20247,#20248) #20249=* -scopes(#20249,1) -scopenodes(#20248,#20249) -scopenesting(#20249,#20244) -#20250=@"var;{none};{#20249}" -variables(#20250,"none",#20249) +exprs(#20249,0,#20247,0,"m1") +hasLocation(#20249,#20075) +enclosing_stmt(#20249,#20242) +expr_containers(#20249,#20001) +literals("m1","m1",#20249) +#20250=* +exprs(#20250,9,#20247,1,"m1(none) {}") +hasLocation(#20250,#20248) +enclosing_stmt(#20250,#20242) +expr_containers(#20250,#20001) #20251=* -exprs(#20251,78,#20248,0,"none") -hasLocation(#20251,#20079) -expr_containers(#20251,#20248) -literals("none","none",#20251) -decl(#20251,#20250) -#20252=@"var;{arguments};{#20249}" -variables(#20252,"arguments",#20249) -is_arguments_object(#20252) -#20253=* -stmts(#20253,1,#20248,-2,"{}") -#20254=@"loc,{#10000},6,12,6,13" -locations_default(#20254,#10000,6,12,6,13) -hasLocation(#20253,#20254) -stmt_containers(#20253,#20248) -is_method(#20245) -#20255=* -properties(#20255,#20241,3,0,"m2(@A a) {}") -#20256=@"loc,{#10000},7,3,7,13" -locations_default(#20256,#10000,7,3,7,13) -hasLocation(#20255,#20256) -#20257=* -exprs(#20257,0,#20255,0,"m2") -hasLocation(#20257,#20087) -enclosing_stmt(#20257,#20241) -expr_containers(#20257,#20001) -literals("m2","m2",#20257) +scopes(#20251,1) +scopenodes(#20250,#20251) +scopenesting(#20251,#20245) +#20252=@"var;{this};{#20251}" +variables(#20252,"this",#20251) +#20253=@"var;{none};{#20251}" +variables(#20253,"none",#20251) +#20254=* +exprs(#20254,78,#20250,0,"none") +hasLocation(#20254,#20079) +expr_containers(#20254,#20250) +literals("none","none",#20254) +decl(#20254,#20253) +#20255=@"var;{arguments};{#20251}" +variables(#20255,"arguments",#20251) +is_arguments_object(#20255) +#20256=* +stmts(#20256,1,#20250,-2,"{}") +#20257=@"loc,{#10000},6,12,6,13" +locations_default(#20257,#10000,6,12,6,13) +hasLocation(#20256,#20257) +stmt_containers(#20256,#20250) +is_method(#20247) #20258=* -exprs(#20258,9,#20255,1,"m2(@A a) {}") -hasLocation(#20258,#20256) -enclosing_stmt(#20258,#20241) -expr_containers(#20258,#20001) -#20259=* -scopes(#20259,1) -scopenodes(#20258,#20259) -scopenesting(#20259,#20244) -#20260=@"var;{a};{#20259}" -variables(#20260,"a",#20259) +properties(#20258,#20242,3,0,"m2(@A a) {}") +#20259=@"loc,{#10000},7,3,7,13" +locations_default(#20259,#10000,7,3,7,13) +hasLocation(#20258,#20259) +#20260=* +exprs(#20260,0,#20258,0,"m2") +hasLocation(#20260,#20087) +enclosing_stmt(#20260,#20242) +expr_containers(#20260,#20001) +literals("m2","m2",#20260) #20261=* -exprs(#20261,78,#20258,0,"a") -hasLocation(#20261,#20095) -expr_containers(#20261,#20258) -literals("a","a",#20261) -decl(#20261,#20260) -#20262=@"var;{arguments};{#20259}" -variables(#20262,"arguments",#20259) -is_arguments_object(#20262) -#20263=* -exprs(#20263,104,#20258,-8,"@A") -#20264=@"loc,{#10000},7,6,7,7" -locations_default(#20264,#10000,7,6,7,7) -hasLocation(#20263,#20264) -expr_containers(#20263,#20258) +exprs(#20261,9,#20258,1,"m2(@A a) {}") +hasLocation(#20261,#20259) +enclosing_stmt(#20261,#20242) +expr_containers(#20261,#20001) +#20262=* +scopes(#20262,1) +scopenodes(#20261,#20262) +scopenesting(#20262,#20245) +#20263=@"var;{this};{#20262}" +variables(#20263,"this",#20262) +#20264=@"var;{a};{#20262}" +variables(#20264,"a",#20262) #20265=* -exprs(#20265,94,#20263,0,"@A") -hasLocation(#20265,#20264) -expr_containers(#20265,#20258) -#20266=* -exprs(#20266,79,#20265,0,"A") -hasLocation(#20266,#20093) -expr_containers(#20266,#20258) -literals("A","A",#20266) -bind(#20266,#20222) +exprs(#20265,78,#20261,0,"a") +hasLocation(#20265,#20095) +expr_containers(#20265,#20261) +literals("a","a",#20265) +decl(#20265,#20264) +#20266=@"var;{arguments};{#20262}" +variables(#20266,"arguments",#20262) +is_arguments_object(#20266) #20267=* -stmts(#20267,1,#20258,-2,"{}") -#20268=@"loc,{#10000},7,12,7,13" -locations_default(#20268,#10000,7,12,7,13) +exprs(#20267,104,#20261,-8,"@A") +#20268=@"loc,{#10000},7,6,7,7" +locations_default(#20268,#10000,7,6,7,7) hasLocation(#20267,#20268) -stmt_containers(#20267,#20258) -is_method(#20255) +expr_containers(#20267,#20261) #20269=* -properties(#20269,#20241,4,0,"m3(@A @B ab) {}") -#20270=@"loc,{#10000},8,3,8,17" -locations_default(#20270,#10000,8,3,8,17) -hasLocation(#20269,#20270) +exprs(#20269,94,#20267,0,"@A") +hasLocation(#20269,#20268) +expr_containers(#20269,#20261) +#20270=* +exprs(#20270,79,#20269,0,"A") +hasLocation(#20270,#20093) +expr_containers(#20270,#20261) +literals("A","A",#20270) +bind(#20270,#20222) #20271=* -exprs(#20271,0,#20269,0,"m3") -hasLocation(#20271,#20103) -enclosing_stmt(#20271,#20241) -expr_containers(#20271,#20001) -literals("m3","m3",#20271) -#20272=* -exprs(#20272,9,#20269,1,"m3(@A @B ab) {}") -hasLocation(#20272,#20270) -enclosing_stmt(#20272,#20241) -expr_containers(#20272,#20001) +stmts(#20271,1,#20261,-2,"{}") +#20272=@"loc,{#10000},7,12,7,13" +locations_default(#20272,#10000,7,12,7,13) +hasLocation(#20271,#20272) +stmt_containers(#20271,#20261) +is_method(#20258) #20273=* -scopes(#20273,1) -scopenodes(#20272,#20273) -scopenesting(#20273,#20244) -#20274=@"var;{ab};{#20273}" -variables(#20274,"ab",#20273) +properties(#20273,#20242,4,0,"m3(@A @B ab) {}") +#20274=@"loc,{#10000},8,3,8,17" +locations_default(#20274,#10000,8,3,8,17) +hasLocation(#20273,#20274) #20275=* -exprs(#20275,78,#20272,0,"ab") -hasLocation(#20275,#20115) -expr_containers(#20275,#20272) -literals("ab","ab",#20275) -decl(#20275,#20274) -#20276=@"var;{arguments};{#20273}" -variables(#20276,"arguments",#20273) -is_arguments_object(#20276) +exprs(#20275,0,#20273,0,"m3") +hasLocation(#20275,#20103) +enclosing_stmt(#20275,#20242) +expr_containers(#20275,#20001) +literals("m3","m3",#20275) +#20276=* +exprs(#20276,9,#20273,1,"m3(@A @B ab) {}") +hasLocation(#20276,#20274) +enclosing_stmt(#20276,#20242) +expr_containers(#20276,#20001) #20277=* -exprs(#20277,104,#20272,-8,"@A @B") -#20278=@"loc,{#10000},8,6,8,10" -locations_default(#20278,#10000,8,6,8,10) -hasLocation(#20277,#20278) -expr_containers(#20277,#20272) -#20279=* -exprs(#20279,94,#20277,0,"@A") -#20280=@"loc,{#10000},8,6,8,7" -locations_default(#20280,#10000,8,6,8,7) -hasLocation(#20279,#20280) -expr_containers(#20279,#20272) -#20281=* -exprs(#20281,79,#20279,0,"A") -hasLocation(#20281,#20109) -expr_containers(#20281,#20272) -literals("A","A",#20281) -bind(#20281,#20222) +scopes(#20277,1) +scopenodes(#20276,#20277) +scopenesting(#20277,#20245) +#20278=@"var;{this};{#20277}" +variables(#20278,"this",#20277) +#20279=@"var;{ab};{#20277}" +variables(#20279,"ab",#20277) +#20280=* +exprs(#20280,78,#20276,0,"ab") +hasLocation(#20280,#20115) +expr_containers(#20280,#20276) +literals("ab","ab",#20280) +decl(#20280,#20279) +#20281=@"var;{arguments};{#20277}" +variables(#20281,"arguments",#20277) +is_arguments_object(#20281) #20282=* -exprs(#20282,94,#20277,1,"@B") -#20283=@"loc,{#10000},8,9,8,10" -locations_default(#20283,#10000,8,9,8,10) +exprs(#20282,104,#20276,-8,"@A @B") +#20283=@"loc,{#10000},8,6,8,10" +locations_default(#20283,#10000,8,6,8,10) hasLocation(#20282,#20283) -expr_containers(#20282,#20272) +expr_containers(#20282,#20276) #20284=* -exprs(#20284,79,#20282,0,"B") -hasLocation(#20284,#20113) -expr_containers(#20284,#20272) -literals("B","B",#20284) -bind(#20284,#20223) -#20285=* -stmts(#20285,1,#20272,-2,"{}") -#20286=@"loc,{#10000},8,16,8,17" -locations_default(#20286,#10000,8,16,8,17) -hasLocation(#20285,#20286) -stmt_containers(#20285,#20272) -is_method(#20269) +exprs(#20284,94,#20282,0,"@A") +#20285=@"loc,{#10000},8,6,8,7" +locations_default(#20285,#10000,8,6,8,7) +hasLocation(#20284,#20285) +expr_containers(#20284,#20276) +#20286=* +exprs(#20286,79,#20284,0,"A") +hasLocation(#20286,#20109) +expr_containers(#20286,#20276) +literals("A","A",#20286) +bind(#20286,#20222) #20287=* -properties(#20287,#20241,5,0,"m4(none, @A a) {}") -#20288=@"loc,{#10000},10,3,10,19" -locations_default(#20288,#10000,10,3,10,19) +exprs(#20287,94,#20282,1,"@B") +#20288=@"loc,{#10000},8,9,8,10" +locations_default(#20288,#10000,8,9,8,10) hasLocation(#20287,#20288) +expr_containers(#20287,#20276) #20289=* -exprs(#20289,0,#20287,0,"m4") -hasLocation(#20289,#20123) -enclosing_stmt(#20289,#20241) -expr_containers(#20289,#20001) -literals("m4","m4",#20289) +exprs(#20289,79,#20287,0,"B") +hasLocation(#20289,#20113) +expr_containers(#20289,#20276) +literals("B","B",#20289) +bind(#20289,#20223) #20290=* -exprs(#20290,9,#20287,1,"m4(none, @A a) {}") -hasLocation(#20290,#20288) -enclosing_stmt(#20290,#20241) -expr_containers(#20290,#20001) -#20291=* -scopes(#20291,1) -scopenodes(#20290,#20291) -scopenesting(#20291,#20244) -#20292=@"var;{none};{#20291}" -variables(#20292,"none",#20291) -#20293=* -exprs(#20293,78,#20290,0,"none") -hasLocation(#20293,#20127) -expr_containers(#20293,#20290) -literals("none","none",#20293) -decl(#20293,#20292) -#20294=@"var;{a};{#20291}" -variables(#20294,"a",#20291) +stmts(#20290,1,#20276,-2,"{}") +#20291=@"loc,{#10000},8,16,8,17" +locations_default(#20291,#10000,8,16,8,17) +hasLocation(#20290,#20291) +stmt_containers(#20290,#20276) +is_method(#20273) +#20292=* +properties(#20292,#20242,5,0,"m4(none, @A a) {}") +#20293=@"loc,{#10000},10,3,10,19" +locations_default(#20293,#10000,10,3,10,19) +hasLocation(#20292,#20293) +#20294=* +exprs(#20294,0,#20292,0,"m4") +hasLocation(#20294,#20123) +enclosing_stmt(#20294,#20242) +expr_containers(#20294,#20001) +literals("m4","m4",#20294) #20295=* -exprs(#20295,78,#20290,1,"a") -hasLocation(#20295,#20135) -expr_containers(#20295,#20290) -literals("a","a",#20295) -decl(#20295,#20294) -#20296=@"var;{arguments};{#20291}" -variables(#20296,"arguments",#20291) -is_arguments_object(#20296) -#20297=* -exprs(#20297,104,#20290,-12,"@A") -#20298=@"loc,{#10000},10,12,10,13" -locations_default(#20298,#10000,10,12,10,13) -hasLocation(#20297,#20298) -expr_containers(#20297,#20290) +exprs(#20295,9,#20292,1,"m4(none, @A a) {}") +hasLocation(#20295,#20293) +enclosing_stmt(#20295,#20242) +expr_containers(#20295,#20001) +#20296=* +scopes(#20296,1) +scopenodes(#20295,#20296) +scopenesting(#20296,#20245) +#20297=@"var;{this};{#20296}" +variables(#20297,"this",#20296) +#20298=@"var;{none};{#20296}" +variables(#20298,"none",#20296) #20299=* -exprs(#20299,94,#20297,0,"@A") -hasLocation(#20299,#20298) -expr_containers(#20299,#20290) -#20300=* -exprs(#20300,79,#20299,0,"A") -hasLocation(#20300,#20133) -expr_containers(#20300,#20290) -literals("A","A",#20300) -bind(#20300,#20222) +exprs(#20299,78,#20295,0,"none") +hasLocation(#20299,#20127) +expr_containers(#20299,#20295) +literals("none","none",#20299) +decl(#20299,#20298) +#20300=@"var;{a};{#20296}" +variables(#20300,"a",#20296) #20301=* -stmts(#20301,1,#20290,-2,"{}") -#20302=@"loc,{#10000},10,18,10,19" -locations_default(#20302,#10000,10,18,10,19) -hasLocation(#20301,#20302) -stmt_containers(#20301,#20290) -is_method(#20287) +exprs(#20301,78,#20295,1,"a") +hasLocation(#20301,#20135) +expr_containers(#20301,#20295) +literals("a","a",#20301) +decl(#20301,#20300) +#20302=@"var;{arguments};{#20296}" +variables(#20302,"arguments",#20296) +is_arguments_object(#20302) #20303=* -properties(#20303,#20241,6,0,"m5(none ... ab) {}") -#20304=@"loc,{#10000},11,3,11,23" -locations_default(#20304,#10000,11,3,11,23) +exprs(#20303,104,#20295,-12,"@A") +#20304=@"loc,{#10000},10,12,10,13" +locations_default(#20304,#10000,10,12,10,13) hasLocation(#20303,#20304) +expr_containers(#20303,#20295) #20305=* -exprs(#20305,0,#20303,0,"m5") -hasLocation(#20305,#20143) -enclosing_stmt(#20305,#20241) -expr_containers(#20305,#20001) -literals("m5","m5",#20305) +exprs(#20305,94,#20303,0,"@A") +hasLocation(#20305,#20304) +expr_containers(#20305,#20295) #20306=* -exprs(#20306,9,#20303,1,"m5(none ... ab) {}") -hasLocation(#20306,#20304) -enclosing_stmt(#20306,#20241) -expr_containers(#20306,#20001) +exprs(#20306,79,#20305,0,"A") +hasLocation(#20306,#20133) +expr_containers(#20306,#20295) +literals("A","A",#20306) +bind(#20306,#20222) #20307=* -scopes(#20307,1) -scopenodes(#20306,#20307) -scopenesting(#20307,#20244) -#20308=@"var;{none};{#20307}" -variables(#20308,"none",#20307) +stmts(#20307,1,#20295,-2,"{}") +#20308=@"loc,{#10000},10,18,10,19" +locations_default(#20308,#10000,10,18,10,19) +hasLocation(#20307,#20308) +stmt_containers(#20307,#20295) +is_method(#20292) #20309=* -exprs(#20309,78,#20306,0,"none") -hasLocation(#20309,#20147) -expr_containers(#20309,#20306) -literals("none","none",#20309) -decl(#20309,#20308) -#20310=@"var;{ab};{#20307}" -variables(#20310,"ab",#20307) +properties(#20309,#20242,6,0,"m5(none ... ab) {}") +#20310=@"loc,{#10000},11,3,11,23" +locations_default(#20310,#10000,11,3,11,23) +hasLocation(#20309,#20310) #20311=* -exprs(#20311,78,#20306,1,"ab") -hasLocation(#20311,#20159) -expr_containers(#20311,#20306) -literals("ab","ab",#20311) -decl(#20311,#20310) -#20312=@"var;{arguments};{#20307}" -variables(#20312,"arguments",#20307) -is_arguments_object(#20312) +exprs(#20311,0,#20309,0,"m5") +hasLocation(#20311,#20143) +enclosing_stmt(#20311,#20242) +expr_containers(#20311,#20001) +literals("m5","m5",#20311) +#20312=* +exprs(#20312,9,#20309,1,"m5(none ... ab) {}") +hasLocation(#20312,#20310) +enclosing_stmt(#20312,#20242) +expr_containers(#20312,#20001) #20313=* -exprs(#20313,104,#20306,-12,"@A @B") -#20314=@"loc,{#10000},11,12,11,16" -locations_default(#20314,#10000,11,12,11,16) -hasLocation(#20313,#20314) -expr_containers(#20313,#20306) -#20315=* -exprs(#20315,94,#20313,0,"@A") -#20316=@"loc,{#10000},11,12,11,13" -locations_default(#20316,#10000,11,12,11,13) -hasLocation(#20315,#20316) -expr_containers(#20315,#20306) -#20317=* -exprs(#20317,79,#20315,0,"A") -hasLocation(#20317,#20153) -expr_containers(#20317,#20306) -literals("A","A",#20317) -bind(#20317,#20222) +scopes(#20313,1) +scopenodes(#20312,#20313) +scopenesting(#20313,#20245) +#20314=@"var;{this};{#20313}" +variables(#20314,"this",#20313) +#20315=@"var;{none};{#20313}" +variables(#20315,"none",#20313) +#20316=* +exprs(#20316,78,#20312,0,"none") +hasLocation(#20316,#20147) +expr_containers(#20316,#20312) +literals("none","none",#20316) +decl(#20316,#20315) +#20317=@"var;{ab};{#20313}" +variables(#20317,"ab",#20313) #20318=* -exprs(#20318,94,#20313,1,"@B") -#20319=@"loc,{#10000},11,15,11,16" -locations_default(#20319,#10000,11,15,11,16) -hasLocation(#20318,#20319) -expr_containers(#20318,#20306) +exprs(#20318,78,#20312,1,"ab") +hasLocation(#20318,#20159) +expr_containers(#20318,#20312) +literals("ab","ab",#20318) +decl(#20318,#20317) +#20319=@"var;{arguments};{#20313}" +variables(#20319,"arguments",#20313) +is_arguments_object(#20319) #20320=* -exprs(#20320,79,#20318,0,"B") -hasLocation(#20320,#20157) -expr_containers(#20320,#20306) -literals("B","B",#20320) -bind(#20320,#20223) -#20321=* -stmts(#20321,1,#20306,-2,"{}") -#20322=@"loc,{#10000},11,22,11,23" -locations_default(#20322,#10000,11,22,11,23) -hasLocation(#20321,#20322) -stmt_containers(#20321,#20306) -is_method(#20303) -#20323=* -properties(#20323,#20241,7,0,"m6(@A a, @B b) {}") -#20324=@"loc,{#10000},13,3,13,19" -locations_default(#20324,#10000,13,3,13,19) -hasLocation(#20323,#20324) +exprs(#20320,104,#20312,-12,"@A @B") +#20321=@"loc,{#10000},11,12,11,16" +locations_default(#20321,#10000,11,12,11,16) +hasLocation(#20320,#20321) +expr_containers(#20320,#20312) +#20322=* +exprs(#20322,94,#20320,0,"@A") +#20323=@"loc,{#10000},11,12,11,13" +locations_default(#20323,#10000,11,12,11,13) +hasLocation(#20322,#20323) +expr_containers(#20322,#20312) +#20324=* +exprs(#20324,79,#20322,0,"A") +hasLocation(#20324,#20153) +expr_containers(#20324,#20312) +literals("A","A",#20324) +bind(#20324,#20222) #20325=* -exprs(#20325,0,#20323,0,"m6") -hasLocation(#20325,#20167) -enclosing_stmt(#20325,#20241) -expr_containers(#20325,#20001) -literals("m6","m6",#20325) -#20326=* -exprs(#20326,9,#20323,1,"m6(@A a, @B b) {}") -hasLocation(#20326,#20324) -enclosing_stmt(#20326,#20241) -expr_containers(#20326,#20001) +exprs(#20325,94,#20320,1,"@B") +#20326=@"loc,{#10000},11,15,11,16" +locations_default(#20326,#10000,11,15,11,16) +hasLocation(#20325,#20326) +expr_containers(#20325,#20312) #20327=* -scopes(#20327,1) -scopenodes(#20326,#20327) -scopenesting(#20327,#20244) -#20328=@"var;{a};{#20327}" -variables(#20328,"a",#20327) -#20329=* -exprs(#20329,78,#20326,0,"a") -hasLocation(#20329,#20175) -expr_containers(#20329,#20326) -literals("a","a",#20329) -decl(#20329,#20328) -#20330=@"var;{b};{#20327}" -variables(#20330,"b",#20327) -#20331=* -exprs(#20331,78,#20326,1,"b") -hasLocation(#20331,#20183) -expr_containers(#20331,#20326) -literals("b","b",#20331) -decl(#20331,#20330) -#20332=@"var;{arguments};{#20327}" -variables(#20332,"arguments",#20327) -is_arguments_object(#20332) +exprs(#20327,79,#20325,0,"B") +hasLocation(#20327,#20157) +expr_containers(#20327,#20312) +literals("B","B",#20327) +bind(#20327,#20223) +#20328=* +stmts(#20328,1,#20312,-2,"{}") +#20329=@"loc,{#10000},11,22,11,23" +locations_default(#20329,#10000,11,22,11,23) +hasLocation(#20328,#20329) +stmt_containers(#20328,#20312) +is_method(#20309) +#20330=* +properties(#20330,#20242,7,0,"m6(@A a, @B b) {}") +#20331=@"loc,{#10000},13,3,13,19" +locations_default(#20331,#10000,13,3,13,19) +hasLocation(#20330,#20331) +#20332=* +exprs(#20332,0,#20330,0,"m6") +hasLocation(#20332,#20167) +enclosing_stmt(#20332,#20242) +expr_containers(#20332,#20001) +literals("m6","m6",#20332) #20333=* -exprs(#20333,104,#20326,-8,"@A") -#20334=@"loc,{#10000},13,6,13,7" -locations_default(#20334,#10000,13,6,13,7) -hasLocation(#20333,#20334) -expr_containers(#20333,#20326) -#20335=* -exprs(#20335,94,#20333,0,"@A") -hasLocation(#20335,#20334) -expr_containers(#20335,#20326) -#20336=* -exprs(#20336,79,#20335,0,"A") -hasLocation(#20336,#20173) -expr_containers(#20336,#20326) -literals("A","A",#20336) -bind(#20336,#20222) +exprs(#20333,9,#20330,1,"m6(@A a, @B b) {}") +hasLocation(#20333,#20331) +enclosing_stmt(#20333,#20242) +expr_containers(#20333,#20001) +#20334=* +scopes(#20334,1) +scopenodes(#20333,#20334) +scopenesting(#20334,#20245) +#20335=@"var;{this};{#20334}" +variables(#20335,"this",#20334) +#20336=@"var;{a};{#20334}" +variables(#20336,"a",#20334) #20337=* -exprs(#20337,104,#20326,-12,"@B") -#20338=@"loc,{#10000},13,12,13,13" -locations_default(#20338,#10000,13,12,13,13) -hasLocation(#20337,#20338) -expr_containers(#20337,#20326) +exprs(#20337,78,#20333,0,"a") +hasLocation(#20337,#20175) +expr_containers(#20337,#20333) +literals("a","a",#20337) +decl(#20337,#20336) +#20338=@"var;{b};{#20334}" +variables(#20338,"b",#20334) #20339=* -exprs(#20339,94,#20337,0,"@B") -hasLocation(#20339,#20338) -expr_containers(#20339,#20326) -#20340=* -exprs(#20340,79,#20339,0,"B") -hasLocation(#20340,#20181) -expr_containers(#20340,#20326) -literals("B","B",#20340) -bind(#20340,#20223) +exprs(#20339,78,#20333,1,"b") +hasLocation(#20339,#20183) +expr_containers(#20339,#20333) +literals("b","b",#20339) +decl(#20339,#20338) +#20340=@"var;{arguments};{#20334}" +variables(#20340,"arguments",#20334) +is_arguments_object(#20340) #20341=* -stmts(#20341,1,#20326,-2,"{}") -#20342=@"loc,{#10000},13,18,13,19" -locations_default(#20342,#10000,13,18,13,19) +exprs(#20341,104,#20333,-8,"@A") +#20342=@"loc,{#10000},13,6,13,7" +locations_default(#20342,#10000,13,6,13,7) hasLocation(#20341,#20342) -stmt_containers(#20341,#20326) -is_method(#20323) +expr_containers(#20341,#20333) #20343=* -properties(#20343,#20241,8,0,"m7(@A a ... bc) {}") -#20344=@"loc,{#10000},14,3,14,23" -locations_default(#20344,#10000,14,3,14,23) -hasLocation(#20343,#20344) +exprs(#20343,94,#20341,0,"@A") +hasLocation(#20343,#20342) +expr_containers(#20343,#20333) +#20344=* +exprs(#20344,79,#20343,0,"A") +hasLocation(#20344,#20173) +expr_containers(#20344,#20333) +literals("A","A",#20344) +bind(#20344,#20222) #20345=* -exprs(#20345,0,#20343,0,"m7") -hasLocation(#20345,#20191) -enclosing_stmt(#20345,#20241) -expr_containers(#20345,#20001) -literals("m7","m7",#20345) -#20346=* -exprs(#20346,9,#20343,1,"m7(@A a ... bc) {}") -hasLocation(#20346,#20344) -enclosing_stmt(#20346,#20241) -expr_containers(#20346,#20001) +exprs(#20345,104,#20333,-12,"@B") +#20346=@"loc,{#10000},13,12,13,13" +locations_default(#20346,#10000,13,12,13,13) +hasLocation(#20345,#20346) +expr_containers(#20345,#20333) #20347=* -scopes(#20347,1) -scopenodes(#20346,#20347) -scopenesting(#20347,#20244) -#20348=@"var;{a};{#20347}" -variables(#20348,"a",#20347) +exprs(#20347,94,#20345,0,"@B") +hasLocation(#20347,#20346) +expr_containers(#20347,#20333) +#20348=* +exprs(#20348,79,#20347,0,"B") +hasLocation(#20348,#20181) +expr_containers(#20348,#20333) +literals("B","B",#20348) +bind(#20348,#20223) #20349=* -exprs(#20349,78,#20346,0,"a") -hasLocation(#20349,#20199) -expr_containers(#20349,#20346) -literals("a","a",#20349) -decl(#20349,#20348) -#20350=@"var;{bc};{#20347}" -variables(#20350,"bc",#20347) +stmts(#20349,1,#20333,-2,"{}") +#20350=@"loc,{#10000},13,18,13,19" +locations_default(#20350,#10000,13,18,13,19) +hasLocation(#20349,#20350) +stmt_containers(#20349,#20333) +is_method(#20330) #20351=* -exprs(#20351,78,#20346,1,"bc") -hasLocation(#20351,#20211) -expr_containers(#20351,#20346) -literals("bc","bc",#20351) -decl(#20351,#20350) -#20352=@"var;{arguments};{#20347}" -variables(#20352,"arguments",#20347) -is_arguments_object(#20352) +properties(#20351,#20242,8,0,"m7(@A a ... bc) {}") +#20352=@"loc,{#10000},14,3,14,23" +locations_default(#20352,#10000,14,3,14,23) +hasLocation(#20351,#20352) #20353=* -exprs(#20353,104,#20346,-8,"@A") -#20354=@"loc,{#10000},14,6,14,7" -locations_default(#20354,#10000,14,6,14,7) -hasLocation(#20353,#20354) -expr_containers(#20353,#20346) +exprs(#20353,0,#20351,0,"m7") +hasLocation(#20353,#20191) +enclosing_stmt(#20353,#20242) +expr_containers(#20353,#20001) +literals("m7","m7",#20353) +#20354=* +exprs(#20354,9,#20351,1,"m7(@A a ... bc) {}") +hasLocation(#20354,#20352) +enclosing_stmt(#20354,#20242) +expr_containers(#20354,#20001) #20355=* -exprs(#20355,94,#20353,0,"@A") -hasLocation(#20355,#20354) -expr_containers(#20355,#20346) -#20356=* -exprs(#20356,79,#20355,0,"A") -hasLocation(#20356,#20197) -expr_containers(#20356,#20346) -literals("A","A",#20356) -bind(#20356,#20222) -#20357=* -exprs(#20357,104,#20346,-12,"@B @C") -#20358=@"loc,{#10000},14,12,14,16" -locations_default(#20358,#10000,14,12,14,16) -hasLocation(#20357,#20358) -expr_containers(#20357,#20346) -#20359=* -exprs(#20359,94,#20357,0,"@B") -#20360=@"loc,{#10000},14,12,14,13" -locations_default(#20360,#10000,14,12,14,13) -hasLocation(#20359,#20360) -expr_containers(#20359,#20346) -#20361=* -exprs(#20361,79,#20359,0,"B") -hasLocation(#20361,#20205) -expr_containers(#20361,#20346) -literals("B","B",#20361) -bind(#20361,#20223) +scopes(#20355,1) +scopenodes(#20354,#20355) +scopenesting(#20355,#20245) +#20356=@"var;{this};{#20355}" +variables(#20356,"this",#20355) +#20357=@"var;{a};{#20355}" +variables(#20357,"a",#20355) +#20358=* +exprs(#20358,78,#20354,0,"a") +hasLocation(#20358,#20199) +expr_containers(#20358,#20354) +literals("a","a",#20358) +decl(#20358,#20357) +#20359=@"var;{bc};{#20355}" +variables(#20359,"bc",#20355) +#20360=* +exprs(#20360,78,#20354,1,"bc") +hasLocation(#20360,#20211) +expr_containers(#20360,#20354) +literals("bc","bc",#20360) +decl(#20360,#20359) +#20361=@"var;{arguments};{#20355}" +variables(#20361,"arguments",#20355) +is_arguments_object(#20361) #20362=* -exprs(#20362,94,#20357,1,"@C") -#20363=@"loc,{#10000},14,15,14,16" -locations_default(#20363,#10000,14,15,14,16) +exprs(#20362,104,#20354,-8,"@A") +#20363=@"loc,{#10000},14,6,14,7" +locations_default(#20363,#10000,14,6,14,7) hasLocation(#20362,#20363) -expr_containers(#20362,#20346) +expr_containers(#20362,#20354) #20364=* -exprs(#20364,79,#20362,0,"C") -hasLocation(#20364,#20209) -expr_containers(#20364,#20346) -literals("C","C",#20364) -bind(#20364,#20224) +exprs(#20364,94,#20362,0,"@A") +hasLocation(#20364,#20363) +expr_containers(#20364,#20354) #20365=* -stmts(#20365,1,#20346,-2,"{}") -#20366=@"loc,{#10000},14,22,14,23" -locations_default(#20366,#10000,14,22,14,23) -hasLocation(#20365,#20366) -stmt_containers(#20365,#20346) -is_method(#20343) -#20367=* -properties(#20367,#20241,9,0,"constructor() {}") -#20368=@"loc,{#10000},5,9,5,8" -locations_default(#20368,#10000,5,9,5,8) -hasLocation(#20367,#20368) -#20369=* -exprs(#20369,0,#20367,0,"constructor") -hasLocation(#20369,#20368) -enclosing_stmt(#20369,#20241) -expr_containers(#20369,#20001) -literals("constructor","constructor",#20369) +exprs(#20365,79,#20364,0,"A") +hasLocation(#20365,#20197) +expr_containers(#20365,#20354) +literals("A","A",#20365) +bind(#20365,#20222) +#20366=* +exprs(#20366,104,#20354,-12,"@B @C") +#20367=@"loc,{#10000},14,12,14,16" +locations_default(#20367,#10000,14,12,14,16) +hasLocation(#20366,#20367) +expr_containers(#20366,#20354) +#20368=* +exprs(#20368,94,#20366,0,"@B") +#20369=@"loc,{#10000},14,12,14,13" +locations_default(#20369,#10000,14,12,14,13) +hasLocation(#20368,#20369) +expr_containers(#20368,#20354) #20370=* -exprs(#20370,9,#20367,1,"() {}") -hasLocation(#20370,#20368) -enclosing_stmt(#20370,#20241) -expr_containers(#20370,#20001) +exprs(#20370,79,#20368,0,"B") +hasLocation(#20370,#20205) +expr_containers(#20370,#20354) +literals("B","B",#20370) +bind(#20370,#20223) #20371=* -scopes(#20371,1) -scopenodes(#20370,#20371) -scopenesting(#20371,#20244) -#20372=@"var;{arguments};{#20371}" -variables(#20372,"arguments",#20371) -is_arguments_object(#20372) +exprs(#20371,94,#20366,1,"@C") +#20372=@"loc,{#10000},14,15,14,16" +locations_default(#20372,#10000,14,15,14,16) +hasLocation(#20371,#20372) +expr_containers(#20371,#20354) #20373=* -stmts(#20373,1,#20370,-2,"{}") -hasLocation(#20373,#20368) -stmt_containers(#20373,#20370) -is_method(#20367) +exprs(#20373,79,#20371,0,"C") +hasLocation(#20373,#20209) +expr_containers(#20373,#20354) +literals("C","C",#20373) +bind(#20373,#20224) #20374=* -entry_cfg_node(#20374,#20001) -#20375=@"loc,{#10000},1,1,1,0" -locations_default(#20375,#10000,1,1,1,0) +stmts(#20374,1,#20354,-2,"{}") +#20375=@"loc,{#10000},14,22,14,23" +locations_default(#20375,#10000,14,22,14,23) hasLocation(#20374,#20375) +stmt_containers(#20374,#20354) +is_method(#20351) #20376=* -exit_cfg_node(#20376,#20001) -hasLocation(#20376,#20220) -successor(#20370,#20367) -#20377=* -entry_cfg_node(#20377,#20370) -hasLocation(#20377,#20368) +properties(#20376,#20242,9,0,"constructor() {}") +#20377=@"loc,{#10000},5,9,5,8" +locations_default(#20377,#10000,5,9,5,8) +hasLocation(#20376,#20377) #20378=* -exit_cfg_node(#20378,#20370) -hasLocation(#20378,#20368) -successor(#20373,#20378) -successor(#20377,#20373) -successor(#20369,#20370) -successor(#20367,#20241) -successor(#20346,#20343) +exprs(#20378,0,#20376,0,"constructor") +hasLocation(#20378,#20377) +enclosing_stmt(#20378,#20242) +expr_containers(#20378,#20001) +literals("constructor","constructor",#20378) #20379=* -entry_cfg_node(#20379,#20346) -#20380=@"loc,{#10000},14,3,14,2" -locations_default(#20380,#10000,14,3,14,2) -hasLocation(#20379,#20380) -#20381=* -exit_cfg_node(#20381,#20346) -#20382=@"loc,{#10000},14,24,14,23" -locations_default(#20382,#10000,14,24,14,23) -hasLocation(#20381,#20382) -successor(#20365,#20381) -successor(#20351,#20365) -successor(#20349,#20351) -successor(#20379,#20349) -successor(#20345,#20346) -successor(#20343,#20369) -successor(#20326,#20323) +exprs(#20379,9,#20376,1,"() {}") +hasLocation(#20379,#20377) +enclosing_stmt(#20379,#20242) +expr_containers(#20379,#20001) +#20380=* +scopes(#20380,1) +scopenodes(#20379,#20380) +scopenesting(#20380,#20245) +#20381=@"var;{this};{#20380}" +variables(#20381,"this",#20380) +#20382=@"var;{arguments};{#20380}" +variables(#20382,"arguments",#20380) +is_arguments_object(#20382) #20383=* -entry_cfg_node(#20383,#20326) -#20384=@"loc,{#10000},13,3,13,2" -locations_default(#20384,#10000,13,3,13,2) -hasLocation(#20383,#20384) -#20385=* -exit_cfg_node(#20385,#20326) -#20386=@"loc,{#10000},13,20,13,19" -locations_default(#20386,#10000,13,20,13,19) -hasLocation(#20385,#20386) -successor(#20341,#20385) -successor(#20331,#20341) -successor(#20329,#20331) -successor(#20383,#20329) -successor(#20325,#20326) -successor(#20323,#20345) -successor(#20306,#20303) +stmts(#20383,1,#20379,-2,"{}") +hasLocation(#20383,#20377) +stmt_containers(#20383,#20379) +is_method(#20376) +#20384=* +entry_cfg_node(#20384,#20001) +#20385=@"loc,{#10000},1,1,1,0" +locations_default(#20385,#10000,1,1,1,0) +hasLocation(#20384,#20385) +#20386=* +exit_cfg_node(#20386,#20001) +hasLocation(#20386,#20220) +successor(#20379,#20376) #20387=* -entry_cfg_node(#20387,#20306) -#20388=@"loc,{#10000},11,3,11,2" -locations_default(#20388,#10000,11,3,11,2) -hasLocation(#20387,#20388) +entry_cfg_node(#20387,#20379) +hasLocation(#20387,#20377) +#20388=* +exit_cfg_node(#20388,#20379) +hasLocation(#20388,#20377) +successor(#20383,#20388) +successor(#20387,#20383) +successor(#20378,#20379) +successor(#20376,#20242) +successor(#20354,#20351) #20389=* -exit_cfg_node(#20389,#20306) -#20390=@"loc,{#10000},11,24,11,23" -locations_default(#20390,#10000,11,24,11,23) +entry_cfg_node(#20389,#20354) +#20390=@"loc,{#10000},14,3,14,2" +locations_default(#20390,#10000,14,3,14,2) hasLocation(#20389,#20390) -successor(#20321,#20389) -successor(#20311,#20321) -successor(#20309,#20311) -successor(#20387,#20309) -successor(#20305,#20306) -successor(#20303,#20325) -successor(#20290,#20287) #20391=* -entry_cfg_node(#20391,#20290) -#20392=@"loc,{#10000},10,3,10,2" -locations_default(#20392,#10000,10,3,10,2) +exit_cfg_node(#20391,#20354) +#20392=@"loc,{#10000},14,24,14,23" +locations_default(#20392,#10000,14,24,14,23) hasLocation(#20391,#20392) +successor(#20374,#20391) +successor(#20360,#20374) +successor(#20358,#20360) +successor(#20389,#20358) +successor(#20353,#20354) +successor(#20351,#20378) +successor(#20333,#20330) #20393=* -exit_cfg_node(#20393,#20290) -#20394=@"loc,{#10000},10,20,10,19" -locations_default(#20394,#10000,10,20,10,19) +entry_cfg_node(#20393,#20333) +#20394=@"loc,{#10000},13,3,13,2" +locations_default(#20394,#10000,13,3,13,2) hasLocation(#20393,#20394) -successor(#20301,#20393) -successor(#20295,#20301) -successor(#20293,#20295) -successor(#20391,#20293) -successor(#20289,#20290) -successor(#20287,#20305) -successor(#20272,#20269) #20395=* -entry_cfg_node(#20395,#20272) -#20396=@"loc,{#10000},8,3,8,2" -locations_default(#20396,#10000,8,3,8,2) +exit_cfg_node(#20395,#20333) +#20396=@"loc,{#10000},13,20,13,19" +locations_default(#20396,#10000,13,20,13,19) hasLocation(#20395,#20396) +successor(#20349,#20395) +successor(#20339,#20349) +successor(#20337,#20339) +successor(#20393,#20337) +successor(#20332,#20333) +successor(#20330,#20353) +successor(#20312,#20309) #20397=* -exit_cfg_node(#20397,#20272) -#20398=@"loc,{#10000},8,18,8,17" -locations_default(#20398,#10000,8,18,8,17) +entry_cfg_node(#20397,#20312) +#20398=@"loc,{#10000},11,3,11,2" +locations_default(#20398,#10000,11,3,11,2) hasLocation(#20397,#20398) -successor(#20285,#20397) -successor(#20275,#20285) -successor(#20395,#20275) -successor(#20271,#20272) -successor(#20269,#20289) -successor(#20258,#20255) #20399=* -entry_cfg_node(#20399,#20258) -#20400=@"loc,{#10000},7,3,7,2" -locations_default(#20400,#10000,7,3,7,2) +exit_cfg_node(#20399,#20312) +#20400=@"loc,{#10000},11,24,11,23" +locations_default(#20400,#10000,11,24,11,23) hasLocation(#20399,#20400) +successor(#20328,#20399) +successor(#20318,#20328) +successor(#20316,#20318) +successor(#20397,#20316) +successor(#20311,#20312) +successor(#20309,#20332) +successor(#20295,#20292) #20401=* -exit_cfg_node(#20401,#20258) -#20402=@"loc,{#10000},7,14,7,13" -locations_default(#20402,#10000,7,14,7,13) +entry_cfg_node(#20401,#20295) +#20402=@"loc,{#10000},10,3,10,2" +locations_default(#20402,#10000,10,3,10,2) hasLocation(#20401,#20402) -successor(#20267,#20401) -successor(#20261,#20267) -successor(#20399,#20261) -successor(#20257,#20258) -successor(#20255,#20271) -successor(#20248,#20245) #20403=* -entry_cfg_node(#20403,#20248) -#20404=@"loc,{#10000},6,3,6,2" -locations_default(#20404,#10000,6,3,6,2) +exit_cfg_node(#20403,#20295) +#20404=@"loc,{#10000},10,20,10,19" +locations_default(#20404,#10000,10,20,10,19) hasLocation(#20403,#20404) +successor(#20307,#20403) +successor(#20301,#20307) +successor(#20299,#20301) +successor(#20401,#20299) +successor(#20294,#20295) +successor(#20292,#20311) +successor(#20276,#20273) #20405=* -exit_cfg_node(#20405,#20248) -#20406=@"loc,{#10000},6,14,6,13" -locations_default(#20406,#10000,6,14,6,13) +entry_cfg_node(#20405,#20276) +#20406=@"loc,{#10000},8,3,8,2" +locations_default(#20406,#10000,8,3,8,2) hasLocation(#20405,#20406) -successor(#20253,#20405) -successor(#20251,#20253) -successor(#20403,#20251) -successor(#20247,#20248) -successor(#20245,#20257) -successor(#20243,#20247) +#20407=* +exit_cfg_node(#20407,#20276) +#20408=@"loc,{#10000},8,18,8,17" +locations_default(#20408,#10000,8,18,8,17) +hasLocation(#20407,#20408) +successor(#20290,#20407) +successor(#20280,#20290) +successor(#20405,#20280) +successor(#20275,#20276) +successor(#20273,#20294) +successor(#20261,#20258) +#20409=* +entry_cfg_node(#20409,#20261) +#20410=@"loc,{#10000},7,3,7,2" +locations_default(#20410,#10000,7,3,7,2) +hasLocation(#20409,#20410) +#20411=* +exit_cfg_node(#20411,#20261) +#20412=@"loc,{#10000},7,14,7,13" +locations_default(#20412,#10000,7,14,7,13) +hasLocation(#20411,#20412) +successor(#20271,#20411) +successor(#20265,#20271) +successor(#20409,#20265) +successor(#20260,#20261) +successor(#20258,#20275) +successor(#20250,#20247) +#20413=* +entry_cfg_node(#20413,#20250) +#20414=@"loc,{#10000},6,3,6,2" +locations_default(#20414,#10000,6,3,6,2) +hasLocation(#20413,#20414) +#20415=* +exit_cfg_node(#20415,#20250) +#20416=@"loc,{#10000},6,14,6,13" +locations_default(#20416,#10000,6,14,6,13) +hasLocation(#20415,#20416) +successor(#20256,#20415) +successor(#20254,#20256) +successor(#20413,#20254) +successor(#20249,#20250) +successor(#20247,#20260) +successor(#20244,#20249) +successor(#20373,#20371) +successor(#20371,#20366) +successor(#20370,#20368) +successor(#20368,#20373) +successor(#20366,#20386) +successor(#20365,#20364) successor(#20364,#20362) -successor(#20362,#20357) -successor(#20361,#20359) -successor(#20359,#20364) -successor(#20357,#20376) -successor(#20356,#20355) -successor(#20355,#20353) -successor(#20353,#20361) -successor(#20340,#20339) -successor(#20339,#20337) -successor(#20337,#20356) -successor(#20336,#20335) -successor(#20335,#20333) -successor(#20333,#20340) -successor(#20320,#20318) -successor(#20318,#20313) -successor(#20317,#20315) -successor(#20315,#20320) -successor(#20313,#20336) -successor(#20300,#20299) -successor(#20299,#20297) -successor(#20297,#20317) -successor(#20284,#20282) -successor(#20282,#20277) -successor(#20281,#20279) -successor(#20279,#20284) -successor(#20277,#20300) -successor(#20266,#20265) -successor(#20265,#20263) -successor(#20263,#20281) -successor(#20241,#20266) -successor(#20236,#20243) -successor(#20231,#20236) -successor(#20226,#20231) -successor(#20374,#20226) +successor(#20362,#20370) +successor(#20348,#20347) +successor(#20347,#20345) +successor(#20345,#20365) +successor(#20344,#20343) +successor(#20343,#20341) +successor(#20341,#20348) +successor(#20327,#20325) +successor(#20325,#20320) +successor(#20324,#20322) +successor(#20322,#20327) +successor(#20320,#20344) +successor(#20306,#20305) +successor(#20305,#20303) +successor(#20303,#20324) +successor(#20289,#20287) +successor(#20287,#20282) +successor(#20286,#20284) +successor(#20284,#20289) +successor(#20282,#20306) +successor(#20270,#20269) +successor(#20269,#20267) +successor(#20267,#20286) +successor(#20242,#20270) +successor(#20237,#20244) +successor(#20232,#20237) +successor(#20227,#20232) +successor(#20384,#20227) numlines(#10000,15,12,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/hello.ts.trap b/javascript/extractor/tests/ts/output/trap/hello.ts.trap index 9639e17a662b..d336402faf35 100644 --- a/javascript/extractor/tests/ts/output/trap/hello.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/hello.ts.trap @@ -170,162 +170,166 @@ locations_default(#20061,#10000,1,1,6,0) hasLocation(#20001,#20061) #20062=@"var;{greeter};{#20000}" variables(#20062,"greeter",#20000) -#20063=* -stmts(#20063,17,#20001,0,"functio ... ""!"";\n}") -#20064=@"loc,{#10000},1,1,3,1" -locations_default(#20064,#10000,1,1,3,1) -hasLocation(#20063,#20064) -stmt_containers(#20063,#20001) -#20065=* -exprs(#20065,78,#20063,-1,"greeter") -hasLocation(#20065,#20015) -expr_containers(#20065,#20063) -literals("greeter","greeter",#20065) -decl(#20065,#20062) +#20063=@"var;{this};{#20000}" +variables(#20063,"this",#20000) +#20064=* +stmts(#20064,17,#20001,0,"functio ... ""!"";\n}") +#20065=@"loc,{#10000},1,1,3,1" +locations_default(#20065,#10000,1,1,3,1) +hasLocation(#20064,#20065) +stmt_containers(#20064,#20001) #20066=* -scopes(#20066,1) -scopenodes(#20063,#20066) -scopenesting(#20066,#20000) -#20067=@"var;{person};{#20066}" -variables(#20067,"person",#20066) -#20068=* -exprs(#20068,78,#20063,0,"person") -hasLocation(#20068,#20019) -expr_containers(#20068,#20063) -literals("person","person",#20068) -decl(#20068,#20067) -#20069=@"var;{arguments};{#20066}" -variables(#20069,"arguments",#20066) -is_arguments_object(#20069) +exprs(#20066,78,#20064,-1,"greeter") +hasLocation(#20066,#20015) +expr_containers(#20066,#20064) +literals("greeter","greeter",#20066) +decl(#20066,#20062) +#20067=* +scopes(#20067,1) +scopenodes(#20064,#20067) +scopenesting(#20067,#20000) +#20068=@"var;{this};{#20067}" +variables(#20068,"this",#20067) +#20069=@"var;{person};{#20067}" +variables(#20069,"person",#20067) #20070=* -typeexprs(#20070,2,#20063,-6,"string") -hasLocation(#20070,#20023) -expr_containers(#20070,#20063) -literals("string","string",#20070) -#20071=* -stmts(#20071,1,#20063,-2,"{\n r ... ""!"";\n}") -#20072=@"loc,{#10000},1,34,3,1" -locations_default(#20072,#10000,1,34,3,1) -hasLocation(#20071,#20072) -stmt_containers(#20071,#20063) +exprs(#20070,78,#20064,0,"person") +hasLocation(#20070,#20019) +expr_containers(#20070,#20064) +literals("person","person",#20070) +decl(#20070,#20069) +#20071=@"var;{arguments};{#20067}" +variables(#20071,"arguments",#20067) +is_arguments_object(#20071) +#20072=* +typeexprs(#20072,2,#20064,-6,"string") +hasLocation(#20072,#20023) +expr_containers(#20072,#20064) +literals("string","string",#20072) #20073=* -stmts(#20073,9,#20071,0,"return ... + ""!"";") -#20074=@"loc,{#10000},2,5,2,36" -locations_default(#20074,#10000,2,5,2,36) +stmts(#20073,1,#20064,-2,"{\n r ... ""!"";\n}") +#20074=@"loc,{#10000},1,34,3,1" +locations_default(#20074,#10000,1,34,3,1) hasLocation(#20073,#20074) -stmt_containers(#20073,#20063) +stmt_containers(#20073,#20064) #20075=* -exprs(#20075,34,#20073,0,"""Hello, ... n + ""!""") -#20076=@"loc,{#10000},2,12,2,35" -locations_default(#20076,#10000,2,12,2,35) +stmts(#20075,9,#20073,0,"return ... + ""!"";") +#20076=@"loc,{#10000},2,5,2,36" +locations_default(#20076,#10000,2,5,2,36) hasLocation(#20075,#20076) -enclosing_stmt(#20075,#20073) -expr_containers(#20075,#20063) +stmt_containers(#20075,#20064) #20077=* -exprs(#20077,34,#20075,0,"""Hello, "" + person") -#20078=@"loc,{#10000},2,12,2,29" -locations_default(#20078,#10000,2,12,2,29) +exprs(#20077,34,#20075,0,"""Hello, ... n + ""!""") +#20078=@"loc,{#10000},2,12,2,35" +locations_default(#20078,#10000,2,12,2,35) hasLocation(#20077,#20078) -enclosing_stmt(#20077,#20073) -expr_containers(#20077,#20063) +enclosing_stmt(#20077,#20075) +expr_containers(#20077,#20064) #20079=* -exprs(#20079,4,#20077,0,"""Hello, """) -hasLocation(#20079,#20031) -enclosing_stmt(#20079,#20073) -expr_containers(#20079,#20063) -literals("Hello, ","""Hello, """,#20079) -#20080=* -exprs(#20080,79,#20077,1,"person") -hasLocation(#20080,#20035) -enclosing_stmt(#20080,#20073) -expr_containers(#20080,#20063) -literals("person","person",#20080) -bind(#20080,#20067) +exprs(#20079,34,#20077,0,"""Hello, "" + person") +#20080=@"loc,{#10000},2,12,2,29" +locations_default(#20080,#10000,2,12,2,29) +hasLocation(#20079,#20080) +enclosing_stmt(#20079,#20075) +expr_containers(#20079,#20064) #20081=* -exprs(#20081,4,#20075,1,"""!""") -hasLocation(#20081,#20039) -enclosing_stmt(#20081,#20073) -expr_containers(#20081,#20063) -literals("!","""!""",#20081) +exprs(#20081,4,#20079,0,"""Hello, """) +hasLocation(#20081,#20031) +enclosing_stmt(#20081,#20075) +expr_containers(#20081,#20064) +literals("Hello, ","""Hello, """,#20081) #20082=* -stmts(#20082,2,#20001,1,"alert(g ... rld""));") -hasLocation(#20082,#20011) -stmt_containers(#20082,#20001) +exprs(#20082,79,#20079,1,"person") +hasLocation(#20082,#20035) +enclosing_stmt(#20082,#20075) +expr_containers(#20082,#20064) +literals("person","person",#20082) +bind(#20082,#20069) #20083=* -exprs(#20083,13,#20082,0,"alert(g ... orld""))") -#20084=@"loc,{#10000},5,1,5,23" -locations_default(#20084,#10000,5,1,5,23) -hasLocation(#20083,#20084) -enclosing_stmt(#20083,#20082) -expr_containers(#20083,#20001) +exprs(#20083,4,#20077,1,"""!""") +hasLocation(#20083,#20039) +enclosing_stmt(#20083,#20075) +expr_containers(#20083,#20064) +literals("!","""!""",#20083) +#20084=* +stmts(#20084,2,#20001,1,"alert(g ... rld""));") +hasLocation(#20084,#20011) +stmt_containers(#20084,#20001) #20085=* -exprs(#20085,79,#20083,-1,"alert") -hasLocation(#20085,#20044) -enclosing_stmt(#20085,#20082) +exprs(#20085,13,#20084,0,"alert(g ... orld""))") +#20086=@"loc,{#10000},5,1,5,23" +locations_default(#20086,#10000,5,1,5,23) +hasLocation(#20085,#20086) +enclosing_stmt(#20085,#20084) expr_containers(#20085,#20001) -literals("alert","alert",#20085) -#20086=@"var;{alert};{#20000}" -variables(#20086,"alert",#20000) -bind(#20085,#20086) #20087=* -exprs(#20087,13,#20083,0,"greeter(""world"")") -#20088=@"loc,{#10000},5,7,5,22" -locations_default(#20088,#10000,5,7,5,22) -hasLocation(#20087,#20088) -enclosing_stmt(#20087,#20082) +exprs(#20087,79,#20085,-1,"alert") +hasLocation(#20087,#20044) +enclosing_stmt(#20087,#20084) expr_containers(#20087,#20001) +literals("alert","alert",#20087) +#20088=@"var;{alert};{#20000}" +variables(#20088,"alert",#20000) +bind(#20087,#20088) #20089=* -exprs(#20089,79,#20087,-1,"greeter") -hasLocation(#20089,#20048) -enclosing_stmt(#20089,#20082) +exprs(#20089,13,#20085,0,"greeter(""world"")") +#20090=@"loc,{#10000},5,7,5,22" +locations_default(#20090,#10000,5,7,5,22) +hasLocation(#20089,#20090) +enclosing_stmt(#20089,#20084) expr_containers(#20089,#20001) -literals("greeter","greeter",#20089) -bind(#20089,#20062) -#20090=* -exprs(#20090,4,#20087,0,"""world""") -hasLocation(#20090,#20052) -enclosing_stmt(#20090,#20082) -expr_containers(#20090,#20001) -literals("world","""world""",#20090) #20091=* -regexpterm(#20091,14,#20090,0,"world") -#20092=@"loc,{#10000},5,16,5,20" -locations_default(#20092,#10000,5,16,5,20) -hasLocation(#20091,#20092) -regexp_const_value(#20091,"world") +exprs(#20091,79,#20089,-1,"greeter") +hasLocation(#20091,#20048) +enclosing_stmt(#20091,#20084) +expr_containers(#20091,#20001) +literals("greeter","greeter",#20091) +bind(#20091,#20062) +#20092=* +exprs(#20092,4,#20089,0,"""world""") +hasLocation(#20092,#20052) +enclosing_stmt(#20092,#20084) +expr_containers(#20092,#20001) +literals("world","""world""",#20092) #20093=* -entry_cfg_node(#20093,#20001) -#20094=@"loc,{#10000},1,1,1,0" -locations_default(#20094,#10000,1,1,1,0) +regexpterm(#20093,14,#20092,0,"world") +#20094=@"loc,{#10000},5,16,5,20" +locations_default(#20094,#10000,5,16,5,20) hasLocation(#20093,#20094) +regexp_const_value(#20093,"world") #20095=* -exit_cfg_node(#20095,#20001) -hasLocation(#20095,#20060) -successor(#20082,#20085) -successor(#20090,#20087) -successor(#20089,#20090) -successor(#20087,#20083) -successor(#20085,#20089) -successor(#20083,#20095) -successor(#20063,#20082) -#20096=* -entry_cfg_node(#20096,#20063) -hasLocation(#20096,#20094) +entry_cfg_node(#20095,#20001) +#20096=@"loc,{#10000},1,1,1,0" +locations_default(#20096,#10000,1,1,1,0) +hasLocation(#20095,#20096) #20097=* -exit_cfg_node(#20097,#20063) -#20098=@"loc,{#10000},3,2,3,1" -locations_default(#20098,#10000,3,2,3,1) -hasLocation(#20097,#20098) -successor(#20081,#20075) -successor(#20080,#20077) -successor(#20079,#20080) -successor(#20077,#20081) -successor(#20075,#20073) -successor(#20073,#20097) -successor(#20071,#20079) -successor(#20068,#20071) -successor(#20096,#20068) -successor(#20065,#20063) -successor(#20093,#20065) +exit_cfg_node(#20097,#20001) +hasLocation(#20097,#20060) +successor(#20084,#20087) +successor(#20092,#20089) +successor(#20091,#20092) +successor(#20089,#20085) +successor(#20087,#20091) +successor(#20085,#20097) +successor(#20064,#20084) +#20098=* +entry_cfg_node(#20098,#20064) +hasLocation(#20098,#20096) +#20099=* +exit_cfg_node(#20099,#20064) +#20100=@"loc,{#10000},3,2,3,1" +locations_default(#20100,#10000,3,2,3,1) +hasLocation(#20099,#20100) +successor(#20083,#20077) +successor(#20082,#20079) +successor(#20081,#20082) +successor(#20079,#20083) +successor(#20077,#20075) +successor(#20075,#20099) +successor(#20073,#20081) +successor(#20070,#20073) +successor(#20098,#20070) +successor(#20066,#20064) +successor(#20095,#20066) numlines(#10000,5,4,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/import-attributes.ts.trap b/javascript/extractor/tests/ts/output/trap/import-attributes.ts.trap index 705137f5a274..193a2afeb185 100644 --- a/javascript/extractor/tests/ts/output/trap/import-attributes.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/import-attributes.ts.trap @@ -1280,866 +1280,868 @@ local_type_names(#20491,"v3",#20485) local_namespace_names(#20492,"v1",#20485) local_namespace_names(#20493,"v2",#20485) local_namespace_names(#20494,"v3",#20485) -#20496=* -stmts(#20496,27,#20001,0,"import ... son"" };") -hasLocation(#20496,#20007) -stmt_containers(#20496,#20001) +#20496=@"var;{this};{#20485}" +variables(#20496,"this",#20485) #20497=* -exprs(#20497,4,#20496,-1,"""module""") -hasLocation(#20497,#20057) -enclosing_stmt(#20497,#20496) -expr_containers(#20497,#20001) -literals("module","""module""",#20497) +stmts(#20497,27,#20001,0,"import ... son"" };") +hasLocation(#20497,#20007) +stmt_containers(#20497,#20001) #20498=* -regexpterm(#20498,14,#20497,0,"module") -#20499=@"loc,{#10000},1,9,1,14" -locations_default(#20499,#10000,1,9,1,14) -hasLocation(#20498,#20499) -regexp_const_value(#20498,"module") -#20500=* -exprs(#20500,8,#20496,-10,"{ type: ""json"" }") -#20501=@"loc,{#10000},1,22,1,37" -locations_default(#20501,#10000,1,22,1,37) -hasLocation(#20500,#20501) -enclosing_stmt(#20500,#20496) -expr_containers(#20500,#20001) -#20502=* -properties(#20502,#20500,0,0,"type: ""json""") -#20503=@"loc,{#10000},1,24,1,35" -locations_default(#20503,#10000,1,24,1,35) -hasLocation(#20502,#20503) -#20504=* -stmts(#20504,27,#20001,1,"import ... son"" };") -hasLocation(#20504,#20009) -stmt_containers(#20504,#20001) +exprs(#20498,4,#20497,-1,"""module""") +hasLocation(#20498,#20057) +enclosing_stmt(#20498,#20497) +expr_containers(#20498,#20001) +literals("module","""module""",#20498) +#20499=* +regexpterm(#20499,14,#20498,0,"module") +#20500=@"loc,{#10000},1,9,1,14" +locations_default(#20500,#10000,1,9,1,14) +hasLocation(#20499,#20500) +regexp_const_value(#20499,"module") +#20501=* +exprs(#20501,8,#20497,-10,"{ type: ""json"" }") +#20502=@"loc,{#10000},1,22,1,37" +locations_default(#20502,#10000,1,22,1,37) +hasLocation(#20501,#20502) +enclosing_stmt(#20501,#20497) +expr_containers(#20501,#20001) +#20503=* +properties(#20503,#20501,0,0,"type: ""json""") +#20504=@"loc,{#10000},1,24,1,35" +locations_default(#20504,#10000,1,24,1,35) +hasLocation(#20503,#20504) #20505=* -exprs(#20505,4,#20504,-1,"""module""") -hasLocation(#20505,#20083) -enclosing_stmt(#20505,#20504) -expr_containers(#20505,#20001) -literals("module","""module""",#20505) +stmts(#20505,27,#20001,1,"import ... son"" };") +hasLocation(#20505,#20009) +stmt_containers(#20505,#20001) #20506=* -regexpterm(#20506,14,#20505,0,"module") -#20507=@"loc,{#10000},2,22,2,27" -locations_default(#20507,#10000,2,22,2,27) -hasLocation(#20506,#20507) -regexp_const_value(#20506,"module") -#20508=* -exprs(#20508,8,#20504,-10,"{ type: ""json"" }") -#20509=@"loc,{#10000},2,35,2,50" -locations_default(#20509,#10000,2,35,2,50) -hasLocation(#20508,#20509) -enclosing_stmt(#20508,#20504) -expr_containers(#20508,#20001) -#20510=* -properties(#20510,#20508,0,0,"type: ""json""") -#20511=@"loc,{#10000},2,37,2,48" -locations_default(#20511,#10000,2,37,2,48) -hasLocation(#20510,#20511) -#20512=* -exprs(#20512,85,#20504,0,"* as v1") -#20513=@"loc,{#10000},2,8,2,14" -locations_default(#20513,#10000,2,8,2,14) -hasLocation(#20512,#20513) -enclosing_stmt(#20512,#20504) -expr_containers(#20512,#20001) -#20514=* -exprs(#20514,78,#20512,1,"v1") -hasLocation(#20514,#20079) -enclosing_stmt(#20514,#20504) -expr_containers(#20514,#20001) -literals("v1","v1",#20514) -decl(#20514,#20486) -typedecl(#20514,#20489) -namespacedecl(#20514,#20492) +exprs(#20506,4,#20505,-1,"""module""") +hasLocation(#20506,#20083) +enclosing_stmt(#20506,#20505) +expr_containers(#20506,#20001) +literals("module","""module""",#20506) +#20507=* +regexpterm(#20507,14,#20506,0,"module") +#20508=@"loc,{#10000},2,22,2,27" +locations_default(#20508,#10000,2,22,2,27) +hasLocation(#20507,#20508) +regexp_const_value(#20507,"module") +#20509=* +exprs(#20509,8,#20505,-10,"{ type: ""json"" }") +#20510=@"loc,{#10000},2,35,2,50" +locations_default(#20510,#10000,2,35,2,50) +hasLocation(#20509,#20510) +enclosing_stmt(#20509,#20505) +expr_containers(#20509,#20001) +#20511=* +properties(#20511,#20509,0,0,"type: ""json""") +#20512=@"loc,{#10000},2,37,2,48" +locations_default(#20512,#10000,2,37,2,48) +hasLocation(#20511,#20512) +#20513=* +exprs(#20513,85,#20505,0,"* as v1") +#20514=@"loc,{#10000},2,8,2,14" +locations_default(#20514,#10000,2,8,2,14) +hasLocation(#20513,#20514) +enclosing_stmt(#20513,#20505) +expr_containers(#20513,#20001) #20515=* -stmts(#20515,27,#20001,2,"import ... son"" };") -hasLocation(#20515,#20011) -stmt_containers(#20515,#20001) +exprs(#20515,78,#20513,1,"v1") +hasLocation(#20515,#20079) +enclosing_stmt(#20515,#20505) +expr_containers(#20515,#20001) +literals("v1","v1",#20515) +decl(#20515,#20486) +typedecl(#20515,#20489) +namespacedecl(#20515,#20492) #20516=* -exprs(#20516,4,#20515,-1,"""module""") -hasLocation(#20516,#20109) -enclosing_stmt(#20516,#20515) -expr_containers(#20516,#20001) -literals("module","""module""",#20516) +stmts(#20516,27,#20001,2,"import ... son"" };") +hasLocation(#20516,#20011) +stmt_containers(#20516,#20001) #20517=* -regexpterm(#20517,14,#20516,0,"module") -#20518=@"loc,{#10000},3,21,3,26" -locations_default(#20518,#10000,3,21,3,26) -hasLocation(#20517,#20518) -regexp_const_value(#20517,"module") -#20519=* -exprs(#20519,8,#20515,-10,"{ type: ""json"" }") -#20520=@"loc,{#10000},3,34,3,49" -locations_default(#20520,#10000,3,34,3,49) -hasLocation(#20519,#20520) -enclosing_stmt(#20519,#20515) -expr_containers(#20519,#20001) -#20521=* -properties(#20521,#20519,0,0,"type: ""json""") -#20522=@"loc,{#10000},3,36,3,47" -locations_default(#20522,#10000,3,36,3,47) -hasLocation(#20521,#20522) -#20523=* -exprs(#20523,83,#20515,0,"v2") -hasLocation(#20523,#20103) -enclosing_stmt(#20523,#20515) -expr_containers(#20523,#20001) +exprs(#20517,4,#20516,-1,"""module""") +hasLocation(#20517,#20109) +enclosing_stmt(#20517,#20516) +expr_containers(#20517,#20001) +literals("module","""module""",#20517) +#20518=* +regexpterm(#20518,14,#20517,0,"module") +#20519=@"loc,{#10000},3,21,3,26" +locations_default(#20519,#10000,3,21,3,26) +hasLocation(#20518,#20519) +regexp_const_value(#20518,"module") +#20520=* +exprs(#20520,8,#20516,-10,"{ type: ""json"" }") +#20521=@"loc,{#10000},3,34,3,49" +locations_default(#20521,#10000,3,34,3,49) +hasLocation(#20520,#20521) +enclosing_stmt(#20520,#20516) +expr_containers(#20520,#20001) +#20522=* +properties(#20522,#20520,0,0,"type: ""json""") +#20523=@"loc,{#10000},3,36,3,47" +locations_default(#20523,#10000,3,36,3,47) +hasLocation(#20522,#20523) #20524=* -exprs(#20524,0,#20523,0,"v2") +exprs(#20524,83,#20516,0,"v2") hasLocation(#20524,#20103) -enclosing_stmt(#20524,#20515) +enclosing_stmt(#20524,#20516) expr_containers(#20524,#20001) -literals("v2","v2",#20524) #20525=* -exprs(#20525,78,#20523,1,"v2") +exprs(#20525,0,#20524,0,"v2") hasLocation(#20525,#20103) -enclosing_stmt(#20525,#20515) +enclosing_stmt(#20525,#20516) expr_containers(#20525,#20001) literals("v2","v2",#20525) -decl(#20525,#20487) -typedecl(#20525,#20490) -namespacedecl(#20525,#20493) #20526=* -stmts(#20526,27,#20001,3,"import ... son"" };") -hasLocation(#20526,#20013) -stmt_containers(#20526,#20001) +exprs(#20526,78,#20524,1,"v2") +hasLocation(#20526,#20103) +enclosing_stmt(#20526,#20516) +expr_containers(#20526,#20001) +literals("v2","v2",#20526) +decl(#20526,#20487) +typedecl(#20526,#20490) +namespacedecl(#20526,#20493) #20527=* -exprs(#20527,4,#20526,-1,"""module""") -hasLocation(#20527,#20131) -enclosing_stmt(#20527,#20526) -expr_containers(#20527,#20001) -literals("module","""module""",#20527) +stmts(#20527,27,#20001,3,"import ... son"" };") +hasLocation(#20527,#20013) +stmt_containers(#20527,#20001) #20528=* -regexpterm(#20528,14,#20527,0,"module") -#20529=@"loc,{#10000},4,17,4,22" -locations_default(#20529,#10000,4,17,4,22) -hasLocation(#20528,#20529) -regexp_const_value(#20528,"module") -#20530=* -exprs(#20530,8,#20526,-10,"{ type: ""json"" }") -#20531=@"loc,{#10000},4,30,4,45" -locations_default(#20531,#10000,4,30,4,45) -hasLocation(#20530,#20531) -enclosing_stmt(#20530,#20526) -expr_containers(#20530,#20001) -#20532=* -properties(#20532,#20530,0,0,"type: ""json""") -#20533=@"loc,{#10000},4,32,4,43" -locations_default(#20533,#10000,4,32,4,43) -hasLocation(#20532,#20533) -#20534=* -exprs(#20534,84,#20526,0,"v3") -hasLocation(#20534,#20127) -enclosing_stmt(#20534,#20526) -expr_containers(#20534,#20001) +exprs(#20528,4,#20527,-1,"""module""") +hasLocation(#20528,#20131) +enclosing_stmt(#20528,#20527) +expr_containers(#20528,#20001) +literals("module","""module""",#20528) +#20529=* +regexpterm(#20529,14,#20528,0,"module") +#20530=@"loc,{#10000},4,17,4,22" +locations_default(#20530,#10000,4,17,4,22) +hasLocation(#20529,#20530) +regexp_const_value(#20529,"module") +#20531=* +exprs(#20531,8,#20527,-10,"{ type: ""json"" }") +#20532=@"loc,{#10000},4,30,4,45" +locations_default(#20532,#10000,4,30,4,45) +hasLocation(#20531,#20532) +enclosing_stmt(#20531,#20527) +expr_containers(#20531,#20001) +#20533=* +properties(#20533,#20531,0,0,"type: ""json""") +#20534=@"loc,{#10000},4,32,4,43" +locations_default(#20534,#10000,4,32,4,43) +hasLocation(#20533,#20534) #20535=* -exprs(#20535,78,#20534,1,"v3") +exprs(#20535,84,#20527,0,"v3") hasLocation(#20535,#20127) -enclosing_stmt(#20535,#20526) +enclosing_stmt(#20535,#20527) expr_containers(#20535,#20001) -literals("v3","v3",#20535) -decl(#20535,#20488) -typedecl(#20535,#20491) -namespacedecl(#20535,#20494) #20536=* -stmts(#20536,30,#20001,4,"export ... son"" };") -hasLocation(#20536,#20017) -stmt_containers(#20536,#20001) +exprs(#20536,78,#20535,1,"v3") +hasLocation(#20536,#20127) +enclosing_stmt(#20536,#20527) +expr_containers(#20536,#20001) +literals("v3","v3",#20536) +decl(#20536,#20488) +typedecl(#20536,#20491) +namespacedecl(#20536,#20494) #20537=* -exprs(#20537,4,#20536,-2,"""module""") -hasLocation(#20537,#20157) -enclosing_stmt(#20537,#20536) -expr_containers(#20537,#20001) -literals("module","""module""",#20537) +stmts(#20537,30,#20001,4,"export ... son"" };") +hasLocation(#20537,#20017) +stmt_containers(#20537,#20001) #20538=* -regexpterm(#20538,14,#20537,0,"module") -#20539=@"loc,{#10000},6,21,6,26" -locations_default(#20539,#10000,6,21,6,26) -hasLocation(#20538,#20539) -regexp_const_value(#20538,"module") -#20540=* -exprs(#20540,8,#20536,-10,"{ type: ""json"" }") -#20541=@"loc,{#10000},6,34,6,49" -locations_default(#20541,#10000,6,34,6,49) -hasLocation(#20540,#20541) -enclosing_stmt(#20540,#20536) -expr_containers(#20540,#20001) -#20542=* -properties(#20542,#20540,0,0,"type: ""json""") -#20543=@"loc,{#10000},6,36,6,47" -locations_default(#20543,#10000,6,36,6,47) -hasLocation(#20542,#20543) -#20544=* -exprs(#20544,86,#20536,0,"v4") -hasLocation(#20544,#20151) -enclosing_stmt(#20544,#20536) -expr_containers(#20544,#20001) +exprs(#20538,4,#20537,-2,"""module""") +hasLocation(#20538,#20157) +enclosing_stmt(#20538,#20537) +expr_containers(#20538,#20001) +literals("module","""module""",#20538) +#20539=* +regexpterm(#20539,14,#20538,0,"module") +#20540=@"loc,{#10000},6,21,6,26" +locations_default(#20540,#10000,6,21,6,26) +hasLocation(#20539,#20540) +regexp_const_value(#20539,"module") +#20541=* +exprs(#20541,8,#20537,-10,"{ type: ""json"" }") +#20542=@"loc,{#10000},6,34,6,49" +locations_default(#20542,#10000,6,34,6,49) +hasLocation(#20541,#20542) +enclosing_stmt(#20541,#20537) +expr_containers(#20541,#20001) +#20543=* +properties(#20543,#20541,0,0,"type: ""json""") +#20544=@"loc,{#10000},6,36,6,47" +locations_default(#20544,#10000,6,36,6,47) +hasLocation(#20543,#20544) #20545=* -exprs(#20545,0,#20544,0,"v4") +exprs(#20545,86,#20537,0,"v4") hasLocation(#20545,#20151) -enclosing_stmt(#20545,#20536) +enclosing_stmt(#20545,#20537) expr_containers(#20545,#20001) -literals("v4","v4",#20545) #20546=* -exprs(#20546,0,#20544,1,"v4") +exprs(#20546,0,#20545,0,"v4") hasLocation(#20546,#20151) -enclosing_stmt(#20546,#20536) +enclosing_stmt(#20546,#20537) expr_containers(#20546,#20001) literals("v4","v4",#20546) #20547=* -stmts(#20547,28,#20001,5,"export ... son"" };") -hasLocation(#20547,#20019) -stmt_containers(#20547,#20001) +exprs(#20547,0,#20545,1,"v4") +hasLocation(#20547,#20151) +enclosing_stmt(#20547,#20537) +expr_containers(#20547,#20001) +literals("v4","v4",#20547) #20548=* -exprs(#20548,4,#20547,0,"""module""") -hasLocation(#20548,#20179) -enclosing_stmt(#20548,#20547) -expr_containers(#20548,#20001) -literals("module","""module""",#20548) +stmts(#20548,28,#20001,5,"export ... son"" };") +hasLocation(#20548,#20019) +stmt_containers(#20548,#20001) #20549=* -regexpterm(#20549,14,#20548,0,"module") -#20550=@"loc,{#10000},7,16,7,21" -locations_default(#20550,#10000,7,16,7,21) -hasLocation(#20549,#20550) -regexp_const_value(#20549,"module") -#20551=* -exprs(#20551,8,#20547,-10,"{ type: ""json"" }") -#20552=@"loc,{#10000},7,29,7,44" -locations_default(#20552,#10000,7,29,7,44) -hasLocation(#20551,#20552) -enclosing_stmt(#20551,#20547) -expr_containers(#20551,#20001) -#20553=* -properties(#20553,#20551,0,0,"type: ""json""") -#20554=@"loc,{#10000},7,31,7,42" -locations_default(#20554,#10000,7,31,7,42) -hasLocation(#20553,#20554) -#20555=* -stmts(#20555,30,#20001,6,"export ... son"" };") -hasLocation(#20555,#20021) -stmt_containers(#20555,#20001) +exprs(#20549,4,#20548,0,"""module""") +hasLocation(#20549,#20179) +enclosing_stmt(#20549,#20548) +expr_containers(#20549,#20001) +literals("module","""module""",#20549) +#20550=* +regexpterm(#20550,14,#20549,0,"module") +#20551=@"loc,{#10000},7,16,7,21" +locations_default(#20551,#10000,7,16,7,21) +hasLocation(#20550,#20551) +regexp_const_value(#20550,"module") +#20552=* +exprs(#20552,8,#20548,-10,"{ type: ""json"" }") +#20553=@"loc,{#10000},7,29,7,44" +locations_default(#20553,#10000,7,29,7,44) +hasLocation(#20552,#20553) +enclosing_stmt(#20552,#20548) +expr_containers(#20552,#20001) +#20554=* +properties(#20554,#20552,0,0,"type: ""json""") +#20555=@"loc,{#10000},7,31,7,42" +locations_default(#20555,#10000,7,31,7,42) +hasLocation(#20554,#20555) #20556=* -exprs(#20556,4,#20555,-2,"""module""") -hasLocation(#20556,#20205) -enclosing_stmt(#20556,#20555) -expr_containers(#20556,#20001) -literals("module","""module""",#20556) +stmts(#20556,30,#20001,6,"export ... son"" };") +hasLocation(#20556,#20021) +stmt_containers(#20556,#20001) #20557=* -regexpterm(#20557,14,#20556,0,"module") -#20558=@"loc,{#10000},8,22,8,27" -locations_default(#20558,#10000,8,22,8,27) -hasLocation(#20557,#20558) -regexp_const_value(#20557,"module") -#20559=* -exprs(#20559,8,#20555,-10,"{ type: ""json"" }") -#20560=@"loc,{#10000},8,35,8,50" -locations_default(#20560,#10000,8,35,8,50) -hasLocation(#20559,#20560) -enclosing_stmt(#20559,#20555) -expr_containers(#20559,#20001) -#20561=* -properties(#20561,#20559,0,0,"type: ""json""") -#20562=@"loc,{#10000},8,37,8,48" -locations_default(#20562,#10000,8,37,8,48) -hasLocation(#20561,#20562) -#20563=* -exprs(#20563,96,#20555,0,"* as v5") -#20564=@"loc,{#10000},8,8,8,14" -locations_default(#20564,#10000,8,8,8,14) -hasLocation(#20563,#20564) -enclosing_stmt(#20563,#20555) -expr_containers(#20563,#20001) -#20565=* -exprs(#20565,0,#20563,1,"v5") -hasLocation(#20565,#20201) -enclosing_stmt(#20565,#20555) -expr_containers(#20565,#20001) -literals("v5","v5",#20565) +exprs(#20557,4,#20556,-2,"""module""") +hasLocation(#20557,#20205) +enclosing_stmt(#20557,#20556) +expr_containers(#20557,#20001) +literals("module","""module""",#20557) +#20558=* +regexpterm(#20558,14,#20557,0,"module") +#20559=@"loc,{#10000},8,22,8,27" +locations_default(#20559,#10000,8,22,8,27) +hasLocation(#20558,#20559) +regexp_const_value(#20558,"module") +#20560=* +exprs(#20560,8,#20556,-10,"{ type: ""json"" }") +#20561=@"loc,{#10000},8,35,8,50" +locations_default(#20561,#10000,8,35,8,50) +hasLocation(#20560,#20561) +enclosing_stmt(#20560,#20556) +expr_containers(#20560,#20001) +#20562=* +properties(#20562,#20560,0,0,"type: ""json""") +#20563=@"loc,{#10000},8,37,8,48" +locations_default(#20563,#10000,8,37,8,48) +hasLocation(#20562,#20563) +#20564=* +exprs(#20564,96,#20556,0,"* as v5") +#20565=@"loc,{#10000},8,8,8,14" +locations_default(#20565,#10000,8,8,8,14) +hasLocation(#20564,#20565) +enclosing_stmt(#20564,#20556) +expr_containers(#20564,#20001) #20566=* -stmts(#20566,22,#20001,7,"const v ... "" } });") -hasLocation(#20566,#20025) -stmt_containers(#20566,#20001) +exprs(#20566,0,#20564,1,"v5") +hasLocation(#20566,#20201) +enclosing_stmt(#20566,#20556) +expr_containers(#20566,#20001) +literals("v5","v5",#20566) #20567=* -exprs(#20567,64,#20566,0,"v6 = im ... n"" } })") -#20568=@"loc,{#10000},10,7,10,57" -locations_default(#20568,#10000,10,7,10,57) -hasLocation(#20567,#20568) -enclosing_stmt(#20567,#20566) -expr_containers(#20567,#20001) -#20569=* -exprs(#20569,78,#20567,0,"v6") -hasLocation(#20569,#20223) -enclosing_stmt(#20569,#20566) -expr_containers(#20569,#20001) -literals("v6","v6",#20569) -decl(#20569,#20495) +stmts(#20567,22,#20001,7,"const v ... "" } });") +hasLocation(#20567,#20025) +stmt_containers(#20567,#20001) +#20568=* +exprs(#20568,64,#20567,0,"v6 = im ... n"" } })") +#20569=@"loc,{#10000},10,7,10,57" +locations_default(#20569,#10000,10,7,10,57) +hasLocation(#20568,#20569) +enclosing_stmt(#20568,#20567) +expr_containers(#20568,#20001) #20570=* -exprs(#20570,99,#20567,1,"import( ... n"" } })") -#20571=@"loc,{#10000},10,12,10,57" -locations_default(#20571,#10000,10,12,10,57) -hasLocation(#20570,#20571) -enclosing_stmt(#20570,#20566) +exprs(#20570,78,#20568,0,"v6") +hasLocation(#20570,#20223) +enclosing_stmt(#20570,#20567) expr_containers(#20570,#20001) -#20572=* -exprs(#20572,4,#20570,0,"""module""") -hasLocation(#20572,#20231) -enclosing_stmt(#20572,#20566) -expr_containers(#20572,#20001) -literals("module","""module""",#20572) +literals("v6","v6",#20570) +decl(#20570,#20495) +#20571=* +exprs(#20571,99,#20568,1,"import( ... n"" } })") +#20572=@"loc,{#10000},10,12,10,57" +locations_default(#20572,#10000,10,12,10,57) +hasLocation(#20571,#20572) +enclosing_stmt(#20571,#20567) +expr_containers(#20571,#20001) #20573=* -regexpterm(#20573,14,#20572,0,"module") -#20574=@"loc,{#10000},10,20,10,25" -locations_default(#20574,#10000,10,20,10,25) -hasLocation(#20573,#20574) -regexp_const_value(#20573,"module") -#20575=* -exprs(#20575,8,#20570,1,"{ ""with ... on"" } }") -#20576=@"loc,{#10000},10,29,10,56" -locations_default(#20576,#10000,10,29,10,56) -hasLocation(#20575,#20576) -enclosing_stmt(#20575,#20566) -expr_containers(#20575,#20001) -#20577=* -properties(#20577,#20575,0,0,"""with"": ... json"" }") -#20578=@"loc,{#10000},10,31,10,54" -locations_default(#20578,#10000,10,31,10,54) -hasLocation(#20577,#20578) -#20579=* -exprs(#20579,4,#20577,0,"""with""") -hasLocation(#20579,#20237) -enclosing_stmt(#20579,#20566) -expr_containers(#20579,#20001) -literals("with","""with""",#20579) +exprs(#20573,4,#20571,0,"""module""") +hasLocation(#20573,#20231) +enclosing_stmt(#20573,#20567) +expr_containers(#20573,#20001) +literals("module","""module""",#20573) +#20574=* +regexpterm(#20574,14,#20573,0,"module") +#20575=@"loc,{#10000},10,20,10,25" +locations_default(#20575,#10000,10,20,10,25) +hasLocation(#20574,#20575) +regexp_const_value(#20574,"module") +#20576=* +exprs(#20576,8,#20571,1,"{ ""with ... on"" } }") +#20577=@"loc,{#10000},10,29,10,56" +locations_default(#20577,#10000,10,29,10,56) +hasLocation(#20576,#20577) +enclosing_stmt(#20576,#20567) +expr_containers(#20576,#20001) +#20578=* +properties(#20578,#20576,0,0,"""with"": ... json"" }") +#20579=@"loc,{#10000},10,31,10,54" +locations_default(#20579,#10000,10,31,10,54) +hasLocation(#20578,#20579) #20580=* -regexpterm(#20580,14,#20579,0,"with") -#20581=@"loc,{#10000},10,32,10,35" -locations_default(#20581,#10000,10,32,10,35) -hasLocation(#20580,#20581) -regexp_const_value(#20580,"with") -#20582=* -exprs(#20582,8,#20577,1,"{ type: ""json"" }") -#20583=@"loc,{#10000},10,39,10,54" -locations_default(#20583,#10000,10,39,10,54) -hasLocation(#20582,#20583) -enclosing_stmt(#20582,#20566) -expr_containers(#20582,#20001) -#20584=* -properties(#20584,#20582,0,0,"type: ""json""") -#20585=@"loc,{#10000},10,41,10,52" -locations_default(#20585,#10000,10,41,10,52) -hasLocation(#20584,#20585) -#20586=* -exprs(#20586,0,#20584,0,"type") -hasLocation(#20586,#20243) -enclosing_stmt(#20586,#20566) -expr_containers(#20586,#20001) -literals("type","type",#20586) +exprs(#20580,4,#20578,0,"""with""") +hasLocation(#20580,#20237) +enclosing_stmt(#20580,#20567) +expr_containers(#20580,#20001) +literals("with","""with""",#20580) +#20581=* +regexpterm(#20581,14,#20580,0,"with") +#20582=@"loc,{#10000},10,32,10,35" +locations_default(#20582,#10000,10,32,10,35) +hasLocation(#20581,#20582) +regexp_const_value(#20581,"with") +#20583=* +exprs(#20583,8,#20578,1,"{ type: ""json"" }") +#20584=@"loc,{#10000},10,39,10,54" +locations_default(#20584,#10000,10,39,10,54) +hasLocation(#20583,#20584) +enclosing_stmt(#20583,#20567) +expr_containers(#20583,#20001) +#20585=* +properties(#20585,#20583,0,0,"type: ""json""") +#20586=@"loc,{#10000},10,41,10,52" +locations_default(#20586,#10000,10,41,10,52) +hasLocation(#20585,#20586) #20587=* -exprs(#20587,4,#20584,1,"""json""") -hasLocation(#20587,#20247) -enclosing_stmt(#20587,#20566) +exprs(#20587,0,#20585,0,"type") +hasLocation(#20587,#20243) +enclosing_stmt(#20587,#20567) expr_containers(#20587,#20001) -literals("json","""json""",#20587) +literals("type","type",#20587) #20588=* -regexpterm(#20588,14,#20587,0,"json") -#20589=@"loc,{#10000},10,48,10,51" -locations_default(#20589,#10000,10,48,10,51) -hasLocation(#20588,#20589) -regexp_const_value(#20588,"json") -#20590=* -stmts(#20590,27,#20001,8,"import ""module"";") -#20591=@"loc,{#10000},12,1,12,16" -locations_default(#20591,#10000,12,1,12,16) -hasLocation(#20590,#20591) -stmt_containers(#20590,#20001) -#20592=* -exprs(#20592,4,#20590,-1,"""module""") -hasLocation(#20592,#20259) -enclosing_stmt(#20592,#20590) -expr_containers(#20592,#20001) -literals("module","""module""",#20592) +exprs(#20588,4,#20585,1,"""json""") +hasLocation(#20588,#20247) +enclosing_stmt(#20588,#20567) +expr_containers(#20588,#20001) +literals("json","""json""",#20588) +#20589=* +regexpterm(#20589,14,#20588,0,"json") +#20590=@"loc,{#10000},10,48,10,51" +locations_default(#20590,#10000,10,48,10,51) +hasLocation(#20589,#20590) +regexp_const_value(#20589,"json") +#20591=* +stmts(#20591,27,#20001,8,"import ""module"";") +#20592=@"loc,{#10000},12,1,12,16" +locations_default(#20592,#10000,12,1,12,16) +hasLocation(#20591,#20592) +stmt_containers(#20591,#20001) #20593=* -regexpterm(#20593,14,#20592,0,"module") -#20594=@"loc,{#10000},12,9,12,14" -locations_default(#20594,#10000,12,9,12,14) -hasLocation(#20593,#20594) -regexp_const_value(#20593,"module") -#20595=* -stmts(#20595,2,#20001,9,"assert( ... on"" });") -#20596=@"loc,{#10000},13,1,13,25" -locations_default(#20596,#10000,13,1,13,25) -hasLocation(#20595,#20596) -stmt_containers(#20595,#20001) -#20597=* -exprs(#20597,13,#20595,0,"assert( ... son"" })") -#20598=@"loc,{#10000},13,1,13,24" -locations_default(#20598,#10000,13,1,13,24) -hasLocation(#20597,#20598) -enclosing_stmt(#20597,#20595) -expr_containers(#20597,#20001) -#20599=* -exprs(#20599,79,#20597,-1,"assert") -hasLocation(#20599,#20263) -enclosing_stmt(#20599,#20595) -expr_containers(#20599,#20001) -literals("assert","assert",#20599) -#20600=@"var;{assert};{#20000}" -variables(#20600,"assert",#20000) -bind(#20599,#20600) -#20601=* -exprs(#20601,8,#20597,0,"{ type: ""json"" }") -#20602=@"loc,{#10000},13,8,13,23" -locations_default(#20602,#10000,13,8,13,23) -hasLocation(#20601,#20602) -enclosing_stmt(#20601,#20595) -expr_containers(#20601,#20001) -#20603=* -properties(#20603,#20601,0,0,"type: ""json""") -#20604=@"loc,{#10000},13,10,13,21" -locations_default(#20604,#10000,13,10,13,21) -hasLocation(#20603,#20604) -#20605=* -exprs(#20605,0,#20603,0,"type") -hasLocation(#20605,#20269) -enclosing_stmt(#20605,#20595) -expr_containers(#20605,#20001) -literals("type","type",#20605) +exprs(#20593,4,#20591,-1,"""module""") +hasLocation(#20593,#20259) +enclosing_stmt(#20593,#20591) +expr_containers(#20593,#20001) +literals("module","""module""",#20593) +#20594=* +regexpterm(#20594,14,#20593,0,"module") +#20595=@"loc,{#10000},12,9,12,14" +locations_default(#20595,#10000,12,9,12,14) +hasLocation(#20594,#20595) +regexp_const_value(#20594,"module") +#20596=* +stmts(#20596,2,#20001,9,"assert( ... on"" });") +#20597=@"loc,{#10000},13,1,13,25" +locations_default(#20597,#10000,13,1,13,25) +hasLocation(#20596,#20597) +stmt_containers(#20596,#20001) +#20598=* +exprs(#20598,13,#20596,0,"assert( ... son"" })") +#20599=@"loc,{#10000},13,1,13,24" +locations_default(#20599,#10000,13,1,13,24) +hasLocation(#20598,#20599) +enclosing_stmt(#20598,#20596) +expr_containers(#20598,#20001) +#20600=* +exprs(#20600,79,#20598,-1,"assert") +hasLocation(#20600,#20263) +enclosing_stmt(#20600,#20596) +expr_containers(#20600,#20001) +literals("assert","assert",#20600) +#20601=@"var;{assert};{#20000}" +variables(#20601,"assert",#20000) +bind(#20600,#20601) +#20602=* +exprs(#20602,8,#20598,0,"{ type: ""json"" }") +#20603=@"loc,{#10000},13,8,13,23" +locations_default(#20603,#10000,13,8,13,23) +hasLocation(#20602,#20603) +enclosing_stmt(#20602,#20596) +expr_containers(#20602,#20001) +#20604=* +properties(#20604,#20602,0,0,"type: ""json""") +#20605=@"loc,{#10000},13,10,13,21" +locations_default(#20605,#10000,13,10,13,21) +hasLocation(#20604,#20605) #20606=* -exprs(#20606,4,#20603,1,"""json""") -hasLocation(#20606,#20273) -enclosing_stmt(#20606,#20595) +exprs(#20606,0,#20604,0,"type") +hasLocation(#20606,#20269) +enclosing_stmt(#20606,#20596) expr_containers(#20606,#20001) -literals("json","""json""",#20606) +literals("type","type",#20606) #20607=* -regexpterm(#20607,14,#20606,0,"json") -#20608=@"loc,{#10000},13,17,13,20" -locations_default(#20608,#10000,13,17,13,20) -hasLocation(#20607,#20608) -regexp_const_value(#20607,"json") -#20609=* -stmts(#20609,27,#20001,10,"import ... son"" };") -hasLocation(#20609,#20035) -stmt_containers(#20609,#20001) +exprs(#20607,4,#20604,1,"""json""") +hasLocation(#20607,#20273) +enclosing_stmt(#20607,#20596) +expr_containers(#20607,#20001) +literals("json","""json""",#20607) +#20608=* +regexpterm(#20608,14,#20607,0,"json") +#20609=@"loc,{#10000},13,17,13,20" +locations_default(#20609,#10000,13,17,13,20) +hasLocation(#20608,#20609) +regexp_const_value(#20608,"json") #20610=* -exprs(#20610,4,#20609,-1,"""module""") -hasLocation(#20610,#20283) -enclosing_stmt(#20610,#20609) -expr_containers(#20610,#20001) -literals("module","""module""",#20610) +stmts(#20610,27,#20001,10,"import ... son"" };") +hasLocation(#20610,#20035) +stmt_containers(#20610,#20001) #20611=* -regexpterm(#20611,14,#20610,0,"module") -#20612=@"loc,{#10000},15,9,15,14" -locations_default(#20612,#10000,15,9,15,14) -hasLocation(#20611,#20612) -regexp_const_value(#20611,"module") -#20613=* -exprs(#20613,8,#20609,-10,"{ type: ""json"" }") -#20614=@"loc,{#10000},15,24,15,39" -locations_default(#20614,#10000,15,24,15,39) -hasLocation(#20613,#20614) -enclosing_stmt(#20613,#20609) -expr_containers(#20613,#20001) -#20615=* -properties(#20615,#20613,0,0,"type: ""json""") -#20616=@"loc,{#10000},15,26,15,37" -locations_default(#20616,#10000,15,26,15,37) -hasLocation(#20615,#20616) -#20617=* -stmts(#20617,27,#20001,11,"import ... son"" };") -hasLocation(#20617,#20037) -stmt_containers(#20617,#20001) +exprs(#20611,4,#20610,-1,"""module""") +hasLocation(#20611,#20283) +enclosing_stmt(#20611,#20610) +expr_containers(#20611,#20001) +literals("module","""module""",#20611) +#20612=* +regexpterm(#20612,14,#20611,0,"module") +#20613=@"loc,{#10000},15,9,15,14" +locations_default(#20613,#10000,15,9,15,14) +hasLocation(#20612,#20613) +regexp_const_value(#20612,"module") +#20614=* +exprs(#20614,8,#20610,-10,"{ type: ""json"" }") +#20615=@"loc,{#10000},15,24,15,39" +locations_default(#20615,#10000,15,24,15,39) +hasLocation(#20614,#20615) +enclosing_stmt(#20614,#20610) +expr_containers(#20614,#20001) +#20616=* +properties(#20616,#20614,0,0,"type: ""json""") +#20617=@"loc,{#10000},15,26,15,37" +locations_default(#20617,#10000,15,26,15,37) +hasLocation(#20616,#20617) #20618=* -exprs(#20618,4,#20617,-1,"""module""") -hasLocation(#20618,#20309) -enclosing_stmt(#20618,#20617) -expr_containers(#20618,#20001) -literals("module","""module""",#20618) +stmts(#20618,27,#20001,11,"import ... son"" };") +hasLocation(#20618,#20037) +stmt_containers(#20618,#20001) #20619=* -regexpterm(#20619,14,#20618,0,"module") -#20620=@"loc,{#10000},16,22,16,27" -locations_default(#20620,#10000,16,22,16,27) -hasLocation(#20619,#20620) -regexp_const_value(#20619,"module") -#20621=* -exprs(#20621,8,#20617,-10,"{ type: ""json"" }") -#20622=@"loc,{#10000},16,37,16,52" -locations_default(#20622,#10000,16,37,16,52) -hasLocation(#20621,#20622) -enclosing_stmt(#20621,#20617) -expr_containers(#20621,#20001) -#20623=* -properties(#20623,#20621,0,0,"type: ""json""") -#20624=@"loc,{#10000},16,39,16,50" -locations_default(#20624,#10000,16,39,16,50) -hasLocation(#20623,#20624) -#20625=* -exprs(#20625,85,#20617,0,"* as v1") -#20626=@"loc,{#10000},16,8,16,14" -locations_default(#20626,#10000,16,8,16,14) -hasLocation(#20625,#20626) -enclosing_stmt(#20625,#20617) -expr_containers(#20625,#20001) -#20627=* -exprs(#20627,78,#20625,1,"v1") -hasLocation(#20627,#20305) -enclosing_stmt(#20627,#20617) -expr_containers(#20627,#20001) -literals("v1","v1",#20627) -decl(#20627,#20486) -typedecl(#20627,#20489) -namespacedecl(#20627,#20492) +exprs(#20619,4,#20618,-1,"""module""") +hasLocation(#20619,#20309) +enclosing_stmt(#20619,#20618) +expr_containers(#20619,#20001) +literals("module","""module""",#20619) +#20620=* +regexpterm(#20620,14,#20619,0,"module") +#20621=@"loc,{#10000},16,22,16,27" +locations_default(#20621,#10000,16,22,16,27) +hasLocation(#20620,#20621) +regexp_const_value(#20620,"module") +#20622=* +exprs(#20622,8,#20618,-10,"{ type: ""json"" }") +#20623=@"loc,{#10000},16,37,16,52" +locations_default(#20623,#10000,16,37,16,52) +hasLocation(#20622,#20623) +enclosing_stmt(#20622,#20618) +expr_containers(#20622,#20001) +#20624=* +properties(#20624,#20622,0,0,"type: ""json""") +#20625=@"loc,{#10000},16,39,16,50" +locations_default(#20625,#10000,16,39,16,50) +hasLocation(#20624,#20625) +#20626=* +exprs(#20626,85,#20618,0,"* as v1") +#20627=@"loc,{#10000},16,8,16,14" +locations_default(#20627,#10000,16,8,16,14) +hasLocation(#20626,#20627) +enclosing_stmt(#20626,#20618) +expr_containers(#20626,#20001) #20628=* -stmts(#20628,27,#20001,12,"import ... son"" };") -hasLocation(#20628,#20039) -stmt_containers(#20628,#20001) +exprs(#20628,78,#20626,1,"v1") +hasLocation(#20628,#20305) +enclosing_stmt(#20628,#20618) +expr_containers(#20628,#20001) +literals("v1","v1",#20628) +decl(#20628,#20486) +typedecl(#20628,#20489) +namespacedecl(#20628,#20492) #20629=* -exprs(#20629,4,#20628,-1,"""module""") -hasLocation(#20629,#20335) -enclosing_stmt(#20629,#20628) -expr_containers(#20629,#20001) -literals("module","""module""",#20629) +stmts(#20629,27,#20001,12,"import ... son"" };") +hasLocation(#20629,#20039) +stmt_containers(#20629,#20001) #20630=* -regexpterm(#20630,14,#20629,0,"module") -#20631=@"loc,{#10000},17,21,17,26" -locations_default(#20631,#10000,17,21,17,26) -hasLocation(#20630,#20631) -regexp_const_value(#20630,"module") -#20632=* -exprs(#20632,8,#20628,-10,"{ type: ""json"" }") -#20633=@"loc,{#10000},17,36,17,51" -locations_default(#20633,#10000,17,36,17,51) -hasLocation(#20632,#20633) -enclosing_stmt(#20632,#20628) -expr_containers(#20632,#20001) -#20634=* -properties(#20634,#20632,0,0,"type: ""json""") -#20635=@"loc,{#10000},17,38,17,49" -locations_default(#20635,#10000,17,38,17,49) -hasLocation(#20634,#20635) -#20636=* -exprs(#20636,83,#20628,0,"v2") -hasLocation(#20636,#20329) -enclosing_stmt(#20636,#20628) -expr_containers(#20636,#20001) +exprs(#20630,4,#20629,-1,"""module""") +hasLocation(#20630,#20335) +enclosing_stmt(#20630,#20629) +expr_containers(#20630,#20001) +literals("module","""module""",#20630) +#20631=* +regexpterm(#20631,14,#20630,0,"module") +#20632=@"loc,{#10000},17,21,17,26" +locations_default(#20632,#10000,17,21,17,26) +hasLocation(#20631,#20632) +regexp_const_value(#20631,"module") +#20633=* +exprs(#20633,8,#20629,-10,"{ type: ""json"" }") +#20634=@"loc,{#10000},17,36,17,51" +locations_default(#20634,#10000,17,36,17,51) +hasLocation(#20633,#20634) +enclosing_stmt(#20633,#20629) +expr_containers(#20633,#20001) +#20635=* +properties(#20635,#20633,0,0,"type: ""json""") +#20636=@"loc,{#10000},17,38,17,49" +locations_default(#20636,#10000,17,38,17,49) +hasLocation(#20635,#20636) #20637=* -exprs(#20637,0,#20636,0,"v2") +exprs(#20637,83,#20629,0,"v2") hasLocation(#20637,#20329) -enclosing_stmt(#20637,#20628) +enclosing_stmt(#20637,#20629) expr_containers(#20637,#20001) -literals("v2","v2",#20637) #20638=* -exprs(#20638,78,#20636,1,"v2") +exprs(#20638,0,#20637,0,"v2") hasLocation(#20638,#20329) -enclosing_stmt(#20638,#20628) +enclosing_stmt(#20638,#20629) expr_containers(#20638,#20001) literals("v2","v2",#20638) -decl(#20638,#20487) -typedecl(#20638,#20490) -namespacedecl(#20638,#20493) #20639=* -stmts(#20639,27,#20001,13,"import ... son"" };") -hasLocation(#20639,#20041) -stmt_containers(#20639,#20001) +exprs(#20639,78,#20637,1,"v2") +hasLocation(#20639,#20329) +enclosing_stmt(#20639,#20629) +expr_containers(#20639,#20001) +literals("v2","v2",#20639) +decl(#20639,#20487) +typedecl(#20639,#20490) +namespacedecl(#20639,#20493) #20640=* -exprs(#20640,4,#20639,-1,"""module""") -hasLocation(#20640,#20357) -enclosing_stmt(#20640,#20639) -expr_containers(#20640,#20001) -literals("module","""module""",#20640) +stmts(#20640,27,#20001,13,"import ... son"" };") +hasLocation(#20640,#20041) +stmt_containers(#20640,#20001) #20641=* -regexpterm(#20641,14,#20640,0,"module") -#20642=@"loc,{#10000},18,17,18,22" -locations_default(#20642,#10000,18,17,18,22) -hasLocation(#20641,#20642) -regexp_const_value(#20641,"module") -#20643=* -exprs(#20643,8,#20639,-10,"{ type: ""json"" }") -#20644=@"loc,{#10000},18,32,18,47" -locations_default(#20644,#10000,18,32,18,47) -hasLocation(#20643,#20644) -enclosing_stmt(#20643,#20639) -expr_containers(#20643,#20001) -#20645=* -properties(#20645,#20643,0,0,"type: ""json""") -#20646=@"loc,{#10000},18,34,18,45" -locations_default(#20646,#10000,18,34,18,45) -hasLocation(#20645,#20646) -#20647=* -exprs(#20647,84,#20639,0,"v3") -hasLocation(#20647,#20353) -enclosing_stmt(#20647,#20639) -expr_containers(#20647,#20001) +exprs(#20641,4,#20640,-1,"""module""") +hasLocation(#20641,#20357) +enclosing_stmt(#20641,#20640) +expr_containers(#20641,#20001) +literals("module","""module""",#20641) +#20642=* +regexpterm(#20642,14,#20641,0,"module") +#20643=@"loc,{#10000},18,17,18,22" +locations_default(#20643,#10000,18,17,18,22) +hasLocation(#20642,#20643) +regexp_const_value(#20642,"module") +#20644=* +exprs(#20644,8,#20640,-10,"{ type: ""json"" }") +#20645=@"loc,{#10000},18,32,18,47" +locations_default(#20645,#10000,18,32,18,47) +hasLocation(#20644,#20645) +enclosing_stmt(#20644,#20640) +expr_containers(#20644,#20001) +#20646=* +properties(#20646,#20644,0,0,"type: ""json""") +#20647=@"loc,{#10000},18,34,18,45" +locations_default(#20647,#10000,18,34,18,45) +hasLocation(#20646,#20647) #20648=* -exprs(#20648,78,#20647,1,"v3") +exprs(#20648,84,#20640,0,"v3") hasLocation(#20648,#20353) -enclosing_stmt(#20648,#20639) +enclosing_stmt(#20648,#20640) expr_containers(#20648,#20001) -literals("v3","v3",#20648) -decl(#20648,#20488) -typedecl(#20648,#20491) -namespacedecl(#20648,#20494) #20649=* -stmts(#20649,30,#20001,14,"export ... son"" };") -hasLocation(#20649,#20045) -stmt_containers(#20649,#20001) +exprs(#20649,78,#20648,1,"v3") +hasLocation(#20649,#20353) +enclosing_stmt(#20649,#20640) +expr_containers(#20649,#20001) +literals("v3","v3",#20649) +decl(#20649,#20488) +typedecl(#20649,#20491) +namespacedecl(#20649,#20494) #20650=* -exprs(#20650,4,#20649,-2,"""module""") -hasLocation(#20650,#20383) -enclosing_stmt(#20650,#20649) -expr_containers(#20650,#20001) -literals("module","""module""",#20650) +stmts(#20650,30,#20001,14,"export ... son"" };") +hasLocation(#20650,#20045) +stmt_containers(#20650,#20001) #20651=* -regexpterm(#20651,14,#20650,0,"module") -#20652=@"loc,{#10000},20,21,20,26" -locations_default(#20652,#10000,20,21,20,26) -hasLocation(#20651,#20652) -regexp_const_value(#20651,"module") -#20653=* -exprs(#20653,8,#20649,-10,"{ type: ""json"" }") -#20654=@"loc,{#10000},20,36,20,51" -locations_default(#20654,#10000,20,36,20,51) -hasLocation(#20653,#20654) -enclosing_stmt(#20653,#20649) -expr_containers(#20653,#20001) -#20655=* -properties(#20655,#20653,0,0,"type: ""json""") -#20656=@"loc,{#10000},20,38,20,49" -locations_default(#20656,#10000,20,38,20,49) -hasLocation(#20655,#20656) -#20657=* -exprs(#20657,86,#20649,0,"v4") -hasLocation(#20657,#20377) -enclosing_stmt(#20657,#20649) -expr_containers(#20657,#20001) +exprs(#20651,4,#20650,-2,"""module""") +hasLocation(#20651,#20383) +enclosing_stmt(#20651,#20650) +expr_containers(#20651,#20001) +literals("module","""module""",#20651) +#20652=* +regexpterm(#20652,14,#20651,0,"module") +#20653=@"loc,{#10000},20,21,20,26" +locations_default(#20653,#10000,20,21,20,26) +hasLocation(#20652,#20653) +regexp_const_value(#20652,"module") +#20654=* +exprs(#20654,8,#20650,-10,"{ type: ""json"" }") +#20655=@"loc,{#10000},20,36,20,51" +locations_default(#20655,#10000,20,36,20,51) +hasLocation(#20654,#20655) +enclosing_stmt(#20654,#20650) +expr_containers(#20654,#20001) +#20656=* +properties(#20656,#20654,0,0,"type: ""json""") +#20657=@"loc,{#10000},20,38,20,49" +locations_default(#20657,#10000,20,38,20,49) +hasLocation(#20656,#20657) #20658=* -exprs(#20658,0,#20657,0,"v4") +exprs(#20658,86,#20650,0,"v4") hasLocation(#20658,#20377) -enclosing_stmt(#20658,#20649) +enclosing_stmt(#20658,#20650) expr_containers(#20658,#20001) -literals("v4","v4",#20658) #20659=* -exprs(#20659,0,#20657,1,"v4") +exprs(#20659,0,#20658,0,"v4") hasLocation(#20659,#20377) -enclosing_stmt(#20659,#20649) +enclosing_stmt(#20659,#20650) expr_containers(#20659,#20001) literals("v4","v4",#20659) #20660=* -stmts(#20660,28,#20001,15,"export ... son"" };") -hasLocation(#20660,#20047) -stmt_containers(#20660,#20001) +exprs(#20660,0,#20658,1,"v4") +hasLocation(#20660,#20377) +enclosing_stmt(#20660,#20650) +expr_containers(#20660,#20001) +literals("v4","v4",#20660) #20661=* -exprs(#20661,4,#20660,0,"""module""") -hasLocation(#20661,#20405) -enclosing_stmt(#20661,#20660) -expr_containers(#20661,#20001) -literals("module","""module""",#20661) +stmts(#20661,28,#20001,15,"export ... son"" };") +hasLocation(#20661,#20047) +stmt_containers(#20661,#20001) #20662=* -regexpterm(#20662,14,#20661,0,"module") -#20663=@"loc,{#10000},21,16,21,21" -locations_default(#20663,#10000,21,16,21,21) -hasLocation(#20662,#20663) -regexp_const_value(#20662,"module") -#20664=* -exprs(#20664,8,#20660,-10,"{ type: ""json"" }") -#20665=@"loc,{#10000},21,31,21,46" -locations_default(#20665,#10000,21,31,21,46) -hasLocation(#20664,#20665) -enclosing_stmt(#20664,#20660) -expr_containers(#20664,#20001) -#20666=* -properties(#20666,#20664,0,0,"type: ""json""") -#20667=@"loc,{#10000},21,33,21,44" -locations_default(#20667,#10000,21,33,21,44) -hasLocation(#20666,#20667) -#20668=* -stmts(#20668,30,#20001,16,"export ... son"" };") -hasLocation(#20668,#20049) -stmt_containers(#20668,#20001) +exprs(#20662,4,#20661,0,"""module""") +hasLocation(#20662,#20405) +enclosing_stmt(#20662,#20661) +expr_containers(#20662,#20001) +literals("module","""module""",#20662) +#20663=* +regexpterm(#20663,14,#20662,0,"module") +#20664=@"loc,{#10000},21,16,21,21" +locations_default(#20664,#10000,21,16,21,21) +hasLocation(#20663,#20664) +regexp_const_value(#20663,"module") +#20665=* +exprs(#20665,8,#20661,-10,"{ type: ""json"" }") +#20666=@"loc,{#10000},21,31,21,46" +locations_default(#20666,#10000,21,31,21,46) +hasLocation(#20665,#20666) +enclosing_stmt(#20665,#20661) +expr_containers(#20665,#20001) +#20667=* +properties(#20667,#20665,0,0,"type: ""json""") +#20668=@"loc,{#10000},21,33,21,44" +locations_default(#20668,#10000,21,33,21,44) +hasLocation(#20667,#20668) #20669=* -exprs(#20669,4,#20668,-2,"""module""") -hasLocation(#20669,#20431) -enclosing_stmt(#20669,#20668) -expr_containers(#20669,#20001) -literals("module","""module""",#20669) +stmts(#20669,30,#20001,16,"export ... son"" };") +hasLocation(#20669,#20049) +stmt_containers(#20669,#20001) #20670=* -regexpterm(#20670,14,#20669,0,"module") -#20671=@"loc,{#10000},22,22,22,27" -locations_default(#20671,#10000,22,22,22,27) -hasLocation(#20670,#20671) -regexp_const_value(#20670,"module") -#20672=* -exprs(#20672,8,#20668,-10,"{ type: ""json"" }") -#20673=@"loc,{#10000},22,37,22,52" -locations_default(#20673,#10000,22,37,22,52) -hasLocation(#20672,#20673) -enclosing_stmt(#20672,#20668) -expr_containers(#20672,#20001) -#20674=* -properties(#20674,#20672,0,0,"type: ""json""") -#20675=@"loc,{#10000},22,39,22,50" -locations_default(#20675,#10000,22,39,22,50) -hasLocation(#20674,#20675) -#20676=* -exprs(#20676,96,#20668,0,"* as v5") -#20677=@"loc,{#10000},22,8,22,14" -locations_default(#20677,#10000,22,8,22,14) -hasLocation(#20676,#20677) -enclosing_stmt(#20676,#20668) -expr_containers(#20676,#20001) -#20678=* -exprs(#20678,0,#20676,1,"v5") -hasLocation(#20678,#20427) -enclosing_stmt(#20678,#20668) -expr_containers(#20678,#20001) -literals("v5","v5",#20678) +exprs(#20670,4,#20669,-2,"""module""") +hasLocation(#20670,#20431) +enclosing_stmt(#20670,#20669) +expr_containers(#20670,#20001) +literals("module","""module""",#20670) +#20671=* +regexpterm(#20671,14,#20670,0,"module") +#20672=@"loc,{#10000},22,22,22,27" +locations_default(#20672,#10000,22,22,22,27) +hasLocation(#20671,#20672) +regexp_const_value(#20671,"module") +#20673=* +exprs(#20673,8,#20669,-10,"{ type: ""json"" }") +#20674=@"loc,{#10000},22,37,22,52" +locations_default(#20674,#10000,22,37,22,52) +hasLocation(#20673,#20674) +enclosing_stmt(#20673,#20669) +expr_containers(#20673,#20001) +#20675=* +properties(#20675,#20673,0,0,"type: ""json""") +#20676=@"loc,{#10000},22,39,22,50" +locations_default(#20676,#10000,22,39,22,50) +hasLocation(#20675,#20676) +#20677=* +exprs(#20677,96,#20669,0,"* as v5") +#20678=@"loc,{#10000},22,8,22,14" +locations_default(#20678,#10000,22,8,22,14) +hasLocation(#20677,#20678) +enclosing_stmt(#20677,#20669) +expr_containers(#20677,#20001) #20679=* -stmts(#20679,22,#20001,17,"const v ... "" } });") -hasLocation(#20679,#20053) -stmt_containers(#20679,#20001) +exprs(#20679,0,#20677,1,"v5") +hasLocation(#20679,#20427) +enclosing_stmt(#20679,#20669) +expr_containers(#20679,#20001) +literals("v5","v5",#20679) #20680=* -exprs(#20680,64,#20679,0,"v6 = im ... n"" } })") -#20681=@"loc,{#10000},24,7,24,57" -locations_default(#20681,#10000,24,7,24,57) -hasLocation(#20680,#20681) -enclosing_stmt(#20680,#20679) -expr_containers(#20680,#20001) -#20682=* -exprs(#20682,78,#20680,0,"v6") -hasLocation(#20682,#20449) -enclosing_stmt(#20682,#20679) -expr_containers(#20682,#20001) -literals("v6","v6",#20682) -decl(#20682,#20495) +stmts(#20680,22,#20001,17,"const v ... "" } });") +hasLocation(#20680,#20053) +stmt_containers(#20680,#20001) +#20681=* +exprs(#20681,64,#20680,0,"v6 = im ... n"" } })") +#20682=@"loc,{#10000},24,7,24,57" +locations_default(#20682,#10000,24,7,24,57) +hasLocation(#20681,#20682) +enclosing_stmt(#20681,#20680) +expr_containers(#20681,#20001) #20683=* -exprs(#20683,99,#20680,1,"import( ... n"" } })") -#20684=@"loc,{#10000},24,12,24,57" -locations_default(#20684,#10000,24,12,24,57) -hasLocation(#20683,#20684) -enclosing_stmt(#20683,#20679) +exprs(#20683,78,#20681,0,"v6") +hasLocation(#20683,#20449) +enclosing_stmt(#20683,#20680) expr_containers(#20683,#20001) -#20685=* -exprs(#20685,4,#20683,0,"""module""") -hasLocation(#20685,#20457) -enclosing_stmt(#20685,#20679) -expr_containers(#20685,#20001) -literals("module","""module""",#20685) +literals("v6","v6",#20683) +decl(#20683,#20495) +#20684=* +exprs(#20684,99,#20681,1,"import( ... n"" } })") +#20685=@"loc,{#10000},24,12,24,57" +locations_default(#20685,#10000,24,12,24,57) +hasLocation(#20684,#20685) +enclosing_stmt(#20684,#20680) +expr_containers(#20684,#20001) #20686=* -regexpterm(#20686,14,#20685,0,"module") -#20687=@"loc,{#10000},24,20,24,25" -locations_default(#20687,#10000,24,20,24,25) -hasLocation(#20686,#20687) -regexp_const_value(#20686,"module") -#20688=* -exprs(#20688,8,#20683,1,"{ asser ... on"" } }") -#20689=@"loc,{#10000},24,29,24,56" -locations_default(#20689,#10000,24,29,24,56) -hasLocation(#20688,#20689) -enclosing_stmt(#20688,#20679) -expr_containers(#20688,#20001) -#20690=* -properties(#20690,#20688,0,0,"assert: ... json"" }") -#20691=@"loc,{#10000},24,31,24,54" -locations_default(#20691,#10000,24,31,24,54) -hasLocation(#20690,#20691) -#20692=* -exprs(#20692,0,#20690,0,"assert") -hasLocation(#20692,#20463) -enclosing_stmt(#20692,#20679) -expr_containers(#20692,#20001) -literals("assert","assert",#20692) +exprs(#20686,4,#20684,0,"""module""") +hasLocation(#20686,#20457) +enclosing_stmt(#20686,#20680) +expr_containers(#20686,#20001) +literals("module","""module""",#20686) +#20687=* +regexpterm(#20687,14,#20686,0,"module") +#20688=@"loc,{#10000},24,20,24,25" +locations_default(#20688,#10000,24,20,24,25) +hasLocation(#20687,#20688) +regexp_const_value(#20687,"module") +#20689=* +exprs(#20689,8,#20684,1,"{ asser ... on"" } }") +#20690=@"loc,{#10000},24,29,24,56" +locations_default(#20690,#10000,24,29,24,56) +hasLocation(#20689,#20690) +enclosing_stmt(#20689,#20680) +expr_containers(#20689,#20001) +#20691=* +properties(#20691,#20689,0,0,"assert: ... json"" }") +#20692=@"loc,{#10000},24,31,24,54" +locations_default(#20692,#10000,24,31,24,54) +hasLocation(#20691,#20692) #20693=* -exprs(#20693,8,#20690,1,"{ type: ""json"" }") -#20694=@"loc,{#10000},24,39,24,54" -locations_default(#20694,#10000,24,39,24,54) -hasLocation(#20693,#20694) -enclosing_stmt(#20693,#20679) +exprs(#20693,0,#20691,0,"assert") +hasLocation(#20693,#20463) +enclosing_stmt(#20693,#20680) expr_containers(#20693,#20001) -#20695=* -properties(#20695,#20693,0,0,"type: ""json""") -#20696=@"loc,{#10000},24,41,24,52" -locations_default(#20696,#10000,24,41,24,52) -hasLocation(#20695,#20696) -#20697=* -exprs(#20697,0,#20695,0,"type") -hasLocation(#20697,#20469) -enclosing_stmt(#20697,#20679) -expr_containers(#20697,#20001) -literals("type","type",#20697) +literals("assert","assert",#20693) +#20694=* +exprs(#20694,8,#20691,1,"{ type: ""json"" }") +#20695=@"loc,{#10000},24,39,24,54" +locations_default(#20695,#10000,24,39,24,54) +hasLocation(#20694,#20695) +enclosing_stmt(#20694,#20680) +expr_containers(#20694,#20001) +#20696=* +properties(#20696,#20694,0,0,"type: ""json""") +#20697=@"loc,{#10000},24,41,24,52" +locations_default(#20697,#10000,24,41,24,52) +hasLocation(#20696,#20697) #20698=* -exprs(#20698,4,#20695,1,"""json""") -hasLocation(#20698,#20473) -enclosing_stmt(#20698,#20679) +exprs(#20698,0,#20696,0,"type") +hasLocation(#20698,#20469) +enclosing_stmt(#20698,#20680) expr_containers(#20698,#20001) -literals("json","""json""",#20698) +literals("type","type",#20698) #20699=* -regexpterm(#20699,14,#20698,0,"json") -#20700=@"loc,{#10000},24,48,24,51" -locations_default(#20700,#10000,24,48,24,51) -hasLocation(#20699,#20700) -regexp_const_value(#20699,"json") -#20701=* -entry_cfg_node(#20701,#20001) -#20702=@"loc,{#10000},1,1,1,0" -locations_default(#20702,#10000,1,1,1,0) -hasLocation(#20701,#20702) -#20703=* -exit_cfg_node(#20703,#20001) -hasLocation(#20703,#20483) -successor(#20679,#20682) -successor(#20685,#20683) -successor(#20683,#20680) -successor(#20682,#20685) -successor(#20680,#20703) -successor(#20668,#20669) -successor(#20676,#20678) -successor(#20678,#20679) -successor(#20669,#20676) +exprs(#20699,4,#20696,1,"""json""") +hasLocation(#20699,#20473) +enclosing_stmt(#20699,#20680) +expr_containers(#20699,#20001) +literals("json","""json""",#20699) +#20700=* +regexpterm(#20700,14,#20699,0,"json") +#20701=@"loc,{#10000},24,48,24,51" +locations_default(#20701,#10000,24,48,24,51) +hasLocation(#20700,#20701) +regexp_const_value(#20700,"json") +#20702=* +entry_cfg_node(#20702,#20001) +#20703=@"loc,{#10000},1,1,1,0" +locations_default(#20703,#10000,1,1,1,0) +hasLocation(#20702,#20703) +#20704=* +exit_cfg_node(#20704,#20001) +hasLocation(#20704,#20483) +successor(#20680,#20683) +successor(#20686,#20684) +successor(#20684,#20681) +successor(#20683,#20686) +successor(#20681,#20704) +successor(#20669,#20670) +successor(#20677,#20679) +successor(#20679,#20680) +successor(#20670,#20677) +successor(#20661,#20662) +successor(#20662,#20669) +successor(#20650,#20651) +successor(#20658,#20659) successor(#20660,#20661) -successor(#20661,#20668) -successor(#20649,#20650) -successor(#20657,#20658) successor(#20659,#20660) -successor(#20658,#20659) -successor(#20650,#20657) -successor(#20639,#20649) -successor(#20628,#20639) -successor(#20617,#20628) -successor(#20609,#20617) -successor(#20595,#20599) -successor(#20601,#20605) -successor(#20606,#20603) -successor(#20605,#20606) -successor(#20603,#20597) -successor(#20599,#20601) -successor(#20597,#20609) -successor(#20590,#20595) -successor(#20566,#20569) -successor(#20572,#20570) -successor(#20570,#20567) -successor(#20569,#20572) -successor(#20567,#20590) -successor(#20555,#20556) -successor(#20563,#20565) -successor(#20565,#20566) -successor(#20556,#20563) +successor(#20651,#20658) +successor(#20640,#20650) +successor(#20629,#20640) +successor(#20618,#20629) +successor(#20610,#20618) +successor(#20596,#20600) +successor(#20602,#20606) +successor(#20607,#20604) +successor(#20606,#20607) +successor(#20604,#20598) +successor(#20600,#20602) +successor(#20598,#20610) +successor(#20591,#20596) +successor(#20567,#20570) +successor(#20573,#20571) +successor(#20571,#20568) +successor(#20570,#20573) +successor(#20568,#20591) +successor(#20556,#20557) +successor(#20564,#20566) +successor(#20566,#20567) +successor(#20557,#20564) +successor(#20548,#20549) +successor(#20549,#20556) +successor(#20537,#20538) +successor(#20545,#20546) successor(#20547,#20548) -successor(#20548,#20555) -successor(#20536,#20537) -successor(#20544,#20545) successor(#20546,#20547) -successor(#20545,#20546) -successor(#20537,#20544) -successor(#20526,#20536) -successor(#20515,#20526) -successor(#20504,#20515) -successor(#20496,#20504) -successor(#20647,#20496) -successor(#20636,#20647) -successor(#20625,#20636) -successor(#20534,#20625) -successor(#20523,#20534) -successor(#20512,#20523) -successor(#20701,#20512) +successor(#20538,#20545) +successor(#20527,#20537) +successor(#20516,#20527) +successor(#20505,#20516) +successor(#20497,#20505) +successor(#20648,#20497) +successor(#20637,#20648) +successor(#20626,#20637) +successor(#20535,#20626) +successor(#20524,#20535) +successor(#20513,#20524) +successor(#20702,#20513) numlines(#10000,24,18,2) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/importExport.ts.trap b/javascript/extractor/tests/ts/output/trap/importExport.ts.trap index 5b4b6d1cdcf4..f4524136b433 100644 --- a/javascript/extractor/tests/ts/output/trap/importExport.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/importExport.ts.trap @@ -136,94 +136,96 @@ local_type_names(#20044,"Something",#20041) local_type_names(#20045,"importExport",#20041) local_namespace_names(#20046,"Something",#20041) local_namespace_names(#20047,"importExport",#20041) -#20048=* -stmts(#20048,27,#20001,0,"import ... where';") -hasLocation(#20048,#20003) -stmt_containers(#20048,#20001) +#20048=@"var;{this};{#20041}" +variables(#20048,"this",#20041) #20049=* -exprs(#20049,4,#20048,-1,"'somewhere'") -hasLocation(#20049,#20019) -enclosing_stmt(#20049,#20048) -expr_containers(#20049,#20001) -literals("somewhere","'somewhere'",#20049) +stmts(#20049,27,#20001,0,"import ... where';") +hasLocation(#20049,#20003) +stmt_containers(#20049,#20001) #20050=* -regexpterm(#20050,14,#20049,0,"somewhere") -#20051=@"loc,{#10000},1,29,1,37" -locations_default(#20051,#10000,1,29,1,37) -hasLocation(#20050,#20051) -regexp_const_value(#20050,"somewhere") -#20052=* -exprs(#20052,85,#20048,0,"* as Something") -#20053=@"loc,{#10000},1,8,1,21" -locations_default(#20053,#10000,1,8,1,21) -hasLocation(#20052,#20053) -enclosing_stmt(#20052,#20048) -expr_containers(#20052,#20001) -#20054=* -exprs(#20054,78,#20052,1,"Something") -hasLocation(#20054,#20015) -enclosing_stmt(#20054,#20048) -expr_containers(#20054,#20001) -literals("Something","Something",#20054) -decl(#20054,#20042) -typedecl(#20054,#20044) -namespacedecl(#20054,#20046) +exprs(#20050,4,#20049,-1,"'somewhere'") +hasLocation(#20050,#20019) +enclosing_stmt(#20050,#20049) +expr_containers(#20050,#20001) +literals("somewhere","'somewhere'",#20050) +#20051=* +regexpterm(#20051,14,#20050,0,"somewhere") +#20052=@"loc,{#10000},1,29,1,37" +locations_default(#20052,#10000,1,29,1,37) +hasLocation(#20051,#20052) +regexp_const_value(#20051,"somewhere") +#20053=* +exprs(#20053,85,#20049,0,"* as Something") +#20054=@"loc,{#10000},1,8,1,21" +locations_default(#20054,#10000,1,8,1,21) +hasLocation(#20053,#20054) +enclosing_stmt(#20053,#20049) +expr_containers(#20053,#20001) #20055=* -stmts(#20055,30,#20001,1,"export ... thingy;") -hasLocation(#20055,#20007) -stmt_containers(#20055,#20001) +exprs(#20055,78,#20053,1,"Something") +hasLocation(#20055,#20015) +enclosing_stmt(#20055,#20049) +expr_containers(#20055,#20001) +literals("Something","Something",#20055) +decl(#20055,#20042) +typedecl(#20055,#20044) +namespacedecl(#20055,#20046) #20056=* -stmts(#20056,32,#20055,-1,"import ... thingy;") -#20057=@"loc,{#10000},3,8,3,46" -locations_default(#20057,#10000,3,8,3,46) -hasLocation(#20056,#20057) +stmts(#20056,30,#20001,1,"export ... thingy;") +hasLocation(#20056,#20007) stmt_containers(#20056,#20001) -#20058=* -exprs(#20058,78,#20056,0,"importExport") -hasLocation(#20058,#20027) -enclosing_stmt(#20058,#20056) -expr_containers(#20058,#20001) -literals("importExport","importExport",#20058) -decl(#20058,#20043) -typedecl(#20058,#20045) -namespacedecl(#20058,#20047) +#20057=* +stmts(#20057,32,#20056,-1,"import ... thingy;") +#20058=@"loc,{#10000},3,8,3,46" +locations_default(#20058,#10000,3,8,3,46) +hasLocation(#20057,#20058) +stmt_containers(#20057,#20001) #20059=* -exprs(#20059,14,#20056,1,"Something.thingy") -#20060=@"loc,{#10000},3,30,3,45" -locations_default(#20060,#10000,3,30,3,45) -hasLocation(#20059,#20060) -enclosing_stmt(#20059,#20056) +exprs(#20059,78,#20057,0,"importExport") +hasLocation(#20059,#20027) +enclosing_stmt(#20059,#20057) expr_containers(#20059,#20001) -#20061=* -exprs(#20061,103,#20059,0,"Something") -hasLocation(#20061,#20031) -enclosing_stmt(#20061,#20056) -expr_containers(#20061,#20001) -literals("Something","Something",#20061) -namespacebind(#20061,#20046) -bind(#20061,#20042) +literals("importExport","importExport",#20059) +decl(#20059,#20043) +typedecl(#20059,#20045) +namespacedecl(#20059,#20047) +#20060=* +exprs(#20060,14,#20057,1,"Something.thingy") +#20061=@"loc,{#10000},3,30,3,45" +locations_default(#20061,#10000,3,30,3,45) +hasLocation(#20060,#20061) +enclosing_stmt(#20060,#20057) +expr_containers(#20060,#20001) #20062=* -exprs(#20062,0,#20059,1,"thingy") -hasLocation(#20062,#20035) -enclosing_stmt(#20062,#20056) +exprs(#20062,103,#20060,0,"Something") +hasLocation(#20062,#20031) +enclosing_stmt(#20062,#20057) expr_containers(#20062,#20001) -literals("thingy","thingy",#20062) +literals("Something","Something",#20062) +namespacebind(#20062,#20046) +bind(#20062,#20042) #20063=* -entry_cfg_node(#20063,#20001) -#20064=@"loc,{#10000},1,1,1,0" -locations_default(#20064,#10000,1,1,1,0) -hasLocation(#20063,#20064) -#20065=* -exit_cfg_node(#20065,#20001) -hasLocation(#20065,#20039) -successor(#20055,#20058) -successor(#20062,#20059) -successor(#20061,#20062) -successor(#20059,#20056) -successor(#20058,#20061) -successor(#20056,#20065) -successor(#20048,#20055) -successor(#20052,#20048) -successor(#20063,#20052) +exprs(#20063,0,#20060,1,"thingy") +hasLocation(#20063,#20035) +enclosing_stmt(#20063,#20057) +expr_containers(#20063,#20001) +literals("thingy","thingy",#20063) +#20064=* +entry_cfg_node(#20064,#20001) +#20065=@"loc,{#10000},1,1,1,0" +locations_default(#20065,#10000,1,1,1,0) +hasLocation(#20064,#20065) +#20066=* +exit_cfg_node(#20066,#20001) +hasLocation(#20066,#20039) +successor(#20056,#20059) +successor(#20063,#20060) +successor(#20062,#20063) +successor(#20060,#20057) +successor(#20059,#20062) +successor(#20057,#20066) +successor(#20049,#20056) +successor(#20053,#20049) +successor(#20064,#20053) numlines(#10000,3,2,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/importNonStrings.ts.trap b/javascript/extractor/tests/ts/output/trap/importNonStrings.ts.trap index 82e087ceca7d..cc7ec5477d8c 100644 --- a/javascript/extractor/tests/ts/output/trap/importNonStrings.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/importNonStrings.ts.trap @@ -163,95 +163,97 @@ local_type_names(#20059,"X",#20000) local_type_names(#20060,"Y",#20000) #20061=@"local_type_name;{Z};{#20000}" local_type_names(#20061,"Z",#20000) -#20062=* -stmts(#20062,35,#20001,0,"type X = import(3);") -hasLocation(#20062,#20003) -stmt_containers(#20062,#20001) +#20062=@"var;{this};{#20000}" +variables(#20062,"this",#20000) #20063=* -typeexprs(#20063,1,#20062,0,"X") -hasLocation(#20063,#20011) -enclosing_stmt(#20063,#20062) -expr_containers(#20063,#20001) -literals("X","X",#20063) -typedecl(#20063,#20059) +stmts(#20063,35,#20001,0,"type X = import(3);") +hasLocation(#20063,#20003) +stmt_containers(#20063,#20001) #20064=* -typeexprs(#20064,30,#20062,1,"import(3)") -#20065=@"loc,{#10000},1,10,1,18" -locations_default(#20065,#10000,1,10,1,18) -hasLocation(#20064,#20065) -enclosing_stmt(#20064,#20062) +typeexprs(#20064,1,#20063,0,"X") +hasLocation(#20064,#20011) +enclosing_stmt(#20064,#20063) expr_containers(#20064,#20001) -#20066=* -typeexprs(#20066,4,#20064,0,"3") -hasLocation(#20066,#20019) -enclosing_stmt(#20066,#20062) -expr_containers(#20066,#20001) -literals("3","3",#20066) +literals("X","X",#20064) +typedecl(#20064,#20059) +#20065=* +typeexprs(#20065,30,#20063,1,"import(3)") +#20066=@"loc,{#10000},1,10,1,18" +locations_default(#20066,#10000,1,10,1,18) +hasLocation(#20065,#20066) +enclosing_stmt(#20065,#20063) +expr_containers(#20065,#20001) #20067=* -stmts(#20067,35,#20001,1,"type Y ... `Foo`);") -hasLocation(#20067,#20005) -stmt_containers(#20067,#20001) +typeexprs(#20067,4,#20065,0,"3") +hasLocation(#20067,#20019) +enclosing_stmt(#20067,#20063) +expr_containers(#20067,#20001) +literals("3","3",#20067) #20068=* -typeexprs(#20068,1,#20067,0,"Y") -hasLocation(#20068,#20027) -enclosing_stmt(#20068,#20067) -expr_containers(#20068,#20001) -literals("Y","Y",#20068) -typedecl(#20068,#20060) +stmts(#20068,35,#20001,1,"type Y ... `Foo`);") +hasLocation(#20068,#20005) +stmt_containers(#20068,#20001) #20069=* -typeexprs(#20069,30,#20067,1,"import(`Foo`)") -#20070=@"loc,{#10000},2,10,2,22" -locations_default(#20070,#10000,2,10,2,22) -hasLocation(#20069,#20070) -enclosing_stmt(#20069,#20067) +typeexprs(#20069,1,#20068,0,"Y") +hasLocation(#20069,#20027) +enclosing_stmt(#20069,#20068) expr_containers(#20069,#20001) -#20071=* -typeexprs(#20071,37,#20069,0,"`Foo`") -hasLocation(#20071,#20035) -enclosing_stmt(#20071,#20067) -expr_containers(#20071,#20001) +literals("Y","Y",#20069) +typedecl(#20069,#20060) +#20070=* +typeexprs(#20070,30,#20068,1,"import(`Foo`)") +#20071=@"loc,{#10000},2,10,2,22" +locations_default(#20071,#10000,2,10,2,22) +hasLocation(#20070,#20071) +enclosing_stmt(#20070,#20068) +expr_containers(#20070,#20001) #20072=* -typeexprs(#20072,3,#20071,0,"`Foo`") +typeexprs(#20072,37,#20070,0,"`Foo`") hasLocation(#20072,#20035) -enclosing_stmt(#20072,#20067) +enclosing_stmt(#20072,#20068) expr_containers(#20072,#20001) -literals("Foo","Foo",#20072) #20073=* -stmts(#20073,35,#20001,2,"type Z = import(Y);") -hasLocation(#20073,#20007) -stmt_containers(#20073,#20001) +typeexprs(#20073,3,#20072,0,"`Foo`") +hasLocation(#20073,#20035) +enclosing_stmt(#20073,#20068) +expr_containers(#20073,#20001) +literals("Foo","Foo",#20073) #20074=* -typeexprs(#20074,1,#20073,0,"Z") -hasLocation(#20074,#20043) -enclosing_stmt(#20074,#20073) -expr_containers(#20074,#20001) -literals("Z","Z",#20074) -typedecl(#20074,#20061) +stmts(#20074,35,#20001,2,"type Z = import(Y);") +hasLocation(#20074,#20007) +stmt_containers(#20074,#20001) #20075=* -typeexprs(#20075,30,#20073,1,"import(Y)") -#20076=@"loc,{#10000},3,10,3,18" -locations_default(#20076,#10000,3,10,3,18) -hasLocation(#20075,#20076) -enclosing_stmt(#20075,#20073) +typeexprs(#20075,1,#20074,0,"Z") +hasLocation(#20075,#20043) +enclosing_stmt(#20075,#20074) expr_containers(#20075,#20001) -#20077=* -typeexprs(#20077,0,#20075,0,"Y") -hasLocation(#20077,#20051) -enclosing_stmt(#20077,#20073) -expr_containers(#20077,#20001) -literals("Y","Y",#20077) -typebind(#20077,#20060) +literals("Z","Z",#20075) +typedecl(#20075,#20061) +#20076=* +typeexprs(#20076,30,#20074,1,"import(Y)") +#20077=@"loc,{#10000},3,10,3,18" +locations_default(#20077,#10000,3,10,3,18) +hasLocation(#20076,#20077) +enclosing_stmt(#20076,#20074) +expr_containers(#20076,#20001) #20078=* -entry_cfg_node(#20078,#20001) -#20079=@"loc,{#10000},1,1,1,0" -locations_default(#20079,#10000,1,1,1,0) -hasLocation(#20078,#20079) -#20080=* -exit_cfg_node(#20080,#20001) -hasLocation(#20080,#20057) -successor(#20073,#20080) -successor(#20067,#20073) -successor(#20062,#20067) -successor(#20078,#20062) +typeexprs(#20078,0,#20076,0,"Y") +hasLocation(#20078,#20051) +enclosing_stmt(#20078,#20074) +expr_containers(#20078,#20001) +literals("Y","Y",#20078) +typebind(#20078,#20060) +#20079=* +entry_cfg_node(#20079,#20001) +#20080=@"loc,{#10000},1,1,1,0" +locations_default(#20080,#10000,1,1,1,0) +hasLocation(#20079,#20080) +#20081=* +exit_cfg_node(#20081,#20001) +hasLocation(#20081,#20057) +successor(#20074,#20081) +successor(#20068,#20074) +successor(#20063,#20068) +successor(#20079,#20063) numlines(#10000,3,3,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/importassign.ts.trap b/javascript/extractor/tests/ts/output/trap/importassign.ts.trap index 6b1400b59fb0..eb783ba7d925 100644 --- a/javascript/extractor/tests/ts/output/trap/importassign.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/importassign.ts.trap @@ -80,60 +80,62 @@ local_namespace_names(#20026,"x",#20023) variables(#20024,"x",#20023) local_type_names(#20025,"x",#20023) local_namespace_names(#20026,"x",#20023) -#20027=* -stmts(#20027,32,#20001,0,"import ... sign"");") -hasLocation(#20027,#20003) -stmt_containers(#20027,#20001) +#20027=@"var;{this};{#20023}" +variables(#20027,"this",#20023) #20028=* -exprs(#20028,78,#20027,0,"x") -hasLocation(#20028,#20007) -enclosing_stmt(#20028,#20027) -expr_containers(#20028,#20001) -literals("x","x",#20028) -decl(#20028,#20024) -typedecl(#20028,#20025) -namespacedecl(#20028,#20026) +stmts(#20028,32,#20001,0,"import ... sign"");") +hasLocation(#20028,#20003) +stmt_containers(#20028,#20001) #20029=* -exprs(#20029,98,#20027,1,"require ... ssign"")") -#20030=@"loc,{#10000},1,12,1,36" -locations_default(#20030,#10000,1,12,1,36) -hasLocation(#20029,#20030) -enclosing_stmt(#20029,#20027) +exprs(#20029,78,#20028,0,"x") +hasLocation(#20029,#20007) +enclosing_stmt(#20029,#20028) expr_containers(#20029,#20001) -#20031=* -exprs(#20031,4,#20029,0,"""./exportassign""") -hasLocation(#20031,#20015) -enclosing_stmt(#20031,#20027) -expr_containers(#20031,#20001) -literals("./exportassign","""./exportassign""",#20031) +literals("x","x",#20029) +decl(#20029,#20024) +typedecl(#20029,#20025) +namespacedecl(#20029,#20026) +#20030=* +exprs(#20030,98,#20028,1,"require ... ssign"")") +#20031=@"loc,{#10000},1,12,1,36" +locations_default(#20031,#10000,1,12,1,36) +hasLocation(#20030,#20031) +enclosing_stmt(#20030,#20028) +expr_containers(#20030,#20001) #20032=* -regexpterm(#20032,1,#20031,0,"./exportassign") -#20033=@"loc,{#10000},1,21,1,34" -locations_default(#20033,#10000,1,21,1,34) -hasLocation(#20032,#20033) -#20034=* -regexpterm(#20034,12,#20032,0,".") -#20035=@"loc,{#10000},1,21,1,21" -locations_default(#20035,#10000,1,21,1,21) -hasLocation(#20034,#20035) -#20036=* -regexpterm(#20036,14,#20032,1,"/exportassign") -#20037=@"loc,{#10000},1,22,1,34" -locations_default(#20037,#10000,1,22,1,34) -hasLocation(#20036,#20037) -regexp_const_value(#20036,"/exportassign") -#20038=* -entry_cfg_node(#20038,#20001) -#20039=@"loc,{#10000},1,1,1,0" -locations_default(#20039,#10000,1,1,1,0) -hasLocation(#20038,#20039) -#20040=* -exit_cfg_node(#20040,#20001) -hasLocation(#20040,#20021) -successor(#20031,#20029) -successor(#20029,#20027) -successor(#20028,#20031) -successor(#20027,#20040) -successor(#20038,#20028) +exprs(#20032,4,#20030,0,"""./exportassign""") +hasLocation(#20032,#20015) +enclosing_stmt(#20032,#20028) +expr_containers(#20032,#20001) +literals("./exportassign","""./exportassign""",#20032) +#20033=* +regexpterm(#20033,1,#20032,0,"./exportassign") +#20034=@"loc,{#10000},1,21,1,34" +locations_default(#20034,#10000,1,21,1,34) +hasLocation(#20033,#20034) +#20035=* +regexpterm(#20035,12,#20033,0,".") +#20036=@"loc,{#10000},1,21,1,21" +locations_default(#20036,#10000,1,21,1,21) +hasLocation(#20035,#20036) +#20037=* +regexpterm(#20037,14,#20033,1,"/exportassign") +#20038=@"loc,{#10000},1,22,1,34" +locations_default(#20038,#10000,1,22,1,34) +hasLocation(#20037,#20038) +regexp_const_value(#20037,"/exportassign") +#20039=* +entry_cfg_node(#20039,#20001) +#20040=@"loc,{#10000},1,1,1,0" +locations_default(#20040,#10000,1,1,1,0) +hasLocation(#20039,#20040) +#20041=* +exit_cfg_node(#20041,#20001) +hasLocation(#20041,#20021) +successor(#20032,#20030) +successor(#20030,#20028) +successor(#20029,#20032) +successor(#20028,#20041) +successor(#20039,#20029) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/interfaces.ts.trap b/javascript/extractor/tests/ts/output/trap/interfaces.ts.trap index 5ceae62d1ba3..74f922f40879 100644 --- a/javascript/extractor/tests/ts/output/trap/interfaces.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/interfaces.ts.trap @@ -261,181 +261,189 @@ hasLocation(#20001,#20092) local_namespace_names(#20093,"Foo",#20000) #20094=@"local_type_name;{MyInterface};{#20000}" local_type_names(#20094,"MyInterface",#20000) -#20095=* -stmts(#20095,34,#20001,0,"interfa ... mber;\n}") -#20096=@"loc,{#10000},1,1,5,1" -locations_default(#20096,#10000,1,1,5,1) -hasLocation(#20095,#20096) -stmt_containers(#20095,#20001) -#20097=* -typeexprs(#20097,1,#20095,0,"MyInterface") -hasLocation(#20097,#20027) -enclosing_stmt(#20097,#20095) -expr_containers(#20097,#20001) -literals("MyInterface","MyInterface",#20097) -typedecl(#20097,#20094) +#20095=@"var;{this};{#20000}" +variables(#20095,"this",#20000) +#20096=* +stmts(#20096,34,#20001,0,"interfa ... mber;\n}") +#20097=@"loc,{#10000},1,1,5,1" +locations_default(#20097,#10000,1,1,5,1) +hasLocation(#20096,#20097) +stmt_containers(#20096,#20001) #20098=* -properties(#20098,#20095,2,0,"foo();") -#20099=@"loc,{#10000},2,3,2,8" -locations_default(#20099,#10000,2,3,2,8) -hasLocation(#20098,#20099) -#20100=* -exprs(#20100,0,#20098,0,"foo") -hasLocation(#20100,#20031) -enclosing_stmt(#20100,#20095) -expr_containers(#20100,#20001) -literals("foo","foo",#20100) +typeexprs(#20098,1,#20096,0,"MyInterface") +hasLocation(#20098,#20027) +enclosing_stmt(#20098,#20096) +expr_containers(#20098,#20001) +literals("MyInterface","MyInterface",#20098) +typedecl(#20098,#20094) +#20099=* +properties(#20099,#20096,2,0,"foo();") +#20100=@"loc,{#10000},2,3,2,8" +locations_default(#20100,#10000,2,3,2,8) +hasLocation(#20099,#20100) #20101=* -exprs(#20101,9,#20098,1,"foo();") -hasLocation(#20101,#20099) -enclosing_stmt(#20101,#20095) +exprs(#20101,0,#20099,0,"foo") +hasLocation(#20101,#20031) +enclosing_stmt(#20101,#20096) expr_containers(#20101,#20001) +literals("foo","foo",#20101) #20102=* -scopes(#20102,1) -scopenodes(#20101,#20102) -scopenesting(#20102,#20000) -#20103=@"var;{arguments};{#20102}" -variables(#20103,"arguments",#20102) -is_arguments_object(#20103) -is_method(#20098) -is_abstract_member(#20098) -#20104=* -properties(#20104,#20095,3,0,"bar(x: ... string;") -#20105=@"loc,{#10000},3,3,3,25" -locations_default(#20105,#10000,3,3,3,25) -hasLocation(#20104,#20105) +exprs(#20102,9,#20099,1,"foo();") +hasLocation(#20102,#20100) +enclosing_stmt(#20102,#20096) +expr_containers(#20102,#20001) +#20103=* +scopes(#20103,1) +scopenodes(#20102,#20103) +scopenesting(#20103,#20000) +#20104=@"var;{this};{#20103}" +variables(#20104,"this",#20103) +#20105=@"var;{arguments};{#20103}" +variables(#20105,"arguments",#20103) +is_arguments_object(#20105) +is_method(#20099) +is_abstract_member(#20099) #20106=* -exprs(#20106,0,#20104,0,"bar") -hasLocation(#20106,#20039) -enclosing_stmt(#20106,#20095) -expr_containers(#20106,#20001) -literals("bar","bar",#20106) -#20107=* -exprs(#20107,9,#20104,1,"bar(x: ... string;") -hasLocation(#20107,#20105) -enclosing_stmt(#20107,#20095) -expr_containers(#20107,#20001) +properties(#20106,#20096,3,0,"bar(x: ... string;") +#20107=@"loc,{#10000},3,3,3,25" +locations_default(#20107,#10000,3,3,3,25) +hasLocation(#20106,#20107) #20108=* -scopes(#20108,1) -scopenodes(#20107,#20108) -scopenesting(#20108,#20000) -#20109=@"var;{x};{#20108}" -variables(#20109,"x",#20108) +exprs(#20108,0,#20106,0,"bar") +hasLocation(#20108,#20039) +enclosing_stmt(#20108,#20096) +expr_containers(#20108,#20001) +literals("bar","bar",#20108) +#20109=* +exprs(#20109,9,#20106,1,"bar(x: ... string;") +hasLocation(#20109,#20107) +enclosing_stmt(#20109,#20096) +expr_containers(#20109,#20001) #20110=* -exprs(#20110,78,#20107,0,"x") -hasLocation(#20110,#20043) -expr_containers(#20110,#20107) -literals("x","x",#20110) -decl(#20110,#20109) -#20111=@"var;{arguments};{#20108}" -variables(#20111,"arguments",#20108) -is_arguments_object(#20111) -#20112=* -typeexprs(#20112,2,#20107,-3,"string") -hasLocation(#20112,#20053) -expr_containers(#20112,#20107) -literals("string","string",#20112) +scopes(#20110,1) +scopenodes(#20109,#20110) +scopenesting(#20110,#20000) +#20111=@"var;{this};{#20110}" +variables(#20111,"this",#20110) +#20112=@"var;{x};{#20110}" +variables(#20112,"x",#20110) #20113=* -typeexprs(#20113,2,#20107,-6,"number") -hasLocation(#20113,#20047) -expr_containers(#20113,#20107) -literals("number","number",#20113) -is_method(#20104) -is_abstract_member(#20104) -#20114=* -properties(#20114,#20095,4,8,"field: number;") -#20115=@"loc,{#10000},4,3,4,16" -locations_default(#20115,#10000,4,3,4,16) -hasLocation(#20114,#20115) +exprs(#20113,78,#20109,0,"x") +hasLocation(#20113,#20043) +expr_containers(#20113,#20109) +literals("x","x",#20113) +decl(#20113,#20112) +#20114=@"var;{arguments};{#20110}" +variables(#20114,"arguments",#20110) +is_arguments_object(#20114) +#20115=* +typeexprs(#20115,2,#20109,-3,"string") +hasLocation(#20115,#20053) +expr_containers(#20115,#20109) +literals("string","string",#20115) #20116=* -exprs(#20116,0,#20114,0,"field") -hasLocation(#20116,#20057) -enclosing_stmt(#20116,#20095) -expr_containers(#20116,#20001) -literals("field","field",#20116) -is_abstract_member(#20114) +typeexprs(#20116,2,#20109,-6,"number") +hasLocation(#20116,#20047) +expr_containers(#20116,#20109) +literals("number","number",#20116) +is_method(#20106) +is_abstract_member(#20106) #20117=* -typeexprs(#20117,2,#20114,2,"number") -hasLocation(#20117,#20061) -enclosing_stmt(#20117,#20095) -expr_containers(#20117,#20001) -literals("number","number",#20117) -#20118=* -stmts(#20118,31,#20001,1,"namespa ... ;\n }\n}") -#20119=@"loc,{#10000},7,1,11,1" -locations_default(#20119,#10000,7,1,11,1) -hasLocation(#20118,#20119) -stmt_containers(#20118,#20001) +properties(#20117,#20096,4,8,"field: number;") +#20118=@"loc,{#10000},4,3,4,16" +locations_default(#20118,#10000,4,3,4,16) +hasLocation(#20117,#20118) +#20119=* +exprs(#20119,0,#20117,0,"field") +hasLocation(#20119,#20057) +enclosing_stmt(#20119,#20096) +expr_containers(#20119,#20001) +literals("field","field",#20119) +is_abstract_member(#20117) #20120=* -exprs(#20120,78,#20118,-1,"Foo") -hasLocation(#20120,#20068) -enclosing_stmt(#20120,#20118) +typeexprs(#20120,2,#20117,2,"number") +hasLocation(#20120,#20061) +enclosing_stmt(#20120,#20096) expr_containers(#20120,#20001) -literals("Foo","Foo",#20120) -namespacedecl(#20120,#20093) +literals("number","number",#20120) #20121=* -scopes(#20121,9) -scopenodes(#20118,#20121) -scopenesting(#20121,#20000) -#20122=@"local_type_name;{I};{#20121}" -local_type_names(#20122,"I",#20121) +stmts(#20121,31,#20001,1,"namespa ... ;\n }\n}") +#20122=@"loc,{#10000},7,1,11,1" +locations_default(#20122,#10000,7,1,11,1) +hasLocation(#20121,#20122) +stmt_containers(#20121,#20001) #20123=* -stmts(#20123,30,#20118,0,"export ... ();\n }") -#20124=@"loc,{#10000},8,3,10,3" -locations_default(#20124,#10000,8,3,10,3) -hasLocation(#20123,#20124) -stmt_containers(#20123,#20118) -#20125=* -stmts(#20125,34,#20123,-1,"interfa ... ();\n }") -#20126=@"loc,{#10000},8,10,10,3" -locations_default(#20126,#10000,8,10,10,3) -hasLocation(#20125,#20126) -stmt_containers(#20125,#20118) -#20127=* -typeexprs(#20127,1,#20125,0,"I") -hasLocation(#20127,#20076) -enclosing_stmt(#20127,#20125) -expr_containers(#20127,#20118) -literals("I","I",#20127) -typedecl(#20127,#20122) +exprs(#20123,78,#20121,-1,"Foo") +hasLocation(#20123,#20068) +enclosing_stmt(#20123,#20121) +expr_containers(#20123,#20001) +literals("Foo","Foo",#20123) +namespacedecl(#20123,#20093) +#20124=* +scopes(#20124,9) +scopenodes(#20121,#20124) +scopenesting(#20124,#20000) +#20125=@"local_type_name;{I};{#20124}" +local_type_names(#20125,"I",#20124) +#20126=* +stmts(#20126,30,#20121,0,"export ... ();\n }") +#20127=@"loc,{#10000},8,3,10,3" +locations_default(#20127,#10000,8,3,10,3) +hasLocation(#20126,#20127) +stmt_containers(#20126,#20121) #20128=* -properties(#20128,#20125,2,0,"bar();") -#20129=@"loc,{#10000},9,5,9,10" -locations_default(#20129,#10000,9,5,9,10) +stmts(#20128,34,#20126,-1,"interfa ... ();\n }") +#20129=@"loc,{#10000},8,10,10,3" +locations_default(#20129,#10000,8,10,10,3) hasLocation(#20128,#20129) +stmt_containers(#20128,#20121) #20130=* -exprs(#20130,0,#20128,0,"bar") -hasLocation(#20130,#20080) -enclosing_stmt(#20130,#20125) -expr_containers(#20130,#20118) -literals("bar","bar",#20130) +typeexprs(#20130,1,#20128,0,"I") +hasLocation(#20130,#20076) +enclosing_stmt(#20130,#20128) +expr_containers(#20130,#20121) +literals("I","I",#20130) +typedecl(#20130,#20125) #20131=* -exprs(#20131,9,#20128,1,"bar();") -hasLocation(#20131,#20129) -enclosing_stmt(#20131,#20125) -expr_containers(#20131,#20118) -#20132=* -scopes(#20132,1) -scopenodes(#20131,#20132) -scopenesting(#20132,#20121) -#20133=@"var;{arguments};{#20132}" -variables(#20133,"arguments",#20132) -is_arguments_object(#20133) -is_method(#20128) -is_abstract_member(#20128) +properties(#20131,#20128,2,0,"bar();") +#20132=@"loc,{#10000},9,5,9,10" +locations_default(#20132,#10000,9,5,9,10) +hasLocation(#20131,#20132) +#20133=* +exprs(#20133,0,#20131,0,"bar") +hasLocation(#20133,#20080) +enclosing_stmt(#20133,#20128) +expr_containers(#20133,#20121) +literals("bar","bar",#20133) #20134=* -entry_cfg_node(#20134,#20001) -#20135=@"loc,{#10000},1,1,1,0" -locations_default(#20135,#10000,1,1,1,0) -hasLocation(#20134,#20135) -#20136=* -exit_cfg_node(#20136,#20001) -hasLocation(#20136,#20091) -successor(#20120,#20118) -successor(#20123,#20125) -successor(#20125,#20136) -successor(#20118,#20123) -successor(#20095,#20120) -successor(#20134,#20095) +exprs(#20134,9,#20131,1,"bar();") +hasLocation(#20134,#20132) +enclosing_stmt(#20134,#20128) +expr_containers(#20134,#20121) +#20135=* +scopes(#20135,1) +scopenodes(#20134,#20135) +scopenesting(#20135,#20124) +#20136=@"var;{this};{#20135}" +variables(#20136,"this",#20135) +#20137=@"var;{arguments};{#20135}" +variables(#20137,"arguments",#20135) +is_arguments_object(#20137) +is_method(#20131) +is_abstract_member(#20131) +#20138=* +entry_cfg_node(#20138,#20001) +#20139=@"loc,{#10000},1,1,1,0" +locations_default(#20139,#10000,1,1,1,0) +hasLocation(#20138,#20139) +#20140=* +exit_cfg_node(#20140,#20001) +hasLocation(#20140,#20091) +successor(#20123,#20121) +successor(#20126,#20128) +successor(#20128,#20140) +successor(#20121,#20126) +successor(#20096,#20123) +successor(#20138,#20096) numlines(#10000,11,10,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/invalidExtends.ts.trap b/javascript/extractor/tests/ts/output/trap/invalidExtends.ts.trap index ec1ddb444ef6..88a717270b6a 100644 --- a/javascript/extractor/tests/ts/output/trap/invalidExtends.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/invalidExtends.ts.trap @@ -327,125 +327,127 @@ locations_default(#20124,#10000,1,1,7,0) hasLocation(#20001,#20124) #20125=@"local_type_name;{Invalid};{#20000}" local_type_names(#20125,"Invalid",#20000) -#20126=* -stmts(#20126,34,#20001,0,"interfa ... bar) {}") -hasLocation(#20126,#20003) -stmt_containers(#20126,#20001) +#20126=@"var;{this};{#20000}" +variables(#20126,"this",#20000) #20127=* -typeexprs(#20127,1,#20126,0,"Invalid") -hasLocation(#20127,#20017) -enclosing_stmt(#20127,#20126) -expr_containers(#20127,#20001) -literals("Invalid","Invalid",#20127) -typedecl(#20127,#20125) +stmts(#20127,34,#20001,0,"interfa ... bar) {}") +hasLocation(#20127,#20003) +stmt_containers(#20127,#20001) #20128=* -stmts(#20128,34,#20001,1,"interfa ... .bar {}") -hasLocation(#20128,#20005) -stmt_containers(#20128,#20001) +typeexprs(#20128,1,#20127,0,"Invalid") +hasLocation(#20128,#20017) +enclosing_stmt(#20128,#20127) +expr_containers(#20128,#20001) +literals("Invalid","Invalid",#20128) +typedecl(#20128,#20125) #20129=* -typeexprs(#20129,1,#20128,0,"Invalid") -hasLocation(#20129,#20037) -enclosing_stmt(#20129,#20128) -expr_containers(#20129,#20001) -literals("Invalid","Invalid",#20129) -typedecl(#20129,#20125) +stmts(#20129,34,#20001,1,"interfa ... .bar {}") +hasLocation(#20129,#20005) +stmt_containers(#20129,#20001) #20130=* -stmts(#20130,34,#20001,2,"interfa ... bar] {}") -hasLocation(#20130,#20007) -stmt_containers(#20130,#20001) +typeexprs(#20130,1,#20129,0,"Invalid") +hasLocation(#20130,#20037) +enclosing_stmt(#20130,#20129) +expr_containers(#20130,#20001) +literals("Invalid","Invalid",#20130) +typedecl(#20130,#20125) #20131=* -typeexprs(#20131,13,#20130,-1,"foo[bar]") -#20132=@"loc,{#10000},3,27,3,34" -locations_default(#20132,#10000,3,27,3,34) -hasLocation(#20131,#20132) -enclosing_stmt(#20131,#20130) -expr_containers(#20131,#20001) -#20133=* -typeexprs(#20133,25,#20131,0,"foo") -hasLocation(#20133,#20061) -enclosing_stmt(#20133,#20130) -expr_containers(#20133,#20001) -literals("foo","foo",#20133) +stmts(#20131,34,#20001,2,"interfa ... bar] {}") +hasLocation(#20131,#20007) +stmt_containers(#20131,#20001) +#20132=* +typeexprs(#20132,13,#20131,-1,"foo[bar]") +#20133=@"loc,{#10000},3,27,3,34" +locations_default(#20133,#10000,3,27,3,34) +hasLocation(#20132,#20133) +enclosing_stmt(#20132,#20131) +expr_containers(#20132,#20001) #20134=* -typeexprs(#20134,15,#20131,1,"bar") -hasLocation(#20134,#20065) -enclosing_stmt(#20134,#20130) +typeexprs(#20134,25,#20132,0,"foo") +hasLocation(#20134,#20061) +enclosing_stmt(#20134,#20131) expr_containers(#20134,#20001) -literals("bar","bar",#20134) +literals("foo","foo",#20134) #20135=* -typeexprs(#20135,1,#20130,0,"Invalid") -hasLocation(#20135,#20057) -enclosing_stmt(#20135,#20130) +typeexprs(#20135,15,#20132,1,"bar") +hasLocation(#20135,#20065) +enclosing_stmt(#20135,#20131) expr_containers(#20135,#20001) -literals("Invalid","Invalid",#20135) -typedecl(#20135,#20125) +literals("bar","bar",#20135) #20136=* -stmts(#20136,34,#20001,3,"interfa ... .bar {}") -hasLocation(#20136,#20009) -stmt_containers(#20136,#20001) +typeexprs(#20136,1,#20131,0,"Invalid") +hasLocation(#20136,#20057) +enclosing_stmt(#20136,#20131) +expr_containers(#20136,#20001) +literals("Invalid","Invalid",#20136) +typedecl(#20136,#20125) #20137=* -typeexprs(#20137,13,#20136,-1,"foo?.bar") -#20138=@"loc,{#10000},4,27,4,34" -locations_default(#20138,#10000,4,27,4,34) -hasLocation(#20137,#20138) -enclosing_stmt(#20137,#20136) -expr_containers(#20137,#20001) -#20139=* -typeexprs(#20139,25,#20137,0,"foo") -hasLocation(#20139,#20079) -enclosing_stmt(#20139,#20136) -expr_containers(#20139,#20001) -literals("foo","foo",#20139) +stmts(#20137,34,#20001,3,"interfa ... .bar {}") +hasLocation(#20137,#20009) +stmt_containers(#20137,#20001) +#20138=* +typeexprs(#20138,13,#20137,-1,"foo?.bar") +#20139=@"loc,{#10000},4,27,4,34" +locations_default(#20139,#10000,4,27,4,34) +hasLocation(#20138,#20139) +enclosing_stmt(#20138,#20137) +expr_containers(#20138,#20001) #20140=* -typeexprs(#20140,15,#20137,1,"bar") -hasLocation(#20140,#20083) -enclosing_stmt(#20140,#20136) +typeexprs(#20140,25,#20138,0,"foo") +hasLocation(#20140,#20079) +enclosing_stmt(#20140,#20137) expr_containers(#20140,#20001) -literals("bar","bar",#20140) -isOptionalChaining(#20137) +literals("foo","foo",#20140) #20141=* -typeexprs(#20141,1,#20136,0,"Invalid") -hasLocation(#20141,#20075) -enclosing_stmt(#20141,#20136) +typeexprs(#20141,15,#20138,1,"bar") +hasLocation(#20141,#20083) +enclosing_stmt(#20141,#20137) expr_containers(#20141,#20001) -literals("Invalid","Invalid",#20141) -typedecl(#20141,#20125) +literals("bar","bar",#20141) +isOptionalChaining(#20138) #20142=* -stmts(#20142,34,#20001,4,"interfa ... .bar {}") -hasLocation(#20142,#20011) -stmt_containers(#20142,#20001) +typeexprs(#20142,1,#20137,0,"Invalid") +hasLocation(#20142,#20075) +enclosing_stmt(#20142,#20137) +expr_containers(#20142,#20001) +literals("Invalid","Invalid",#20142) +typedecl(#20142,#20125) #20143=* -typeexprs(#20143,1,#20142,0,"Invalid") -hasLocation(#20143,#20091) -enclosing_stmt(#20143,#20142) -expr_containers(#20143,#20001) -literals("Invalid","Invalid",#20143) -typedecl(#20143,#20125) +stmts(#20143,34,#20001,4,"interfa ... .bar {}") +hasLocation(#20143,#20011) +stmt_containers(#20143,#20001) #20144=* -stmts(#20144,34,#20001,5,"interfa ... oo() {}") -hasLocation(#20144,#20013) -stmt_containers(#20144,#20001) +typeexprs(#20144,1,#20143,0,"Invalid") +hasLocation(#20144,#20091) +enclosing_stmt(#20144,#20143) +expr_containers(#20144,#20001) +literals("Invalid","Invalid",#20144) +typedecl(#20144,#20125) #20145=* -typeexprs(#20145,1,#20144,0,"Invalid") -hasLocation(#20145,#20109) -enclosing_stmt(#20145,#20144) -expr_containers(#20145,#20001) -literals("Invalid","Invalid",#20145) -typedecl(#20145,#20125) +stmts(#20145,34,#20001,5,"interfa ... oo() {}") +hasLocation(#20145,#20013) +stmt_containers(#20145,#20001) #20146=* -entry_cfg_node(#20146,#20001) -#20147=@"loc,{#10000},1,1,1,0" -locations_default(#20147,#10000,1,1,1,0) -hasLocation(#20146,#20147) -#20148=* -exit_cfg_node(#20148,#20001) -hasLocation(#20148,#20123) -successor(#20144,#20148) -successor(#20142,#20144) -successor(#20136,#20142) -successor(#20130,#20136) -successor(#20128,#20130) -successor(#20126,#20128) -successor(#20146,#20126) +typeexprs(#20146,1,#20145,0,"Invalid") +hasLocation(#20146,#20109) +enclosing_stmt(#20146,#20145) +expr_containers(#20146,#20001) +literals("Invalid","Invalid",#20146) +typedecl(#20146,#20125) +#20147=* +entry_cfg_node(#20147,#20001) +#20148=@"loc,{#10000},1,1,1,0" +locations_default(#20148,#10000,1,1,1,0) +hasLocation(#20147,#20148) +#20149=* +exit_cfg_node(#20149,#20001) +hasLocation(#20149,#20123) +successor(#20145,#20149) +successor(#20143,#20145) +successor(#20137,#20143) +successor(#20131,#20137) +successor(#20129,#20131) +successor(#20127,#20129) +successor(#20147,#20127) numlines(#10000,6,6,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/let.ts.trap b/javascript/extractor/tests/ts/output/trap/let.ts.trap index cdc760eb16c5..c0ddd927e896 100644 --- a/javascript/extractor/tests/ts/output/trap/let.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/let.ts.trap @@ -118,98 +118,100 @@ variables(#20041,"varX",#20000) variables(#20042,"letX",#20000) #20043=@"var;{constX};{#20000}" variables(#20043,"constX",#20000) -#20044=* -stmts(#20044,18,#20001,0,"var varX = 5;") -hasLocation(#20044,#20003) -stmt_containers(#20044,#20001) +#20044=@"var;{this};{#20000}" +variables(#20044,"this",#20000) #20045=* -exprs(#20045,64,#20044,0,"varX = 5") -#20046=@"loc,{#10000},1,5,1,12" -locations_default(#20046,#10000,1,5,1,12) -hasLocation(#20045,#20046) -enclosing_stmt(#20045,#20044) -expr_containers(#20045,#20001) -#20047=* -exprs(#20047,78,#20045,0,"varX") -hasLocation(#20047,#20011) -enclosing_stmt(#20047,#20044) -expr_containers(#20047,#20001) -literals("varX","varX",#20047) -decl(#20047,#20041) +stmts(#20045,18,#20001,0,"var varX = 5;") +hasLocation(#20045,#20003) +stmt_containers(#20045,#20001) +#20046=* +exprs(#20046,64,#20045,0,"varX = 5") +#20047=@"loc,{#10000},1,5,1,12" +locations_default(#20047,#10000,1,5,1,12) +hasLocation(#20046,#20047) +enclosing_stmt(#20046,#20045) +expr_containers(#20046,#20001) #20048=* -exprs(#20048,3,#20045,1,"5") -hasLocation(#20048,#20015) -enclosing_stmt(#20048,#20044) +exprs(#20048,78,#20046,0,"varX") +hasLocation(#20048,#20011) +enclosing_stmt(#20048,#20045) expr_containers(#20048,#20001) -literals("5","5",#20048) +literals("varX","varX",#20048) +decl(#20048,#20041) #20049=* -stmts(#20049,23,#20001,1,"let letX = 6;") -hasLocation(#20049,#20005) -stmt_containers(#20049,#20001) +exprs(#20049,3,#20046,1,"5") +hasLocation(#20049,#20015) +enclosing_stmt(#20049,#20045) +expr_containers(#20049,#20001) +literals("5","5",#20049) #20050=* -exprs(#20050,64,#20049,0,"letX = 6") -#20051=@"loc,{#10000},2,5,2,12" -locations_default(#20051,#10000,2,5,2,12) -hasLocation(#20050,#20051) -enclosing_stmt(#20050,#20049) -expr_containers(#20050,#20001) -#20052=* -exprs(#20052,78,#20050,0,"letX") -hasLocation(#20052,#20021) -enclosing_stmt(#20052,#20049) -expr_containers(#20052,#20001) -literals("letX","letX",#20052) -decl(#20052,#20042) +stmts(#20050,23,#20001,1,"let letX = 6;") +hasLocation(#20050,#20005) +stmt_containers(#20050,#20001) +#20051=* +exprs(#20051,64,#20050,0,"letX = 6") +#20052=@"loc,{#10000},2,5,2,12" +locations_default(#20052,#10000,2,5,2,12) +hasLocation(#20051,#20052) +enclosing_stmt(#20051,#20050) +expr_containers(#20051,#20001) #20053=* -exprs(#20053,3,#20050,1,"6") -hasLocation(#20053,#20025) -enclosing_stmt(#20053,#20049) +exprs(#20053,78,#20051,0,"letX") +hasLocation(#20053,#20021) +enclosing_stmt(#20053,#20050) expr_containers(#20053,#20001) -literals("6","6",#20053) +literals("letX","letX",#20053) +decl(#20053,#20042) #20054=* -stmts(#20054,22,#20001,2,"const constX = 7;") -hasLocation(#20054,#20007) -stmt_containers(#20054,#20001) +exprs(#20054,3,#20051,1,"6") +hasLocation(#20054,#20025) +enclosing_stmt(#20054,#20050) +expr_containers(#20054,#20001) +literals("6","6",#20054) #20055=* -exprs(#20055,64,#20054,0,"constX = 7") -#20056=@"loc,{#10000},3,7,3,16" -locations_default(#20056,#10000,3,7,3,16) -hasLocation(#20055,#20056) -enclosing_stmt(#20055,#20054) -expr_containers(#20055,#20001) -#20057=* -exprs(#20057,78,#20055,0,"constX") -hasLocation(#20057,#20031) -enclosing_stmt(#20057,#20054) -expr_containers(#20057,#20001) -literals("constX","constX",#20057) -decl(#20057,#20043) +stmts(#20055,22,#20001,2,"const constX = 7;") +hasLocation(#20055,#20007) +stmt_containers(#20055,#20001) +#20056=* +exprs(#20056,64,#20055,0,"constX = 7") +#20057=@"loc,{#10000},3,7,3,16" +locations_default(#20057,#10000,3,7,3,16) +hasLocation(#20056,#20057) +enclosing_stmt(#20056,#20055) +expr_containers(#20056,#20001) #20058=* -exprs(#20058,3,#20055,1,"7") -hasLocation(#20058,#20035) -enclosing_stmt(#20058,#20054) +exprs(#20058,78,#20056,0,"constX") +hasLocation(#20058,#20031) +enclosing_stmt(#20058,#20055) expr_containers(#20058,#20001) -literals("7","7",#20058) +literals("constX","constX",#20058) +decl(#20058,#20043) #20059=* -entry_cfg_node(#20059,#20001) -#20060=@"loc,{#10000},1,1,1,0" -locations_default(#20060,#10000,1,1,1,0) -hasLocation(#20059,#20060) -#20061=* -exit_cfg_node(#20061,#20001) -hasLocation(#20061,#20039) -successor(#20054,#20057) -successor(#20058,#20055) -successor(#20057,#20058) -successor(#20055,#20061) -successor(#20049,#20052) -successor(#20053,#20050) -successor(#20052,#20053) -successor(#20050,#20054) -successor(#20044,#20047) -successor(#20048,#20045) -successor(#20047,#20048) -successor(#20045,#20049) -successor(#20059,#20044) +exprs(#20059,3,#20056,1,"7") +hasLocation(#20059,#20035) +enclosing_stmt(#20059,#20055) +expr_containers(#20059,#20001) +literals("7","7",#20059) +#20060=* +entry_cfg_node(#20060,#20001) +#20061=@"loc,{#10000},1,1,1,0" +locations_default(#20061,#10000,1,1,1,0) +hasLocation(#20060,#20061) +#20062=* +exit_cfg_node(#20062,#20001) +hasLocation(#20062,#20039) +successor(#20055,#20058) +successor(#20059,#20056) +successor(#20058,#20059) +successor(#20056,#20062) +successor(#20050,#20053) +successor(#20054,#20051) +successor(#20053,#20054) +successor(#20051,#20055) +successor(#20045,#20048) +successor(#20049,#20046) +successor(#20048,#20049) +successor(#20046,#20050) +successor(#20060,#20045) numlines(#10000,3,3,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/logicalOr.ts.trap b/javascript/extractor/tests/ts/output/trap/logicalOr.ts.trap index 53769c269119..8e7bd5071ad0 100644 --- a/javascript/extractor/tests/ts/output/trap/logicalOr.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/logicalOr.ts.trap @@ -170,181 +170,185 @@ locations_default(#20061,#10000,1,1,5,0) hasLocation(#20001,#20061) #20062=@"var;{f};{#20000}" variables(#20062,"f",#20000) -#20063=* -stmts(#20063,17,#20001,0,"functio ... y) {}\n}") -#20064=@"loc,{#10000},1,1,4,1" -locations_default(#20064,#10000,1,1,4,1) -hasLocation(#20063,#20064) -stmt_containers(#20063,#20001) -#20065=* -exprs(#20065,78,#20063,-1,"f") -hasLocation(#20065,#20013) -expr_containers(#20065,#20063) -literals("f","f",#20065) -decl(#20065,#20062) +#20063=@"var;{this};{#20000}" +variables(#20063,"this",#20000) +#20064=* +stmts(#20064,17,#20001,0,"functio ... y) {}\n}") +#20065=@"loc,{#10000},1,1,4,1" +locations_default(#20065,#10000,1,1,4,1) +hasLocation(#20064,#20065) +stmt_containers(#20064,#20001) #20066=* -scopes(#20066,1) -scopenodes(#20063,#20066) -scopenesting(#20066,#20000) -#20067=@"var;{x};{#20066}" -variables(#20067,"x",#20066) -#20068=* -exprs(#20068,78,#20063,0,"x") -hasLocation(#20068,#20017) -expr_containers(#20068,#20063) -literals("x","x",#20068) -decl(#20068,#20067) -#20069=@"var;{y};{#20066}" -variables(#20069,"y",#20066) +exprs(#20066,78,#20064,-1,"f") +hasLocation(#20066,#20013) +expr_containers(#20066,#20064) +literals("f","f",#20066) +decl(#20066,#20062) +#20067=* +scopes(#20067,1) +scopenodes(#20064,#20067) +scopenesting(#20067,#20000) +#20068=@"var;{this};{#20067}" +variables(#20068,"this",#20067) +#20069=@"var;{x};{#20067}" +variables(#20069,"x",#20067) #20070=* -exprs(#20070,78,#20063,1,"y") -hasLocation(#20070,#20021) -expr_containers(#20070,#20063) -literals("y","y",#20070) +exprs(#20070,78,#20064,0,"x") +hasLocation(#20070,#20017) +expr_containers(#20070,#20064) +literals("x","x",#20070) decl(#20070,#20069) -#20071=@"var;{arguments};{#20066}" -variables(#20071,"arguments",#20066) -is_arguments_object(#20071) +#20071=@"var;{y};{#20067}" +variables(#20071,"y",#20067) #20072=* -stmts(#20072,1,#20063,-2,"{\n if ... y) {}\n}") -#20073=@"loc,{#10000},1,17,4,1" -locations_default(#20073,#10000,1,17,4,1) -hasLocation(#20072,#20073) -stmt_containers(#20072,#20063) +exprs(#20072,78,#20064,1,"y") +hasLocation(#20072,#20021) +expr_containers(#20072,#20064) +literals("y","y",#20072) +decl(#20072,#20071) +#20073=@"var;{arguments};{#20067}" +variables(#20073,"arguments",#20067) +is_arguments_object(#20073) #20074=* -stmts(#20074,3,#20072,0,"if (x || y) {}") -#20075=@"loc,{#10000},2,3,2,16" -locations_default(#20075,#10000,2,3,2,16) +stmts(#20074,1,#20064,-2,"{\n if ... y) {}\n}") +#20075=@"loc,{#10000},1,17,4,1" +locations_default(#20075,#10000,1,17,4,1) hasLocation(#20074,#20075) -stmt_containers(#20074,#20063) +stmt_containers(#20074,#20064) #20076=* -exprs(#20076,45,#20074,0,"x || y") -#20077=@"loc,{#10000},2,7,2,12" -locations_default(#20077,#10000,2,7,2,12) +stmts(#20076,3,#20074,0,"if (x || y) {}") +#20077=@"loc,{#10000},2,3,2,16" +locations_default(#20077,#10000,2,3,2,16) hasLocation(#20076,#20077) -enclosing_stmt(#20076,#20074) -expr_containers(#20076,#20063) +stmt_containers(#20076,#20064) #20078=* -exprs(#20078,79,#20076,0,"x") -hasLocation(#20078,#20031) -enclosing_stmt(#20078,#20074) -expr_containers(#20078,#20063) -literals("x","x",#20078) -bind(#20078,#20067) -#20079=* -exprs(#20079,79,#20076,1,"y") -hasLocation(#20079,#20035) -enclosing_stmt(#20079,#20074) -expr_containers(#20079,#20063) -literals("y","y",#20079) -bind(#20079,#20069) +exprs(#20078,45,#20076,0,"x || y") +#20079=@"loc,{#10000},2,7,2,12" +locations_default(#20079,#10000,2,7,2,12) +hasLocation(#20078,#20079) +enclosing_stmt(#20078,#20076) +expr_containers(#20078,#20064) #20080=* -stmts(#20080,1,#20074,1,"{}") -#20081=@"loc,{#10000},2,15,2,16" -locations_default(#20081,#10000,2,15,2,16) -hasLocation(#20080,#20081) -stmt_containers(#20080,#20063) +exprs(#20080,79,#20078,0,"x") +hasLocation(#20080,#20031) +enclosing_stmt(#20080,#20076) +expr_containers(#20080,#20064) +literals("x","x",#20080) +bind(#20080,#20069) +#20081=* +exprs(#20081,79,#20078,1,"y") +hasLocation(#20081,#20035) +enclosing_stmt(#20081,#20076) +expr_containers(#20081,#20064) +literals("y","y",#20081) +bind(#20081,#20071) #20082=* -stmts(#20082,3,#20072,1,"if (x && y) {}") -#20083=@"loc,{#10000},3,3,3,16" -locations_default(#20083,#10000,3,3,3,16) +stmts(#20082,1,#20076,1,"{}") +#20083=@"loc,{#10000},2,15,2,16" +locations_default(#20083,#10000,2,15,2,16) hasLocation(#20082,#20083) -stmt_containers(#20082,#20063) +stmt_containers(#20082,#20064) #20084=* -exprs(#20084,44,#20082,0,"x && y") -#20085=@"loc,{#10000},3,7,3,12" -locations_default(#20085,#10000,3,7,3,12) +stmts(#20084,3,#20074,1,"if (x && y) {}") +#20085=@"loc,{#10000},3,3,3,16" +locations_default(#20085,#10000,3,3,3,16) hasLocation(#20084,#20085) -enclosing_stmt(#20084,#20082) -expr_containers(#20084,#20063) +stmt_containers(#20084,#20064) #20086=* -exprs(#20086,79,#20084,0,"x") -hasLocation(#20086,#20047) -enclosing_stmt(#20086,#20082) -expr_containers(#20086,#20063) -literals("x","x",#20086) -bind(#20086,#20067) -#20087=* -exprs(#20087,79,#20084,1,"y") -hasLocation(#20087,#20051) -enclosing_stmt(#20087,#20082) -expr_containers(#20087,#20063) -literals("y","y",#20087) -bind(#20087,#20069) +exprs(#20086,44,#20084,0,"x && y") +#20087=@"loc,{#10000},3,7,3,12" +locations_default(#20087,#10000,3,7,3,12) +hasLocation(#20086,#20087) +enclosing_stmt(#20086,#20084) +expr_containers(#20086,#20064) #20088=* -stmts(#20088,1,#20082,1,"{}") -#20089=@"loc,{#10000},3,15,3,16" -locations_default(#20089,#10000,3,15,3,16) -hasLocation(#20088,#20089) -stmt_containers(#20088,#20063) +exprs(#20088,79,#20086,0,"x") +hasLocation(#20088,#20047) +enclosing_stmt(#20088,#20084) +expr_containers(#20088,#20064) +literals("x","x",#20088) +bind(#20088,#20069) +#20089=* +exprs(#20089,79,#20086,1,"y") +hasLocation(#20089,#20051) +enclosing_stmt(#20089,#20084) +expr_containers(#20089,#20064) +literals("y","y",#20089) +bind(#20089,#20071) #20090=* -entry_cfg_node(#20090,#20001) -#20091=@"loc,{#10000},1,1,1,0" -locations_default(#20091,#10000,1,1,1,0) +stmts(#20090,1,#20084,1,"{}") +#20091=@"loc,{#10000},3,15,3,16" +locations_default(#20091,#10000,3,15,3,16) hasLocation(#20090,#20091) +stmt_containers(#20090,#20064) #20092=* -exit_cfg_node(#20092,#20001) -hasLocation(#20092,#20060) -successor(#20063,#20092) -#20093=* -entry_cfg_node(#20093,#20063) -hasLocation(#20093,#20091) +entry_cfg_node(#20092,#20001) +#20093=@"loc,{#10000},1,1,1,0" +locations_default(#20093,#10000,1,1,1,0) +hasLocation(#20092,#20093) #20094=* -exit_cfg_node(#20094,#20063) -#20095=@"loc,{#10000},4,2,4,1" -locations_default(#20095,#10000,4,2,4,1) -hasLocation(#20094,#20095) -successor(#20082,#20084) -successor(#20084,#20086) +exit_cfg_node(#20094,#20001) +hasLocation(#20094,#20060) +successor(#20064,#20094) +#20095=* +entry_cfg_node(#20095,#20064) +hasLocation(#20095,#20093) #20096=* -guard_node(#20096,1,#20086) -hasLocation(#20096,#20047) -successor(#20096,#20087) -#20097=* -guard_node(#20097,0,#20086) -hasLocation(#20097,#20047) -successor(#20097,#20094) -successor(#20086,#20096) -successor(#20086,#20097) +exit_cfg_node(#20096,#20064) +#20097=@"loc,{#10000},4,2,4,1" +locations_default(#20097,#10000,4,2,4,1) +hasLocation(#20096,#20097) +successor(#20084,#20086) +successor(#20086,#20088) #20098=* -guard_node(#20098,1,#20087) -hasLocation(#20098,#20051) -successor(#20098,#20088) +guard_node(#20098,1,#20088) +hasLocation(#20098,#20047) +successor(#20098,#20089) #20099=* -guard_node(#20099,0,#20087) -hasLocation(#20099,#20051) -successor(#20099,#20094) -successor(#20087,#20098) -successor(#20087,#20099) -successor(#20088,#20094) -successor(#20074,#20076) -successor(#20076,#20078) +guard_node(#20099,0,#20088) +hasLocation(#20099,#20047) +successor(#20099,#20096) +successor(#20088,#20098) +successor(#20088,#20099) #20100=* -guard_node(#20100,1,#20078) -hasLocation(#20100,#20031) -successor(#20100,#20080) +guard_node(#20100,1,#20089) +hasLocation(#20100,#20051) +successor(#20100,#20090) #20101=* -guard_node(#20101,0,#20078) -hasLocation(#20101,#20031) -successor(#20101,#20079) -successor(#20078,#20100) -successor(#20078,#20101) +guard_node(#20101,0,#20089) +hasLocation(#20101,#20051) +successor(#20101,#20096) +successor(#20089,#20100) +successor(#20089,#20101) +successor(#20090,#20096) +successor(#20076,#20078) +successor(#20078,#20080) #20102=* -guard_node(#20102,1,#20079) -hasLocation(#20102,#20035) -successor(#20102,#20080) +guard_node(#20102,1,#20080) +hasLocation(#20102,#20031) +successor(#20102,#20082) #20103=* -guard_node(#20103,0,#20079) -hasLocation(#20103,#20035) -successor(#20103,#20082) -successor(#20079,#20102) -successor(#20079,#20103) -successor(#20080,#20082) +guard_node(#20103,0,#20080) +hasLocation(#20103,#20031) +successor(#20103,#20081) +successor(#20080,#20102) +successor(#20080,#20103) +#20104=* +guard_node(#20104,1,#20081) +hasLocation(#20104,#20035) +successor(#20104,#20082) +#20105=* +guard_node(#20105,0,#20081) +hasLocation(#20105,#20035) +successor(#20105,#20084) +successor(#20081,#20104) +successor(#20081,#20105) +successor(#20082,#20084) +successor(#20074,#20076) successor(#20072,#20074) successor(#20070,#20072) -successor(#20068,#20070) -successor(#20093,#20068) -successor(#20065,#20063) -successor(#20090,#20065) +successor(#20095,#20070) +successor(#20066,#20064) +successor(#20092,#20066) numlines(#10000,4,4,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/mappedTypeModifiers.ts.trap b/javascript/extractor/tests/ts/output/trap/mappedTypeModifiers.ts.trap index 536d31ce459d..5c6dcf78fb53 100644 --- a/javascript/extractor/tests/ts/output/trap/mappedTypeModifiers.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/mappedTypeModifiers.ts.trap @@ -691,496 +691,498 @@ locations_default(#20263,#10000,1,1,12,0) hasLocation(#20001,#20263) #20264=@"local_namespace_name;{MappedTypeModifiers};{#20000}" local_namespace_names(#20264,"MappedTypeModifiers",#20000) -#20265=* -stmts(#20265,31,#20001,0,"namespa ... ing }\n}") -#20266=@"loc,{#10000},1,1,11,1" -locations_default(#20266,#10000,1,1,11,1) -hasLocation(#20265,#20266) -stmt_containers(#20265,#20001) -#20267=* -exprs(#20267,78,#20265,-1,"MappedTypeModifiers") -hasLocation(#20267,#20037) -enclosing_stmt(#20267,#20265) -expr_containers(#20267,#20001) -literals("MappedTypeModifiers","MappedTypeModifiers",#20267) -namespacedecl(#20267,#20264) +#20265=@"var;{this};{#20000}" +variables(#20265,"this",#20000) +#20266=* +stmts(#20266,31,#20001,0,"namespa ... ing }\n}") +#20267=@"loc,{#10000},1,1,11,1" +locations_default(#20267,#10000,1,1,11,1) +hasLocation(#20266,#20267) +stmt_containers(#20266,#20001) #20268=* -scopes(#20268,9) -scopenodes(#20265,#20268) -scopenesting(#20268,#20000) -#20269=@"local_type_name;{MutableRequired};{#20268}" -local_type_names(#20269,"MutableRequired",#20268) -#20270=@"local_type_name;{ReadonlyPartial};{#20268}" -local_type_names(#20270,"ReadonlyPartial",#20268) -#20271=@"local_type_name;{ReadonlyPartial2};{#20268}" -local_type_names(#20271,"ReadonlyPartial2",#20268) -#20272=@"local_type_name;{Required};{#20268}" -local_type_names(#20272,"Required",#20268) -#20273=@"local_type_name;{Foo};{#20268}" -local_type_names(#20273,"Foo",#20268) -#20274=@"local_type_name;{Bar};{#20268}" -local_type_names(#20274,"Bar",#20268) -#20275=* -stmts(#20275,35,#20265,0,"type Mu ... T[P] };") -#20276=@"loc,{#10000},2,3,2,65" -locations_default(#20276,#10000,2,3,2,65) -hasLocation(#20275,#20276) -stmt_containers(#20275,#20265) -#20277=* -typeexprs(#20277,1,#20275,0,"MutableRequired") -hasLocation(#20277,#20043) -enclosing_stmt(#20277,#20275) -expr_containers(#20277,#20265) -literals("MutableRequired","MutableRequired",#20277) -typedecl(#20277,#20269) +exprs(#20268,78,#20266,-1,"MappedTypeModifiers") +hasLocation(#20268,#20037) +enclosing_stmt(#20268,#20266) +expr_containers(#20268,#20001) +literals("MappedTypeModifiers","MappedTypeModifiers",#20268) +namespacedecl(#20268,#20264) +#20269=* +scopes(#20269,9) +scopenodes(#20266,#20269) +scopenesting(#20269,#20000) +#20270=@"local_type_name;{MutableRequired};{#20269}" +local_type_names(#20270,"MutableRequired",#20269) +#20271=@"local_type_name;{ReadonlyPartial};{#20269}" +local_type_names(#20271,"ReadonlyPartial",#20269) +#20272=@"local_type_name;{ReadonlyPartial2};{#20269}" +local_type_names(#20272,"ReadonlyPartial2",#20269) +#20273=@"local_type_name;{Required};{#20269}" +local_type_names(#20273,"Required",#20269) +#20274=@"local_type_name;{Foo};{#20269}" +local_type_names(#20274,"Foo",#20269) +#20275=@"local_type_name;{Bar};{#20269}" +local_type_names(#20275,"Bar",#20269) +#20276=* +stmts(#20276,35,#20266,0,"type Mu ... T[P] };") +#20277=@"loc,{#10000},2,3,2,65" +locations_default(#20277,#10000,2,3,2,65) +hasLocation(#20276,#20277) +stmt_containers(#20276,#20266) #20278=* -scopes(#20278,12) -scopenodes(#20275,#20278) -scopenesting(#20278,#20268) -#20279=@"local_type_name;{T};{#20278}" -local_type_names(#20279,"T",#20278) -#20280=* -typeexprs(#20280,22,#20275,2,"T") -hasLocation(#20280,#20047) -enclosing_stmt(#20280,#20275) -expr_containers(#20280,#20265) +typeexprs(#20278,1,#20276,0,"MutableRequired") +hasLocation(#20278,#20043) +enclosing_stmt(#20278,#20276) +expr_containers(#20278,#20266) +literals("MutableRequired","MutableRequired",#20278) +typedecl(#20278,#20270) +#20279=* +scopes(#20279,12) +scopenodes(#20276,#20279) +scopenesting(#20279,#20269) +#20280=@"local_type_name;{T};{#20279}" +local_type_names(#20280,"T",#20279) #20281=* -typeexprs(#20281,1,#20280,0,"T") +typeexprs(#20281,22,#20276,2,"T") hasLocation(#20281,#20047) -enclosing_stmt(#20281,#20275) -expr_containers(#20281,#20265) -literals("T","T",#20281) -typedecl(#20281,#20279) +enclosing_stmt(#20281,#20276) +expr_containers(#20281,#20266) #20282=* -typeexprs(#20282,27,#20275,1,"{ -read ... T[P] }") -#20283=@"loc,{#10000},2,29,2,64" -locations_default(#20283,#10000,2,29,2,64) -hasLocation(#20282,#20283) -enclosing_stmt(#20282,#20275) -expr_containers(#20282,#20265) -#20284=* -scopes(#20284,13) -scopenodes(#20282,#20284) -scopenesting(#20284,#20278) -#20285=@"local_type_name;{P};{#20284}" -local_type_names(#20285,"P",#20284) -#20286=* -typeexprs(#20286,22,#20282,0,"P in keyof T") -#20287=@"loc,{#10000},2,42,2,53" -locations_default(#20287,#10000,2,42,2,53) -hasLocation(#20286,#20287) -enclosing_stmt(#20286,#20275) -expr_containers(#20286,#20265) -#20288=* -typeexprs(#20288,1,#20286,0,"P") -hasLocation(#20288,#20061) -enclosing_stmt(#20288,#20275) -expr_containers(#20288,#20265) -literals("P","P",#20288) -typedecl(#20288,#20285) +typeexprs(#20282,1,#20281,0,"T") +hasLocation(#20282,#20047) +enclosing_stmt(#20282,#20276) +expr_containers(#20282,#20266) +literals("T","T",#20282) +typedecl(#20282,#20280) +#20283=* +typeexprs(#20283,27,#20276,1,"{ -read ... T[P] }") +#20284=@"loc,{#10000},2,29,2,64" +locations_default(#20284,#10000,2,29,2,64) +hasLocation(#20283,#20284) +enclosing_stmt(#20283,#20276) +expr_containers(#20283,#20266) +#20285=* +scopes(#20285,13) +scopenodes(#20283,#20285) +scopenesting(#20285,#20279) +#20286=@"local_type_name;{P};{#20285}" +local_type_names(#20286,"P",#20285) +#20287=* +typeexprs(#20287,22,#20283,0,"P in keyof T") +#20288=@"loc,{#10000},2,42,2,53" +locations_default(#20288,#10000,2,42,2,53) +hasLocation(#20287,#20288) +enclosing_stmt(#20287,#20276) +expr_containers(#20287,#20266) #20289=* -typeexprs(#20289,12,#20286,1,"keyof T") -#20290=@"loc,{#10000},2,47,2,53" -locations_default(#20290,#10000,2,47,2,53) -hasLocation(#20289,#20290) -enclosing_stmt(#20289,#20275) -expr_containers(#20289,#20265) -#20291=* -typeexprs(#20291,0,#20289,0,"T") -hasLocation(#20291,#20067) -enclosing_stmt(#20291,#20275) -expr_containers(#20291,#20265) -literals("T","T",#20291) -typebind(#20291,#20279) +typeexprs(#20289,1,#20287,0,"P") +hasLocation(#20289,#20061) +enclosing_stmt(#20289,#20276) +expr_containers(#20289,#20266) +literals("P","P",#20289) +typedecl(#20289,#20286) +#20290=* +typeexprs(#20290,12,#20287,1,"keyof T") +#20291=@"loc,{#10000},2,47,2,53" +locations_default(#20291,#10000,2,47,2,53) +hasLocation(#20290,#20291) +enclosing_stmt(#20290,#20276) +expr_containers(#20290,#20266) #20292=* -typeexprs(#20292,8,#20282,1,"T[P]") -#20293=@"loc,{#10000},2,59,2,62" -locations_default(#20293,#10000,2,59,2,62) -hasLocation(#20292,#20293) -enclosing_stmt(#20292,#20275) -expr_containers(#20292,#20265) -#20294=* -typeexprs(#20294,0,#20292,0,"T") -hasLocation(#20294,#20077) -enclosing_stmt(#20294,#20275) -expr_containers(#20294,#20265) -literals("T","T",#20294) -typebind(#20294,#20279) +typeexprs(#20292,0,#20290,0,"T") +hasLocation(#20292,#20067) +enclosing_stmt(#20292,#20276) +expr_containers(#20292,#20266) +literals("T","T",#20292) +typebind(#20292,#20280) +#20293=* +typeexprs(#20293,8,#20283,1,"T[P]") +#20294=@"loc,{#10000},2,59,2,62" +locations_default(#20294,#10000,2,59,2,62) +hasLocation(#20293,#20294) +enclosing_stmt(#20293,#20276) +expr_containers(#20293,#20266) #20295=* -typeexprs(#20295,0,#20292,1,"P") -hasLocation(#20295,#20081) -enclosing_stmt(#20295,#20275) -expr_containers(#20295,#20265) -literals("P","P",#20295) -typebind(#20295,#20285) +typeexprs(#20295,0,#20293,0,"T") +hasLocation(#20295,#20077) +enclosing_stmt(#20295,#20276) +expr_containers(#20295,#20266) +literals("T","T",#20295) +typebind(#20295,#20280) #20296=* -stmts(#20296,35,#20265,1,"type Re ... T[P] };") -#20297=@"loc,{#10000},3,3,3,65" -locations_default(#20297,#10000,3,3,3,65) -hasLocation(#20296,#20297) -stmt_containers(#20296,#20265) -#20298=* -typeexprs(#20298,1,#20296,0,"ReadonlyPartial") -hasLocation(#20298,#20091) -enclosing_stmt(#20298,#20296) -expr_containers(#20298,#20265) -literals("ReadonlyPartial","ReadonlyPartial",#20298) -typedecl(#20298,#20270) +typeexprs(#20296,0,#20293,1,"P") +hasLocation(#20296,#20081) +enclosing_stmt(#20296,#20276) +expr_containers(#20296,#20266) +literals("P","P",#20296) +typebind(#20296,#20286) +#20297=* +stmts(#20297,35,#20266,1,"type Re ... T[P] };") +#20298=@"loc,{#10000},3,3,3,65" +locations_default(#20298,#10000,3,3,3,65) +hasLocation(#20297,#20298) +stmt_containers(#20297,#20266) #20299=* -scopes(#20299,12) -scopenodes(#20296,#20299) -scopenesting(#20299,#20268) -#20300=@"local_type_name;{T};{#20299}" -local_type_names(#20300,"T",#20299) -#20301=* -typeexprs(#20301,22,#20296,2,"T") -hasLocation(#20301,#20095) -enclosing_stmt(#20301,#20296) -expr_containers(#20301,#20265) +typeexprs(#20299,1,#20297,0,"ReadonlyPartial") +hasLocation(#20299,#20091) +enclosing_stmt(#20299,#20297) +expr_containers(#20299,#20266) +literals("ReadonlyPartial","ReadonlyPartial",#20299) +typedecl(#20299,#20271) +#20300=* +scopes(#20300,12) +scopenodes(#20297,#20300) +scopenesting(#20300,#20269) +#20301=@"local_type_name;{T};{#20300}" +local_type_names(#20301,"T",#20300) #20302=* -typeexprs(#20302,1,#20301,0,"T") +typeexprs(#20302,22,#20297,2,"T") hasLocation(#20302,#20095) -enclosing_stmt(#20302,#20296) -expr_containers(#20302,#20265) -literals("T","T",#20302) -typedecl(#20302,#20300) +enclosing_stmt(#20302,#20297) +expr_containers(#20302,#20266) #20303=* -typeexprs(#20303,27,#20296,1,"{ +read ... T[P] }") -#20304=@"loc,{#10000},3,29,3,64" -locations_default(#20304,#10000,3,29,3,64) -hasLocation(#20303,#20304) -enclosing_stmt(#20303,#20296) -expr_containers(#20303,#20265) -#20305=* -scopes(#20305,13) -scopenodes(#20303,#20305) -scopenesting(#20305,#20299) -#20306=@"local_type_name;{P};{#20305}" -local_type_names(#20306,"P",#20305) -#20307=* -typeexprs(#20307,22,#20303,0,"P in keyof T") -#20308=@"loc,{#10000},3,42,3,53" -locations_default(#20308,#10000,3,42,3,53) -hasLocation(#20307,#20308) -enclosing_stmt(#20307,#20296) -expr_containers(#20307,#20265) -#20309=* -typeexprs(#20309,1,#20307,0,"P") -hasLocation(#20309,#20109) -enclosing_stmt(#20309,#20296) -expr_containers(#20309,#20265) -literals("P","P",#20309) -typedecl(#20309,#20306) +typeexprs(#20303,1,#20302,0,"T") +hasLocation(#20303,#20095) +enclosing_stmt(#20303,#20297) +expr_containers(#20303,#20266) +literals("T","T",#20303) +typedecl(#20303,#20301) +#20304=* +typeexprs(#20304,27,#20297,1,"{ +read ... T[P] }") +#20305=@"loc,{#10000},3,29,3,64" +locations_default(#20305,#10000,3,29,3,64) +hasLocation(#20304,#20305) +enclosing_stmt(#20304,#20297) +expr_containers(#20304,#20266) +#20306=* +scopes(#20306,13) +scopenodes(#20304,#20306) +scopenesting(#20306,#20300) +#20307=@"local_type_name;{P};{#20306}" +local_type_names(#20307,"P",#20306) +#20308=* +typeexprs(#20308,22,#20304,0,"P in keyof T") +#20309=@"loc,{#10000},3,42,3,53" +locations_default(#20309,#10000,3,42,3,53) +hasLocation(#20308,#20309) +enclosing_stmt(#20308,#20297) +expr_containers(#20308,#20266) #20310=* -typeexprs(#20310,12,#20307,1,"keyof T") -#20311=@"loc,{#10000},3,47,3,53" -locations_default(#20311,#10000,3,47,3,53) -hasLocation(#20310,#20311) -enclosing_stmt(#20310,#20296) -expr_containers(#20310,#20265) -#20312=* -typeexprs(#20312,0,#20310,0,"T") -hasLocation(#20312,#20115) -enclosing_stmt(#20312,#20296) -expr_containers(#20312,#20265) -literals("T","T",#20312) -typebind(#20312,#20300) +typeexprs(#20310,1,#20308,0,"P") +hasLocation(#20310,#20109) +enclosing_stmt(#20310,#20297) +expr_containers(#20310,#20266) +literals("P","P",#20310) +typedecl(#20310,#20307) +#20311=* +typeexprs(#20311,12,#20308,1,"keyof T") +#20312=@"loc,{#10000},3,47,3,53" +locations_default(#20312,#10000,3,47,3,53) +hasLocation(#20311,#20312) +enclosing_stmt(#20311,#20297) +expr_containers(#20311,#20266) #20313=* -typeexprs(#20313,8,#20303,1,"T[P]") -#20314=@"loc,{#10000},3,59,3,62" -locations_default(#20314,#10000,3,59,3,62) -hasLocation(#20313,#20314) -enclosing_stmt(#20313,#20296) -expr_containers(#20313,#20265) -#20315=* -typeexprs(#20315,0,#20313,0,"T") -hasLocation(#20315,#20125) -enclosing_stmt(#20315,#20296) -expr_containers(#20315,#20265) -literals("T","T",#20315) -typebind(#20315,#20300) +typeexprs(#20313,0,#20311,0,"T") +hasLocation(#20313,#20115) +enclosing_stmt(#20313,#20297) +expr_containers(#20313,#20266) +literals("T","T",#20313) +typebind(#20313,#20301) +#20314=* +typeexprs(#20314,8,#20304,1,"T[P]") +#20315=@"loc,{#10000},3,59,3,62" +locations_default(#20315,#10000,3,59,3,62) +hasLocation(#20314,#20315) +enclosing_stmt(#20314,#20297) +expr_containers(#20314,#20266) #20316=* -typeexprs(#20316,0,#20313,1,"P") -hasLocation(#20316,#20129) -enclosing_stmt(#20316,#20296) -expr_containers(#20316,#20265) -literals("P","P",#20316) -typebind(#20316,#20306) +typeexprs(#20316,0,#20314,0,"T") +hasLocation(#20316,#20125) +enclosing_stmt(#20316,#20297) +expr_containers(#20316,#20266) +literals("T","T",#20316) +typebind(#20316,#20301) #20317=* -stmts(#20317,35,#20265,2,"type Re ... T[P] };") -#20318=@"loc,{#10000},5,3,5,64" -locations_default(#20318,#10000,5,3,5,64) -hasLocation(#20317,#20318) -stmt_containers(#20317,#20265) -#20319=* -typeexprs(#20319,1,#20317,0,"ReadonlyPartial2") -hasLocation(#20319,#20139) -enclosing_stmt(#20319,#20317) -expr_containers(#20319,#20265) -literals("ReadonlyPartial2","ReadonlyPartial2",#20319) -typedecl(#20319,#20271) +typeexprs(#20317,0,#20314,1,"P") +hasLocation(#20317,#20129) +enclosing_stmt(#20317,#20297) +expr_containers(#20317,#20266) +literals("P","P",#20317) +typebind(#20317,#20307) +#20318=* +stmts(#20318,35,#20266,2,"type Re ... T[P] };") +#20319=@"loc,{#10000},5,3,5,64" +locations_default(#20319,#10000,5,3,5,64) +hasLocation(#20318,#20319) +stmt_containers(#20318,#20266) #20320=* -scopes(#20320,12) -scopenodes(#20317,#20320) -scopenesting(#20320,#20268) -#20321=@"local_type_name;{T};{#20320}" -local_type_names(#20321,"T",#20320) -#20322=* -typeexprs(#20322,22,#20317,2,"T") -hasLocation(#20322,#20143) -enclosing_stmt(#20322,#20317) -expr_containers(#20322,#20265) +typeexprs(#20320,1,#20318,0,"ReadonlyPartial2") +hasLocation(#20320,#20139) +enclosing_stmt(#20320,#20318) +expr_containers(#20320,#20266) +literals("ReadonlyPartial2","ReadonlyPartial2",#20320) +typedecl(#20320,#20272) +#20321=* +scopes(#20321,12) +scopenodes(#20318,#20321) +scopenesting(#20321,#20269) +#20322=@"local_type_name;{T};{#20321}" +local_type_names(#20322,"T",#20321) #20323=* -typeexprs(#20323,1,#20322,0,"T") +typeexprs(#20323,22,#20318,2,"T") hasLocation(#20323,#20143) -enclosing_stmt(#20323,#20317) -expr_containers(#20323,#20265) -literals("T","T",#20323) -typedecl(#20323,#20321) +enclosing_stmt(#20323,#20318) +expr_containers(#20323,#20266) #20324=* -typeexprs(#20324,27,#20317,1,"{ reado ... T[P] }") -#20325=@"loc,{#10000},5,30,5,63" -locations_default(#20325,#10000,5,30,5,63) -hasLocation(#20324,#20325) -enclosing_stmt(#20324,#20317) -expr_containers(#20324,#20265) -#20326=* -scopes(#20326,13) -scopenodes(#20324,#20326) -scopenesting(#20326,#20320) -#20327=@"local_type_name;{P};{#20326}" -local_type_names(#20327,"P",#20326) -#20328=* -typeexprs(#20328,22,#20324,0,"P in keyof T") -#20329=@"loc,{#10000},5,42,5,53" -locations_default(#20329,#10000,5,42,5,53) -hasLocation(#20328,#20329) -enclosing_stmt(#20328,#20317) -expr_containers(#20328,#20265) -#20330=* -typeexprs(#20330,1,#20328,0,"P") -hasLocation(#20330,#20155) -enclosing_stmt(#20330,#20317) -expr_containers(#20330,#20265) -literals("P","P",#20330) -typedecl(#20330,#20327) +typeexprs(#20324,1,#20323,0,"T") +hasLocation(#20324,#20143) +enclosing_stmt(#20324,#20318) +expr_containers(#20324,#20266) +literals("T","T",#20324) +typedecl(#20324,#20322) +#20325=* +typeexprs(#20325,27,#20318,1,"{ reado ... T[P] }") +#20326=@"loc,{#10000},5,30,5,63" +locations_default(#20326,#10000,5,30,5,63) +hasLocation(#20325,#20326) +enclosing_stmt(#20325,#20318) +expr_containers(#20325,#20266) +#20327=* +scopes(#20327,13) +scopenodes(#20325,#20327) +scopenesting(#20327,#20321) +#20328=@"local_type_name;{P};{#20327}" +local_type_names(#20328,"P",#20327) +#20329=* +typeexprs(#20329,22,#20325,0,"P in keyof T") +#20330=@"loc,{#10000},5,42,5,53" +locations_default(#20330,#10000,5,42,5,53) +hasLocation(#20329,#20330) +enclosing_stmt(#20329,#20318) +expr_containers(#20329,#20266) #20331=* -typeexprs(#20331,12,#20328,1,"keyof T") -#20332=@"loc,{#10000},5,47,5,53" -locations_default(#20332,#10000,5,47,5,53) -hasLocation(#20331,#20332) -enclosing_stmt(#20331,#20317) -expr_containers(#20331,#20265) -#20333=* -typeexprs(#20333,0,#20331,0,"T") -hasLocation(#20333,#20161) -enclosing_stmt(#20333,#20317) -expr_containers(#20333,#20265) -literals("T","T",#20333) -typebind(#20333,#20321) +typeexprs(#20331,1,#20329,0,"P") +hasLocation(#20331,#20155) +enclosing_stmt(#20331,#20318) +expr_containers(#20331,#20266) +literals("P","P",#20331) +typedecl(#20331,#20328) +#20332=* +typeexprs(#20332,12,#20329,1,"keyof T") +#20333=@"loc,{#10000},5,47,5,53" +locations_default(#20333,#10000,5,47,5,53) +hasLocation(#20332,#20333) +enclosing_stmt(#20332,#20318) +expr_containers(#20332,#20266) #20334=* -typeexprs(#20334,8,#20324,1,"T[P]") -#20335=@"loc,{#10000},5,58,5,61" -locations_default(#20335,#10000,5,58,5,61) -hasLocation(#20334,#20335) -enclosing_stmt(#20334,#20317) -expr_containers(#20334,#20265) -#20336=* -typeexprs(#20336,0,#20334,0,"T") -hasLocation(#20336,#20169) -enclosing_stmt(#20336,#20317) -expr_containers(#20336,#20265) -literals("T","T",#20336) -typebind(#20336,#20321) +typeexprs(#20334,0,#20332,0,"T") +hasLocation(#20334,#20161) +enclosing_stmt(#20334,#20318) +expr_containers(#20334,#20266) +literals("T","T",#20334) +typebind(#20334,#20322) +#20335=* +typeexprs(#20335,8,#20325,1,"T[P]") +#20336=@"loc,{#10000},5,58,5,61" +locations_default(#20336,#10000,5,58,5,61) +hasLocation(#20335,#20336) +enclosing_stmt(#20335,#20318) +expr_containers(#20335,#20266) #20337=* -typeexprs(#20337,0,#20334,1,"P") -hasLocation(#20337,#20173) -enclosing_stmt(#20337,#20317) -expr_containers(#20337,#20265) -literals("P","P",#20337) -typebind(#20337,#20327) +typeexprs(#20337,0,#20335,0,"T") +hasLocation(#20337,#20169) +enclosing_stmt(#20337,#20318) +expr_containers(#20337,#20266) +literals("T","T",#20337) +typebind(#20337,#20322) #20338=* -stmts(#20338,35,#20265,3,"type Re ... T[P] };") -#20339=@"loc,{#10000},7,3,7,48" -locations_default(#20339,#10000,7,3,7,48) -hasLocation(#20338,#20339) -stmt_containers(#20338,#20265) -#20340=* -typeexprs(#20340,1,#20338,0,"Required") -hasLocation(#20340,#20183) -enclosing_stmt(#20340,#20338) -expr_containers(#20340,#20265) -literals("Required","Required",#20340) -typedecl(#20340,#20272) +typeexprs(#20338,0,#20335,1,"P") +hasLocation(#20338,#20173) +enclosing_stmt(#20338,#20318) +expr_containers(#20338,#20266) +literals("P","P",#20338) +typebind(#20338,#20328) +#20339=* +stmts(#20339,35,#20266,3,"type Re ... T[P] };") +#20340=@"loc,{#10000},7,3,7,48" +locations_default(#20340,#10000,7,3,7,48) +hasLocation(#20339,#20340) +stmt_containers(#20339,#20266) #20341=* -scopes(#20341,12) -scopenodes(#20338,#20341) -scopenesting(#20341,#20268) -#20342=@"local_type_name;{T};{#20341}" -local_type_names(#20342,"T",#20341) -#20343=* -typeexprs(#20343,22,#20338,2,"T") -hasLocation(#20343,#20187) -enclosing_stmt(#20343,#20338) -expr_containers(#20343,#20265) +typeexprs(#20341,1,#20339,0,"Required") +hasLocation(#20341,#20183) +enclosing_stmt(#20341,#20339) +expr_containers(#20341,#20266) +literals("Required","Required",#20341) +typedecl(#20341,#20273) +#20342=* +scopes(#20342,12) +scopenodes(#20339,#20342) +scopenesting(#20342,#20269) +#20343=@"local_type_name;{T};{#20342}" +local_type_names(#20343,"T",#20342) #20344=* -typeexprs(#20344,1,#20343,0,"T") +typeexprs(#20344,22,#20339,2,"T") hasLocation(#20344,#20187) -enclosing_stmt(#20344,#20338) -expr_containers(#20344,#20265) -literals("T","T",#20344) -typedecl(#20344,#20342) +enclosing_stmt(#20344,#20339) +expr_containers(#20344,#20266) #20345=* -typeexprs(#20345,27,#20338,1,"{ [P in ... T[P] }") -#20346=@"loc,{#10000},7,22,7,47" -locations_default(#20346,#10000,7,22,7,47) -hasLocation(#20345,#20346) -enclosing_stmt(#20345,#20338) -expr_containers(#20345,#20265) -#20347=* -scopes(#20347,13) -scopenodes(#20345,#20347) -scopenesting(#20347,#20341) -#20348=@"local_type_name;{P};{#20347}" -local_type_names(#20348,"P",#20347) -#20349=* -typeexprs(#20349,22,#20345,0,"P in keyof T") -#20350=@"loc,{#10000},7,25,7,36" -locations_default(#20350,#10000,7,25,7,36) -hasLocation(#20349,#20350) -enclosing_stmt(#20349,#20338) -expr_containers(#20349,#20265) -#20351=* -typeexprs(#20351,1,#20349,0,"P") -hasLocation(#20351,#20197) -enclosing_stmt(#20351,#20338) -expr_containers(#20351,#20265) -literals("P","P",#20351) -typedecl(#20351,#20348) +typeexprs(#20345,1,#20344,0,"T") +hasLocation(#20345,#20187) +enclosing_stmt(#20345,#20339) +expr_containers(#20345,#20266) +literals("T","T",#20345) +typedecl(#20345,#20343) +#20346=* +typeexprs(#20346,27,#20339,1,"{ [P in ... T[P] }") +#20347=@"loc,{#10000},7,22,7,47" +locations_default(#20347,#10000,7,22,7,47) +hasLocation(#20346,#20347) +enclosing_stmt(#20346,#20339) +expr_containers(#20346,#20266) +#20348=* +scopes(#20348,13) +scopenodes(#20346,#20348) +scopenesting(#20348,#20342) +#20349=@"local_type_name;{P};{#20348}" +local_type_names(#20349,"P",#20348) +#20350=* +typeexprs(#20350,22,#20346,0,"P in keyof T") +#20351=@"loc,{#10000},7,25,7,36" +locations_default(#20351,#10000,7,25,7,36) +hasLocation(#20350,#20351) +enclosing_stmt(#20350,#20339) +expr_containers(#20350,#20266) #20352=* -typeexprs(#20352,12,#20349,1,"keyof T") -#20353=@"loc,{#10000},7,30,7,36" -locations_default(#20353,#10000,7,30,7,36) -hasLocation(#20352,#20353) -enclosing_stmt(#20352,#20338) -expr_containers(#20352,#20265) -#20354=* -typeexprs(#20354,0,#20352,0,"T") -hasLocation(#20354,#20203) -enclosing_stmt(#20354,#20338) -expr_containers(#20354,#20265) -literals("T","T",#20354) -typebind(#20354,#20342) +typeexprs(#20352,1,#20350,0,"P") +hasLocation(#20352,#20197) +enclosing_stmt(#20352,#20339) +expr_containers(#20352,#20266) +literals("P","P",#20352) +typedecl(#20352,#20349) +#20353=* +typeexprs(#20353,12,#20350,1,"keyof T") +#20354=@"loc,{#10000},7,30,7,36" +locations_default(#20354,#10000,7,30,7,36) +hasLocation(#20353,#20354) +enclosing_stmt(#20353,#20339) +expr_containers(#20353,#20266) #20355=* -typeexprs(#20355,8,#20345,1,"T[P]") -#20356=@"loc,{#10000},7,42,7,45" -locations_default(#20356,#10000,7,42,7,45) -hasLocation(#20355,#20356) -enclosing_stmt(#20355,#20338) -expr_containers(#20355,#20265) -#20357=* -typeexprs(#20357,0,#20355,0,"T") -hasLocation(#20357,#20213) -enclosing_stmt(#20357,#20338) -expr_containers(#20357,#20265) -literals("T","T",#20357) -typebind(#20357,#20342) +typeexprs(#20355,0,#20353,0,"T") +hasLocation(#20355,#20203) +enclosing_stmt(#20355,#20339) +expr_containers(#20355,#20266) +literals("T","T",#20355) +typebind(#20355,#20343) +#20356=* +typeexprs(#20356,8,#20346,1,"T[P]") +#20357=@"loc,{#10000},7,42,7,45" +locations_default(#20357,#10000,7,42,7,45) +hasLocation(#20356,#20357) +enclosing_stmt(#20356,#20339) +expr_containers(#20356,#20266) #20358=* -typeexprs(#20358,0,#20355,1,"P") -hasLocation(#20358,#20217) -enclosing_stmt(#20358,#20338) -expr_containers(#20358,#20265) -literals("P","P",#20358) -typebind(#20358,#20348) +typeexprs(#20358,0,#20356,0,"T") +hasLocation(#20358,#20213) +enclosing_stmt(#20358,#20339) +expr_containers(#20358,#20266) +literals("T","T",#20358) +typebind(#20358,#20343) #20359=* -stmts(#20359,35,#20265,4,"type Fo ... ring };") -#20360=@"loc,{#10000},9,3,9,28" -locations_default(#20360,#10000,9,3,9,28) -hasLocation(#20359,#20360) -stmt_containers(#20359,#20265) -#20361=* -typeexprs(#20361,1,#20359,0,"Foo") -hasLocation(#20361,#20227) -enclosing_stmt(#20361,#20359) -expr_containers(#20361,#20265) -literals("Foo","Foo",#20361) -typedecl(#20361,#20273) +typeexprs(#20359,0,#20356,1,"P") +hasLocation(#20359,#20217) +enclosing_stmt(#20359,#20339) +expr_containers(#20359,#20266) +literals("P","P",#20359) +typebind(#20359,#20349) +#20360=* +stmts(#20360,35,#20266,4,"type Fo ... ring };") +#20361=@"loc,{#10000},9,3,9,28" +locations_default(#20361,#10000,9,3,9,28) +hasLocation(#20360,#20361) +stmt_containers(#20360,#20266) #20362=* -typeexprs(#20362,21,#20359,1,"{ a?: string }") -#20363=@"loc,{#10000},9,14,9,27" -locations_default(#20363,#10000,9,14,9,27) -hasLocation(#20362,#20363) -enclosing_stmt(#20362,#20359) -expr_containers(#20362,#20265) -#20364=* -properties(#20364,#20362,0,8,"a?: string") -#20365=@"loc,{#10000},9,16,9,25" -locations_default(#20365,#10000,9,16,9,25) -hasLocation(#20364,#20365) -#20366=* -exprs(#20366,0,#20364,0,"a") -hasLocation(#20366,#20233) -enclosing_stmt(#20366,#20359) -expr_containers(#20366,#20265) -literals("a","a",#20366) -is_abstract_member(#20364) -is_optional_member(#20364) +typeexprs(#20362,1,#20360,0,"Foo") +hasLocation(#20362,#20227) +enclosing_stmt(#20362,#20360) +expr_containers(#20362,#20266) +literals("Foo","Foo",#20362) +typedecl(#20362,#20274) +#20363=* +typeexprs(#20363,21,#20360,1,"{ a?: string }") +#20364=@"loc,{#10000},9,14,9,27" +locations_default(#20364,#10000,9,14,9,27) +hasLocation(#20363,#20364) +enclosing_stmt(#20363,#20360) +expr_containers(#20363,#20266) +#20365=* +properties(#20365,#20363,0,8,"a?: string") +#20366=@"loc,{#10000},9,16,9,25" +locations_default(#20366,#10000,9,16,9,25) +hasLocation(#20365,#20366) #20367=* -typeexprs(#20367,2,#20364,2,"string") -hasLocation(#20367,#20239) -enclosing_stmt(#20367,#20359) -expr_containers(#20367,#20265) -literals("string","string",#20367) +exprs(#20367,0,#20365,0,"a") +hasLocation(#20367,#20233) +enclosing_stmt(#20367,#20360) +expr_containers(#20367,#20266) +literals("a","a",#20367) +is_abstract_member(#20365) +is_optional_member(#20365) #20368=* -stmts(#20368,35,#20265,5,"type Ba ... d;") -#20369=@"loc,{#10000},10,3,10,27" -locations_default(#20369,#10000,10,3,10,27) -hasLocation(#20368,#20369) -stmt_containers(#20368,#20265) -#20370=* -typeexprs(#20370,1,#20368,0,"Bar") -hasLocation(#20370,#20247) -enclosing_stmt(#20370,#20368) -expr_containers(#20370,#20265) -literals("Bar","Bar",#20370) -typedecl(#20370,#20274) +typeexprs(#20368,2,#20365,2,"string") +hasLocation(#20368,#20239) +enclosing_stmt(#20368,#20360) +expr_containers(#20368,#20266) +literals("string","string",#20368) +#20369=* +stmts(#20369,35,#20266,5,"type Ba ... d;") +#20370=@"loc,{#10000},10,3,10,27" +locations_default(#20370,#10000,10,3,10,27) +hasLocation(#20369,#20370) +stmt_containers(#20369,#20266) #20371=* -typeexprs(#20371,14,#20368,1,"Required") -#20372=@"loc,{#10000},10,14,10,26" -locations_default(#20372,#10000,10,14,10,26) -hasLocation(#20371,#20372) -enclosing_stmt(#20371,#20368) -expr_containers(#20371,#20265) -#20373=* -typeexprs(#20373,0,#20371,-1,"Required") -hasLocation(#20373,#20251) -enclosing_stmt(#20373,#20368) -expr_containers(#20373,#20265) -literals("Required","Required",#20373) -typebind(#20373,#20272) +typeexprs(#20371,1,#20369,0,"Bar") +hasLocation(#20371,#20247) +enclosing_stmt(#20371,#20369) +expr_containers(#20371,#20266) +literals("Bar","Bar",#20371) +typedecl(#20371,#20275) +#20372=* +typeexprs(#20372,14,#20369,1,"Required") +#20373=@"loc,{#10000},10,14,10,26" +locations_default(#20373,#10000,10,14,10,26) +hasLocation(#20372,#20373) +enclosing_stmt(#20372,#20369) +expr_containers(#20372,#20266) #20374=* -typeexprs(#20374,0,#20371,0,"Foo") -hasLocation(#20374,#20255) -enclosing_stmt(#20374,#20368) -expr_containers(#20374,#20265) -literals("Foo","Foo",#20374) +typeexprs(#20374,0,#20372,-1,"Required") +hasLocation(#20374,#20251) +enclosing_stmt(#20374,#20369) +expr_containers(#20374,#20266) +literals("Required","Required",#20374) typebind(#20374,#20273) #20375=* -entry_cfg_node(#20375,#20001) -#20376=@"loc,{#10000},1,1,1,0" -locations_default(#20376,#10000,1,1,1,0) -hasLocation(#20375,#20376) -#20377=* -exit_cfg_node(#20377,#20001) -hasLocation(#20377,#20262) -successor(#20267,#20265) -successor(#20368,#20377) -successor(#20359,#20368) -successor(#20338,#20359) -successor(#20317,#20338) -successor(#20296,#20317) -successor(#20275,#20296) -successor(#20265,#20275) -successor(#20375,#20267) +typeexprs(#20375,0,#20372,0,"Foo") +hasLocation(#20375,#20255) +enclosing_stmt(#20375,#20369) +expr_containers(#20375,#20266) +literals("Foo","Foo",#20375) +typebind(#20375,#20274) +#20376=* +entry_cfg_node(#20376,#20001) +#20377=@"loc,{#10000},1,1,1,0" +locations_default(#20377,#10000,1,1,1,0) +hasLocation(#20376,#20377) +#20378=* +exit_cfg_node(#20378,#20001) +hasLocation(#20378,#20262) +successor(#20268,#20266) +successor(#20369,#20378) +successor(#20360,#20369) +successor(#20339,#20360) +successor(#20318,#20339) +successor(#20297,#20318) +successor(#20276,#20297) +successor(#20266,#20276) +successor(#20376,#20268) numlines(#10000,11,8,5) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/namespaces.ts.trap b/javascript/extractor/tests/ts/output/trap/namespaces.ts.trap index 5d9345a82be4..eb592755f68b 100644 --- a/javascript/extractor/tests/ts/output/trap/namespaces.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/namespaces.ts.trap @@ -195,160 +195,162 @@ local_namespace_names(#20070,"x",#20000) variables(#20067,"x",#20000) local_type_names(#20068,"x",#20000) local_namespace_names(#20070,"x",#20000) -#20071=* -stmts(#20071,31,#20001,0,"namespa ... ;\n }\n}") -#20072=@"loc,{#10000},1,1,5,1" -locations_default(#20072,#10000,1,1,5,1) -hasLocation(#20071,#20072) -stmt_containers(#20071,#20001) -#20073=* -exprs(#20073,78,#20071,-1,"M") -hasLocation(#20073,#20019) -enclosing_stmt(#20073,#20071) -expr_containers(#20073,#20001) -literals("M","M",#20073) -decl(#20073,#20066) -namespacedecl(#20073,#20069) +#20071=@"var;{this};{#20000}" +variables(#20071,"this",#20000) +#20072=* +stmts(#20072,31,#20001,0,"namespa ... ;\n }\n}") +#20073=@"loc,{#10000},1,1,5,1" +locations_default(#20073,#10000,1,1,5,1) +hasLocation(#20072,#20073) +stmt_containers(#20072,#20001) #20074=* -scopes(#20074,9) -scopenodes(#20071,#20074) -scopenesting(#20074,#20000) -#20075=@"var;{N};{#20074}" -variables(#20075,"N",#20074) -#20076=@"local_namespace_name;{N};{#20074}" -local_namespace_names(#20076,"N",#20074) -#20077=* -stmts(#20077,30,#20071,0,"export ... 42;\n }") -#20078=@"loc,{#10000},2,3,4,3" -locations_default(#20078,#10000,2,3,4,3) -hasLocation(#20077,#20078) -stmt_containers(#20077,#20071) -#20079=* -stmts(#20079,31,#20077,-1,"namespa ... 42;\n }") -#20080=@"loc,{#10000},2,10,4,3" -locations_default(#20080,#10000,2,10,4,3) -hasLocation(#20079,#20080) -stmt_containers(#20079,#20071) -#20081=* -exprs(#20081,78,#20079,-1,"N") -hasLocation(#20081,#20027) -enclosing_stmt(#20081,#20079) -expr_containers(#20081,#20071) -literals("N","N",#20081) -decl(#20081,#20075) -namespacedecl(#20081,#20076) +exprs(#20074,78,#20072,-1,"M") +hasLocation(#20074,#20019) +enclosing_stmt(#20074,#20072) +expr_containers(#20074,#20001) +literals("M","M",#20074) +decl(#20074,#20066) +namespacedecl(#20074,#20069) +#20075=* +scopes(#20075,9) +scopenodes(#20072,#20075) +scopenesting(#20075,#20000) +#20076=@"var;{N};{#20075}" +variables(#20076,"N",#20075) +#20077=@"local_namespace_name;{N};{#20075}" +local_namespace_names(#20077,"N",#20075) +#20078=* +stmts(#20078,30,#20072,0,"export ... 42;\n }") +#20079=@"loc,{#10000},2,3,4,3" +locations_default(#20079,#10000,2,3,4,3) +hasLocation(#20078,#20079) +stmt_containers(#20078,#20072) +#20080=* +stmts(#20080,31,#20078,-1,"namespa ... 42;\n }") +#20081=@"loc,{#10000},2,10,4,3" +locations_default(#20081,#10000,2,10,4,3) +hasLocation(#20080,#20081) +stmt_containers(#20080,#20072) #20082=* -scopes(#20082,9) -scopenodes(#20079,#20082) -scopenesting(#20082,#20074) -#20083=@"var;{x};{#20082}" -variables(#20083,"x",#20082) -#20084=* -stmts(#20084,30,#20079,0,"export let x = 42;") -#20085=@"loc,{#10000},3,5,3,22" -locations_default(#20085,#10000,3,5,3,22) -hasLocation(#20084,#20085) -stmt_containers(#20084,#20079) -#20086=* -stmts(#20086,23,#20084,-1,"let x = 42;") -#20087=@"loc,{#10000},3,12,3,22" -locations_default(#20087,#10000,3,12,3,22) -hasLocation(#20086,#20087) -stmt_containers(#20086,#20079) -#20088=* -exprs(#20088,64,#20086,0,"x = 42") -#20089=@"loc,{#10000},3,16,3,21" -locations_default(#20089,#10000,3,16,3,21) -hasLocation(#20088,#20089) -enclosing_stmt(#20088,#20086) -expr_containers(#20088,#20079) -#20090=* -exprs(#20090,78,#20088,0,"x") -hasLocation(#20090,#20035) -enclosing_stmt(#20090,#20086) -expr_containers(#20090,#20079) -literals("x","x",#20090) -decl(#20090,#20083) +exprs(#20082,78,#20080,-1,"N") +hasLocation(#20082,#20027) +enclosing_stmt(#20082,#20080) +expr_containers(#20082,#20072) +literals("N","N",#20082) +decl(#20082,#20076) +namespacedecl(#20082,#20077) +#20083=* +scopes(#20083,9) +scopenodes(#20080,#20083) +scopenesting(#20083,#20075) +#20084=@"var;{x};{#20083}" +variables(#20084,"x",#20083) +#20085=* +stmts(#20085,30,#20080,0,"export let x = 42;") +#20086=@"loc,{#10000},3,5,3,22" +locations_default(#20086,#10000,3,5,3,22) +hasLocation(#20085,#20086) +stmt_containers(#20085,#20080) +#20087=* +stmts(#20087,23,#20085,-1,"let x = 42;") +#20088=@"loc,{#10000},3,12,3,22" +locations_default(#20088,#10000,3,12,3,22) +hasLocation(#20087,#20088) +stmt_containers(#20087,#20080) +#20089=* +exprs(#20089,64,#20087,0,"x = 42") +#20090=@"loc,{#10000},3,16,3,21" +locations_default(#20090,#10000,3,16,3,21) +hasLocation(#20089,#20090) +enclosing_stmt(#20089,#20087) +expr_containers(#20089,#20080) #20091=* -exprs(#20091,3,#20088,1,"42") -hasLocation(#20091,#20039) -enclosing_stmt(#20091,#20086) -expr_containers(#20091,#20079) -literals("42","42",#20091) -is_instantiated(#20079) -is_instantiated(#20071) +exprs(#20091,78,#20089,0,"x") +hasLocation(#20091,#20035) +enclosing_stmt(#20091,#20087) +expr_containers(#20091,#20080) +literals("x","x",#20091) +decl(#20091,#20084) #20092=* -stmts(#20092,32,#20001,1,"import x = M.N.x;") -hasLocation(#20092,#20015) -stmt_containers(#20092,#20001) +exprs(#20092,3,#20089,1,"42") +hasLocation(#20092,#20039) +enclosing_stmt(#20092,#20087) +expr_containers(#20092,#20080) +literals("42","42",#20092) +is_instantiated(#20080) +is_instantiated(#20072) #20093=* -exprs(#20093,78,#20092,0,"x") -hasLocation(#20093,#20048) -enclosing_stmt(#20093,#20092) -expr_containers(#20093,#20001) -literals("x","x",#20093) -decl(#20093,#20067) -typedecl(#20093,#20068) -namespacedecl(#20093,#20070) +stmts(#20093,32,#20001,1,"import x = M.N.x;") +hasLocation(#20093,#20015) +stmt_containers(#20093,#20001) #20094=* -exprs(#20094,14,#20092,1,"M.N.x") -#20095=@"loc,{#10000},7,12,7,16" -locations_default(#20095,#10000,7,12,7,16) -hasLocation(#20094,#20095) -enclosing_stmt(#20094,#20092) +exprs(#20094,78,#20093,0,"x") +hasLocation(#20094,#20048) +enclosing_stmt(#20094,#20093) expr_containers(#20094,#20001) -#20096=* -exprs(#20096,14,#20094,0,"M.N") -#20097=@"loc,{#10000},7,12,7,14" -locations_default(#20097,#10000,7,12,7,14) -hasLocation(#20096,#20097) -enclosing_stmt(#20096,#20092) -expr_containers(#20096,#20001) -#20098=* -exprs(#20098,103,#20096,0,"M") -hasLocation(#20098,#20052) -enclosing_stmt(#20098,#20092) -expr_containers(#20098,#20001) -literals("M","M",#20098) -namespacebind(#20098,#20069) -bind(#20098,#20066) +literals("x","x",#20094) +decl(#20094,#20067) +typedecl(#20094,#20068) +namespacedecl(#20094,#20070) +#20095=* +exprs(#20095,14,#20093,1,"M.N.x") +#20096=@"loc,{#10000},7,12,7,16" +locations_default(#20096,#10000,7,12,7,16) +hasLocation(#20095,#20096) +enclosing_stmt(#20095,#20093) +expr_containers(#20095,#20001) +#20097=* +exprs(#20097,14,#20095,0,"M.N") +#20098=@"loc,{#10000},7,12,7,14" +locations_default(#20098,#10000,7,12,7,14) +hasLocation(#20097,#20098) +enclosing_stmt(#20097,#20093) +expr_containers(#20097,#20001) #20099=* -exprs(#20099,0,#20096,1,"N") -hasLocation(#20099,#20056) -enclosing_stmt(#20099,#20092) +exprs(#20099,103,#20097,0,"M") +hasLocation(#20099,#20052) +enclosing_stmt(#20099,#20093) expr_containers(#20099,#20001) -literals("N","N",#20099) +literals("M","M",#20099) +namespacebind(#20099,#20069) +bind(#20099,#20066) #20100=* -exprs(#20100,0,#20094,1,"x") -hasLocation(#20100,#20060) -enclosing_stmt(#20100,#20092) +exprs(#20100,0,#20097,1,"N") +hasLocation(#20100,#20056) +enclosing_stmt(#20100,#20093) expr_containers(#20100,#20001) -literals("x","x",#20100) +literals("N","N",#20100) #20101=* -entry_cfg_node(#20101,#20001) -#20102=@"loc,{#10000},1,1,1,0" -locations_default(#20102,#10000,1,1,1,0) -hasLocation(#20101,#20102) -#20103=* -exit_cfg_node(#20103,#20001) -hasLocation(#20103,#20064) -successor(#20100,#20094) -successor(#20099,#20096) -successor(#20098,#20099) -successor(#20096,#20100) -successor(#20094,#20092) -successor(#20093,#20098) -successor(#20092,#20103) -successor(#20073,#20071) -successor(#20077,#20081) -successor(#20081,#20079) -successor(#20084,#20086) -successor(#20086,#20090) -successor(#20091,#20088) -successor(#20090,#20091) -successor(#20088,#20093) -successor(#20079,#20084) -successor(#20071,#20077) -successor(#20101,#20073) +exprs(#20101,0,#20095,1,"x") +hasLocation(#20101,#20060) +enclosing_stmt(#20101,#20093) +expr_containers(#20101,#20001) +literals("x","x",#20101) +#20102=* +entry_cfg_node(#20102,#20001) +#20103=@"loc,{#10000},1,1,1,0" +locations_default(#20103,#10000,1,1,1,0) +hasLocation(#20102,#20103) +#20104=* +exit_cfg_node(#20104,#20001) +hasLocation(#20104,#20064) +successor(#20101,#20095) +successor(#20100,#20097) +successor(#20099,#20100) +successor(#20097,#20101) +successor(#20095,#20093) +successor(#20094,#20099) +successor(#20093,#20104) +successor(#20074,#20072) +successor(#20078,#20082) +successor(#20082,#20080) +successor(#20085,#20087) +successor(#20087,#20091) +successor(#20092,#20089) +successor(#20091,#20092) +successor(#20089,#20094) +successor(#20080,#20085) +successor(#20072,#20078) +successor(#20102,#20074) numlines(#10000,7,6,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/nestedNamespace.ts.trap b/javascript/extractor/tests/ts/output/trap/nestedNamespace.ts.trap index 72f567e6ebb2..eb03173a02d1 100644 --- a/javascript/extractor/tests/ts/output/trap/nestedNamespace.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/nestedNamespace.ts.trap @@ -226,246 +226,248 @@ hasLocation(#20001,#20081) local_namespace_names(#20082,"A",#20000) #20083=@"local_namespace_name;{X};{#20000}" local_namespace_names(#20083,"X",#20000) -#20084=* -stmts(#20084,31,#20001,0,"namespace A.B {}") -hasLocation(#20084,#20003) -stmt_containers(#20084,#20001) +#20084=@"var;{this};{#20000}" +variables(#20084,"this",#20000) #20085=* -exprs(#20085,78,#20084,-1,"A") -hasLocation(#20085,#20021) -enclosing_stmt(#20085,#20084) -expr_containers(#20085,#20001) -literals("A","A",#20085) -namespacedecl(#20085,#20082) +stmts(#20085,31,#20001,0,"namespace A.B {}") +hasLocation(#20085,#20003) +stmt_containers(#20085,#20001) #20086=* -scopes(#20086,9) -scopenodes(#20084,#20086) -scopenesting(#20086,#20000) -#20087=@"local_namespace_name;{B};{#20086}" -local_namespace_names(#20087,"B",#20086) -#20088=* -stmts(#20088,30,#20084,0,"B {}") -#20089=@"loc,{#10000},1,13,1,16" -locations_default(#20089,#10000,1,13,1,16) -hasLocation(#20088,#20089) -stmt_containers(#20088,#20084) -#20090=* -stmts(#20090,31,#20088,-1,"B {}") -hasLocation(#20090,#20089) -stmt_containers(#20090,#20084) +exprs(#20086,78,#20085,-1,"A") +hasLocation(#20086,#20021) +enclosing_stmt(#20086,#20085) +expr_containers(#20086,#20001) +literals("A","A",#20086) +namespacedecl(#20086,#20082) +#20087=* +scopes(#20087,9) +scopenodes(#20085,#20087) +scopenesting(#20087,#20000) +#20088=@"local_namespace_name;{B};{#20087}" +local_namespace_names(#20088,"B",#20087) +#20089=* +stmts(#20089,30,#20085,0,"B {}") +#20090=@"loc,{#10000},1,13,1,16" +locations_default(#20090,#10000,1,13,1,16) +hasLocation(#20089,#20090) +stmt_containers(#20089,#20085) #20091=* -exprs(#20091,78,#20090,-1,"B") -hasLocation(#20091,#20025) -enclosing_stmt(#20091,#20090) -expr_containers(#20091,#20084) -literals("B","B",#20091) -namespacedecl(#20091,#20087) +stmts(#20091,31,#20089,-1,"B {}") +hasLocation(#20091,#20090) +stmt_containers(#20091,#20085) #20092=* -scopes(#20092,9) -scopenodes(#20090,#20092) -scopenesting(#20092,#20086) +exprs(#20092,78,#20091,-1,"B") +hasLocation(#20092,#20025) +enclosing_stmt(#20092,#20091) +expr_containers(#20092,#20085) +literals("B","B",#20092) +namespacedecl(#20092,#20088) #20093=* -stmts(#20093,31,#20001,1,"namespace A.B.C {}") -hasLocation(#20093,#20005) -stmt_containers(#20093,#20001) +scopes(#20093,9) +scopenodes(#20091,#20093) +scopenesting(#20093,#20087) #20094=* -exprs(#20094,78,#20093,-1,"A") -hasLocation(#20094,#20033) -enclosing_stmt(#20094,#20093) -expr_containers(#20094,#20001) -literals("A","A",#20094) -namespacedecl(#20094,#20082) +stmts(#20094,31,#20001,1,"namespace A.B.C {}") +hasLocation(#20094,#20005) +stmt_containers(#20094,#20001) #20095=* -scopes(#20095,9) -scopenodes(#20093,#20095) -scopenesting(#20095,#20000) -#20096=@"local_namespace_name;{B};{#20095}" -local_namespace_names(#20096,"B",#20095) -#20097=* -stmts(#20097,30,#20093,0,"B.C {}") -#20098=@"loc,{#10000},2,13,2,18" -locations_default(#20098,#10000,2,13,2,18) -hasLocation(#20097,#20098) -stmt_containers(#20097,#20093) -#20099=* -stmts(#20099,31,#20097,-1,"B.C {}") -hasLocation(#20099,#20098) -stmt_containers(#20099,#20093) +exprs(#20095,78,#20094,-1,"A") +hasLocation(#20095,#20033) +enclosing_stmt(#20095,#20094) +expr_containers(#20095,#20001) +literals("A","A",#20095) +namespacedecl(#20095,#20082) +#20096=* +scopes(#20096,9) +scopenodes(#20094,#20096) +scopenesting(#20096,#20000) +#20097=@"local_namespace_name;{B};{#20096}" +local_namespace_names(#20097,"B",#20096) +#20098=* +stmts(#20098,30,#20094,0,"B.C {}") +#20099=@"loc,{#10000},2,13,2,18" +locations_default(#20099,#10000,2,13,2,18) +hasLocation(#20098,#20099) +stmt_containers(#20098,#20094) #20100=* -exprs(#20100,78,#20099,-1,"B") -hasLocation(#20100,#20037) -enclosing_stmt(#20100,#20099) -expr_containers(#20100,#20093) -literals("B","B",#20100) -namespacedecl(#20100,#20096) +stmts(#20100,31,#20098,-1,"B.C {}") +hasLocation(#20100,#20099) +stmt_containers(#20100,#20094) #20101=* -scopes(#20101,9) -scopenodes(#20099,#20101) -scopenesting(#20101,#20095) -#20102=@"local_namespace_name;{C};{#20101}" -local_namespace_names(#20102,"C",#20101) -#20103=* -stmts(#20103,30,#20099,0,"C {}") -#20104=@"loc,{#10000},2,15,2,18" -locations_default(#20104,#10000,2,15,2,18) -hasLocation(#20103,#20104) -stmt_containers(#20103,#20099) -#20105=* -stmts(#20105,31,#20103,-1,"C {}") -hasLocation(#20105,#20104) -stmt_containers(#20105,#20099) +exprs(#20101,78,#20100,-1,"B") +hasLocation(#20101,#20037) +enclosing_stmt(#20101,#20100) +expr_containers(#20101,#20094) +literals("B","B",#20101) +namespacedecl(#20101,#20097) +#20102=* +scopes(#20102,9) +scopenodes(#20100,#20102) +scopenesting(#20102,#20096) +#20103=@"local_namespace_name;{C};{#20102}" +local_namespace_names(#20103,"C",#20102) +#20104=* +stmts(#20104,30,#20100,0,"C {}") +#20105=@"loc,{#10000},2,15,2,18" +locations_default(#20105,#10000,2,15,2,18) +hasLocation(#20104,#20105) +stmt_containers(#20104,#20100) #20106=* -exprs(#20106,78,#20105,-1,"C") -hasLocation(#20106,#20041) -enclosing_stmt(#20106,#20105) -expr_containers(#20106,#20099) -literals("C","C",#20106) -namespacedecl(#20106,#20102) +stmts(#20106,31,#20104,-1,"C {}") +hasLocation(#20106,#20105) +stmt_containers(#20106,#20100) #20107=* -scopes(#20107,9) -scopenodes(#20105,#20107) -scopenesting(#20107,#20101) +exprs(#20107,78,#20106,-1,"C") +hasLocation(#20107,#20041) +enclosing_stmt(#20107,#20106) +expr_containers(#20107,#20100) +literals("C","C",#20107) +namespacedecl(#20107,#20103) #20108=* -stmts(#20108,31,#20001,2,"namespa ... .Q {}\n}") -#20109=@"loc,{#10000},4,1,8,1" -locations_default(#20109,#10000,4,1,8,1) -hasLocation(#20108,#20109) -stmt_containers(#20108,#20001) -#20110=* -exprs(#20110,78,#20108,-1,"X") -hasLocation(#20110,#20049) -enclosing_stmt(#20110,#20108) -expr_containers(#20110,#20001) -literals("X","X",#20110) -namespacedecl(#20110,#20083) +scopes(#20108,9) +scopenodes(#20106,#20108) +scopenesting(#20108,#20102) +#20109=* +stmts(#20109,31,#20001,2,"namespa ... .Q {}\n}") +#20110=@"loc,{#10000},4,1,8,1" +locations_default(#20110,#10000,4,1,8,1) +hasLocation(#20109,#20110) +stmt_containers(#20109,#20001) #20111=* -scopes(#20111,9) -scopenodes(#20108,#20111) -scopenesting(#20111,#20000) -#20112=@"local_namespace_name;{Y};{#20111}" -local_namespace_names(#20112,"Y",#20111) -#20113=@"local_namespace_name;{W};{#20111}" -local_namespace_names(#20113,"W",#20111) -#20114=* -stmts(#20114,30,#20108,0,"export ... Y.Z {}") -#20115=@"loc,{#10000},5,3,5,25" -locations_default(#20115,#10000,5,3,5,25) -hasLocation(#20114,#20115) -stmt_containers(#20114,#20108) -#20116=* -stmts(#20116,31,#20114,-1,"namespace Y.Z {}") -#20117=@"loc,{#10000},5,10,5,25" -locations_default(#20117,#10000,5,10,5,25) -hasLocation(#20116,#20117) -stmt_containers(#20116,#20108) -#20118=* -exprs(#20118,78,#20116,-1,"Y") -hasLocation(#20118,#20057) -enclosing_stmt(#20118,#20116) -expr_containers(#20118,#20108) -literals("Y","Y",#20118) -namespacedecl(#20118,#20112) +exprs(#20111,78,#20109,-1,"X") +hasLocation(#20111,#20049) +enclosing_stmt(#20111,#20109) +expr_containers(#20111,#20001) +literals("X","X",#20111) +namespacedecl(#20111,#20083) +#20112=* +scopes(#20112,9) +scopenodes(#20109,#20112) +scopenesting(#20112,#20000) +#20113=@"local_namespace_name;{Y};{#20112}" +local_namespace_names(#20113,"Y",#20112) +#20114=@"local_namespace_name;{W};{#20112}" +local_namespace_names(#20114,"W",#20112) +#20115=* +stmts(#20115,30,#20109,0,"export ... Y.Z {}") +#20116=@"loc,{#10000},5,3,5,25" +locations_default(#20116,#10000,5,3,5,25) +hasLocation(#20115,#20116) +stmt_containers(#20115,#20109) +#20117=* +stmts(#20117,31,#20115,-1,"namespace Y.Z {}") +#20118=@"loc,{#10000},5,10,5,25" +locations_default(#20118,#10000,5,10,5,25) +hasLocation(#20117,#20118) +stmt_containers(#20117,#20109) #20119=* -scopes(#20119,9) -scopenodes(#20116,#20119) -scopenesting(#20119,#20111) -#20120=@"local_namespace_name;{Z};{#20119}" -local_namespace_names(#20120,"Z",#20119) -#20121=* -stmts(#20121,30,#20116,0,"Z {}") -#20122=@"loc,{#10000},5,22,5,25" -locations_default(#20122,#10000,5,22,5,25) -hasLocation(#20121,#20122) -stmt_containers(#20121,#20116) -#20123=* -stmts(#20123,31,#20121,-1,"Z {}") -hasLocation(#20123,#20122) -stmt_containers(#20123,#20116) +exprs(#20119,78,#20117,-1,"Y") +hasLocation(#20119,#20057) +enclosing_stmt(#20119,#20117) +expr_containers(#20119,#20109) +literals("Y","Y",#20119) +namespacedecl(#20119,#20113) +#20120=* +scopes(#20120,9) +scopenodes(#20117,#20120) +scopenesting(#20120,#20112) +#20121=@"local_namespace_name;{Z};{#20120}" +local_namespace_names(#20121,"Z",#20120) +#20122=* +stmts(#20122,30,#20117,0,"Z {}") +#20123=@"loc,{#10000},5,22,5,25" +locations_default(#20123,#10000,5,22,5,25) +hasLocation(#20122,#20123) +stmt_containers(#20122,#20117) #20124=* -exprs(#20124,78,#20123,-1,"Z") -hasLocation(#20124,#20061) -enclosing_stmt(#20124,#20123) -expr_containers(#20124,#20116) -literals("Z","Z",#20124) -namespacedecl(#20124,#20120) +stmts(#20124,31,#20122,-1,"Z {}") +hasLocation(#20124,#20123) +stmt_containers(#20124,#20117) #20125=* -scopes(#20125,9) -scopenodes(#20123,#20125) -scopenesting(#20125,#20119) +exprs(#20125,78,#20124,-1,"Z") +hasLocation(#20125,#20061) +enclosing_stmt(#20125,#20124) +expr_containers(#20125,#20117) +literals("Z","Z",#20125) +namespacedecl(#20125,#20121) #20126=* -stmts(#20126,31,#20108,1,"namespace W.Q {}") -#20127=@"loc,{#10000},7,3,7,18" -locations_default(#20127,#10000,7,3,7,18) -hasLocation(#20126,#20127) -stmt_containers(#20126,#20108) -#20128=* -exprs(#20128,78,#20126,-1,"W") -hasLocation(#20128,#20069) -enclosing_stmt(#20128,#20126) -expr_containers(#20128,#20108) -literals("W","W",#20128) -namespacedecl(#20128,#20113) +scopes(#20126,9) +scopenodes(#20124,#20126) +scopenesting(#20126,#20120) +#20127=* +stmts(#20127,31,#20109,1,"namespace W.Q {}") +#20128=@"loc,{#10000},7,3,7,18" +locations_default(#20128,#10000,7,3,7,18) +hasLocation(#20127,#20128) +stmt_containers(#20127,#20109) #20129=* -scopes(#20129,9) -scopenodes(#20126,#20129) -scopenesting(#20129,#20111) -#20130=@"local_namespace_name;{Q};{#20129}" -local_namespace_names(#20130,"Q",#20129) -#20131=* -stmts(#20131,30,#20126,0,"Q {}") -#20132=@"loc,{#10000},7,15,7,18" -locations_default(#20132,#10000,7,15,7,18) -hasLocation(#20131,#20132) -stmt_containers(#20131,#20126) -#20133=* -stmts(#20133,31,#20131,-1,"Q {}") -hasLocation(#20133,#20132) -stmt_containers(#20133,#20126) +exprs(#20129,78,#20127,-1,"W") +hasLocation(#20129,#20069) +enclosing_stmt(#20129,#20127) +expr_containers(#20129,#20109) +literals("W","W",#20129) +namespacedecl(#20129,#20114) +#20130=* +scopes(#20130,9) +scopenodes(#20127,#20130) +scopenesting(#20130,#20112) +#20131=@"local_namespace_name;{Q};{#20130}" +local_namespace_names(#20131,"Q",#20130) +#20132=* +stmts(#20132,30,#20127,0,"Q {}") +#20133=@"loc,{#10000},7,15,7,18" +locations_default(#20133,#10000,7,15,7,18) +hasLocation(#20132,#20133) +stmt_containers(#20132,#20127) #20134=* -exprs(#20134,78,#20133,-1,"Q") -hasLocation(#20134,#20073) -enclosing_stmt(#20134,#20133) -expr_containers(#20134,#20126) -literals("Q","Q",#20134) -namespacedecl(#20134,#20130) +stmts(#20134,31,#20132,-1,"Q {}") +hasLocation(#20134,#20133) +stmt_containers(#20134,#20127) #20135=* -scopes(#20135,9) -scopenodes(#20133,#20135) -scopenesting(#20135,#20129) +exprs(#20135,78,#20134,-1,"Q") +hasLocation(#20135,#20073) +enclosing_stmt(#20135,#20134) +expr_containers(#20135,#20127) +literals("Q","Q",#20135) +namespacedecl(#20135,#20131) #20136=* -entry_cfg_node(#20136,#20001) -#20137=@"loc,{#10000},1,1,1,0" -locations_default(#20137,#10000,1,1,1,0) -hasLocation(#20136,#20137) -#20138=* -exit_cfg_node(#20138,#20001) -hasLocation(#20138,#20080) -successor(#20110,#20108) -successor(#20128,#20126) -successor(#20131,#20134) -successor(#20134,#20133) -successor(#20133,#20138) -successor(#20126,#20131) -successor(#20114,#20118) -successor(#20118,#20116) -successor(#20121,#20124) -successor(#20124,#20123) -successor(#20123,#20128) -successor(#20116,#20121) -successor(#20108,#20114) -successor(#20094,#20093) -successor(#20097,#20100) -successor(#20100,#20099) -successor(#20103,#20106) -successor(#20106,#20105) -successor(#20105,#20110) -successor(#20099,#20103) -successor(#20093,#20097) -successor(#20085,#20084) -successor(#20088,#20091) -successor(#20091,#20090) -successor(#20090,#20094) -successor(#20084,#20088) -successor(#20136,#20085) +scopes(#20136,9) +scopenodes(#20134,#20136) +scopenesting(#20136,#20130) +#20137=* +entry_cfg_node(#20137,#20001) +#20138=@"loc,{#10000},1,1,1,0" +locations_default(#20138,#10000,1,1,1,0) +hasLocation(#20137,#20138) +#20139=* +exit_cfg_node(#20139,#20001) +hasLocation(#20139,#20080) +successor(#20111,#20109) +successor(#20129,#20127) +successor(#20132,#20135) +successor(#20135,#20134) +successor(#20134,#20139) +successor(#20127,#20132) +successor(#20115,#20119) +successor(#20119,#20117) +successor(#20122,#20125) +successor(#20125,#20124) +successor(#20124,#20129) +successor(#20117,#20122) +successor(#20109,#20115) +successor(#20095,#20094) +successor(#20098,#20101) +successor(#20101,#20100) +successor(#20104,#20107) +successor(#20107,#20106) +successor(#20106,#20111) +successor(#20100,#20104) +successor(#20094,#20098) +successor(#20086,#20085) +successor(#20089,#20092) +successor(#20092,#20091) +successor(#20091,#20095) +successor(#20085,#20089) +successor(#20137,#20086) numlines(#10000,8,6,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/nobody.ts.trap b/javascript/extractor/tests/ts/output/trap/nobody.ts.trap index 717d79423abd..c8545f12c554 100644 --- a/javascript/extractor/tests/ts/output/trap/nobody.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/nobody.ts.trap @@ -704,499 +704,527 @@ variables(#20255,"D",#20000) local_type_names(#20256,"C",#20000) #20257=@"local_type_name;{D};{#20000}" local_type_names(#20257,"D",#20000) -#20258=* -stmts(#20258,17,#20001,0,"declare ... on f();") -hasLocation(#20258,#20020) -stmt_containers(#20258,#20001) -has_declare_keyword(#20258) +#20258=@"var;{this};{#20000}" +variables(#20258,"this",#20000) #20259=* -exprs(#20259,78,#20258,-1,"f") -hasLocation(#20259,#20079) -expr_containers(#20259,#20258) -literals("f","f",#20259) -decl(#20259,#20253) +stmts(#20259,17,#20001,0,"declare ... on f();") +hasLocation(#20259,#20020) +stmt_containers(#20259,#20001) +has_declare_keyword(#20259) #20260=* -scopes(#20260,1) -scopenodes(#20258,#20260) -scopenesting(#20260,#20000) -#20261=@"var;{arguments};{#20260}" -variables(#20261,"arguments",#20260) -is_arguments_object(#20261) -#20262=* -stmts(#20262,26,#20001,1,"abstrac ... mber;\n}") -#20263=@"loc,{#10000},4,1,15,1" -locations_default(#20263,#10000,4,1,15,1) -hasLocation(#20262,#20263) -stmt_containers(#20262,#20001) -is_abstract_class(#20262) +exprs(#20260,78,#20259,-1,"f") +hasLocation(#20260,#20079) +expr_containers(#20260,#20259) +literals("f","f",#20260) +decl(#20260,#20253) +#20261=* +scopes(#20261,1) +scopenodes(#20259,#20261) +scopenesting(#20261,#20000) +#20262=@"var;{this};{#20261}" +variables(#20262,"this",#20261) +#20263=@"var;{arguments};{#20261}" +variables(#20263,"arguments",#20261) +is_arguments_object(#20263) #20264=* -exprs(#20264,78,#20262,0,"C") -hasLocation(#20264,#20091) -enclosing_stmt(#20264,#20262) -expr_containers(#20264,#20001) -literals("C","C",#20264) -decl(#20264,#20254) -typedecl(#20264,#20256) -#20265=* -scopes(#20265,10) -scopenodes(#20262,#20265) -scopenesting(#20265,#20000) +stmts(#20264,26,#20001,1,"abstrac ... mber;\n}") +#20265=@"loc,{#10000},4,1,15,1" +locations_default(#20265,#10000,4,1,15,1) +hasLocation(#20264,#20265) +stmt_containers(#20264,#20001) +is_abstract_class(#20264) #20266=* -properties(#20266,#20262,2,0,"abstract h();") -#20267=@"loc,{#10000},6,3,6,15" -locations_default(#20267,#10000,6,3,6,15) -hasLocation(#20266,#20267) -#20268=* -exprs(#20268,0,#20266,0,"h") -hasLocation(#20268,#20097) -enclosing_stmt(#20268,#20262) -expr_containers(#20268,#20001) -literals("h","h",#20268) +exprs(#20266,78,#20264,0,"C") +hasLocation(#20266,#20091) +enclosing_stmt(#20266,#20264) +expr_containers(#20266,#20001) +literals("C","C",#20266) +decl(#20266,#20254) +typedecl(#20266,#20256) +#20267=* +scopes(#20267,10) +scopenodes(#20264,#20267) +scopenesting(#20267,#20000) +#20268=@"var;{this};{#20267}" +variables(#20268,"this",#20267) #20269=* -exprs(#20269,9,#20266,1,"abstract h();") -hasLocation(#20269,#20267) -enclosing_stmt(#20269,#20262) -expr_containers(#20269,#20001) -#20270=* -scopes(#20270,1) -scopenodes(#20269,#20270) -scopenesting(#20270,#20265) -#20271=@"var;{arguments};{#20270}" -variables(#20271,"arguments",#20270) -is_arguments_object(#20271) -is_method(#20266) -is_abstract_member(#20266) +properties(#20269,#20264,2,0,"abstract h();") +#20270=@"loc,{#10000},6,3,6,15" +locations_default(#20270,#10000,6,3,6,15) +hasLocation(#20269,#20270) +#20271=* +exprs(#20271,0,#20269,0,"h") +hasLocation(#20271,#20097) +enclosing_stmt(#20271,#20264) +expr_containers(#20271,#20001) +literals("h","h",#20271) #20272=* -properties(#20272,#20262,3,0,"g(x: nu ... number;") -#20273=@"loc,{#10000},9,3,9,23" -locations_default(#20273,#10000,9,3,9,23) -hasLocation(#20272,#20273) -#20274=* -exprs(#20274,0,#20272,0,"g") -hasLocation(#20274,#20105) -enclosing_stmt(#20274,#20262) -expr_containers(#20274,#20001) -literals("g","g",#20274) -#20275=* -exprs(#20275,9,#20272,1,"g(x: nu ... number;") -hasLocation(#20275,#20273) -enclosing_stmt(#20275,#20262) -expr_containers(#20275,#20001) +exprs(#20272,9,#20269,1,"abstract h();") +hasLocation(#20272,#20270) +enclosing_stmt(#20272,#20264) +expr_containers(#20272,#20001) +#20273=* +scopes(#20273,1) +scopenodes(#20272,#20273) +scopenesting(#20273,#20267) +#20274=@"var;{this};{#20273}" +variables(#20274,"this",#20273) +#20275=@"var;{arguments};{#20273}" +variables(#20275,"arguments",#20273) +is_arguments_object(#20275) +is_method(#20269) +is_abstract_member(#20269) #20276=* -scopes(#20276,1) -scopenodes(#20275,#20276) -scopenesting(#20276,#20265) -#20277=@"var;{x};{#20276}" -variables(#20277,"x",#20276) +properties(#20276,#20264,3,0,"g(x: nu ... number;") +#20277=@"loc,{#10000},9,3,9,23" +locations_default(#20277,#10000,9,3,9,23) +hasLocation(#20276,#20277) #20278=* -exprs(#20278,78,#20275,0,"x") -hasLocation(#20278,#20109) -expr_containers(#20278,#20275) -literals("x","x",#20278) -decl(#20278,#20277) -#20279=@"var;{arguments};{#20276}" -variables(#20279,"arguments",#20276) -is_arguments_object(#20279) +exprs(#20278,0,#20276,0,"g") +hasLocation(#20278,#20105) +enclosing_stmt(#20278,#20264) +expr_containers(#20278,#20001) +literals("g","g",#20278) +#20279=* +exprs(#20279,9,#20276,1,"g(x: nu ... number;") +hasLocation(#20279,#20277) +enclosing_stmt(#20279,#20264) +expr_containers(#20279,#20001) #20280=* -typeexprs(#20280,2,#20275,-3,"number") -hasLocation(#20280,#20119) -expr_containers(#20280,#20275) -literals("number","number",#20280) -#20281=* -typeexprs(#20281,2,#20275,-6,"number") -hasLocation(#20281,#20113) -expr_containers(#20281,#20275) -literals("number","number",#20281) -is_method(#20272) -#20282=* -properties(#20282,#20262,4,0,"g(x: st ... string;") -#20283=@"loc,{#10000},10,3,10,23" -locations_default(#20283,#10000,10,3,10,23) -hasLocation(#20282,#20283) -#20284=* -exprs(#20284,0,#20282,0,"g") -hasLocation(#20284,#20123) -enclosing_stmt(#20284,#20262) -expr_containers(#20284,#20001) -literals("g","g",#20284) +scopes(#20280,1) +scopenodes(#20279,#20280) +scopenesting(#20280,#20267) +#20281=@"var;{this};{#20280}" +variables(#20281,"this",#20280) +#20282=@"var;{x};{#20280}" +variables(#20282,"x",#20280) +#20283=* +exprs(#20283,78,#20279,0,"x") +hasLocation(#20283,#20109) +expr_containers(#20283,#20279) +literals("x","x",#20283) +decl(#20283,#20282) +#20284=@"var;{arguments};{#20280}" +variables(#20284,"arguments",#20280) +is_arguments_object(#20284) #20285=* -exprs(#20285,9,#20282,1,"g(x: st ... string;") -hasLocation(#20285,#20283) -enclosing_stmt(#20285,#20262) -expr_containers(#20285,#20001) +typeexprs(#20285,2,#20279,-3,"number") +hasLocation(#20285,#20119) +expr_containers(#20285,#20279) +literals("number","number",#20285) #20286=* -scopes(#20286,1) -scopenodes(#20285,#20286) -scopenesting(#20286,#20265) -#20287=@"var;{x};{#20286}" -variables(#20287,"x",#20286) -#20288=* -exprs(#20288,78,#20285,0,"x") -hasLocation(#20288,#20127) -expr_containers(#20288,#20285) -literals("x","x",#20288) -decl(#20288,#20287) -#20289=@"var;{arguments};{#20286}" -variables(#20289,"arguments",#20286) -is_arguments_object(#20289) +typeexprs(#20286,2,#20279,-6,"number") +hasLocation(#20286,#20113) +expr_containers(#20286,#20279) +literals("number","number",#20286) +is_method(#20276) +#20287=* +properties(#20287,#20264,4,0,"g(x: st ... string;") +#20288=@"loc,{#10000},10,3,10,23" +locations_default(#20288,#10000,10,3,10,23) +hasLocation(#20287,#20288) +#20289=* +exprs(#20289,0,#20287,0,"g") +hasLocation(#20289,#20123) +enclosing_stmt(#20289,#20264) +expr_containers(#20289,#20001) +literals("g","g",#20289) #20290=* -typeexprs(#20290,2,#20285,-3,"string") -hasLocation(#20290,#20137) -expr_containers(#20290,#20285) -literals("string","string",#20290) +exprs(#20290,9,#20287,1,"g(x: st ... string;") +hasLocation(#20290,#20288) +enclosing_stmt(#20290,#20264) +expr_containers(#20290,#20001) #20291=* -typeexprs(#20291,2,#20285,-6,"string") -hasLocation(#20291,#20131) -expr_containers(#20291,#20285) -literals("string","string",#20291) -is_method(#20282) -#20292=* -properties(#20292,#20262,5,0,"g(x: any) {}") -#20293=@"loc,{#10000},11,3,11,14" -locations_default(#20293,#10000,11,3,11,14) -hasLocation(#20292,#20293) +scopes(#20291,1) +scopenodes(#20290,#20291) +scopenesting(#20291,#20267) +#20292=@"var;{this};{#20291}" +variables(#20292,"this",#20291) +#20293=@"var;{x};{#20291}" +variables(#20293,"x",#20291) #20294=* -exprs(#20294,0,#20292,0,"g") -hasLocation(#20294,#20141) -enclosing_stmt(#20294,#20262) -expr_containers(#20294,#20001) -literals("g","g",#20294) -#20295=* -exprs(#20295,9,#20292,1,"g(x: any) {}") -hasLocation(#20295,#20293) -enclosing_stmt(#20295,#20262) -expr_containers(#20295,#20001) +exprs(#20294,78,#20290,0,"x") +hasLocation(#20294,#20127) +expr_containers(#20294,#20290) +literals("x","x",#20294) +decl(#20294,#20293) +#20295=@"var;{arguments};{#20291}" +variables(#20295,"arguments",#20291) +is_arguments_object(#20295) #20296=* -scopes(#20296,1) -scopenodes(#20295,#20296) -scopenesting(#20296,#20265) -#20297=@"var;{x};{#20296}" -variables(#20297,"x",#20296) +typeexprs(#20296,2,#20290,-3,"string") +hasLocation(#20296,#20137) +expr_containers(#20296,#20290) +literals("string","string",#20296) +#20297=* +typeexprs(#20297,2,#20290,-6,"string") +hasLocation(#20297,#20131) +expr_containers(#20297,#20290) +literals("string","string",#20297) +is_method(#20287) #20298=* -exprs(#20298,78,#20295,0,"x") -hasLocation(#20298,#20145) -expr_containers(#20298,#20295) -literals("x","x",#20298) -decl(#20298,#20297) -#20299=@"var;{arguments};{#20296}" -variables(#20299,"arguments",#20296) -is_arguments_object(#20299) +properties(#20298,#20264,5,0,"g(x: any) {}") +#20299=@"loc,{#10000},11,3,11,14" +locations_default(#20299,#10000,11,3,11,14) +hasLocation(#20298,#20299) #20300=* -typeexprs(#20300,2,#20295,-6,"any") -hasLocation(#20300,#20149) -expr_containers(#20300,#20295) -literals("any","any",#20300) +exprs(#20300,0,#20298,0,"g") +hasLocation(#20300,#20141) +enclosing_stmt(#20300,#20264) +expr_containers(#20300,#20001) +literals("g","g",#20300) #20301=* -stmts(#20301,1,#20295,-2,"{}") -#20302=@"loc,{#10000},11,13,11,14" -locations_default(#20302,#10000,11,13,11,14) -hasLocation(#20301,#20302) -stmt_containers(#20301,#20295) -is_method(#20292) -#20303=* -properties(#20303,#20262,6,8,"abstract x: number;") -#20304=@"loc,{#10000},14,3,14,21" -locations_default(#20304,#10000,14,3,14,21) -hasLocation(#20303,#20304) +exprs(#20301,9,#20298,1,"g(x: any) {}") +hasLocation(#20301,#20299) +enclosing_stmt(#20301,#20264) +expr_containers(#20301,#20001) +#20302=* +scopes(#20302,1) +scopenodes(#20301,#20302) +scopenesting(#20302,#20267) +#20303=@"var;{this};{#20302}" +variables(#20303,"this",#20302) +#20304=@"var;{x};{#20302}" +variables(#20304,"x",#20302) #20305=* -#20306=* -exprs(#20306,0,#20303,0,"x") -hasLocation(#20306,#20159) -expr_containers(#20306,#20305) -literals("x","x",#20306) -is_abstract_member(#20303) +exprs(#20305,78,#20301,0,"x") +hasLocation(#20305,#20145) +expr_containers(#20305,#20301) +literals("x","x",#20305) +decl(#20305,#20304) +#20306=@"var;{arguments};{#20302}" +variables(#20306,"arguments",#20302) +is_arguments_object(#20306) #20307=* -typeexprs(#20307,2,#20303,2,"number") -hasLocation(#20307,#20163) -enclosing_stmt(#20307,#20262) -expr_containers(#20307,#20001) -literals("number","number",#20307) +typeexprs(#20307,2,#20301,-6,"any") +hasLocation(#20307,#20149) +expr_containers(#20307,#20301) +literals("any","any",#20307) #20308=* -properties(#20308,#20262,7,0,"constructor() {}") -#20309=@"loc,{#10000},4,18,4,17" -locations_default(#20309,#10000,4,18,4,17) +stmts(#20308,1,#20301,-2,"{}") +#20309=@"loc,{#10000},11,13,11,14" +locations_default(#20309,#10000,11,13,11,14) hasLocation(#20308,#20309) +stmt_containers(#20308,#20301) +is_method(#20298) #20310=* -exprs(#20310,0,#20308,0,"constructor") -hasLocation(#20310,#20309) -enclosing_stmt(#20310,#20262) -expr_containers(#20310,#20001) -literals("constructor","constructor",#20310) -exprs(#20305,9,#20308,1,"() {}") -hasLocation(#20305,#20309) -enclosing_stmt(#20305,#20262) -expr_containers(#20305,#20001) -#20311=* -scopes(#20311,1) -scopenodes(#20305,#20311) -scopenesting(#20311,#20265) -#20312=@"var;{arguments};{#20311}" -variables(#20312,"arguments",#20311) -is_arguments_object(#20312) +properties(#20310,#20264,6,8,"abstract x: number;") +#20311=@"loc,{#10000},14,3,14,21" +locations_default(#20311,#10000,14,3,14,21) +hasLocation(#20310,#20311) +#20312=* #20313=* -stmts(#20313,1,#20305,-2,"{}") -hasLocation(#20313,#20309) -stmt_containers(#20313,#20305) -is_method(#20308) +exprs(#20313,0,#20310,0,"x") +hasLocation(#20313,#20159) +expr_containers(#20313,#20312) +literals("x","x",#20313) +is_abstract_member(#20310) #20314=* -stmts(#20314,26,#20001,2,"declare ... mber;\n}") -#20315=@"loc,{#10000},18,1,29,1" -locations_default(#20315,#10000,18,1,29,1) -hasLocation(#20314,#20315) -stmt_containers(#20314,#20001) -has_declare_keyword(#20314) -is_abstract_class(#20314) -#20316=* -exprs(#20316,78,#20314,0,"D") -hasLocation(#20316,#20174) -enclosing_stmt(#20316,#20314) -expr_containers(#20316,#20001) -literals("D","D",#20316) -decl(#20316,#20255) -typedecl(#20316,#20257) +typeexprs(#20314,2,#20310,2,"number") +hasLocation(#20314,#20163) +enclosing_stmt(#20314,#20264) +expr_containers(#20314,#20001) +literals("number","number",#20314) +#20315=* +properties(#20315,#20264,7,0,"constructor() {}") +#20316=@"loc,{#10000},4,18,4,17" +locations_default(#20316,#10000,4,18,4,17) +hasLocation(#20315,#20316) #20317=* -scopes(#20317,10) -scopenodes(#20314,#20317) -scopenesting(#20317,#20000) +exprs(#20317,0,#20315,0,"constructor") +hasLocation(#20317,#20316) +enclosing_stmt(#20317,#20264) +expr_containers(#20317,#20001) +literals("constructor","constructor",#20317) +exprs(#20312,9,#20315,1,"() {}") +hasLocation(#20312,#20316) +enclosing_stmt(#20312,#20264) +expr_containers(#20312,#20001) #20318=* -properties(#20318,#20314,2,0,"abstract h();") -#20319=@"loc,{#10000},20,3,20,15" -locations_default(#20319,#10000,20,3,20,15) -hasLocation(#20318,#20319) -#20320=* -exprs(#20320,0,#20318,0,"h") -hasLocation(#20320,#20180) -enclosing_stmt(#20320,#20314) -expr_containers(#20320,#20001) -literals("h","h",#20320) +scopes(#20318,1) +scopenodes(#20312,#20318) +scopenesting(#20318,#20267) +#20319=@"var;{this};{#20318}" +variables(#20319,"this",#20318) +#20320=@"var;{arguments};{#20318}" +variables(#20320,"arguments",#20318) +is_arguments_object(#20320) #20321=* -exprs(#20321,9,#20318,1,"abstract h();") -hasLocation(#20321,#20319) -enclosing_stmt(#20321,#20314) -expr_containers(#20321,#20001) +stmts(#20321,1,#20312,-2,"{}") +hasLocation(#20321,#20316) +stmt_containers(#20321,#20312) +is_method(#20315) #20322=* -scopes(#20322,1) -scopenodes(#20321,#20322) -scopenesting(#20322,#20317) -#20323=@"var;{arguments};{#20322}" -variables(#20323,"arguments",#20322) -is_arguments_object(#20323) -is_method(#20318) -is_abstract_member(#20318) +stmts(#20322,26,#20001,2,"declare ... mber;\n}") +#20323=@"loc,{#10000},18,1,29,1" +locations_default(#20323,#10000,18,1,29,1) +hasLocation(#20322,#20323) +stmt_containers(#20322,#20001) +has_declare_keyword(#20322) +is_abstract_class(#20322) #20324=* -properties(#20324,#20314,3,0,"g(x: nu ... number;") -#20325=@"loc,{#10000},23,3,23,23" -locations_default(#20325,#10000,23,3,23,23) -hasLocation(#20324,#20325) -#20326=* -exprs(#20326,0,#20324,0,"g") -hasLocation(#20326,#20188) -enclosing_stmt(#20326,#20314) -expr_containers(#20326,#20001) -literals("g","g",#20326) +exprs(#20324,78,#20322,0,"D") +hasLocation(#20324,#20174) +enclosing_stmt(#20324,#20322) +expr_containers(#20324,#20001) +literals("D","D",#20324) +decl(#20324,#20255) +typedecl(#20324,#20257) +#20325=* +scopes(#20325,10) +scopenodes(#20322,#20325) +scopenesting(#20325,#20000) +#20326=@"var;{this};{#20325}" +variables(#20326,"this",#20325) #20327=* -exprs(#20327,9,#20324,1,"g(x: nu ... number;") -hasLocation(#20327,#20325) -enclosing_stmt(#20327,#20314) -expr_containers(#20327,#20001) -#20328=* -scopes(#20328,1) -scopenodes(#20327,#20328) -scopenesting(#20328,#20317) -#20329=@"var;{x};{#20328}" -variables(#20329,"x",#20328) +properties(#20327,#20322,2,0,"abstract h();") +#20328=@"loc,{#10000},20,3,20,15" +locations_default(#20328,#10000,20,3,20,15) +hasLocation(#20327,#20328) +#20329=* +exprs(#20329,0,#20327,0,"h") +hasLocation(#20329,#20180) +enclosing_stmt(#20329,#20322) +expr_containers(#20329,#20001) +literals("h","h",#20329) #20330=* -exprs(#20330,78,#20327,0,"x") -hasLocation(#20330,#20192) -expr_containers(#20330,#20327) -literals("x","x",#20330) -decl(#20330,#20329) -#20331=@"var;{arguments};{#20328}" -variables(#20331,"arguments",#20328) -is_arguments_object(#20331) -#20332=* -typeexprs(#20332,2,#20327,-3,"number") -hasLocation(#20332,#20202) -expr_containers(#20332,#20327) -literals("number","number",#20332) -#20333=* -typeexprs(#20333,2,#20327,-6,"number") -hasLocation(#20333,#20196) -expr_containers(#20333,#20327) -literals("number","number",#20333) -is_method(#20324) +exprs(#20330,9,#20327,1,"abstract h();") +hasLocation(#20330,#20328) +enclosing_stmt(#20330,#20322) +expr_containers(#20330,#20001) +#20331=* +scopes(#20331,1) +scopenodes(#20330,#20331) +scopenesting(#20331,#20325) +#20332=@"var;{this};{#20331}" +variables(#20332,"this",#20331) +#20333=@"var;{arguments};{#20331}" +variables(#20333,"arguments",#20331) +is_arguments_object(#20333) +is_method(#20327) +is_abstract_member(#20327) #20334=* -properties(#20334,#20314,4,0,"g(x: st ... string;") -#20335=@"loc,{#10000},24,3,24,23" -locations_default(#20335,#10000,24,3,24,23) +properties(#20334,#20322,3,0,"g(x: nu ... number;") +#20335=@"loc,{#10000},23,3,23,23" +locations_default(#20335,#10000,23,3,23,23) hasLocation(#20334,#20335) #20336=* exprs(#20336,0,#20334,0,"g") -hasLocation(#20336,#20206) -enclosing_stmt(#20336,#20314) +hasLocation(#20336,#20188) +enclosing_stmt(#20336,#20322) expr_containers(#20336,#20001) literals("g","g",#20336) #20337=* -exprs(#20337,9,#20334,1,"g(x: st ... string;") +exprs(#20337,9,#20334,1,"g(x: nu ... number;") hasLocation(#20337,#20335) -enclosing_stmt(#20337,#20314) +enclosing_stmt(#20337,#20322) expr_containers(#20337,#20001) #20338=* scopes(#20338,1) scopenodes(#20337,#20338) -scopenesting(#20338,#20317) -#20339=@"var;{x};{#20338}" -variables(#20339,"x",#20338) -#20340=* -exprs(#20340,78,#20337,0,"x") -hasLocation(#20340,#20210) -expr_containers(#20340,#20337) -literals("x","x",#20340) -decl(#20340,#20339) -#20341=@"var;{arguments};{#20338}" -variables(#20341,"arguments",#20338) -is_arguments_object(#20341) -#20342=* -typeexprs(#20342,2,#20337,-3,"string") -hasLocation(#20342,#20220) -expr_containers(#20342,#20337) -literals("string","string",#20342) +scopenesting(#20338,#20325) +#20339=@"var;{this};{#20338}" +variables(#20339,"this",#20338) +#20340=@"var;{x};{#20338}" +variables(#20340,"x",#20338) +#20341=* +exprs(#20341,78,#20337,0,"x") +hasLocation(#20341,#20192) +expr_containers(#20341,#20337) +literals("x","x",#20341) +decl(#20341,#20340) +#20342=@"var;{arguments};{#20338}" +variables(#20342,"arguments",#20338) +is_arguments_object(#20342) #20343=* -typeexprs(#20343,2,#20337,-6,"string") -hasLocation(#20343,#20214) +typeexprs(#20343,2,#20337,-3,"number") +hasLocation(#20343,#20202) expr_containers(#20343,#20337) -literals("string","string",#20343) -is_method(#20334) +literals("number","number",#20343) #20344=* -properties(#20344,#20314,5,0,"g(x: any) {}") -#20345=@"loc,{#10000},25,3,25,14" -locations_default(#20345,#10000,25,3,25,14) -hasLocation(#20344,#20345) -#20346=* -exprs(#20346,0,#20344,0,"g") -hasLocation(#20346,#20224) -enclosing_stmt(#20346,#20314) -expr_containers(#20346,#20001) -literals("g","g",#20346) +typeexprs(#20344,2,#20337,-6,"number") +hasLocation(#20344,#20196) +expr_containers(#20344,#20337) +literals("number","number",#20344) +is_method(#20334) +#20345=* +properties(#20345,#20322,4,0,"g(x: st ... string;") +#20346=@"loc,{#10000},24,3,24,23" +locations_default(#20346,#10000,24,3,24,23) +hasLocation(#20345,#20346) #20347=* -exprs(#20347,9,#20344,1,"g(x: any) {}") -hasLocation(#20347,#20345) -enclosing_stmt(#20347,#20314) +exprs(#20347,0,#20345,0,"g") +hasLocation(#20347,#20206) +enclosing_stmt(#20347,#20322) expr_containers(#20347,#20001) +literals("g","g",#20347) #20348=* -scopes(#20348,1) -scopenodes(#20347,#20348) -scopenesting(#20348,#20317) -#20349=@"var;{x};{#20348}" -variables(#20349,"x",#20348) -#20350=* -exprs(#20350,78,#20347,0,"x") -hasLocation(#20350,#20228) -expr_containers(#20350,#20347) -literals("x","x",#20350) -decl(#20350,#20349) -#20351=@"var;{arguments};{#20348}" -variables(#20351,"arguments",#20348) -is_arguments_object(#20351) +exprs(#20348,9,#20345,1,"g(x: st ... string;") +hasLocation(#20348,#20346) +enclosing_stmt(#20348,#20322) +expr_containers(#20348,#20001) +#20349=* +scopes(#20349,1) +scopenodes(#20348,#20349) +scopenesting(#20349,#20325) +#20350=@"var;{this};{#20349}" +variables(#20350,"this",#20349) +#20351=@"var;{x};{#20349}" +variables(#20351,"x",#20349) #20352=* -typeexprs(#20352,2,#20347,-6,"any") -hasLocation(#20352,#20232) -expr_containers(#20352,#20347) -literals("any","any",#20352) -#20353=* -stmts(#20353,1,#20347,-2,"{}") -#20354=@"loc,{#10000},25,13,25,14" -locations_default(#20354,#10000,25,13,25,14) -hasLocation(#20353,#20354) -stmt_containers(#20353,#20347) -is_method(#20344) +exprs(#20352,78,#20348,0,"x") +hasLocation(#20352,#20210) +expr_containers(#20352,#20348) +literals("x","x",#20352) +decl(#20352,#20351) +#20353=@"var;{arguments};{#20349}" +variables(#20353,"arguments",#20349) +is_arguments_object(#20353) +#20354=* +typeexprs(#20354,2,#20348,-3,"string") +hasLocation(#20354,#20220) +expr_containers(#20354,#20348) +literals("string","string",#20354) #20355=* -properties(#20355,#20314,6,8,"abstract x: number;") -#20356=@"loc,{#10000},28,3,28,21" -locations_default(#20356,#10000,28,3,28,21) -hasLocation(#20355,#20356) -#20357=* +typeexprs(#20355,2,#20348,-6,"string") +hasLocation(#20355,#20214) +expr_containers(#20355,#20348) +literals("string","string",#20355) +is_method(#20345) +#20356=* +properties(#20356,#20322,5,0,"g(x: any) {}") +#20357=@"loc,{#10000},25,3,25,14" +locations_default(#20357,#10000,25,3,25,14) +hasLocation(#20356,#20357) #20358=* -exprs(#20358,0,#20355,0,"x") -hasLocation(#20358,#20242) -expr_containers(#20358,#20357) -literals("x","x",#20358) -is_abstract_member(#20355) +exprs(#20358,0,#20356,0,"g") +hasLocation(#20358,#20224) +enclosing_stmt(#20358,#20322) +expr_containers(#20358,#20001) +literals("g","g",#20358) #20359=* -typeexprs(#20359,2,#20355,2,"number") -hasLocation(#20359,#20246) -enclosing_stmt(#20359,#20314) +exprs(#20359,9,#20356,1,"g(x: any) {}") +hasLocation(#20359,#20357) +enclosing_stmt(#20359,#20322) expr_containers(#20359,#20001) -literals("number","number",#20359) #20360=* -properties(#20360,#20314,7,0,"constructor() {}") -#20361=@"loc,{#10000},18,26,18,25" -locations_default(#20361,#10000,18,26,18,25) -hasLocation(#20360,#20361) -#20362=* -exprs(#20362,0,#20360,0,"constructor") -hasLocation(#20362,#20361) -enclosing_stmt(#20362,#20314) -expr_containers(#20362,#20001) -literals("constructor","constructor",#20362) -exprs(#20357,9,#20360,1,"() {}") -hasLocation(#20357,#20361) -enclosing_stmt(#20357,#20314) -expr_containers(#20357,#20001) +scopes(#20360,1) +scopenodes(#20359,#20360) +scopenesting(#20360,#20325) +#20361=@"var;{this};{#20360}" +variables(#20361,"this",#20360) +#20362=@"var;{x};{#20360}" +variables(#20362,"x",#20360) #20363=* -scopes(#20363,1) -scopenodes(#20357,#20363) -scopenesting(#20363,#20317) -#20364=@"var;{arguments};{#20363}" -variables(#20364,"arguments",#20363) +exprs(#20363,78,#20359,0,"x") +hasLocation(#20363,#20228) +expr_containers(#20363,#20359) +literals("x","x",#20363) +decl(#20363,#20362) +#20364=@"var;{arguments};{#20360}" +variables(#20364,"arguments",#20360) is_arguments_object(#20364) #20365=* -stmts(#20365,1,#20357,-2,"{}") -hasLocation(#20365,#20361) -stmt_containers(#20365,#20357) -is_method(#20360) +typeexprs(#20365,2,#20359,-6,"any") +hasLocation(#20365,#20232) +expr_containers(#20365,#20359) +literals("any","any",#20365) #20366=* -entry_cfg_node(#20366,#20001) -#20367=@"loc,{#10000},2,1,2,0" -locations_default(#20367,#10000,2,1,2,0) +stmts(#20366,1,#20359,-2,"{}") +#20367=@"loc,{#10000},25,13,25,14" +locations_default(#20367,#10000,25,13,25,14) hasLocation(#20366,#20367) +stmt_containers(#20366,#20359) +is_method(#20356) #20368=* -exit_cfg_node(#20368,#20001) -hasLocation(#20368,#20251) -successor(#20314,#20368) -successor(#20305,#20308) -#20369=* -entry_cfg_node(#20369,#20305) -hasLocation(#20369,#20309) +properties(#20368,#20322,6,8,"abstract x: number;") +#20369=@"loc,{#10000},28,3,28,21" +locations_default(#20369,#10000,28,3,28,21) +hasLocation(#20368,#20369) #20370=* -exit_cfg_node(#20370,#20305) -hasLocation(#20370,#20309) -successor(#20313,#20370) -successor(#20369,#20313) -successor(#20310,#20305) -successor(#20308,#20262) -successor(#20295,#20292) #20371=* -entry_cfg_node(#20371,#20295) -#20372=@"loc,{#10000},11,3,11,2" -locations_default(#20372,#10000,11,3,11,2) -hasLocation(#20371,#20372) +exprs(#20371,0,#20368,0,"x") +hasLocation(#20371,#20242) +expr_containers(#20371,#20370) +literals("x","x",#20371) +is_abstract_member(#20368) +#20372=* +typeexprs(#20372,2,#20368,2,"number") +hasLocation(#20372,#20246) +enclosing_stmt(#20372,#20322) +expr_containers(#20372,#20001) +literals("number","number",#20372) #20373=* -exit_cfg_node(#20373,#20295) -#20374=@"loc,{#10000},11,15,11,14" -locations_default(#20374,#10000,11,15,11,14) +properties(#20373,#20322,7,0,"constructor() {}") +#20374=@"loc,{#10000},18,26,18,25" +locations_default(#20374,#10000,18,26,18,25) hasLocation(#20373,#20374) -successor(#20301,#20373) -successor(#20298,#20301) -successor(#20371,#20298) -successor(#20294,#20295) -successor(#20292,#20310) -successor(#20282,#20294) -successor(#20272,#20282) -successor(#20266,#20272) -successor(#20264,#20266) -successor(#20262,#20314) -successor(#20258,#20264) -successor(#20366,#20258) +#20375=* +exprs(#20375,0,#20373,0,"constructor") +hasLocation(#20375,#20374) +enclosing_stmt(#20375,#20322) +expr_containers(#20375,#20001) +literals("constructor","constructor",#20375) +exprs(#20370,9,#20373,1,"() {}") +hasLocation(#20370,#20374) +enclosing_stmt(#20370,#20322) +expr_containers(#20370,#20001) +#20376=* +scopes(#20376,1) +scopenodes(#20370,#20376) +scopenesting(#20376,#20325) +#20377=@"var;{this};{#20376}" +variables(#20377,"this",#20376) +#20378=@"var;{arguments};{#20376}" +variables(#20378,"arguments",#20376) +is_arguments_object(#20378) +#20379=* +stmts(#20379,1,#20370,-2,"{}") +hasLocation(#20379,#20374) +stmt_containers(#20379,#20370) +is_method(#20373) +#20380=* +entry_cfg_node(#20380,#20001) +#20381=@"loc,{#10000},2,1,2,0" +locations_default(#20381,#10000,2,1,2,0) +hasLocation(#20380,#20381) +#20382=* +exit_cfg_node(#20382,#20001) +hasLocation(#20382,#20251) +successor(#20322,#20382) +successor(#20312,#20315) +#20383=* +entry_cfg_node(#20383,#20312) +hasLocation(#20383,#20316) +#20384=* +exit_cfg_node(#20384,#20312) +hasLocation(#20384,#20316) +successor(#20321,#20384) +successor(#20383,#20321) +successor(#20317,#20312) +successor(#20315,#20264) +successor(#20301,#20298) +#20385=* +entry_cfg_node(#20385,#20301) +#20386=@"loc,{#10000},11,3,11,2" +locations_default(#20386,#10000,11,3,11,2) +hasLocation(#20385,#20386) +#20387=* +exit_cfg_node(#20387,#20301) +#20388=@"loc,{#10000},11,15,11,14" +locations_default(#20388,#10000,11,15,11,14) +hasLocation(#20387,#20388) +successor(#20308,#20387) +successor(#20305,#20308) +successor(#20385,#20305) +successor(#20300,#20301) +successor(#20298,#20317) +successor(#20287,#20300) +successor(#20276,#20287) +successor(#20269,#20276) +successor(#20266,#20269) +successor(#20264,#20322) +successor(#20259,#20266) +successor(#20380,#20259) numlines(#10000,29,15,8) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/objectLiteralAccessor.ts.trap b/javascript/extractor/tests/ts/output/trap/objectLiteralAccessor.ts.trap index f199fee39549..39bf20218092 100644 --- a/javascript/extractor/tests/ts/output/trap/objectLiteralAccessor.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/objectLiteralAccessor.ts.trap @@ -150,158 +150,164 @@ locations_default(#20053,#10000,1,1,5,0) hasLocation(#20001,#20053) #20054=@"var;{x};{#20000}" variables(#20054,"x",#20000) -#20055=* -stmts(#20055,18,#20001,0,"var x = ... v) {}\n}") -#20056=@"loc,{#10000},1,1,4,1" -locations_default(#20056,#10000,1,1,4,1) -hasLocation(#20055,#20056) -stmt_containers(#20055,#20001) -#20057=* -exprs(#20057,64,#20055,0,"x = {\n ... v) {}\n}") -#20058=@"loc,{#10000},1,5,4,1" -locations_default(#20058,#10000,1,5,4,1) -hasLocation(#20057,#20058) -enclosing_stmt(#20057,#20055) -expr_containers(#20057,#20001) -#20059=* -exprs(#20059,78,#20057,0,"x") -hasLocation(#20059,#20013) -enclosing_stmt(#20059,#20055) -expr_containers(#20059,#20001) -literals("x","x",#20059) -decl(#20059,#20054) +#20055=@"var;{this};{#20000}" +variables(#20055,"this",#20000) +#20056=* +stmts(#20056,18,#20001,0,"var x = ... v) {}\n}") +#20057=@"loc,{#10000},1,1,4,1" +locations_default(#20057,#10000,1,1,4,1) +hasLocation(#20056,#20057) +stmt_containers(#20056,#20001) +#20058=* +exprs(#20058,64,#20056,0,"x = {\n ... v) {}\n}") +#20059=@"loc,{#10000},1,5,4,1" +locations_default(#20059,#10000,1,5,4,1) +hasLocation(#20058,#20059) +enclosing_stmt(#20058,#20056) +expr_containers(#20058,#20001) #20060=* -exprs(#20060,8,#20057,1,"{\n get ... v) {}\n}") -#20061=@"loc,{#10000},1,9,4,1" -locations_default(#20061,#10000,1,9,4,1) -hasLocation(#20060,#20061) -enclosing_stmt(#20060,#20055) +exprs(#20060,78,#20058,0,"x") +hasLocation(#20060,#20013) +enclosing_stmt(#20060,#20056) expr_containers(#20060,#20001) -#20062=* -properties(#20062,#20060,0,1,"get foo() {return 1}") -#20063=@"loc,{#10000},2,3,2,22" -locations_default(#20063,#10000,2,3,2,22) -hasLocation(#20062,#20063) -#20064=* -exprs(#20064,0,#20062,0,"foo") -hasLocation(#20064,#20021) -enclosing_stmt(#20064,#20055) -expr_containers(#20064,#20001) -literals("foo","foo",#20064) +literals("x","x",#20060) +decl(#20060,#20054) +#20061=* +exprs(#20061,8,#20058,1,"{\n get ... v) {}\n}") +#20062=@"loc,{#10000},1,9,4,1" +locations_default(#20062,#10000,1,9,4,1) +hasLocation(#20061,#20062) +enclosing_stmt(#20061,#20056) +expr_containers(#20061,#20001) +#20063=* +properties(#20063,#20061,0,1,"get foo() {return 1}") +#20064=@"loc,{#10000},2,3,2,22" +locations_default(#20064,#10000,2,3,2,22) +hasLocation(#20063,#20064) #20065=* -exprs(#20065,9,#20062,1,"get foo() {return 1}") -hasLocation(#20065,#20063) -enclosing_stmt(#20065,#20055) +exprs(#20065,0,#20063,0,"foo") +hasLocation(#20065,#20021) +enclosing_stmt(#20065,#20056) expr_containers(#20065,#20001) +literals("foo","foo",#20065) #20066=* -scopes(#20066,1) -scopenodes(#20065,#20066) -scopenesting(#20066,#20000) -#20067=@"var;{arguments};{#20066}" -variables(#20067,"arguments",#20066) -is_arguments_object(#20067) -#20068=* -stmts(#20068,1,#20065,-2,"{return 1}") -#20069=@"loc,{#10000},2,13,2,22" -locations_default(#20069,#10000,2,13,2,22) -hasLocation(#20068,#20069) -stmt_containers(#20068,#20065) +exprs(#20066,9,#20063,1,"get foo() {return 1}") +hasLocation(#20066,#20064) +enclosing_stmt(#20066,#20056) +expr_containers(#20066,#20001) +#20067=* +scopes(#20067,1) +scopenodes(#20066,#20067) +scopenesting(#20067,#20000) +#20068=@"var;{this};{#20067}" +variables(#20068,"this",#20067) +#20069=@"var;{arguments};{#20067}" +variables(#20069,"arguments",#20067) +is_arguments_object(#20069) #20070=* -stmts(#20070,9,#20068,0,"return 1") -#20071=@"loc,{#10000},2,14,2,21" -locations_default(#20071,#10000,2,14,2,21) +stmts(#20070,1,#20066,-2,"{return 1}") +#20071=@"loc,{#10000},2,13,2,22" +locations_default(#20071,#10000,2,13,2,22) hasLocation(#20070,#20071) -stmt_containers(#20070,#20065) +stmt_containers(#20070,#20066) #20072=* -exprs(#20072,3,#20070,0,"1") -hasLocation(#20072,#20031) -enclosing_stmt(#20072,#20070) -expr_containers(#20072,#20065) -literals("1","1",#20072) -is_method(#20062) -#20073=* -properties(#20073,#20060,1,2,"set foo(v) {}") -#20074=@"loc,{#10000},3,3,3,15" -locations_default(#20074,#10000,3,3,3,15) -hasLocation(#20073,#20074) +stmts(#20072,9,#20070,0,"return 1") +#20073=@"loc,{#10000},2,14,2,21" +locations_default(#20073,#10000,2,14,2,21) +hasLocation(#20072,#20073) +stmt_containers(#20072,#20066) +#20074=* +exprs(#20074,3,#20072,0,"1") +hasLocation(#20074,#20031) +enclosing_stmt(#20074,#20072) +expr_containers(#20074,#20066) +literals("1","1",#20074) +is_method(#20063) #20075=* -exprs(#20075,0,#20073,0,"foo") -hasLocation(#20075,#20039) -enclosing_stmt(#20075,#20055) -expr_containers(#20075,#20001) -literals("foo","foo",#20075) -#20076=* -exprs(#20076,9,#20073,1,"set foo(v) {}") -hasLocation(#20076,#20074) -enclosing_stmt(#20076,#20055) -expr_containers(#20076,#20001) +properties(#20075,#20061,1,2,"set foo(v) {}") +#20076=@"loc,{#10000},3,3,3,15" +locations_default(#20076,#10000,3,3,3,15) +hasLocation(#20075,#20076) #20077=* -scopes(#20077,1) -scopenodes(#20076,#20077) -scopenesting(#20077,#20000) -#20078=@"var;{v};{#20077}" -variables(#20078,"v",#20077) +exprs(#20077,0,#20075,0,"foo") +hasLocation(#20077,#20039) +enclosing_stmt(#20077,#20056) +expr_containers(#20077,#20001) +literals("foo","foo",#20077) +#20078=* +exprs(#20078,9,#20075,1,"set foo(v) {}") +hasLocation(#20078,#20076) +enclosing_stmt(#20078,#20056) +expr_containers(#20078,#20001) #20079=* -exprs(#20079,78,#20076,0,"v") -hasLocation(#20079,#20043) -expr_containers(#20079,#20076) -literals("v","v",#20079) -decl(#20079,#20078) -#20080=@"var;{arguments};{#20077}" -variables(#20080,"arguments",#20077) -is_arguments_object(#20080) -#20081=* -stmts(#20081,1,#20076,-2,"{}") -#20082=@"loc,{#10000},3,14,3,15" -locations_default(#20082,#10000,3,14,3,15) -hasLocation(#20081,#20082) -stmt_containers(#20081,#20076) -is_method(#20073) -#20083=* -entry_cfg_node(#20083,#20001) -#20084=@"loc,{#10000},1,1,1,0" -locations_default(#20084,#10000,1,1,1,0) -hasLocation(#20083,#20084) -#20085=* -exit_cfg_node(#20085,#20001) -hasLocation(#20085,#20052) -successor(#20055,#20059) -successor(#20060,#20064) -successor(#20076,#20073) +scopes(#20079,1) +scopenodes(#20078,#20079) +scopenesting(#20079,#20000) +#20080=@"var;{this};{#20079}" +variables(#20080,"this",#20079) +#20081=@"var;{v};{#20079}" +variables(#20081,"v",#20079) +#20082=* +exprs(#20082,78,#20078,0,"v") +hasLocation(#20082,#20043) +expr_containers(#20082,#20078) +literals("v","v",#20082) +decl(#20082,#20081) +#20083=@"var;{arguments};{#20079}" +variables(#20083,"arguments",#20079) +is_arguments_object(#20083) +#20084=* +stmts(#20084,1,#20078,-2,"{}") +#20085=@"loc,{#10000},3,14,3,15" +locations_default(#20085,#10000,3,14,3,15) +hasLocation(#20084,#20085) +stmt_containers(#20084,#20078) +is_method(#20075) #20086=* -entry_cfg_node(#20086,#20076) -#20087=@"loc,{#10000},3,3,3,2" -locations_default(#20087,#10000,3,3,3,2) +entry_cfg_node(#20086,#20001) +#20087=@"loc,{#10000},1,1,1,0" +locations_default(#20087,#10000,1,1,1,0) hasLocation(#20086,#20087) #20088=* -exit_cfg_node(#20088,#20076) -#20089=@"loc,{#10000},3,16,3,15" -locations_default(#20089,#10000,3,16,3,15) -hasLocation(#20088,#20089) -successor(#20081,#20088) -successor(#20079,#20081) -successor(#20086,#20079) -successor(#20075,#20076) -successor(#20073,#20057) -successor(#20065,#20062) -#20090=* -entry_cfg_node(#20090,#20065) -#20091=@"loc,{#10000},2,3,2,2" -locations_default(#20091,#10000,2,3,2,2) -hasLocation(#20090,#20091) -#20092=* -exit_cfg_node(#20092,#20065) -#20093=@"loc,{#10000},2,23,2,22" -locations_default(#20093,#10000,2,23,2,22) -hasLocation(#20092,#20093) -successor(#20072,#20070) -successor(#20070,#20092) -successor(#20068,#20072) -successor(#20090,#20068) -successor(#20064,#20065) -successor(#20062,#20075) -successor(#20059,#20060) -successor(#20057,#20085) -successor(#20083,#20055) +exit_cfg_node(#20088,#20001) +hasLocation(#20088,#20052) +successor(#20056,#20060) +successor(#20061,#20065) +successor(#20078,#20075) +#20089=* +entry_cfg_node(#20089,#20078) +#20090=@"loc,{#10000},3,3,3,2" +locations_default(#20090,#10000,3,3,3,2) +hasLocation(#20089,#20090) +#20091=* +exit_cfg_node(#20091,#20078) +#20092=@"loc,{#10000},3,16,3,15" +locations_default(#20092,#10000,3,16,3,15) +hasLocation(#20091,#20092) +successor(#20084,#20091) +successor(#20082,#20084) +successor(#20089,#20082) +successor(#20077,#20078) +successor(#20075,#20058) +successor(#20066,#20063) +#20093=* +entry_cfg_node(#20093,#20066) +#20094=@"loc,{#10000},2,3,2,2" +locations_default(#20094,#10000,2,3,2,2) +hasLocation(#20093,#20094) +#20095=* +exit_cfg_node(#20095,#20066) +#20096=@"loc,{#10000},2,23,2,22" +locations_default(#20096,#10000,2,23,2,22) +hasLocation(#20095,#20096) +successor(#20074,#20072) +successor(#20072,#20095) +successor(#20070,#20074) +successor(#20093,#20070) +successor(#20065,#20066) +successor(#20063,#20077) +successor(#20060,#20061) +successor(#20058,#20088) +successor(#20086,#20056) numlines(#10000,4,4,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/omitted.ts.trap b/javascript/extractor/tests/ts/output/trap/omitted.ts.trap index ad6845df6f8a..09d6c281656a 100644 --- a/javascript/extractor/tests/ts/output/trap/omitted.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/omitted.ts.trap @@ -52,35 +52,37 @@ locations_default(#20017,#10000,1,8,1,7) hasLocation(#20016,#20017) toplevels(#20001,0) hasLocation(#20001,#20003) -#20018=* -stmts(#20018,2,#20001,0,"[, ,1];") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,7,#20018,0,"[, ,1]") -#20020=@"loc,{#10000},1,1,1,6" -locations_default(#20020,#10000,1,1,1,6) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) -#20021=* -exprs(#20021,3,#20019,2,"1") -hasLocation(#20021,#20011) -enclosing_stmt(#20021,#20018) -expr_containers(#20021,#20001) -literals("1","1",#20021) -array_size(#20019,3) +stmts(#20019,2,#20001,0,"[, ,1];") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) +#20020=* +exprs(#20020,7,#20019,0,"[, ,1]") +#20021=@"loc,{#10000},1,1,1,6" +locations_default(#20021,#10000,1,1,1,6) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20001) #20022=* -entry_cfg_node(#20022,#20001) -#20023=@"loc,{#10000},1,1,1,0" -locations_default(#20023,#10000,1,1,1,0) -hasLocation(#20022,#20023) -#20024=* -exit_cfg_node(#20024,#20001) -hasLocation(#20024,#20017) -successor(#20018,#20019) -successor(#20019,#20021) -successor(#20021,#20024) -successor(#20022,#20018) +exprs(#20022,3,#20020,2,"1") +hasLocation(#20022,#20011) +enclosing_stmt(#20022,#20019) +expr_containers(#20022,#20001) +literals("1","1",#20022) +array_size(#20020,3) +#20023=* +entry_cfg_node(#20023,#20001) +#20024=@"loc,{#10000},1,1,1,0" +locations_default(#20024,#10000,1,1,1,0) +hasLocation(#20023,#20024) +#20025=* +exit_cfg_node(#20025,#20001) +hasLocation(#20025,#20017) +successor(#20019,#20020) +successor(#20020,#20022) +successor(#20022,#20025) +successor(#20023,#20019) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/optionalChaining.ts.trap b/javascript/extractor/tests/ts/output/trap/optionalChaining.ts.trap index 754aae686495..40f82e8a70a7 100644 --- a/javascript/extractor/tests/ts/output/trap/optionalChaining.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/optionalChaining.ts.trap @@ -147,157 +147,159 @@ toplevels(#20001,0) #20054=@"loc,{#10000},1,1,4,0" locations_default(#20054,#10000,1,1,4,0) hasLocation(#20001,#20054) -#20055=* -stmts(#20055,2,#20001,0,"base?.x.y;") -hasLocation(#20055,#20003) -stmt_containers(#20055,#20001) +#20055=@"var;{this};{#20000}" +variables(#20055,"this",#20000) #20056=* -exprs(#20056,14,#20055,0,"base?.x.y") -#20057=@"loc,{#10000},1,1,1,9" -locations_default(#20057,#10000,1,1,1,9) -hasLocation(#20056,#20057) -enclosing_stmt(#20056,#20055) -expr_containers(#20056,#20001) -#20058=* -exprs(#20058,14,#20056,0,"base?.x") -#20059=@"loc,{#10000},1,1,1,7" -locations_default(#20059,#10000,1,1,1,7) -hasLocation(#20058,#20059) -enclosing_stmt(#20058,#20055) -expr_containers(#20058,#20001) -#20060=* -exprs(#20060,79,#20058,0,"base") -hasLocation(#20060,#20009) -enclosing_stmt(#20060,#20055) -expr_containers(#20060,#20001) -literals("base","base",#20060) -#20061=@"var;{base};{#20000}" -variables(#20061,"base",#20000) -bind(#20060,#20061) -#20062=* -exprs(#20062,0,#20058,1,"x") -hasLocation(#20062,#20013) -enclosing_stmt(#20062,#20055) -expr_containers(#20062,#20001) -literals("x","x",#20062) -isOptionalChaining(#20058) +stmts(#20056,2,#20001,0,"base?.x.y;") +hasLocation(#20056,#20003) +stmt_containers(#20056,#20001) +#20057=* +exprs(#20057,14,#20056,0,"base?.x.y") +#20058=@"loc,{#10000},1,1,1,9" +locations_default(#20058,#10000,1,1,1,9) +hasLocation(#20057,#20058) +enclosing_stmt(#20057,#20056) +expr_containers(#20057,#20001) +#20059=* +exprs(#20059,14,#20057,0,"base?.x") +#20060=@"loc,{#10000},1,1,1,7" +locations_default(#20060,#10000,1,1,1,7) +hasLocation(#20059,#20060) +enclosing_stmt(#20059,#20056) +expr_containers(#20059,#20001) +#20061=* +exprs(#20061,79,#20059,0,"base") +hasLocation(#20061,#20009) +enclosing_stmt(#20061,#20056) +expr_containers(#20061,#20001) +literals("base","base",#20061) +#20062=@"var;{base};{#20000}" +variables(#20062,"base",#20000) +bind(#20061,#20062) #20063=* -exprs(#20063,0,#20056,1,"y") -hasLocation(#20063,#20017) -enclosing_stmt(#20063,#20055) +exprs(#20063,0,#20059,1,"x") +hasLocation(#20063,#20013) +enclosing_stmt(#20063,#20056) expr_containers(#20063,#20001) -literals("y","y",#20063) +literals("x","x",#20063) +isOptionalChaining(#20059) #20064=* -stmts(#20064,2,#20001,1,"base?.(x).y;") -hasLocation(#20064,#20005) -stmt_containers(#20064,#20001) +exprs(#20064,0,#20057,1,"y") +hasLocation(#20064,#20017) +enclosing_stmt(#20064,#20056) +expr_containers(#20064,#20001) +literals("y","y",#20064) #20065=* -exprs(#20065,14,#20064,0,"base?.(x).y") -#20066=@"loc,{#10000},2,1,2,11" -locations_default(#20066,#10000,2,1,2,11) -hasLocation(#20065,#20066) -enclosing_stmt(#20065,#20064) -expr_containers(#20065,#20001) -#20067=* -exprs(#20067,13,#20065,0,"base?.(x)") -#20068=@"loc,{#10000},2,1,2,9" -locations_default(#20068,#10000,2,1,2,9) -hasLocation(#20067,#20068) -enclosing_stmt(#20067,#20064) -expr_containers(#20067,#20001) -#20069=* -exprs(#20069,79,#20067,-1,"base") -hasLocation(#20069,#20021) -enclosing_stmt(#20069,#20064) -expr_containers(#20069,#20001) -literals("base","base",#20069) -bind(#20069,#20061) +stmts(#20065,2,#20001,1,"base?.(x).y;") +hasLocation(#20065,#20005) +stmt_containers(#20065,#20001) +#20066=* +exprs(#20066,14,#20065,0,"base?.(x).y") +#20067=@"loc,{#10000},2,1,2,11" +locations_default(#20067,#10000,2,1,2,11) +hasLocation(#20066,#20067) +enclosing_stmt(#20066,#20065) +expr_containers(#20066,#20001) +#20068=* +exprs(#20068,13,#20066,0,"base?.(x)") +#20069=@"loc,{#10000},2,1,2,9" +locations_default(#20069,#10000,2,1,2,9) +hasLocation(#20068,#20069) +enclosing_stmt(#20068,#20065) +expr_containers(#20068,#20001) #20070=* -exprs(#20070,79,#20067,0,"x") -hasLocation(#20070,#20027) -enclosing_stmt(#20070,#20064) +exprs(#20070,79,#20068,-1,"base") +hasLocation(#20070,#20021) +enclosing_stmt(#20070,#20065) expr_containers(#20070,#20001) -literals("x","x",#20070) -#20071=@"var;{x};{#20000}" -variables(#20071,"x",#20000) -bind(#20070,#20071) -isOptionalChaining(#20067) -#20072=* -exprs(#20072,0,#20065,1,"y") -hasLocation(#20072,#20033) -enclosing_stmt(#20072,#20064) -expr_containers(#20072,#20001) -literals("y","y",#20072) +literals("base","base",#20070) +bind(#20070,#20062) +#20071=* +exprs(#20071,79,#20068,0,"x") +hasLocation(#20071,#20027) +enclosing_stmt(#20071,#20065) +expr_containers(#20071,#20001) +literals("x","x",#20071) +#20072=@"var;{x};{#20000}" +variables(#20072,"x",#20000) +bind(#20071,#20072) +isOptionalChaining(#20068) #20073=* -stmts(#20073,2,#20001,2,"base?.[z].y;") -hasLocation(#20073,#20007) -stmt_containers(#20073,#20001) +exprs(#20073,0,#20066,1,"y") +hasLocation(#20073,#20033) +enclosing_stmt(#20073,#20065) +expr_containers(#20073,#20001) +literals("y","y",#20073) #20074=* -exprs(#20074,14,#20073,0,"base?.[z].y") -#20075=@"loc,{#10000},3,1,3,11" -locations_default(#20075,#10000,3,1,3,11) -hasLocation(#20074,#20075) -enclosing_stmt(#20074,#20073) -expr_containers(#20074,#20001) -#20076=* -exprs(#20076,15,#20074,0,"base?.[z]") -#20077=@"loc,{#10000},3,1,3,9" -locations_default(#20077,#10000,3,1,3,9) -hasLocation(#20076,#20077) -enclosing_stmt(#20076,#20073) -expr_containers(#20076,#20001) -#20078=* -exprs(#20078,79,#20076,0,"base") -hasLocation(#20078,#20037) -enclosing_stmt(#20078,#20073) -expr_containers(#20078,#20001) -literals("base","base",#20078) -bind(#20078,#20061) +stmts(#20074,2,#20001,2,"base?.[z].y;") +hasLocation(#20074,#20007) +stmt_containers(#20074,#20001) +#20075=* +exprs(#20075,14,#20074,0,"base?.[z].y") +#20076=@"loc,{#10000},3,1,3,11" +locations_default(#20076,#10000,3,1,3,11) +hasLocation(#20075,#20076) +enclosing_stmt(#20075,#20074) +expr_containers(#20075,#20001) +#20077=* +exprs(#20077,15,#20075,0,"base?.[z]") +#20078=@"loc,{#10000},3,1,3,9" +locations_default(#20078,#10000,3,1,3,9) +hasLocation(#20077,#20078) +enclosing_stmt(#20077,#20074) +expr_containers(#20077,#20001) #20079=* -exprs(#20079,79,#20076,1,"z") -hasLocation(#20079,#20043) -enclosing_stmt(#20079,#20073) +exprs(#20079,79,#20077,0,"base") +hasLocation(#20079,#20037) +enclosing_stmt(#20079,#20074) expr_containers(#20079,#20001) -literals("z","z",#20079) -#20080=@"var;{z};{#20000}" -variables(#20080,"z",#20000) -bind(#20079,#20080) -isOptionalChaining(#20076) -#20081=* -exprs(#20081,0,#20074,1,"y") -hasLocation(#20081,#20049) -enclosing_stmt(#20081,#20073) -expr_containers(#20081,#20001) -literals("y","y",#20081) +literals("base","base",#20079) +bind(#20079,#20062) +#20080=* +exprs(#20080,79,#20077,1,"z") +hasLocation(#20080,#20043) +enclosing_stmt(#20080,#20074) +expr_containers(#20080,#20001) +literals("z","z",#20080) +#20081=@"var;{z};{#20000}" +variables(#20081,"z",#20000) +bind(#20080,#20081) +isOptionalChaining(#20077) #20082=* -entry_cfg_node(#20082,#20001) -#20083=@"loc,{#10000},1,1,1,0" -locations_default(#20083,#10000,1,1,1,0) -hasLocation(#20082,#20083) -#20084=* -exit_cfg_node(#20084,#20001) -hasLocation(#20084,#20053) -successor(#20073,#20078) -successor(#20081,#20074) -successor(#20079,#20076) -successor(#20078,#20079) -successor(#20076,#20081) -successor(#20078,#20084) -successor(#20074,#20084) -successor(#20064,#20069) -successor(#20072,#20065) -successor(#20070,#20067) -successor(#20069,#20070) -successor(#20067,#20072) -successor(#20069,#20073) -successor(#20065,#20073) -successor(#20055,#20060) -successor(#20063,#20056) -successor(#20062,#20058) -successor(#20060,#20062) -successor(#20058,#20063) -successor(#20060,#20064) -successor(#20056,#20064) -successor(#20082,#20055) +exprs(#20082,0,#20075,1,"y") +hasLocation(#20082,#20049) +enclosing_stmt(#20082,#20074) +expr_containers(#20082,#20001) +literals("y","y",#20082) +#20083=* +entry_cfg_node(#20083,#20001) +#20084=@"loc,{#10000},1,1,1,0" +locations_default(#20084,#10000,1,1,1,0) +hasLocation(#20083,#20084) +#20085=* +exit_cfg_node(#20085,#20001) +hasLocation(#20085,#20053) +successor(#20074,#20079) +successor(#20082,#20075) +successor(#20080,#20077) +successor(#20079,#20080) +successor(#20077,#20082) +successor(#20079,#20085) +successor(#20075,#20085) +successor(#20065,#20070) +successor(#20073,#20066) +successor(#20071,#20068) +successor(#20070,#20071) +successor(#20068,#20073) +successor(#20070,#20074) +successor(#20066,#20074) +successor(#20056,#20061) +successor(#20064,#20057) +successor(#20063,#20059) +successor(#20061,#20063) +successor(#20059,#20064) +successor(#20061,#20065) +successor(#20057,#20065) +successor(#20083,#20056) numlines(#10000,3,3,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/privateField.ts.trap b/javascript/extractor/tests/ts/output/trap/privateField.ts.trap index 55897164df68..f94cabaf5b20 100644 --- a/javascript/extractor/tests/ts/output/trap/privateField.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/privateField.ts.trap @@ -136,138 +136,145 @@ hasLocation(#20001,#20045) variables(#20046,"C",#20000) #20047=@"local_type_name;{C};{#20000}" local_type_names(#20047,"C",#20000) -#20048=* -stmts(#20048,26,#20001,0,"class C ... 5;\n }\n}") -#20049=@"loc,{#10000},1,1,6,1" -locations_default(#20049,#10000,1,1,6,1) -hasLocation(#20048,#20049) -stmt_containers(#20048,#20001) -#20050=* -exprs(#20050,78,#20048,0,"C") -hasLocation(#20050,#20017) -enclosing_stmt(#20050,#20048) -expr_containers(#20050,#20001) -literals("C","C",#20050) -decl(#20050,#20046) -typedecl(#20050,#20047) +#20048=@"var;{this};{#20000}" +variables(#20048,"this",#20000) +#20049=* +stmts(#20049,26,#20001,0,"class C ... 5;\n }\n}") +#20050=@"loc,{#10000},1,1,6,1" +locations_default(#20050,#10000,1,1,6,1) +hasLocation(#20049,#20050) +stmt_containers(#20049,#20001) #20051=* -scopes(#20051,10) -scopenodes(#20048,#20051) -scopenesting(#20051,#20000) +exprs(#20051,78,#20049,0,"C") +hasLocation(#20051,#20017) +enclosing_stmt(#20051,#20049) +expr_containers(#20051,#20001) +literals("C","C",#20051) +decl(#20051,#20046) +typedecl(#20051,#20047) #20052=* -properties(#20052,#20048,2,8,"#foo;") -#20053=@"loc,{#10000},2,2,2,6" -locations_default(#20053,#10000,2,2,2,6) -hasLocation(#20052,#20053) +scopes(#20052,10) +scopenodes(#20049,#20052) +scopenesting(#20052,#20000) +#20053=@"var;{this};{#20052}" +variables(#20053,"this",#20052) #20054=* -#20055=* -exprs(#20055,0,#20052,0,"#foo") -#20056=@"loc,{#10000},2,2,2,5" -locations_default(#20056,#10000,2,2,2,5) -hasLocation(#20055,#20056) -expr_containers(#20055,#20054) -literals("#foo","#foo",#20055) +properties(#20054,#20049,2,8,"#foo;") +#20055=@"loc,{#10000},2,2,2,6" +locations_default(#20055,#10000,2,2,2,6) +hasLocation(#20054,#20055) +#20056=* #20057=* -properties(#20057,#20048,3,0,"constru ... = 5;\n }") -#20058=@"loc,{#10000},3,2,5,2" -locations_default(#20058,#10000,3,2,5,2) +exprs(#20057,0,#20054,0,"#foo") +#20058=@"loc,{#10000},2,2,2,5" +locations_default(#20058,#10000,2,2,2,5) hasLocation(#20057,#20058) +expr_containers(#20057,#20056) +literals("#foo","#foo",#20057) #20059=* -exprs(#20059,0,#20057,0,"constru ... = 5;\n }") -hasLocation(#20059,#20058) -enclosing_stmt(#20059,#20048) -expr_containers(#20059,#20001) -literals("constructor","constructor",#20059) -exprs(#20054,9,#20057,1,"constru ... = 5;\n }") -hasLocation(#20054,#20058) -enclosing_stmt(#20054,#20048) -expr_containers(#20054,#20001) -#20060=* -scopes(#20060,1) -scopenodes(#20054,#20060) -scopenesting(#20060,#20051) -#20061=@"var;{arguments};{#20060}" -variables(#20061,"arguments",#20060) -is_arguments_object(#20061) +properties(#20059,#20049,3,0,"constru ... = 5;\n }") +#20060=@"loc,{#10000},3,2,5,2" +locations_default(#20060,#10000,3,2,5,2) +hasLocation(#20059,#20060) +#20061=* +exprs(#20061,0,#20059,0,"constru ... = 5;\n }") +hasLocation(#20061,#20060) +enclosing_stmt(#20061,#20049) +expr_containers(#20061,#20001) +literals("constructor","constructor",#20061) +exprs(#20056,9,#20059,1,"constru ... = 5;\n }") +hasLocation(#20056,#20060) +enclosing_stmt(#20056,#20049) +expr_containers(#20056,#20001) #20062=* -stmts(#20062,1,#20054,-2,"{\n th ... = 5;\n }") -#20063=@"loc,{#10000},3,16,5,2" -locations_default(#20063,#10000,3,16,5,2) -hasLocation(#20062,#20063) -stmt_containers(#20062,#20054) -#20064=* -stmts(#20064,2,#20062,0,"this.#foo = 5;") -#20065=@"loc,{#10000},4,4,4,17" -locations_default(#20065,#10000,4,4,4,17) -hasLocation(#20064,#20065) -stmt_containers(#20064,#20054) -#20066=* -exprs(#20066,47,#20064,0,"this.#foo = 5") -#20067=@"loc,{#10000},4,4,4,16" -locations_default(#20067,#10000,4,4,4,16) -hasLocation(#20066,#20067) -enclosing_stmt(#20066,#20064) -expr_containers(#20066,#20054) -#20068=* -exprs(#20068,14,#20066,0,"this.#foo") -#20069=@"loc,{#10000},4,4,4,12" -locations_default(#20069,#10000,4,4,4,12) -hasLocation(#20068,#20069) -enclosing_stmt(#20068,#20064) -expr_containers(#20068,#20054) -#20070=* -exprs(#20070,6,#20068,0,"this") -hasLocation(#20070,#20031) -enclosing_stmt(#20070,#20064) -expr_containers(#20070,#20054) +scopes(#20062,1) +scopenodes(#20056,#20062) +scopenesting(#20062,#20052) +#20063=@"var;{this};{#20062}" +variables(#20063,"this",#20062) +#20064=@"var;{arguments};{#20062}" +variables(#20064,"arguments",#20062) +is_arguments_object(#20064) +#20065=* +stmts(#20065,1,#20056,-2,"{\n th ... = 5;\n }") +#20066=@"loc,{#10000},3,16,5,2" +locations_default(#20066,#10000,3,16,5,2) +hasLocation(#20065,#20066) +stmt_containers(#20065,#20056) +#20067=* +stmts(#20067,2,#20065,0,"this.#foo = 5;") +#20068=@"loc,{#10000},4,4,4,17" +locations_default(#20068,#10000,4,4,4,17) +hasLocation(#20067,#20068) +stmt_containers(#20067,#20056) +#20069=* +exprs(#20069,47,#20067,0,"this.#foo = 5") +#20070=@"loc,{#10000},4,4,4,16" +locations_default(#20070,#10000,4,4,4,16) +hasLocation(#20069,#20070) +enclosing_stmt(#20069,#20067) +expr_containers(#20069,#20056) #20071=* -exprs(#20071,0,#20068,1,"#foo") -#20072=@"loc,{#10000},4,9,4,12" -locations_default(#20072,#10000,4,9,4,12) +exprs(#20071,14,#20069,0,"this.#foo") +#20072=@"loc,{#10000},4,4,4,12" +locations_default(#20072,#10000,4,4,4,12) hasLocation(#20071,#20072) -enclosing_stmt(#20071,#20064) -expr_containers(#20071,#20054) -literals("#foo","#foo",#20071) +enclosing_stmt(#20071,#20067) +expr_containers(#20071,#20056) #20073=* -exprs(#20073,3,#20066,1,"5") -hasLocation(#20073,#20037) -enclosing_stmt(#20073,#20064) -expr_containers(#20073,#20054) -literals("5","5",#20073) -is_method(#20057) +exprs(#20073,6,#20071,0,"this") +hasLocation(#20073,#20031) +enclosing_stmt(#20073,#20067) +expr_containers(#20073,#20056) +bind(#20073,#20063) #20074=* -entry_cfg_node(#20074,#20001) -#20075=@"loc,{#10000},1,1,1,0" -locations_default(#20075,#10000,1,1,1,0) +exprs(#20074,0,#20071,1,"#foo") +#20075=@"loc,{#10000},4,9,4,12" +locations_default(#20075,#10000,4,9,4,12) hasLocation(#20074,#20075) +enclosing_stmt(#20074,#20067) +expr_containers(#20074,#20056) +literals("#foo","#foo",#20074) #20076=* -exit_cfg_node(#20076,#20001) -hasLocation(#20076,#20044) -successor(#20055,#20052) -successor(#20054,#20057) +exprs(#20076,3,#20069,1,"5") +hasLocation(#20076,#20037) +enclosing_stmt(#20076,#20067) +expr_containers(#20076,#20056) +literals("5","5",#20076) +is_method(#20059) #20077=* -entry_cfg_node(#20077,#20054) -#20078=@"loc,{#10000},3,2,3,1" -locations_default(#20078,#10000,3,2,3,1) +entry_cfg_node(#20077,#20001) +#20078=@"loc,{#10000},1,1,1,0" +locations_default(#20078,#10000,1,1,1,0) hasLocation(#20077,#20078) -successor(#20052,#20062) #20079=* -exit_cfg_node(#20079,#20054) -#20080=@"loc,{#10000},5,3,5,2" -locations_default(#20080,#10000,5,3,5,2) -hasLocation(#20079,#20080) -successor(#20064,#20070) -successor(#20073,#20066) -successor(#20071,#20068) -successor(#20070,#20071) -successor(#20068,#20073) -successor(#20066,#20079) -successor(#20062,#20064) -successor(#20077,#20055) -successor(#20059,#20054) -successor(#20057,#20048) -successor(#20050,#20059) -successor(#20048,#20076) -successor(#20074,#20050) +exit_cfg_node(#20079,#20001) +hasLocation(#20079,#20044) +successor(#20057,#20054) +successor(#20056,#20059) +#20080=* +entry_cfg_node(#20080,#20056) +#20081=@"loc,{#10000},3,2,3,1" +locations_default(#20081,#10000,3,2,3,1) +hasLocation(#20080,#20081) +successor(#20054,#20065) +#20082=* +exit_cfg_node(#20082,#20056) +#20083=@"loc,{#10000},5,3,5,2" +locations_default(#20083,#10000,5,3,5,2) +hasLocation(#20082,#20083) +successor(#20067,#20073) +successor(#20076,#20069) +successor(#20074,#20071) +successor(#20073,#20074) +successor(#20071,#20076) +successor(#20069,#20082) +successor(#20065,#20067) +successor(#20080,#20057) +successor(#20061,#20056) +successor(#20059,#20049) +successor(#20051,#20061) +successor(#20049,#20079) +successor(#20077,#20051) numlines(#10000,6,6,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/regexp.ts.trap b/javascript/extractor/tests/ts/output/trap/regexp.ts.trap index 9b26fb5f75a7..40d9ba26d0e0 100644 --- a/javascript/extractor/tests/ts/output/trap/regexp.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/regexp.ts.trap @@ -25,32 +25,34 @@ locations_default(#20006,#10000,1,4,1,3) hasLocation(#20005,#20006) toplevels(#20001,0) hasLocation(#20001,#20003) -#20007=* -stmts(#20007,2,#20001,0,"/a/") -hasLocation(#20007,#20003) -stmt_containers(#20007,#20001) +#20007=@"var;{this};{#20000}" +variables(#20007,"this",#20000) #20008=* -exprs(#20008,5,#20007,0,"/a/") +stmts(#20008,2,#20001,0,"/a/") hasLocation(#20008,#20003) -enclosing_stmt(#20008,#20007) -expr_containers(#20008,#20001) -literals("/a/","/a/",#20008) +stmt_containers(#20008,#20001) #20009=* -regexpterm(#20009,14,#20008,0,"a") -#20010=@"loc,{#10000},1,2,1,2" -locations_default(#20010,#10000,1,2,1,2) -hasLocation(#20009,#20010) -regexp_const_value(#20009,"a") -#20011=* -entry_cfg_node(#20011,#20001) -#20012=@"loc,{#10000},1,1,1,0" -locations_default(#20012,#10000,1,1,1,0) -hasLocation(#20011,#20012) -#20013=* -exit_cfg_node(#20013,#20001) -hasLocation(#20013,#20006) -successor(#20007,#20008) -successor(#20008,#20013) -successor(#20011,#20007) +exprs(#20009,5,#20008,0,"/a/") +hasLocation(#20009,#20003) +enclosing_stmt(#20009,#20008) +expr_containers(#20009,#20001) +literals("/a/","/a/",#20009) +#20010=* +regexpterm(#20010,14,#20009,0,"a") +#20011=@"loc,{#10000},1,2,1,2" +locations_default(#20011,#10000,1,2,1,2) +hasLocation(#20010,#20011) +regexp_const_value(#20010,"a") +#20012=* +entry_cfg_node(#20012,#20001) +#20013=@"loc,{#10000},1,1,1,0" +locations_default(#20013,#10000,1,1,1,0) +hasLocation(#20012,#20013) +#20014=* +exit_cfg_node(#20014,#20001) +hasLocation(#20014,#20006) +successor(#20008,#20009) +successor(#20009,#20014) +successor(#20012,#20008) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/templates.ts.trap b/javascript/extractor/tests/ts/output/trap/templates.ts.trap index 5193508e1ed5..74e774dbdd43 100644 --- a/javascript/extractor/tests/ts/output/trap/templates.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/templates.ts.trap @@ -60,83 +60,85 @@ toplevels(#20001,0) #20020=@"loc,{#10000},1,1,2,0" locations_default(#20020,#10000,1,1,2,0) hasLocation(#20001,#20020) -#20021=* -stmts(#20021,2,#20001,0,"`url(""$ ... age}"")`") -hasLocation(#20021,#20003) -stmt_containers(#20021,#20001) +#20021=@"var;{this};{#20000}" +variables(#20021,"this",#20000) #20022=* -exprs(#20022,71,#20021,0,"`url(""$ ... age}"")`") +stmts(#20022,2,#20001,0,"`url(""$ ... age}"")`") hasLocation(#20022,#20003) -enclosing_stmt(#20022,#20021) -expr_containers(#20022,#20001) +stmt_containers(#20022,#20001) #20023=* -exprs(#20023,72,#20022,0,"url(""") -#20024=@"loc,{#10000},1,2,1,6" -locations_default(#20024,#10000,1,2,1,6) -hasLocation(#20023,#20024) -enclosing_stmt(#20023,#20021) +exprs(#20023,71,#20022,0,"`url(""$ ... age}"")`") +hasLocation(#20023,#20003) +enclosing_stmt(#20023,#20022) expr_containers(#20023,#20001) -literals("url(""","url(""",#20023) -#20025=* -exprs(#20025,14,#20022,1,"ctx.expected.image") -#20026=@"loc,{#10000},1,9,1,26" -locations_default(#20026,#10000,1,9,1,26) -hasLocation(#20025,#20026) -enclosing_stmt(#20025,#20021) -expr_containers(#20025,#20001) -#20027=* -exprs(#20027,14,#20025,0,"ctx.expected") -#20028=@"loc,{#10000},1,9,1,20" -locations_default(#20028,#10000,1,9,1,20) -hasLocation(#20027,#20028) -enclosing_stmt(#20027,#20021) -expr_containers(#20027,#20001) -#20029=* -exprs(#20029,79,#20027,0,"ctx") -hasLocation(#20029,#20007) -enclosing_stmt(#20029,#20021) -expr_containers(#20029,#20001) -literals("ctx","ctx",#20029) -#20030=@"var;{ctx};{#20000}" -variables(#20030,"ctx",#20000) -bind(#20029,#20030) -#20031=* -exprs(#20031,0,#20027,1,"expected") -hasLocation(#20031,#20011) -enclosing_stmt(#20031,#20021) -expr_containers(#20031,#20001) -literals("expected","expected",#20031) +#20024=* +exprs(#20024,72,#20023,0,"url(""") +#20025=@"loc,{#10000},1,2,1,6" +locations_default(#20025,#10000,1,2,1,6) +hasLocation(#20024,#20025) +enclosing_stmt(#20024,#20022) +expr_containers(#20024,#20001) +literals("url(""","url(""",#20024) +#20026=* +exprs(#20026,14,#20023,1,"ctx.expected.image") +#20027=@"loc,{#10000},1,9,1,26" +locations_default(#20027,#10000,1,9,1,26) +hasLocation(#20026,#20027) +enclosing_stmt(#20026,#20022) +expr_containers(#20026,#20001) +#20028=* +exprs(#20028,14,#20026,0,"ctx.expected") +#20029=@"loc,{#10000},1,9,1,20" +locations_default(#20029,#10000,1,9,1,20) +hasLocation(#20028,#20029) +enclosing_stmt(#20028,#20022) +expr_containers(#20028,#20001) +#20030=* +exprs(#20030,79,#20028,0,"ctx") +hasLocation(#20030,#20007) +enclosing_stmt(#20030,#20022) +expr_containers(#20030,#20001) +literals("ctx","ctx",#20030) +#20031=@"var;{ctx};{#20000}" +variables(#20031,"ctx",#20000) +bind(#20030,#20031) #20032=* -exprs(#20032,0,#20025,1,"image") -hasLocation(#20032,#20015) -enclosing_stmt(#20032,#20021) +exprs(#20032,0,#20028,1,"expected") +hasLocation(#20032,#20011) +enclosing_stmt(#20032,#20022) expr_containers(#20032,#20001) -literals("image","image",#20032) +literals("expected","expected",#20032) #20033=* -exprs(#20033,72,#20022,2,""")") -#20034=@"loc,{#10000},1,28,1,29" -locations_default(#20034,#10000,1,28,1,29) -hasLocation(#20033,#20034) -enclosing_stmt(#20033,#20021) +exprs(#20033,0,#20026,1,"image") +hasLocation(#20033,#20015) +enclosing_stmt(#20033,#20022) expr_containers(#20033,#20001) -literals(""")",""")",#20033) -#20035=* -entry_cfg_node(#20035,#20001) -#20036=@"loc,{#10000},1,1,1,0" -locations_default(#20036,#10000,1,1,1,0) -hasLocation(#20035,#20036) -#20037=* -exit_cfg_node(#20037,#20001) -hasLocation(#20037,#20019) -successor(#20021,#20022) +literals("image","image",#20033) +#20034=* +exprs(#20034,72,#20023,2,""")") +#20035=@"loc,{#10000},1,28,1,29" +locations_default(#20035,#10000,1,28,1,29) +hasLocation(#20034,#20035) +enclosing_stmt(#20034,#20022) +expr_containers(#20034,#20001) +literals(""")",""")",#20034) +#20036=* +entry_cfg_node(#20036,#20001) +#20037=@"loc,{#10000},1,1,1,0" +locations_default(#20037,#10000,1,1,1,0) +hasLocation(#20036,#20037) +#20038=* +exit_cfg_node(#20038,#20001) +hasLocation(#20038,#20019) successor(#20022,#20023) -successor(#20033,#20037) -successor(#20032,#20025) -successor(#20031,#20027) -successor(#20029,#20031) -successor(#20027,#20032) -successor(#20025,#20033) -successor(#20023,#20029) -successor(#20035,#20021) +successor(#20023,#20024) +successor(#20034,#20038) +successor(#20033,#20026) +successor(#20032,#20028) +successor(#20030,#20032) +successor(#20028,#20033) +successor(#20026,#20034) +successor(#20024,#20030) +successor(#20036,#20022) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/thisparameter.ts.trap b/javascript/extractor/tests/ts/output/trap/thisparameter.ts.trap index 27b075f05c76..3959d07da031 100644 --- a/javascript/extractor/tests/ts/output/trap/thisparameter.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/thisparameter.ts.trap @@ -433,333 +433,349 @@ variables(#20162,"C",#20000) local_type_names(#20163,"C",#20000) #20164=@"local_type_name;{I};{#20000}" local_type_names(#20164,"I",#20000) -#20165=* -stmts(#20165,17,#20001,0,"functio ... ber) {}") -hasLocation(#20165,#20003) -stmt_containers(#20165,#20001) +#20165=@"var;{this};{#20000}" +variables(#20165,"this",#20000) #20166=* -exprs(#20166,78,#20165,-1,"declaration") -hasLocation(#20166,#20033) -expr_containers(#20166,#20165) -literals("declaration","declaration",#20166) -decl(#20166,#20159) +stmts(#20166,17,#20001,0,"functio ... ber) {}") +hasLocation(#20166,#20003) +stmt_containers(#20166,#20001) #20167=* -scopes(#20167,1) -scopenodes(#20165,#20167) -scopenesting(#20167,#20000) -#20168=@"var;{x};{#20167}" -variables(#20168,"x",#20167) -#20169=* -exprs(#20169,78,#20165,0,"x") -hasLocation(#20169,#20045) -expr_containers(#20169,#20165) -literals("x","x",#20169) -decl(#20169,#20168) -#20170=@"var;{arguments};{#20167}" -variables(#20170,"arguments",#20167) -is_arguments_object(#20170) +exprs(#20167,78,#20166,-1,"declaration") +hasLocation(#20167,#20033) +expr_containers(#20167,#20166) +literals("declaration","declaration",#20167) +decl(#20167,#20159) +#20168=* +scopes(#20168,1) +scopenodes(#20166,#20168) +scopenesting(#20168,#20000) +#20169=@"var;{this};{#20168}" +variables(#20169,"this",#20168) +#20170=@"var;{x};{#20168}" +variables(#20170,"x",#20168) #20171=* -typeexprs(#20171,2,#20165,-4,"void") -hasLocation(#20171,#20041) -expr_containers(#20171,#20165) -literals("void","void",#20171) -#20172=* -typeexprs(#20172,2,#20165,-6,"number") -hasLocation(#20172,#20049) -expr_containers(#20172,#20165) -literals("number","number",#20172) +exprs(#20171,78,#20166,0,"x") +hasLocation(#20171,#20045) +expr_containers(#20171,#20166) +literals("x","x",#20171) +decl(#20171,#20170) +#20172=@"var;{arguments};{#20168}" +variables(#20172,"arguments",#20168) +is_arguments_object(#20172) #20173=* -stmts(#20173,1,#20165,-2,"{}") -#20174=@"loc,{#10000},1,45,1,46" -locations_default(#20174,#10000,1,45,1,46) -hasLocation(#20173,#20174) -stmt_containers(#20173,#20165) +typeexprs(#20173,2,#20166,-4,"void") +hasLocation(#20173,#20041) +expr_containers(#20173,#20166) +literals("void","void",#20173) +#20174=* +typeexprs(#20174,2,#20166,-6,"number") +hasLocation(#20174,#20049) +expr_containers(#20174,#20166) +literals("number","number",#20174) #20175=* -stmts(#20175,18,#20001,1,"var f = ... ber) {}") -hasLocation(#20175,#20007) -stmt_containers(#20175,#20001) -#20176=* -exprs(#20176,64,#20175,0,"f = fun ... ber) {}") -#20177=@"loc,{#10000},3,5,3,44" -locations_default(#20177,#10000,3,5,3,44) -hasLocation(#20176,#20177) -enclosing_stmt(#20176,#20175) -expr_containers(#20176,#20001) +stmts(#20175,1,#20166,-2,"{}") +#20176=@"loc,{#10000},1,45,1,46" +locations_default(#20176,#10000,1,45,1,46) +hasLocation(#20175,#20176) +stmt_containers(#20175,#20166) +#20177=* +stmts(#20177,18,#20001,1,"var f = ... ber) {}") +hasLocation(#20177,#20007) +stmt_containers(#20177,#20001) #20178=* -exprs(#20178,78,#20176,0,"f") -hasLocation(#20178,#20059) -enclosing_stmt(#20178,#20175) +exprs(#20178,64,#20177,0,"f = fun ... ber) {}") +#20179=@"loc,{#10000},3,5,3,44" +locations_default(#20179,#10000,3,5,3,44) +hasLocation(#20178,#20179) +enclosing_stmt(#20178,#20177) expr_containers(#20178,#20001) -literals("f","f",#20178) -decl(#20178,#20160) -#20179=* -exprs(#20179,9,#20176,1,"functio ... ber) {}") -#20180=@"loc,{#10000},3,9,3,44" -locations_default(#20180,#10000,3,9,3,44) -hasLocation(#20179,#20180) -enclosing_stmt(#20179,#20175) -expr_containers(#20179,#20001) +#20180=* +exprs(#20180,78,#20178,0,"f") +hasLocation(#20180,#20059) +enclosing_stmt(#20180,#20177) +expr_containers(#20180,#20001) +literals("f","f",#20180) +decl(#20180,#20160) #20181=* -scopes(#20181,1) -scopenodes(#20179,#20181) -scopenesting(#20181,#20000) -#20182=@"var;{x};{#20181}" -variables(#20182,"x",#20181) +exprs(#20181,9,#20178,1,"functio ... ber) {}") +#20182=@"loc,{#10000},3,9,3,44" +locations_default(#20182,#10000,3,9,3,44) +hasLocation(#20181,#20182) +enclosing_stmt(#20181,#20177) +expr_containers(#20181,#20001) #20183=* -exprs(#20183,78,#20179,0,"x") -hasLocation(#20183,#20075) -expr_containers(#20183,#20179) -literals("x","x",#20183) -decl(#20183,#20182) -#20184=@"var;{arguments};{#20181}" -variables(#20184,"arguments",#20181) -is_arguments_object(#20184) -#20185=* -typeexprs(#20185,2,#20179,-4,"string") -hasLocation(#20185,#20071) -expr_containers(#20185,#20179) -literals("string","string",#20185) +scopes(#20183,1) +scopenodes(#20181,#20183) +scopenesting(#20183,#20000) +#20184=@"var;{this};{#20183}" +variables(#20184,"this",#20183) +#20185=@"var;{x};{#20183}" +variables(#20185,"x",#20183) #20186=* -typeexprs(#20186,2,#20179,-6,"number") -hasLocation(#20186,#20079) -expr_containers(#20186,#20179) -literals("number","number",#20186) -#20187=* -stmts(#20187,1,#20179,-2,"{}") -#20188=@"loc,{#10000},3,43,3,44" -locations_default(#20188,#10000,3,43,3,44) -hasLocation(#20187,#20188) -stmt_containers(#20187,#20179) +exprs(#20186,78,#20181,0,"x") +hasLocation(#20186,#20075) +expr_containers(#20186,#20181) +literals("x","x",#20186) +decl(#20186,#20185) +#20187=@"var;{arguments};{#20183}" +variables(#20187,"arguments",#20183) +is_arguments_object(#20187) +#20188=* +typeexprs(#20188,2,#20181,-4,"string") +hasLocation(#20188,#20071) +expr_containers(#20188,#20181) +literals("string","string",#20188) #20189=* -stmts(#20189,17,#20001,2,"declare ... umber);") -hasLocation(#20189,#20011) -stmt_containers(#20189,#20001) -has_declare_keyword(#20189) +typeexprs(#20189,2,#20181,-6,"number") +hasLocation(#20189,#20079) +expr_containers(#20189,#20181) +literals("number","number",#20189) #20190=* -exprs(#20190,78,#20189,-1,"ambient") -hasLocation(#20190,#20091) -expr_containers(#20190,#20189) -literals("ambient","ambient",#20190) -decl(#20190,#20161) -#20191=* -scopes(#20191,1) -scopenodes(#20189,#20191) -scopenesting(#20191,#20000) -#20192=@"var;{x};{#20191}" -variables(#20192,"x",#20191) +stmts(#20190,1,#20181,-2,"{}") +#20191=@"loc,{#10000},3,43,3,44" +locations_default(#20191,#10000,3,43,3,44) +hasLocation(#20190,#20191) +stmt_containers(#20190,#20181) +#20192=* +stmts(#20192,17,#20001,2,"declare ... umber);") +hasLocation(#20192,#20011) +stmt_containers(#20192,#20001) +has_declare_keyword(#20192) #20193=* -exprs(#20193,78,#20189,0,"x") -hasLocation(#20193,#20103) -expr_containers(#20193,#20189) -literals("x","x",#20193) -decl(#20193,#20192) -#20194=@"var;{arguments};{#20191}" -variables(#20194,"arguments",#20191) -is_arguments_object(#20194) -#20195=* -typeexprs(#20195,2,#20189,-4,"string") -hasLocation(#20195,#20099) -expr_containers(#20195,#20189) -literals("string","string",#20195) -#20196=* -typeexprs(#20196,2,#20189,-6,"number") -hasLocation(#20196,#20107) -expr_containers(#20196,#20189) -literals("number","number",#20196) +exprs(#20193,78,#20192,-1,"ambient") +hasLocation(#20193,#20091) +expr_containers(#20193,#20192) +literals("ambient","ambient",#20193) +decl(#20193,#20161) +#20194=* +scopes(#20194,1) +scopenodes(#20192,#20194) +scopenesting(#20194,#20000) +#20195=@"var;{this};{#20194}" +variables(#20195,"this",#20194) +#20196=@"var;{x};{#20194}" +variables(#20196,"x",#20194) #20197=* -stmts(#20197,26,#20001,3,"class C ... C) {}\n}") -#20198=@"loc,{#10000},7,1,9,1" -locations_default(#20198,#10000,7,1,9,1) -hasLocation(#20197,#20198) -stmt_containers(#20197,#20001) +exprs(#20197,78,#20192,0,"x") +hasLocation(#20197,#20103) +expr_containers(#20197,#20192) +literals("x","x",#20197) +decl(#20197,#20196) +#20198=@"var;{arguments};{#20194}" +variables(#20198,"arguments",#20194) +is_arguments_object(#20198) #20199=* -exprs(#20199,78,#20197,0,"C") -hasLocation(#20199,#20115) -enclosing_stmt(#20199,#20197) -expr_containers(#20199,#20001) -literals("C","C",#20199) -decl(#20199,#20162) -typedecl(#20199,#20163) +typeexprs(#20199,2,#20192,-4,"string") +hasLocation(#20199,#20099) +expr_containers(#20199,#20192) +literals("string","string",#20199) #20200=* -scopes(#20200,10) -scopenodes(#20197,#20200) -scopenesting(#20200,#20000) +typeexprs(#20200,2,#20192,-6,"number") +hasLocation(#20200,#20107) +expr_containers(#20200,#20192) +literals("number","number",#20200) #20201=* -properties(#20201,#20197,2,0,"member(this: C) {}") -#20202=@"loc,{#10000},8,3,8,20" -locations_default(#20202,#10000,8,3,8,20) +stmts(#20201,26,#20001,3,"class C ... C) {}\n}") +#20202=@"loc,{#10000},7,1,9,1" +locations_default(#20202,#10000,7,1,9,1) hasLocation(#20201,#20202) +stmt_containers(#20201,#20001) #20203=* -exprs(#20203,0,#20201,0,"member") -hasLocation(#20203,#20119) -enclosing_stmt(#20203,#20197) +exprs(#20203,78,#20201,0,"C") +hasLocation(#20203,#20115) +enclosing_stmt(#20203,#20201) expr_containers(#20203,#20001) -literals("member","member",#20203) +literals("C","C",#20203) +decl(#20203,#20162) +typedecl(#20203,#20163) #20204=* -exprs(#20204,9,#20201,1,"member(this: C) {}") -hasLocation(#20204,#20202) -enclosing_stmt(#20204,#20197) -expr_containers(#20204,#20001) -#20205=* -scopes(#20205,1) -scopenodes(#20204,#20205) -scopenesting(#20205,#20200) -#20206=@"var;{arguments};{#20205}" -variables(#20206,"arguments",#20205) -is_arguments_object(#20206) -#20207=* -typeexprs(#20207,0,#20204,-4,"C") -hasLocation(#20207,#20127) -expr_containers(#20207,#20204) -literals("C","C",#20207) -typebind(#20207,#20163) +scopes(#20204,10) +scopenodes(#20201,#20204) +scopenesting(#20204,#20000) +#20205=@"var;{this};{#20204}" +variables(#20205,"this",#20204) +#20206=* +properties(#20206,#20201,2,0,"member(this: C) {}") +#20207=@"loc,{#10000},8,3,8,20" +locations_default(#20207,#10000,8,3,8,20) +hasLocation(#20206,#20207) #20208=* -stmts(#20208,1,#20204,-2,"{}") -#20209=@"loc,{#10000},8,19,8,20" -locations_default(#20209,#10000,8,19,8,20) -hasLocation(#20208,#20209) -stmt_containers(#20208,#20204) -is_method(#20201) +exprs(#20208,0,#20206,0,"member") +hasLocation(#20208,#20119) +enclosing_stmt(#20208,#20201) +expr_containers(#20208,#20001) +literals("member","member",#20208) +#20209=* +exprs(#20209,9,#20206,1,"member(this: C) {}") +hasLocation(#20209,#20207) +enclosing_stmt(#20209,#20201) +expr_containers(#20209,#20001) #20210=* -properties(#20210,#20197,3,0,"constructor() {}") -#20211=@"loc,{#10000},7,9,7,8" -locations_default(#20211,#10000,7,9,7,8) -hasLocation(#20210,#20211) -#20212=* -exprs(#20212,0,#20210,0,"constructor") -hasLocation(#20212,#20211) -enclosing_stmt(#20212,#20197) -expr_containers(#20212,#20001) -literals("constructor","constructor",#20212) +scopes(#20210,1) +scopenodes(#20209,#20210) +scopenesting(#20210,#20204) +#20211=@"var;{this};{#20210}" +variables(#20211,"this",#20210) +#20212=@"var;{arguments};{#20210}" +variables(#20212,"arguments",#20210) +is_arguments_object(#20212) #20213=* -exprs(#20213,9,#20210,1,"() {}") -hasLocation(#20213,#20211) -enclosing_stmt(#20213,#20197) -expr_containers(#20213,#20001) +typeexprs(#20213,0,#20209,-4,"C") +hasLocation(#20213,#20127) +expr_containers(#20213,#20209) +literals("C","C",#20213) +typebind(#20213,#20163) #20214=* -scopes(#20214,1) -scopenodes(#20213,#20214) -scopenesting(#20214,#20200) -#20215=@"var;{arguments};{#20214}" -variables(#20215,"arguments",#20214) -is_arguments_object(#20215) +stmts(#20214,1,#20209,-2,"{}") +#20215=@"loc,{#10000},8,19,8,20" +locations_default(#20215,#10000,8,19,8,20) +hasLocation(#20214,#20215) +stmt_containers(#20214,#20209) +is_method(#20206) #20216=* -stmts(#20216,1,#20213,-2,"{}") -hasLocation(#20216,#20211) -stmt_containers(#20216,#20213) -is_method(#20210) -#20217=* -stmts(#20217,34,#20001,4,"interfa ... : I);\n}") -#20218=@"loc,{#10000},11,1,13,1" -locations_default(#20218,#10000,11,1,13,1) -hasLocation(#20217,#20218) -stmt_containers(#20217,#20001) +properties(#20216,#20201,3,0,"constructor() {}") +#20217=@"loc,{#10000},7,9,7,8" +locations_default(#20217,#10000,7,9,7,8) +hasLocation(#20216,#20217) +#20218=* +exprs(#20218,0,#20216,0,"constructor") +hasLocation(#20218,#20217) +enclosing_stmt(#20218,#20201) +expr_containers(#20218,#20001) +literals("constructor","constructor",#20218) #20219=* -typeexprs(#20219,1,#20217,0,"I") -hasLocation(#20219,#20138) -enclosing_stmt(#20219,#20217) +exprs(#20219,9,#20216,1,"() {}") +hasLocation(#20219,#20217) +enclosing_stmt(#20219,#20201) expr_containers(#20219,#20001) -literals("I","I",#20219) -typedecl(#20219,#20164) #20220=* -properties(#20220,#20217,2,0,"method(this: I);") -#20221=@"loc,{#10000},12,3,12,18" -locations_default(#20221,#10000,12,3,12,18) -hasLocation(#20220,#20221) -#20222=* -exprs(#20222,0,#20220,0,"method") -hasLocation(#20222,#20142) -enclosing_stmt(#20222,#20217) -expr_containers(#20222,#20001) -literals("method","method",#20222) +scopes(#20220,1) +scopenodes(#20219,#20220) +scopenesting(#20220,#20204) +#20221=@"var;{this};{#20220}" +variables(#20221,"this",#20220) +#20222=@"var;{arguments};{#20220}" +variables(#20222,"arguments",#20220) +is_arguments_object(#20222) #20223=* -exprs(#20223,9,#20220,1,"method(this: I);") -hasLocation(#20223,#20221) -enclosing_stmt(#20223,#20217) -expr_containers(#20223,#20001) +stmts(#20223,1,#20219,-2,"{}") +hasLocation(#20223,#20217) +stmt_containers(#20223,#20219) +is_method(#20216) #20224=* -scopes(#20224,1) -scopenodes(#20223,#20224) -scopenesting(#20224,#20000) -#20225=@"var;{arguments};{#20224}" -variables(#20225,"arguments",#20224) -is_arguments_object(#20225) +stmts(#20224,34,#20001,4,"interfa ... : I);\n}") +#20225=@"loc,{#10000},11,1,13,1" +locations_default(#20225,#10000,11,1,13,1) +hasLocation(#20224,#20225) +stmt_containers(#20224,#20001) #20226=* -typeexprs(#20226,0,#20223,-4,"I") -hasLocation(#20226,#20150) -expr_containers(#20226,#20223) +typeexprs(#20226,1,#20224,0,"I") +hasLocation(#20226,#20138) +enclosing_stmt(#20226,#20224) +expr_containers(#20226,#20001) literals("I","I",#20226) -typebind(#20226,#20164) -is_method(#20220) -is_abstract_member(#20220) +typedecl(#20226,#20164) #20227=* -entry_cfg_node(#20227,#20001) -#20228=@"loc,{#10000},1,1,1,0" -locations_default(#20228,#10000,1,1,1,0) +properties(#20227,#20224,2,0,"method(this: I);") +#20228=@"loc,{#10000},12,3,12,18" +locations_default(#20228,#10000,12,3,12,18) hasLocation(#20227,#20228) #20229=* -exit_cfg_node(#20229,#20001) -hasLocation(#20229,#20157) -successor(#20217,#20229) -successor(#20213,#20210) +exprs(#20229,0,#20227,0,"method") +hasLocation(#20229,#20142) +enclosing_stmt(#20229,#20224) +expr_containers(#20229,#20001) +literals("method","method",#20229) #20230=* -entry_cfg_node(#20230,#20213) -hasLocation(#20230,#20211) +exprs(#20230,9,#20227,1,"method(this: I);") +hasLocation(#20230,#20228) +enclosing_stmt(#20230,#20224) +expr_containers(#20230,#20001) #20231=* -exit_cfg_node(#20231,#20213) -hasLocation(#20231,#20211) -successor(#20216,#20231) -successor(#20230,#20216) -successor(#20212,#20213) -successor(#20210,#20197) -successor(#20204,#20201) -#20232=* -entry_cfg_node(#20232,#20204) -#20233=@"loc,{#10000},8,3,8,2" -locations_default(#20233,#10000,8,3,8,2) -hasLocation(#20232,#20233) +scopes(#20231,1) +scopenodes(#20230,#20231) +scopenesting(#20231,#20000) +#20232=@"var;{this};{#20231}" +variables(#20232,"this",#20231) +#20233=@"var;{arguments};{#20231}" +variables(#20233,"arguments",#20231) +is_arguments_object(#20233) #20234=* -exit_cfg_node(#20234,#20204) -#20235=@"loc,{#10000},8,21,8,20" -locations_default(#20235,#10000,8,21,8,20) -hasLocation(#20234,#20235) -successor(#20208,#20234) -successor(#20232,#20208) -successor(#20203,#20204) -successor(#20201,#20212) -successor(#20199,#20203) -successor(#20197,#20217) -successor(#20189,#20199) -successor(#20175,#20178) -successor(#20179,#20176) -#20236=* -entry_cfg_node(#20236,#20179) -#20237=@"loc,{#10000},3,9,3,8" -locations_default(#20237,#10000,3,9,3,8) -hasLocation(#20236,#20237) +typeexprs(#20234,0,#20230,-4,"I") +hasLocation(#20234,#20150) +expr_containers(#20234,#20230) +literals("I","I",#20234) +typebind(#20234,#20164) +is_method(#20227) +is_abstract_member(#20227) +#20235=* +entry_cfg_node(#20235,#20001) +#20236=@"loc,{#10000},1,1,1,0" +locations_default(#20236,#10000,1,1,1,0) +hasLocation(#20235,#20236) +#20237=* +exit_cfg_node(#20237,#20001) +hasLocation(#20237,#20157) +successor(#20224,#20237) +successor(#20219,#20216) #20238=* -exit_cfg_node(#20238,#20179) -#20239=@"loc,{#10000},3,45,3,44" -locations_default(#20239,#10000,3,45,3,44) -hasLocation(#20238,#20239) -successor(#20187,#20238) -successor(#20183,#20187) -successor(#20236,#20183) -successor(#20178,#20179) -successor(#20176,#20189) -successor(#20165,#20175) +entry_cfg_node(#20238,#20219) +hasLocation(#20238,#20217) +#20239=* +exit_cfg_node(#20239,#20219) +hasLocation(#20239,#20217) +successor(#20223,#20239) +successor(#20238,#20223) +successor(#20218,#20219) +successor(#20216,#20201) +successor(#20209,#20206) #20240=* -entry_cfg_node(#20240,#20165) -hasLocation(#20240,#20228) -#20241=* -exit_cfg_node(#20241,#20165) -#20242=@"loc,{#10000},1,47,1,46" -locations_default(#20242,#10000,1,47,1,46) -hasLocation(#20241,#20242) -successor(#20173,#20241) -successor(#20169,#20173) -successor(#20240,#20169) -successor(#20166,#20165) -successor(#20227,#20166) +entry_cfg_node(#20240,#20209) +#20241=@"loc,{#10000},8,3,8,2" +locations_default(#20241,#10000,8,3,8,2) +hasLocation(#20240,#20241) +#20242=* +exit_cfg_node(#20242,#20209) +#20243=@"loc,{#10000},8,21,8,20" +locations_default(#20243,#10000,8,21,8,20) +hasLocation(#20242,#20243) +successor(#20214,#20242) +successor(#20240,#20214) +successor(#20208,#20209) +successor(#20206,#20218) +successor(#20203,#20208) +successor(#20201,#20224) +successor(#20192,#20203) +successor(#20177,#20180) +successor(#20181,#20178) +#20244=* +entry_cfg_node(#20244,#20181) +#20245=@"loc,{#10000},3,9,3,8" +locations_default(#20245,#10000,3,9,3,8) +hasLocation(#20244,#20245) +#20246=* +exit_cfg_node(#20246,#20181) +#20247=@"loc,{#10000},3,45,3,44" +locations_default(#20247,#10000,3,45,3,44) +hasLocation(#20246,#20247) +successor(#20190,#20246) +successor(#20186,#20190) +successor(#20244,#20186) +successor(#20180,#20181) +successor(#20178,#20192) +successor(#20166,#20177) +#20248=* +entry_cfg_node(#20248,#20166) +hasLocation(#20248,#20236) +#20249=* +exit_cfg_node(#20249,#20166) +#20250=@"loc,{#10000},1,47,1,46" +locations_default(#20250,#10000,1,47,1,46) +hasLocation(#20249,#20250) +successor(#20175,#20249) +successor(#20171,#20175) +successor(#20248,#20171) +successor(#20167,#20166) +successor(#20235,#20167) numlines(#10000,14,9,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/tryfinally.ts.trap b/javascript/extractor/tests/ts/output/trap/tryfinally.ts.trap index de5d0a2d72c4..4271f5e9d9b4 100644 --- a/javascript/extractor/tests/ts/output/trap/tryfinally.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/tryfinally.ts.trap @@ -166,119 +166,123 @@ locations_default(#20057,#10000,1,1,8,0) hasLocation(#20001,#20057) #20058=@"var;{foo};{#20000}" variables(#20058,"foo",#20000) -#20059=* -stmts(#20059,17,#20001,0,"functio ... ;\n }\n}") -#20060=@"loc,{#10000},1,1,7,1" -locations_default(#20060,#10000,1,1,7,1) -hasLocation(#20059,#20060) -stmt_containers(#20059,#20001) -#20061=* -exprs(#20061,78,#20059,-1,"foo") -hasLocation(#20061,#20019) -expr_containers(#20061,#20059) -literals("foo","foo",#20061) -decl(#20061,#20058) +#20059=@"var;{this};{#20000}" +variables(#20059,"this",#20000) +#20060=* +stmts(#20060,17,#20001,0,"functio ... ;\n }\n}") +#20061=@"loc,{#10000},1,1,7,1" +locations_default(#20061,#10000,1,1,7,1) +hasLocation(#20060,#20061) +stmt_containers(#20060,#20001) #20062=* -scopes(#20062,1) -scopenodes(#20059,#20062) -scopenesting(#20062,#20000) -#20063=@"var;{x};{#20062}" -variables(#20063,"x",#20062) -#20064=@"var;{arguments};{#20062}" -variables(#20064,"arguments",#20062) -is_arguments_object(#20064) -#20065=* -stmts(#20065,1,#20059,-2,"{\n var ... ;\n }\n}") -#20066=@"loc,{#10000},1,16,7,1" -locations_default(#20066,#10000,1,16,7,1) -hasLocation(#20065,#20066) -stmt_containers(#20065,#20059) +exprs(#20062,78,#20060,-1,"foo") +hasLocation(#20062,#20019) +expr_containers(#20062,#20060) +literals("foo","foo",#20062) +decl(#20062,#20058) +#20063=* +scopes(#20063,1) +scopenodes(#20060,#20063) +scopenesting(#20063,#20000) +#20064=@"var;{x};{#20063}" +variables(#20064,"x",#20063) +#20065=@"var;{this};{#20063}" +variables(#20065,"this",#20063) +#20066=@"var;{arguments};{#20063}" +variables(#20066,"arguments",#20063) +is_arguments_object(#20066) #20067=* -stmts(#20067,18,#20065,0,"var x = 5;") -#20068=@"loc,{#10000},2,3,2,12" -locations_default(#20068,#10000,2,3,2,12) +stmts(#20067,1,#20060,-2,"{\n var ... ;\n }\n}") +#20068=@"loc,{#10000},1,16,7,1" +locations_default(#20068,#10000,1,16,7,1) hasLocation(#20067,#20068) -stmt_containers(#20067,#20059) +stmt_containers(#20067,#20060) #20069=* -exprs(#20069,64,#20067,0,"x = 5") -#20070=@"loc,{#10000},2,7,2,11" -locations_default(#20070,#10000,2,7,2,11) +stmts(#20069,18,#20067,0,"var x = 5;") +#20070=@"loc,{#10000},2,3,2,12" +locations_default(#20070,#10000,2,3,2,12) hasLocation(#20069,#20070) -enclosing_stmt(#20069,#20067) -expr_containers(#20069,#20059) +stmt_containers(#20069,#20060) #20071=* -exprs(#20071,78,#20069,0,"x") -hasLocation(#20071,#20029) -enclosing_stmt(#20071,#20067) -expr_containers(#20071,#20059) -literals("x","x",#20071) -decl(#20071,#20063) -#20072=* -exprs(#20072,3,#20069,1,"5") -hasLocation(#20072,#20033) -enclosing_stmt(#20072,#20067) -expr_containers(#20072,#20059) -literals("5","5",#20072) +exprs(#20071,64,#20069,0,"x = 5") +#20072=@"loc,{#10000},2,7,2,11" +locations_default(#20072,#10000,2,7,2,11) +hasLocation(#20071,#20072) +enclosing_stmt(#20071,#20069) +expr_containers(#20071,#20060) #20073=* -stmts(#20073,11,#20065,1,"try {\n ... x;\n }") -#20074=@"loc,{#10000},3,3,6,3" -locations_default(#20074,#10000,3,3,6,3) -hasLocation(#20073,#20074) -stmt_containers(#20073,#20059) +exprs(#20073,78,#20071,0,"x") +hasLocation(#20073,#20029) +enclosing_stmt(#20073,#20069) +expr_containers(#20073,#20060) +literals("x","x",#20073) +decl(#20073,#20064) +#20074=* +exprs(#20074,3,#20071,1,"5") +hasLocation(#20074,#20033) +enclosing_stmt(#20074,#20069) +expr_containers(#20074,#20060) +literals("5","5",#20074) #20075=* -stmts(#20075,1,#20073,0,"{\n }") -#20076=@"loc,{#10000},3,7,4,3" -locations_default(#20076,#10000,3,7,4,3) +stmts(#20075,11,#20067,1,"try {\n ... x;\n }") +#20076=@"loc,{#10000},3,3,6,3" +locations_default(#20076,#10000,3,3,6,3) hasLocation(#20075,#20076) -stmt_containers(#20075,#20059) +stmt_containers(#20075,#20060) #20077=* -stmts(#20077,1,#20073,-1,"{\n return x;\n }") -#20078=@"loc,{#10000},4,13,6,3" -locations_default(#20078,#10000,4,13,6,3) +stmts(#20077,1,#20075,0,"{\n }") +#20078=@"loc,{#10000},3,7,4,3" +locations_default(#20078,#10000,3,7,4,3) hasLocation(#20077,#20078) -stmt_containers(#20077,#20059) +stmt_containers(#20077,#20060) #20079=* -stmts(#20079,9,#20077,0,"return x;") -#20080=@"loc,{#10000},5,5,5,13" -locations_default(#20080,#10000,5,5,5,13) +stmts(#20079,1,#20075,-1,"{\n return x;\n }") +#20080=@"loc,{#10000},4,13,6,3" +locations_default(#20080,#10000,4,13,6,3) hasLocation(#20079,#20080) -stmt_containers(#20079,#20059) +stmt_containers(#20079,#20060) #20081=* -exprs(#20081,79,#20079,0,"x") -hasLocation(#20081,#20049) -enclosing_stmt(#20081,#20079) -expr_containers(#20081,#20059) -literals("x","x",#20081) -bind(#20081,#20063) -#20082=* -entry_cfg_node(#20082,#20001) -#20083=@"loc,{#10000},1,1,1,0" -locations_default(#20083,#10000,1,1,1,0) -hasLocation(#20082,#20083) +stmts(#20081,9,#20079,0,"return x;") +#20082=@"loc,{#10000},5,5,5,13" +locations_default(#20082,#10000,5,5,5,13) +hasLocation(#20081,#20082) +stmt_containers(#20081,#20060) +#20083=* +exprs(#20083,79,#20081,0,"x") +hasLocation(#20083,#20049) +enclosing_stmt(#20083,#20081) +expr_containers(#20083,#20060) +literals("x","x",#20083) +bind(#20083,#20064) #20084=* -exit_cfg_node(#20084,#20001) -hasLocation(#20084,#20056) -successor(#20059,#20084) -#20085=* -entry_cfg_node(#20085,#20059) -hasLocation(#20085,#20083) +entry_cfg_node(#20084,#20001) +#20085=@"loc,{#10000},1,1,1,0" +locations_default(#20085,#10000,1,1,1,0) +hasLocation(#20084,#20085) #20086=* -exit_cfg_node(#20086,#20059) -#20087=@"loc,{#10000},7,2,7,1" -locations_default(#20087,#10000,7,2,7,1) -hasLocation(#20086,#20087) -successor(#20073,#20075) +exit_cfg_node(#20086,#20001) +hasLocation(#20086,#20056) +successor(#20060,#20086) +#20087=* +entry_cfg_node(#20087,#20060) +hasLocation(#20087,#20085) +#20088=* +exit_cfg_node(#20088,#20060) +#20089=@"loc,{#10000},7,2,7,1" +locations_default(#20089,#10000,7,2,7,1) +hasLocation(#20088,#20089) successor(#20075,#20077) -successor(#20081,#20079) -successor(#20079,#20086) -successor(#20077,#20081) -successor(#20067,#20071) -successor(#20072,#20069) -successor(#20071,#20072) +successor(#20077,#20079) +successor(#20083,#20081) +successor(#20081,#20088) +successor(#20079,#20083) successor(#20069,#20073) -successor(#20065,#20067) -successor(#20085,#20065) -successor(#20061,#20059) -successor(#20082,#20061) +successor(#20074,#20071) +successor(#20073,#20074) +successor(#20071,#20075) +successor(#20067,#20069) +successor(#20087,#20067) +successor(#20062,#20060) +successor(#20084,#20062) numlines(#10000,7,7,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/typeannotations.ts.trap b/javascript/extractor/tests/ts/output/trap/typeannotations.ts.trap index 694684672797..db0dcaa9c31b 100644 --- a/javascript/extractor/tests/ts/output/trap/typeannotations.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/typeannotations.ts.trap @@ -2507,2204 +2507,2246 @@ local_type_names(#20978,"Fish",#20000) local_type_names(#20979,"Bird",#20000) #20980=@"local_type_name;{ThisTypes};{#20000}" local_type_names(#20980,"ThisTypes",#20000) -#20981=* -stmts(#20981,34,#20001,0,"interfa ... umber }") -hasLocation(#20981,#20003) -stmt_containers(#20981,#20001) +#20981=@"var;{this};{#20000}" +variables(#20981,"this",#20000) #20982=* -typeexprs(#20982,1,#20981,0,"Point") -hasLocation(#20982,#20135) -enclosing_stmt(#20982,#20981) -expr_containers(#20982,#20001) -literals("Point","Point",#20982) -typedecl(#20982,#20975) +stmts(#20982,34,#20001,0,"interfa ... umber }") +hasLocation(#20982,#20003) +stmt_containers(#20982,#20001) #20983=* -properties(#20983,#20981,2,8,"x: number;") -#20984=@"loc,{#10000},1,19,1,28" -locations_default(#20984,#10000,1,19,1,28) -hasLocation(#20983,#20984) -#20985=* -exprs(#20985,0,#20983,0,"x") -hasLocation(#20985,#20139) -enclosing_stmt(#20985,#20981) -expr_containers(#20985,#20001) -literals("x","x",#20985) -is_abstract_member(#20983) +typeexprs(#20983,1,#20982,0,"Point") +hasLocation(#20983,#20135) +enclosing_stmt(#20983,#20982) +expr_containers(#20983,#20001) +literals("Point","Point",#20983) +typedecl(#20983,#20975) +#20984=* +properties(#20984,#20982,2,8,"x: number;") +#20985=@"loc,{#10000},1,19,1,28" +locations_default(#20985,#10000,1,19,1,28) +hasLocation(#20984,#20985) #20986=* -typeexprs(#20986,2,#20983,2,"number") -hasLocation(#20986,#20143) -enclosing_stmt(#20986,#20981) +exprs(#20986,0,#20984,0,"x") +hasLocation(#20986,#20139) +enclosing_stmt(#20986,#20982) expr_containers(#20986,#20001) -literals("number","number",#20986) +literals("x","x",#20986) +is_abstract_member(#20984) #20987=* -properties(#20987,#20981,3,8,"y: number") -#20988=@"loc,{#10000},1,30,1,38" -locations_default(#20988,#10000,1,30,1,38) -hasLocation(#20987,#20988) -#20989=* -exprs(#20989,0,#20987,0,"y") -hasLocation(#20989,#20147) -enclosing_stmt(#20989,#20981) -expr_containers(#20989,#20001) -literals("y","y",#20989) -is_abstract_member(#20987) +typeexprs(#20987,2,#20984,2,"number") +hasLocation(#20987,#20143) +enclosing_stmt(#20987,#20982) +expr_containers(#20987,#20001) +literals("number","number",#20987) +#20988=* +properties(#20988,#20982,3,8,"y: number") +#20989=@"loc,{#10000},1,30,1,38" +locations_default(#20989,#10000,1,30,1,38) +hasLocation(#20988,#20989) #20990=* -typeexprs(#20990,2,#20987,2,"number") -hasLocation(#20990,#20151) -enclosing_stmt(#20990,#20981) +exprs(#20990,0,#20988,0,"y") +hasLocation(#20990,#20147) +enclosing_stmt(#20990,#20982) expr_containers(#20990,#20001) -literals("number","number",#20990) +literals("y","y",#20990) +is_abstract_member(#20988) #20991=* -stmts(#20991,31,#20001,1,"namespa ... T> {}\n}") -#20992=@"loc,{#10000},3,1,6,1" -locations_default(#20992,#10000,3,1,6,1) -hasLocation(#20991,#20992) -stmt_containers(#20991,#20001) -#20993=* -exprs(#20993,78,#20991,-1,"N") -hasLocation(#20993,#20157) -enclosing_stmt(#20993,#20991) -expr_containers(#20993,#20001) -literals("N","N",#20993) -namespacedecl(#20993,#20970) +typeexprs(#20991,2,#20988,2,"number") +hasLocation(#20991,#20151) +enclosing_stmt(#20991,#20982) +expr_containers(#20991,#20001) +literals("number","number",#20991) +#20992=* +stmts(#20992,31,#20001,1,"namespa ... T> {}\n}") +#20993=@"loc,{#10000},3,1,6,1" +locations_default(#20993,#10000,3,1,6,1) +hasLocation(#20992,#20993) +stmt_containers(#20992,#20001) #20994=* -scopes(#20994,9) -scopenodes(#20991,#20994) -scopenesting(#20994,#20000) -#20995=@"local_type_name;{I};{#20994}" -local_type_names(#20995,"I",#20994) -#20996=@"local_type_name;{J};{#20994}" -local_type_names(#20996,"J",#20994) -#20997=* -stmts(#20997,30,#20991,0,"export ... ce I {}") -#20998=@"loc,{#10000},4,3,4,23" -locations_default(#20998,#10000,4,3,4,23) -hasLocation(#20997,#20998) -stmt_containers(#20997,#20991) -#20999=* -stmts(#20999,34,#20997,-1,"interface I {}") -#21000=@"loc,{#10000},4,10,4,23" -locations_default(#21000,#10000,4,10,4,23) -hasLocation(#20999,#21000) -stmt_containers(#20999,#20991) -#21001=* -typeexprs(#21001,1,#20999,0,"I") -hasLocation(#21001,#20165) -enclosing_stmt(#21001,#20999) -expr_containers(#21001,#20991) -literals("I","I",#21001) -typedecl(#21001,#20995) +exprs(#20994,78,#20992,-1,"N") +hasLocation(#20994,#20157) +enclosing_stmt(#20994,#20992) +expr_containers(#20994,#20001) +literals("N","N",#20994) +namespacedecl(#20994,#20970) +#20995=* +scopes(#20995,9) +scopenodes(#20992,#20995) +scopenesting(#20995,#20000) +#20996=@"local_type_name;{I};{#20995}" +local_type_names(#20996,"I",#20995) +#20997=@"local_type_name;{J};{#20995}" +local_type_names(#20997,"J",#20995) +#20998=* +stmts(#20998,30,#20992,0,"export ... ce I {}") +#20999=@"loc,{#10000},4,3,4,23" +locations_default(#20999,#10000,4,3,4,23) +hasLocation(#20998,#20999) +stmt_containers(#20998,#20992) +#21000=* +stmts(#21000,34,#20998,-1,"interface I {}") +#21001=@"loc,{#10000},4,10,4,23" +locations_default(#21001,#10000,4,10,4,23) +hasLocation(#21000,#21001) +stmt_containers(#21000,#20992) #21002=* -stmts(#21002,30,#20991,1,"export ... J {}") -#21003=@"loc,{#10000},5,3,5,26" -locations_default(#21003,#10000,5,3,5,26) -hasLocation(#21002,#21003) -stmt_containers(#21002,#20991) -#21004=* -stmts(#21004,34,#21002,-1,"interface J {}") -#21005=@"loc,{#10000},5,10,5,26" -locations_default(#21005,#10000,5,10,5,26) -hasLocation(#21004,#21005) -stmt_containers(#21004,#20991) -#21006=* -scopes(#21006,11) -scopenodes(#21004,#21006) -scopenesting(#21006,#20994) -#21007=@"local_type_name;{T};{#21006}" -local_type_names(#21007,"T",#21006) -#21008=* -typeexprs(#21008,22,#21004,-2,"T") -hasLocation(#21008,#20179) -enclosing_stmt(#21008,#21004) -expr_containers(#21008,#20991) +typeexprs(#21002,1,#21000,0,"I") +hasLocation(#21002,#20165) +enclosing_stmt(#21002,#21000) +expr_containers(#21002,#20992) +literals("I","I",#21002) +typedecl(#21002,#20996) +#21003=* +stmts(#21003,30,#20992,1,"export ... J {}") +#21004=@"loc,{#10000},5,3,5,26" +locations_default(#21004,#10000,5,3,5,26) +hasLocation(#21003,#21004) +stmt_containers(#21003,#20992) +#21005=* +stmts(#21005,34,#21003,-1,"interface J {}") +#21006=@"loc,{#10000},5,10,5,26" +locations_default(#21006,#10000,5,10,5,26) +hasLocation(#21005,#21006) +stmt_containers(#21005,#20992) +#21007=* +scopes(#21007,11) +scopenodes(#21005,#21007) +scopenesting(#21007,#20995) +#21008=@"local_type_name;{T};{#21007}" +local_type_names(#21008,"T",#21007) #21009=* -typeexprs(#21009,1,#21008,0,"T") +typeexprs(#21009,22,#21005,-2,"T") hasLocation(#21009,#20179) -enclosing_stmt(#21009,#21004) -expr_containers(#21009,#20991) -literals("T","T",#21009) -typedecl(#21009,#21007) +enclosing_stmt(#21009,#21005) +expr_containers(#21009,#20992) #21010=* -typeexprs(#21010,1,#21004,0,"J") -hasLocation(#21010,#20175) -enclosing_stmt(#21010,#21004) -expr_containers(#21010,#20991) -literals("J","J",#21010) -typedecl(#21010,#20996) +typeexprs(#21010,1,#21009,0,"T") +hasLocation(#21010,#20179) +enclosing_stmt(#21010,#21005) +expr_containers(#21010,#20992) +literals("T","T",#21010) +typedecl(#21010,#21008) #21011=* -stmts(#21011,18,#20001,2,"var any ... any;") -hasLocation(#21011,#20017) -stmt_containers(#21011,#20001) +typeexprs(#21011,1,#21005,0,"J") +hasLocation(#21011,#20175) +enclosing_stmt(#21011,#21005) +expr_containers(#21011,#20992) +literals("J","J",#21011) +typedecl(#21011,#20997) #21012=* -exprs(#21012,64,#21011,0,"anyVar: ... any") -#21013=@"loc,{#10000},8,5,8,27" -locations_default(#21013,#10000,8,5,8,27) -hasLocation(#21012,#21013) -enclosing_stmt(#21012,#21011) -expr_containers(#21012,#20001) -#21014=* -exprs(#21014,78,#21012,0,"anyVar") -hasLocation(#21014,#20190) -enclosing_stmt(#21014,#21011) -expr_containers(#21014,#20001) -literals("anyVar","anyVar",#21014) -decl(#21014,#20929) +stmts(#21012,18,#20001,2,"var any ... any;") +hasLocation(#21012,#20017) +stmt_containers(#21012,#20001) +#21013=* +exprs(#21013,64,#21012,0,"anyVar: ... any") +#21014=@"loc,{#10000},8,5,8,27" +locations_default(#21014,#10000,8,5,8,27) +hasLocation(#21013,#21014) +enclosing_stmt(#21013,#21012) +expr_containers(#21013,#20001) #21015=* -typeexprs(#21015,2,#21012,2,"any") -hasLocation(#21015,#20194) -enclosing_stmt(#21015,#21011) +exprs(#21015,78,#21013,0,"anyVar") +hasLocation(#21015,#20190) +enclosing_stmt(#21015,#21012) expr_containers(#21015,#20001) -literals("any","any",#21015) +literals("anyVar","anyVar",#21015) +decl(#21015,#20929) #21016=* -stmts(#21016,18,#20001,3,"var obj ... object;") -hasLocation(#21016,#20019) -stmt_containers(#21016,#20001) +typeexprs(#21016,2,#21013,2,"any") +hasLocation(#21016,#20194) +enclosing_stmt(#21016,#21012) +expr_containers(#21016,#20001) +literals("any","any",#21016) #21017=* -exprs(#21017,64,#21016,0,"objectV ... object") -#21018=@"loc,{#10000},9,5,9,30" -locations_default(#21018,#10000,9,5,9,30) -hasLocation(#21017,#21018) -enclosing_stmt(#21017,#21016) -expr_containers(#21017,#20001) -#21019=* -exprs(#21019,78,#21017,0,"objectVar") -hasLocation(#21019,#20200) -enclosing_stmt(#21019,#21016) -expr_containers(#21019,#20001) -literals("objectVar","objectVar",#21019) -decl(#21019,#20930) +stmts(#21017,18,#20001,3,"var obj ... object;") +hasLocation(#21017,#20019) +stmt_containers(#21017,#20001) +#21018=* +exprs(#21018,64,#21017,0,"objectV ... object") +#21019=@"loc,{#10000},9,5,9,30" +locations_default(#21019,#10000,9,5,9,30) +hasLocation(#21018,#21019) +enclosing_stmt(#21018,#21017) +expr_containers(#21018,#20001) #21020=* -typeexprs(#21020,2,#21017,2,"object") -hasLocation(#21020,#20204) -enclosing_stmt(#21020,#21016) +exprs(#21020,78,#21018,0,"objectVar") +hasLocation(#21020,#20200) +enclosing_stmt(#21020,#21017) expr_containers(#21020,#20001) -literals("object","object",#21020) +literals("objectVar","objectVar",#21020) +decl(#21020,#20930) #21021=* -stmts(#21021,18,#20001,4,"var num ... number;") -hasLocation(#21021,#20021) -stmt_containers(#21021,#20001) +typeexprs(#21021,2,#21018,2,"object") +hasLocation(#21021,#20204) +enclosing_stmt(#21021,#21017) +expr_containers(#21021,#20001) +literals("object","object",#21021) #21022=* -exprs(#21022,64,#21021,0,"numberV ... number") -#21023=@"loc,{#10000},10,5,10,30" -locations_default(#21023,#10000,10,5,10,30) -hasLocation(#21022,#21023) -enclosing_stmt(#21022,#21021) -expr_containers(#21022,#20001) -#21024=* -exprs(#21024,78,#21022,0,"numberVar") -hasLocation(#21024,#20210) -enclosing_stmt(#21024,#21021) -expr_containers(#21024,#20001) -literals("numberVar","numberVar",#21024) -decl(#21024,#20931) +stmts(#21022,18,#20001,4,"var num ... number;") +hasLocation(#21022,#20021) +stmt_containers(#21022,#20001) +#21023=* +exprs(#21023,64,#21022,0,"numberV ... number") +#21024=@"loc,{#10000},10,5,10,30" +locations_default(#21024,#10000,10,5,10,30) +hasLocation(#21023,#21024) +enclosing_stmt(#21023,#21022) +expr_containers(#21023,#20001) #21025=* -typeexprs(#21025,2,#21022,2,"number") -hasLocation(#21025,#20214) -enclosing_stmt(#21025,#21021) +exprs(#21025,78,#21023,0,"numberVar") +hasLocation(#21025,#20210) +enclosing_stmt(#21025,#21022) expr_containers(#21025,#20001) -literals("number","number",#21025) +literals("numberVar","numberVar",#21025) +decl(#21025,#20931) #21026=* -stmts(#21026,18,#20001,5,"var str ... string;") -hasLocation(#21026,#20023) -stmt_containers(#21026,#20001) +typeexprs(#21026,2,#21023,2,"number") +hasLocation(#21026,#20214) +enclosing_stmt(#21026,#21022) +expr_containers(#21026,#20001) +literals("number","number",#21026) #21027=* -exprs(#21027,64,#21026,0,"stringV ... string") -#21028=@"loc,{#10000},11,5,11,30" -locations_default(#21028,#10000,11,5,11,30) -hasLocation(#21027,#21028) -enclosing_stmt(#21027,#21026) -expr_containers(#21027,#20001) -#21029=* -exprs(#21029,78,#21027,0,"stringVar") -hasLocation(#21029,#20220) -enclosing_stmt(#21029,#21026) -expr_containers(#21029,#20001) -literals("stringVar","stringVar",#21029) -decl(#21029,#20932) +stmts(#21027,18,#20001,5,"var str ... string;") +hasLocation(#21027,#20023) +stmt_containers(#21027,#20001) +#21028=* +exprs(#21028,64,#21027,0,"stringV ... string") +#21029=@"loc,{#10000},11,5,11,30" +locations_default(#21029,#10000,11,5,11,30) +hasLocation(#21028,#21029) +enclosing_stmt(#21028,#21027) +expr_containers(#21028,#20001) #21030=* -typeexprs(#21030,2,#21027,2,"string") -hasLocation(#21030,#20224) -enclosing_stmt(#21030,#21026) +exprs(#21030,78,#21028,0,"stringVar") +hasLocation(#21030,#20220) +enclosing_stmt(#21030,#21027) expr_containers(#21030,#20001) -literals("string","string",#21030) +literals("stringVar","stringVar",#21030) +decl(#21030,#20932) #21031=* -stmts(#21031,18,#20001,6,"var boo ... oolean;") -hasLocation(#21031,#20025) -stmt_containers(#21031,#20001) +typeexprs(#21031,2,#21028,2,"string") +hasLocation(#21031,#20224) +enclosing_stmt(#21031,#21027) +expr_containers(#21031,#20001) +literals("string","string",#21031) #21032=* -exprs(#21032,64,#21031,0,"boolean ... boolean") -#21033=@"loc,{#10000},12,5,12,31" -locations_default(#21033,#10000,12,5,12,31) -hasLocation(#21032,#21033) -enclosing_stmt(#21032,#21031) -expr_containers(#21032,#20001) -#21034=* -exprs(#21034,78,#21032,0,"booleanVar") -hasLocation(#21034,#20230) -enclosing_stmt(#21034,#21031) -expr_containers(#21034,#20001) -literals("booleanVar","booleanVar",#21034) -decl(#21034,#20933) +stmts(#21032,18,#20001,6,"var boo ... oolean;") +hasLocation(#21032,#20025) +stmt_containers(#21032,#20001) +#21033=* +exprs(#21033,64,#21032,0,"boolean ... boolean") +#21034=@"loc,{#10000},12,5,12,31" +locations_default(#21034,#10000,12,5,12,31) +hasLocation(#21033,#21034) +enclosing_stmt(#21033,#21032) +expr_containers(#21033,#20001) #21035=* -typeexprs(#21035,2,#21032,2,"boolean") -hasLocation(#21035,#20234) -enclosing_stmt(#21035,#21031) +exprs(#21035,78,#21033,0,"booleanVar") +hasLocation(#21035,#20230) +enclosing_stmt(#21035,#21032) expr_containers(#21035,#20001) -literals("boolean","boolean",#21035) +literals("booleanVar","booleanVar",#21035) +decl(#21035,#20933) #21036=* -stmts(#21036,18,#20001,7,"var nul ... null;") -hasLocation(#21036,#20027) -stmt_containers(#21036,#20001) +typeexprs(#21036,2,#21033,2,"boolean") +hasLocation(#21036,#20234) +enclosing_stmt(#21036,#21032) +expr_containers(#21036,#20001) +literals("boolean","boolean",#21036) #21037=* -exprs(#21037,64,#21036,0,"nullVar ... null") -#21038=@"loc,{#10000},13,5,13,28" -locations_default(#21038,#10000,13,5,13,28) -hasLocation(#21037,#21038) -enclosing_stmt(#21037,#21036) -expr_containers(#21037,#20001) -#21039=* -exprs(#21039,78,#21037,0,"nullVar") -hasLocation(#21039,#20240) -enclosing_stmt(#21039,#21036) -expr_containers(#21039,#20001) -literals("nullVar","nullVar",#21039) -decl(#21039,#20934) +stmts(#21037,18,#20001,7,"var nul ... null;") +hasLocation(#21037,#20027) +stmt_containers(#21037,#20001) +#21038=* +exprs(#21038,64,#21037,0,"nullVar ... null") +#21039=@"loc,{#10000},13,5,13,28" +locations_default(#21039,#10000,13,5,13,28) +hasLocation(#21038,#21039) +enclosing_stmt(#21038,#21037) +expr_containers(#21038,#20001) #21040=* -typeexprs(#21040,2,#21037,2,"null") -hasLocation(#21040,#20244) -enclosing_stmt(#21040,#21036) +exprs(#21040,78,#21038,0,"nullVar") +hasLocation(#21040,#20240) +enclosing_stmt(#21040,#21037) expr_containers(#21040,#20001) -literals("null","null",#21040) +literals("nullVar","nullVar",#21040) +decl(#21040,#20934) #21041=* -stmts(#21041,18,#20001,8,"var und ... efined;") -hasLocation(#21041,#20029) -stmt_containers(#21041,#20001) +typeexprs(#21041,2,#21038,2,"null") +hasLocation(#21041,#20244) +enclosing_stmt(#21041,#21037) +expr_containers(#21041,#20001) +literals("null","null",#21041) #21042=* -exprs(#21042,64,#21041,0,"undefin ... defined") -#21043=@"loc,{#10000},14,5,14,33" -locations_default(#21043,#10000,14,5,14,33) -hasLocation(#21042,#21043) -enclosing_stmt(#21042,#21041) -expr_containers(#21042,#20001) -#21044=* -exprs(#21044,78,#21042,0,"undefinedVar") -hasLocation(#21044,#20250) -enclosing_stmt(#21044,#21041) -expr_containers(#21044,#20001) -literals("undefinedVar","undefinedVar",#21044) -decl(#21044,#20935) +stmts(#21042,18,#20001,8,"var und ... efined;") +hasLocation(#21042,#20029) +stmt_containers(#21042,#20001) +#21043=* +exprs(#21043,64,#21042,0,"undefin ... defined") +#21044=@"loc,{#10000},14,5,14,33" +locations_default(#21044,#10000,14,5,14,33) +hasLocation(#21043,#21044) +enclosing_stmt(#21043,#21042) +expr_containers(#21043,#20001) #21045=* -typeexprs(#21045,2,#21042,2,"undefined") -hasLocation(#21045,#20254) -enclosing_stmt(#21045,#21041) +exprs(#21045,78,#21043,0,"undefinedVar") +hasLocation(#21045,#20250) +enclosing_stmt(#21045,#21042) expr_containers(#21045,#20001) -literals("undefined","undefined",#21045) +literals("undefinedVar","undefinedVar",#21045) +decl(#21045,#20935) #21046=* -stmts(#21046,18,#20001,9,"var voi ... void;") -hasLocation(#21046,#20031) -stmt_containers(#21046,#20001) +typeexprs(#21046,2,#21043,2,"undefined") +hasLocation(#21046,#20254) +enclosing_stmt(#21046,#21042) +expr_containers(#21046,#20001) +literals("undefined","undefined",#21046) #21047=* -exprs(#21047,64,#21046,0,"voidVar ... void") -#21048=@"loc,{#10000},15,5,15,28" -locations_default(#21048,#10000,15,5,15,28) -hasLocation(#21047,#21048) -enclosing_stmt(#21047,#21046) -expr_containers(#21047,#20001) -#21049=* -exprs(#21049,78,#21047,0,"voidVar") -hasLocation(#21049,#20260) -enclosing_stmt(#21049,#21046) -expr_containers(#21049,#20001) -literals("voidVar","voidVar",#21049) -decl(#21049,#20936) +stmts(#21047,18,#20001,9,"var voi ... void;") +hasLocation(#21047,#20031) +stmt_containers(#21047,#20001) +#21048=* +exprs(#21048,64,#21047,0,"voidVar ... void") +#21049=@"loc,{#10000},15,5,15,28" +locations_default(#21049,#10000,15,5,15,28) +hasLocation(#21048,#21049) +enclosing_stmt(#21048,#21047) +expr_containers(#21048,#20001) #21050=* -typeexprs(#21050,2,#21047,2,"void") -hasLocation(#21050,#20264) -enclosing_stmt(#21050,#21046) +exprs(#21050,78,#21048,0,"voidVar") +hasLocation(#21050,#20260) +enclosing_stmt(#21050,#21047) expr_containers(#21050,#20001) -literals("void","void",#21050) +literals("voidVar","voidVar",#21050) +decl(#21050,#20936) #21051=* -stmts(#21051,18,#20001,10,"var nev ... never;") -hasLocation(#21051,#20033) -stmt_containers(#21051,#20001) +typeexprs(#21051,2,#21048,2,"void") +hasLocation(#21051,#20264) +enclosing_stmt(#21051,#21047) +expr_containers(#21051,#20001) +literals("void","void",#21051) #21052=* -exprs(#21052,64,#21051,0,"neverVa ... never") -#21053=@"loc,{#10000},16,5,16,29" -locations_default(#21053,#10000,16,5,16,29) -hasLocation(#21052,#21053) -enclosing_stmt(#21052,#21051) -expr_containers(#21052,#20001) -#21054=* -exprs(#21054,78,#21052,0,"neverVar") -hasLocation(#21054,#20270) -enclosing_stmt(#21054,#21051) -expr_containers(#21054,#20001) -literals("neverVar","neverVar",#21054) -decl(#21054,#20937) +stmts(#21052,18,#20001,10,"var nev ... never;") +hasLocation(#21052,#20033) +stmt_containers(#21052,#20001) +#21053=* +exprs(#21053,64,#21052,0,"neverVa ... never") +#21054=@"loc,{#10000},16,5,16,29" +locations_default(#21054,#10000,16,5,16,29) +hasLocation(#21053,#21054) +enclosing_stmt(#21053,#21052) +expr_containers(#21053,#20001) #21055=* -typeexprs(#21055,2,#21052,2,"never") -hasLocation(#21055,#20274) -enclosing_stmt(#21055,#21051) +exprs(#21055,78,#21053,0,"neverVar") +hasLocation(#21055,#20270) +enclosing_stmt(#21055,#21052) expr_containers(#21055,#20001) -literals("never","never",#21055) +literals("neverVar","neverVar",#21055) +decl(#21055,#20937) #21056=* -stmts(#21056,18,#20001,11,"var sym ... symbol;") -hasLocation(#21056,#20035) -stmt_containers(#21056,#20001) +typeexprs(#21056,2,#21053,2,"never") +hasLocation(#21056,#20274) +enclosing_stmt(#21056,#21052) +expr_containers(#21056,#20001) +literals("never","never",#21056) #21057=* -exprs(#21057,64,#21056,0,"symbolV ... symbol") -#21058=@"loc,{#10000},17,5,17,30" -locations_default(#21058,#10000,17,5,17,30) -hasLocation(#21057,#21058) -enclosing_stmt(#21057,#21056) -expr_containers(#21057,#20001) -#21059=* -exprs(#21059,78,#21057,0,"symbolVar") -hasLocation(#21059,#20280) -enclosing_stmt(#21059,#21056) -expr_containers(#21059,#20001) -literals("symbolVar","symbolVar",#21059) -decl(#21059,#20938) +stmts(#21057,18,#20001,11,"var sym ... symbol;") +hasLocation(#21057,#20035) +stmt_containers(#21057,#20001) +#21058=* +exprs(#21058,64,#21057,0,"symbolV ... symbol") +#21059=@"loc,{#10000},17,5,17,30" +locations_default(#21059,#10000,17,5,17,30) +hasLocation(#21058,#21059) +enclosing_stmt(#21058,#21057) +expr_containers(#21058,#20001) #21060=* -typeexprs(#21060,2,#21057,2,"symbol") -hasLocation(#21060,#20284) -enclosing_stmt(#21060,#21056) +exprs(#21060,78,#21058,0,"symbolVar") +hasLocation(#21060,#20280) +enclosing_stmt(#21060,#21057) expr_containers(#21060,#20001) -literals("symbol","symbol",#21060) +literals("symbolVar","symbolVar",#21060) +decl(#21060,#20938) #21061=* -stmts(#21061,18,#20001,12,"var obj ... mber; }") -hasLocation(#21061,#20037) -stmt_containers(#21061,#20001) +typeexprs(#21061,2,#21058,2,"symbol") +hasLocation(#21061,#20284) +enclosing_stmt(#21061,#21057) +expr_containers(#21061,#20001) +literals("symbol","symbol",#21061) #21062=* -exprs(#21062,64,#21061,0,"objectV ... mber; }") -#21063=@"loc,{#10000},18,5,18,38" -locations_default(#21063,#10000,18,5,18,38) -hasLocation(#21062,#21063) -enclosing_stmt(#21062,#21061) -expr_containers(#21062,#20001) -#21064=* -exprs(#21064,78,#21062,0,"objectVar") -hasLocation(#21064,#20290) -enclosing_stmt(#21064,#21061) -expr_containers(#21064,#20001) -literals("objectVar","objectVar",#21064) -decl(#21064,#20930) +stmts(#21062,18,#20001,12,"var obj ... mber; }") +hasLocation(#21062,#20037) +stmt_containers(#21062,#20001) +#21063=* +exprs(#21063,64,#21062,0,"objectV ... mber; }") +#21064=@"loc,{#10000},18,5,18,38" +locations_default(#21064,#10000,18,5,18,38) +hasLocation(#21063,#21064) +enclosing_stmt(#21063,#21062) +expr_containers(#21063,#20001) #21065=* -typeexprs(#21065,21,#21062,2,"{ x: number; }") -#21066=@"loc,{#10000},18,25,18,38" -locations_default(#21066,#10000,18,25,18,38) -hasLocation(#21065,#21066) -enclosing_stmt(#21065,#21061) +exprs(#21065,78,#21063,0,"objectVar") +hasLocation(#21065,#20290) +enclosing_stmt(#21065,#21062) expr_containers(#21065,#20001) -#21067=* -properties(#21067,#21065,0,8,"x: number;") -#21068=@"loc,{#10000},18,27,18,36" -locations_default(#21068,#10000,18,27,18,36) -hasLocation(#21067,#21068) -#21069=* -exprs(#21069,0,#21067,0,"x") -hasLocation(#21069,#20296) -enclosing_stmt(#21069,#21061) -expr_containers(#21069,#20001) -literals("x","x",#21069) -is_abstract_member(#21067) +literals("objectVar","objectVar",#21065) +decl(#21065,#20930) +#21066=* +typeexprs(#21066,21,#21063,2,"{ x: number; }") +#21067=@"loc,{#10000},18,25,18,38" +locations_default(#21067,#10000,18,25,18,38) +hasLocation(#21066,#21067) +enclosing_stmt(#21066,#21062) +expr_containers(#21066,#20001) +#21068=* +properties(#21068,#21066,0,8,"x: number;") +#21069=@"loc,{#10000},18,27,18,36" +locations_default(#21069,#10000,18,27,18,36) +hasLocation(#21068,#21069) #21070=* -typeexprs(#21070,2,#21067,2,"number") -hasLocation(#21070,#20300) -enclosing_stmt(#21070,#21061) +exprs(#21070,0,#21068,0,"x") +hasLocation(#21070,#20296) +enclosing_stmt(#21070,#21062) expr_containers(#21070,#20001) -literals("number","number",#21070) +literals("x","x",#21070) +is_abstract_member(#21068) #21071=* -stmts(#21071,18,#20001,13,"var nes ... ber } }") -hasLocation(#21071,#20039) -stmt_containers(#21071,#20001) +typeexprs(#21071,2,#21068,2,"number") +hasLocation(#21071,#20300) +enclosing_stmt(#21071,#21062) +expr_containers(#21071,#20001) +literals("number","number",#21071) #21072=* -exprs(#21072,64,#21071,0,"nestedO ... ber } }") -#21073=@"loc,{#10000},19,5,19,44" -locations_default(#21073,#10000,19,5,19,44) -hasLocation(#21072,#21073) -enclosing_stmt(#21072,#21071) -expr_containers(#21072,#20001) -#21074=* -exprs(#21074,78,#21072,0,"nestedObjectVar") -hasLocation(#21074,#20308) -enclosing_stmt(#21074,#21071) -expr_containers(#21074,#20001) -literals("nestedObjectVar","nestedObjectVar",#21074) -decl(#21074,#20939) +stmts(#21072,18,#20001,13,"var nes ... ber } }") +hasLocation(#21072,#20039) +stmt_containers(#21072,#20001) +#21073=* +exprs(#21073,64,#21072,0,"nestedO ... ber } }") +#21074=@"loc,{#10000},19,5,19,44" +locations_default(#21074,#10000,19,5,19,44) +hasLocation(#21073,#21074) +enclosing_stmt(#21073,#21072) +expr_containers(#21073,#20001) #21075=* -typeexprs(#21075,21,#21072,2,"{ x: { y: number } }") -#21076=@"loc,{#10000},19,25,19,44" -locations_default(#21076,#10000,19,25,19,44) -hasLocation(#21075,#21076) -enclosing_stmt(#21075,#21071) +exprs(#21075,78,#21073,0,"nestedObjectVar") +hasLocation(#21075,#20308) +enclosing_stmt(#21075,#21072) expr_containers(#21075,#20001) -#21077=* -properties(#21077,#21075,0,8,"x: { y: number }") -#21078=@"loc,{#10000},19,27,19,42" -locations_default(#21078,#10000,19,27,19,42) -hasLocation(#21077,#21078) -#21079=* -exprs(#21079,0,#21077,0,"x") -hasLocation(#21079,#20314) -enclosing_stmt(#21079,#21071) -expr_containers(#21079,#20001) -literals("x","x",#21079) -is_abstract_member(#21077) +literals("nestedObjectVar","nestedObjectVar",#21075) +decl(#21075,#20939) +#21076=* +typeexprs(#21076,21,#21073,2,"{ x: { y: number } }") +#21077=@"loc,{#10000},19,25,19,44" +locations_default(#21077,#10000,19,25,19,44) +hasLocation(#21076,#21077) +enclosing_stmt(#21076,#21072) +expr_containers(#21076,#20001) +#21078=* +properties(#21078,#21076,0,8,"x: { y: number }") +#21079=@"loc,{#10000},19,27,19,42" +locations_default(#21079,#10000,19,27,19,42) +hasLocation(#21078,#21079) #21080=* -typeexprs(#21080,21,#21077,2,"{ y: number }") -#21081=@"loc,{#10000},19,30,19,42" -locations_default(#21081,#10000,19,30,19,42) -hasLocation(#21080,#21081) -enclosing_stmt(#21080,#21071) +exprs(#21080,0,#21078,0,"x") +hasLocation(#21080,#20314) +enclosing_stmt(#21080,#21072) expr_containers(#21080,#20001) -#21082=* -properties(#21082,#21080,0,8,"y: number") -#21083=@"loc,{#10000},19,32,19,40" -locations_default(#21083,#10000,19,32,19,40) -hasLocation(#21082,#21083) -#21084=* -exprs(#21084,0,#21082,0,"y") -hasLocation(#21084,#20320) -enclosing_stmt(#21084,#21071) -expr_containers(#21084,#20001) -literals("y","y",#21084) -is_abstract_member(#21082) +literals("x","x",#21080) +is_abstract_member(#21078) +#21081=* +typeexprs(#21081,21,#21078,2,"{ y: number }") +#21082=@"loc,{#10000},19,30,19,42" +locations_default(#21082,#10000,19,30,19,42) +hasLocation(#21081,#21082) +enclosing_stmt(#21081,#21072) +expr_containers(#21081,#20001) +#21083=* +properties(#21083,#21081,0,8,"y: number") +#21084=@"loc,{#10000},19,32,19,40" +locations_default(#21084,#10000,19,32,19,40) +hasLocation(#21083,#21084) #21085=* -typeexprs(#21085,2,#21082,2,"number") -hasLocation(#21085,#20324) -enclosing_stmt(#21085,#21071) +exprs(#21085,0,#21083,0,"y") +hasLocation(#21085,#20320) +enclosing_stmt(#21085,#21072) expr_containers(#21085,#20001) -literals("number","number",#21085) +literals("y","y",#21085) +is_abstract_member(#21083) #21086=* -stmts(#21086,18,#20001,14,"var arr ... umber[]") -hasLocation(#21086,#20041) -stmt_containers(#21086,#20001) +typeexprs(#21086,2,#21083,2,"number") +hasLocation(#21086,#20324) +enclosing_stmt(#21086,#21072) +expr_containers(#21086,#20001) +literals("number","number",#21086) #21087=* -exprs(#21087,64,#21086,0,"arrayVa ... umber[]") -#21088=@"loc,{#10000},20,5,20,32" -locations_default(#21088,#10000,20,5,20,32) -hasLocation(#21087,#21088) -enclosing_stmt(#21087,#21086) -expr_containers(#21087,#20001) -#21089=* -exprs(#21089,78,#21087,0,"arrayVar") -hasLocation(#21089,#20332) -enclosing_stmt(#21089,#21086) -expr_containers(#21089,#20001) -literals("arrayVar","arrayVar",#21089) -decl(#21089,#20940) +stmts(#21087,18,#20001,14,"var arr ... umber[]") +hasLocation(#21087,#20041) +stmt_containers(#21087,#20001) +#21088=* +exprs(#21088,64,#21087,0,"arrayVa ... umber[]") +#21089=@"loc,{#10000},20,5,20,32" +locations_default(#21089,#10000,20,5,20,32) +hasLocation(#21088,#21089) +enclosing_stmt(#21088,#21087) +expr_containers(#21088,#20001) #21090=* -typeexprs(#21090,6,#21087,2,"number[]") -#21091=@"loc,{#10000},20,25,20,32" -locations_default(#21091,#10000,20,25,20,32) -hasLocation(#21090,#21091) -enclosing_stmt(#21090,#21086) +exprs(#21090,78,#21088,0,"arrayVar") +hasLocation(#21090,#20332) +enclosing_stmt(#21090,#21087) expr_containers(#21090,#20001) -#21092=* -typeexprs(#21092,2,#21090,0,"number") -hasLocation(#21092,#20336) -enclosing_stmt(#21092,#21086) -expr_containers(#21092,#20001) -literals("number","number",#21092) +literals("arrayVar","arrayVar",#21090) +decl(#21090,#20940) +#21091=* +typeexprs(#21091,6,#21088,2,"number[]") +#21092=@"loc,{#10000},20,25,20,32" +locations_default(#21092,#10000,20,25,20,32) +hasLocation(#21091,#21092) +enclosing_stmt(#21091,#21087) +expr_containers(#21091,#20001) #21093=* -stmts(#21093,18,#20001,15,"var str ... String") -hasLocation(#21093,#20043) -stmt_containers(#21093,#20001) +typeexprs(#21093,2,#21091,0,"number") +hasLocation(#21093,#20336) +enclosing_stmt(#21093,#21087) +expr_containers(#21093,#20001) +literals("number","number",#21093) #21094=* -exprs(#21094,64,#21093,0,"stringO ... String") -#21095=@"loc,{#10000},21,5,21,30" -locations_default(#21095,#10000,21,5,21,30) -hasLocation(#21094,#21095) -enclosing_stmt(#21094,#21093) -expr_containers(#21094,#20001) -#21096=* -exprs(#21096,78,#21094,0,"stringObjectVar") -hasLocation(#21096,#20344) -enclosing_stmt(#21096,#21093) -expr_containers(#21096,#20001) -literals("stringObjectVar","stringObjectVar",#21096) -decl(#21096,#20941) +stmts(#21094,18,#20001,15,"var str ... String") +hasLocation(#21094,#20043) +stmt_containers(#21094,#20001) +#21095=* +exprs(#21095,64,#21094,0,"stringO ... String") +#21096=@"loc,{#10000},21,5,21,30" +locations_default(#21096,#10000,21,5,21,30) +hasLocation(#21095,#21096) +enclosing_stmt(#21095,#21094) +expr_containers(#21095,#20001) #21097=* -typeexprs(#21097,0,#21094,2,"String") -hasLocation(#21097,#20348) -enclosing_stmt(#21097,#21093) +exprs(#21097,78,#21095,0,"stringObjectVar") +hasLocation(#21097,#20344) +enclosing_stmt(#21097,#21094) expr_containers(#21097,#20001) -literals("String","String",#21097) +literals("stringObjectVar","stringObjectVar",#21097) +decl(#21097,#20941) #21098=* -stmts(#21098,18,#20001,16,"var poi ... Point") -hasLocation(#21098,#20045) -stmt_containers(#21098,#20001) +typeexprs(#21098,0,#21095,2,"String") +hasLocation(#21098,#20348) +enclosing_stmt(#21098,#21094) +expr_containers(#21098,#20001) +literals("String","String",#21098) #21099=* -exprs(#21099,64,#21098,0,"pointVa ... Point") -#21100=@"loc,{#10000},22,5,22,29" -locations_default(#21100,#10000,22,5,22,29) -hasLocation(#21099,#21100) -enclosing_stmt(#21099,#21098) -expr_containers(#21099,#20001) -#21101=* -exprs(#21101,78,#21099,0,"pointVar") -hasLocation(#21101,#20352) -enclosing_stmt(#21101,#21098) -expr_containers(#21101,#20001) -literals("pointVar","pointVar",#21101) -decl(#21101,#20942) +stmts(#21099,18,#20001,16,"var poi ... Point") +hasLocation(#21099,#20045) +stmt_containers(#21099,#20001) +#21100=* +exprs(#21100,64,#21099,0,"pointVa ... Point") +#21101=@"loc,{#10000},22,5,22,29" +locations_default(#21101,#10000,22,5,22,29) +hasLocation(#21100,#21101) +enclosing_stmt(#21100,#21099) +expr_containers(#21100,#20001) #21102=* -typeexprs(#21102,0,#21099,2,"Point") -hasLocation(#21102,#20356) -enclosing_stmt(#21102,#21098) +exprs(#21102,78,#21100,0,"pointVar") +hasLocation(#21102,#20352) +enclosing_stmt(#21102,#21099) expr_containers(#21102,#20001) -literals("Point","Point",#21102) -typebind(#21102,#20975) +literals("pointVar","pointVar",#21102) +decl(#21102,#20942) #21103=* -stmts(#21103,18,#20001,17,"var raw ... unction") -hasLocation(#21103,#20047) -stmt_containers(#21103,#20001) +typeexprs(#21103,0,#21100,2,"Point") +hasLocation(#21103,#20356) +enclosing_stmt(#21103,#21099) +expr_containers(#21103,#20001) +literals("Point","Point",#21103) +typebind(#21103,#20975) #21104=* -exprs(#21104,64,#21103,0,"rawFunc ... unction") -#21105=@"loc,{#10000},23,5,23,32" -locations_default(#21105,#10000,23,5,23,32) -hasLocation(#21104,#21105) -enclosing_stmt(#21104,#21103) -expr_containers(#21104,#20001) -#21106=* -exprs(#21106,78,#21104,0,"rawFunctionVar") -hasLocation(#21106,#20360) -enclosing_stmt(#21106,#21103) -expr_containers(#21106,#20001) -literals("rawFunctionVar","rawFunctionVar",#21106) -decl(#21106,#20943) +stmts(#21104,18,#20001,17,"var raw ... unction") +hasLocation(#21104,#20047) +stmt_containers(#21104,#20001) +#21105=* +exprs(#21105,64,#21104,0,"rawFunc ... unction") +#21106=@"loc,{#10000},23,5,23,32" +locations_default(#21106,#10000,23,5,23,32) +hasLocation(#21105,#21106) +enclosing_stmt(#21105,#21104) +expr_containers(#21105,#20001) #21107=* -typeexprs(#21107,0,#21104,2,"Function") -hasLocation(#21107,#20364) -enclosing_stmt(#21107,#21103) +exprs(#21107,78,#21105,0,"rawFunctionVar") +hasLocation(#21107,#20360) +enclosing_stmt(#21107,#21104) expr_containers(#21107,#20001) -literals("Function","Function",#21107) +literals("rawFunctionVar","rawFunctionVar",#21107) +decl(#21107,#20943) #21108=* -stmts(#21108,18,#20001,18,"var var ... x11") -hasLocation(#21108,#20049) -stmt_containers(#21108,#20001) +typeexprs(#21108,0,#21105,2,"Function") +hasLocation(#21108,#20364) +enclosing_stmt(#21108,#21104) +expr_containers(#21108,#20001) +literals("Function","Function",#21108) #21109=* -exprs(#21109,64,#21108,0,"varVar: ... x11") -#21110=@"loc,{#10000},24,5,24,27" -locations_default(#21110,#10000,24,5,24,27) -hasLocation(#21109,#21110) -enclosing_stmt(#21109,#21108) -expr_containers(#21109,#20001) -#21111=* -exprs(#21111,78,#21109,0,"varVar") -hasLocation(#21111,#20368) -enclosing_stmt(#21111,#21108) -expr_containers(#21111,#20001) -literals("varVar","varVar",#21111) -decl(#21111,#20944) +stmts(#21109,18,#20001,18,"var var ... x11") +hasLocation(#21109,#20049) +stmt_containers(#21109,#20001) +#21110=* +exprs(#21110,64,#21109,0,"varVar: ... x11") +#21111=@"loc,{#10000},24,5,24,27" +locations_default(#21111,#10000,24,5,24,27) +hasLocation(#21110,#21111) +enclosing_stmt(#21110,#21109) +expr_containers(#21110,#20001) #21112=* -typeexprs(#21112,0,#21109,2,"x11") -hasLocation(#21112,#20372) -enclosing_stmt(#21112,#21108) +exprs(#21112,78,#21110,0,"varVar") +hasLocation(#21112,#20368) +enclosing_stmt(#21112,#21109) expr_containers(#21112,#20001) -literals("x11","x11",#21112) +literals("varVar","varVar",#21112) +decl(#21112,#20944) #21113=* -stmts(#21113,18,#20001,19,"var gen ... number>") -hasLocation(#21113,#20051) -stmt_containers(#21113,#20001) +typeexprs(#21113,0,#21110,2,"x11") +hasLocation(#21113,#20372) +enclosing_stmt(#21113,#21109) +expr_containers(#21113,#20001) +literals("x11","x11",#21113) #21114=* -exprs(#21114,64,#21113,0,"generic ... number>") -#21115=@"loc,{#10000},25,5,25,37" -locations_default(#21115,#10000,25,5,25,37) -hasLocation(#21114,#21115) -enclosing_stmt(#21114,#21113) -expr_containers(#21114,#20001) -#21116=* -exprs(#21116,78,#21114,0,"genericArrayVar") -hasLocation(#21116,#20376) -enclosing_stmt(#21116,#21113) -expr_containers(#21116,#20001) -literals("genericArrayVar","genericArrayVar",#21116) -decl(#21116,#20945) +stmts(#21114,18,#20001,19,"var gen ... number>") +hasLocation(#21114,#20051) +stmt_containers(#21114,#20001) +#21115=* +exprs(#21115,64,#21114,0,"generic ... number>") +#21116=@"loc,{#10000},25,5,25,37" +locations_default(#21116,#10000,25,5,25,37) +hasLocation(#21115,#21116) +enclosing_stmt(#21115,#21114) +expr_containers(#21115,#20001) #21117=* -typeexprs(#21117,14,#21114,2,"Array") -#21118=@"loc,{#10000},25,25,25,37" -locations_default(#21118,#10000,25,25,25,37) -hasLocation(#21117,#21118) -enclosing_stmt(#21117,#21113) +exprs(#21117,78,#21115,0,"genericArrayVar") +hasLocation(#21117,#20376) +enclosing_stmt(#21117,#21114) expr_containers(#21117,#20001) -#21119=* -typeexprs(#21119,0,#21117,-1,"Array") -hasLocation(#21119,#20380) -enclosing_stmt(#21119,#21113) -expr_containers(#21119,#20001) -literals("Array","Array",#21119) +literals("genericArrayVar","genericArrayVar",#21117) +decl(#21117,#20945) +#21118=* +typeexprs(#21118,14,#21115,2,"Array") +#21119=@"loc,{#10000},25,25,25,37" +locations_default(#21119,#10000,25,25,25,37) +hasLocation(#21118,#21119) +enclosing_stmt(#21118,#21114) +expr_containers(#21118,#20001) #21120=* -typeexprs(#21120,2,#21117,0,"number") -hasLocation(#21120,#20384) -enclosing_stmt(#21120,#21113) +typeexprs(#21120,0,#21118,-1,"Array") +hasLocation(#21120,#20380) +enclosing_stmt(#21120,#21114) expr_containers(#21120,#20001) -literals("number","number",#21120) +literals("Array","Array",#21120) #21121=* -stmts(#21121,18,#20001,20,"var nes ... umber>>") -hasLocation(#21121,#20053) -stmt_containers(#21121,#20001) +typeexprs(#21121,2,#21118,0,"number") +hasLocation(#21121,#20384) +enclosing_stmt(#21121,#21114) +expr_containers(#21121,#20001) +literals("number","number",#21121) #21122=* -exprs(#21122,64,#21121,0,"nestedG ... umber>>") -#21123=@"loc,{#10000},26,5,26,40" -locations_default(#21123,#10000,26,5,26,40) -hasLocation(#21122,#21123) -enclosing_stmt(#21122,#21121) -expr_containers(#21122,#20001) -#21124=* -exprs(#21124,78,#21122,0,"nestedGenericVar") -hasLocation(#21124,#20390) -enclosing_stmt(#21124,#21121) -expr_containers(#21124,#20001) -literals("nestedGenericVar","nestedGenericVar",#21124) -decl(#21124,#20946) +stmts(#21122,18,#20001,20,"var nes ... umber>>") +hasLocation(#21122,#20053) +stmt_containers(#21122,#20001) +#21123=* +exprs(#21123,64,#21122,0,"nestedG ... umber>>") +#21124=@"loc,{#10000},26,5,26,40" +locations_default(#21124,#10000,26,5,26,40) +hasLocation(#21123,#21124) +enclosing_stmt(#21123,#21122) +expr_containers(#21123,#20001) #21125=* -typeexprs(#21125,14,#21122,2,"Foo>") -#21126=@"loc,{#10000},26,25,26,40" -locations_default(#21126,#10000,26,25,26,40) -hasLocation(#21125,#21126) -enclosing_stmt(#21125,#21121) +exprs(#21125,78,#21123,0,"nestedGenericVar") +hasLocation(#21125,#20390) +enclosing_stmt(#21125,#21122) expr_containers(#21125,#20001) -#21127=* -typeexprs(#21127,0,#21125,-1,"Foo") -hasLocation(#21127,#20394) -enclosing_stmt(#21127,#21121) -expr_containers(#21127,#20001) -literals("Foo","Foo",#21127) +literals("nestedGenericVar","nestedGenericVar",#21125) +decl(#21125,#20946) +#21126=* +typeexprs(#21126,14,#21123,2,"Foo>") +#21127=@"loc,{#10000},26,25,26,40" +locations_default(#21127,#10000,26,25,26,40) +hasLocation(#21126,#21127) +enclosing_stmt(#21126,#21122) +expr_containers(#21126,#20001) #21128=* -typeexprs(#21128,14,#21125,0,"Foo") -#21129=@"loc,{#10000},26,29,26,39" -locations_default(#21129,#10000,26,29,26,39) -hasLocation(#21128,#21129) -enclosing_stmt(#21128,#21121) +typeexprs(#21128,0,#21126,-1,"Foo") +hasLocation(#21128,#20394) +enclosing_stmt(#21128,#21122) expr_containers(#21128,#20001) -#21130=* -typeexprs(#21130,0,#21128,-1,"Foo") -hasLocation(#21130,#20398) -enclosing_stmt(#21130,#21121) -expr_containers(#21130,#20001) -literals("Foo","Foo",#21130) +literals("Foo","Foo",#21128) +#21129=* +typeexprs(#21129,14,#21126,0,"Foo") +#21130=@"loc,{#10000},26,29,26,39" +locations_default(#21130,#10000,26,29,26,39) +hasLocation(#21129,#21130) +enclosing_stmt(#21129,#21122) +expr_containers(#21129,#20001) #21131=* -typeexprs(#21131,2,#21128,0,"number") -hasLocation(#21131,#20402) -enclosing_stmt(#21131,#21121) +typeexprs(#21131,0,#21129,-1,"Foo") +hasLocation(#21131,#20398) +enclosing_stmt(#21131,#21122) expr_containers(#21131,#20001) -literals("number","number",#21131) +literals("Foo","Foo",#21131) #21132=* -stmts(#21132,18,#20001,21,"var cal ... number;") -hasLocation(#21132,#20055) -stmt_containers(#21132,#20001) +typeexprs(#21132,2,#21129,0,"number") +hasLocation(#21132,#20402) +enclosing_stmt(#21132,#21122) +expr_containers(#21132,#20001) +literals("number","number",#21132) #21133=* -exprs(#21133,64,#21132,0,"callSig ... number") -#21134=@"loc,{#10000},27,5,27,36" -locations_default(#21134,#10000,27,5,27,36) -hasLocation(#21133,#21134) -enclosing_stmt(#21133,#21132) -expr_containers(#21133,#20001) -#21135=* -exprs(#21135,78,#21133,0,"callSigVar") -hasLocation(#21135,#20410) -enclosing_stmt(#21135,#21132) -expr_containers(#21135,#20001) -literals("callSigVar","callSigVar",#21135) -decl(#21135,#20947) +stmts(#21133,18,#20001,21,"var cal ... number;") +hasLocation(#21133,#20055) +stmt_containers(#21133,#20001) +#21134=* +exprs(#21134,64,#21133,0,"callSig ... number") +#21135=@"loc,{#10000},27,5,27,36" +locations_default(#21135,#10000,27,5,27,36) +hasLocation(#21134,#21135) +enclosing_stmt(#21134,#21133) +expr_containers(#21134,#20001) #21136=* -typeexprs(#21136,23,#21133,2,"() => number") -#21137=@"loc,{#10000},27,25,27,36" -locations_default(#21137,#10000,27,25,27,36) -hasLocation(#21136,#21137) -enclosing_stmt(#21136,#21132) +exprs(#21136,78,#21134,0,"callSigVar") +hasLocation(#21136,#20410) +enclosing_stmt(#21136,#21133) expr_containers(#21136,#20001) -#21138=* -exprs(#21138,9,#21136,0,"() => number") -hasLocation(#21138,#21137) -enclosing_stmt(#21138,#21132) -expr_containers(#21138,#20001) +literals("callSigVar","callSigVar",#21136) +decl(#21136,#20947) +#21137=* +typeexprs(#21137,23,#21134,2,"() => number") +#21138=@"loc,{#10000},27,25,27,36" +locations_default(#21138,#10000,27,25,27,36) +hasLocation(#21137,#21138) +enclosing_stmt(#21137,#21133) +expr_containers(#21137,#20001) #21139=* -scopes(#21139,1) -scopenodes(#21138,#21139) -scopenesting(#21139,#20000) -#21140=@"var;{arguments};{#21139}" -variables(#21140,"arguments",#21139) -is_arguments_object(#21140) -#21141=* -typeexprs(#21141,2,#21138,-3,"number") -hasLocation(#21141,#20420) -expr_containers(#21141,#21138) -literals("number","number",#21141) -#21142=* -stmts(#21142,18,#20001,22,"var con ... Point;") -hasLocation(#21142,#20057) -stmt_containers(#21142,#20001) +exprs(#21139,9,#21137,0,"() => number") +hasLocation(#21139,#21138) +enclosing_stmt(#21139,#21133) +expr_containers(#21139,#20001) +#21140=* +scopes(#21140,1) +scopenodes(#21139,#21140) +scopenesting(#21140,#20000) +#21141=@"var;{this};{#21140}" +variables(#21141,"this",#21140) +#21142=@"var;{arguments};{#21140}" +variables(#21142,"arguments",#21140) +is_arguments_object(#21142) #21143=* -exprs(#21143,64,#21142,0,"constru ... > Point") -#21144=@"loc,{#10000},28,5,28,39" -locations_default(#21144,#10000,28,5,28,39) -hasLocation(#21143,#21144) -enclosing_stmt(#21143,#21142) -expr_containers(#21143,#20001) +typeexprs(#21143,2,#21139,-3,"number") +hasLocation(#21143,#20420) +expr_containers(#21143,#21139) +literals("number","number",#21143) +#21144=* +stmts(#21144,18,#20001,22,"var con ... Point;") +hasLocation(#21144,#20057) +stmt_containers(#21144,#20001) #21145=* -exprs(#21145,78,#21143,0,"constructSigVar") -hasLocation(#21145,#20426) -enclosing_stmt(#21145,#21142) +exprs(#21145,64,#21144,0,"constru ... > Point") +#21146=@"loc,{#10000},28,5,28,39" +locations_default(#21146,#10000,28,5,28,39) +hasLocation(#21145,#21146) +enclosing_stmt(#21145,#21144) expr_containers(#21145,#20001) -literals("constructSigVar","constructSigVar",#21145) -decl(#21145,#20948) -#21146=* -typeexprs(#21146,24,#21143,2,"new () => Point") -#21147=@"loc,{#10000},28,25,28,39" -locations_default(#21147,#10000,28,25,28,39) -hasLocation(#21146,#21147) -enclosing_stmt(#21146,#21142) -expr_containers(#21146,#20001) +#21147=* +exprs(#21147,78,#21145,0,"constructSigVar") +hasLocation(#21147,#20426) +enclosing_stmt(#21147,#21144) +expr_containers(#21147,#20001) +literals("constructSigVar","constructSigVar",#21147) +decl(#21147,#20948) #21148=* -exprs(#21148,9,#21146,0,"new () => Point") -hasLocation(#21148,#21147) -enclosing_stmt(#21148,#21142) +typeexprs(#21148,24,#21145,2,"new () => Point") +#21149=@"loc,{#10000},28,25,28,39" +locations_default(#21149,#10000,28,25,28,39) +hasLocation(#21148,#21149) +enclosing_stmt(#21148,#21144) expr_containers(#21148,#20001) -#21149=* -scopes(#21149,1) -scopenodes(#21148,#21149) -scopenesting(#21149,#20000) -#21150=@"var;{arguments};{#21149}" -variables(#21150,"arguments",#21149) -is_arguments_object(#21150) +#21150=* +exprs(#21150,9,#21148,0,"new () => Point") +hasLocation(#21150,#21149) +enclosing_stmt(#21150,#21144) +expr_containers(#21150,#20001) #21151=* -typeexprs(#21151,0,#21148,-3,"Point") -hasLocation(#21151,#20438) -expr_containers(#21151,#21148) -literals("Point","Point",#21151) -typebind(#21151,#20975) -#21152=* -stmts(#21152,18,#20001,23,"var cal ... > void;") -hasLocation(#21152,#20059) -stmt_containers(#21152,#20001) -#21153=* -exprs(#21153,64,#21152,0,"callSig ... => void") -#21154=@"loc,{#10000},29,5,29,34" -locations_default(#21154,#10000,29,5,29,34) -hasLocation(#21153,#21154) -enclosing_stmt(#21153,#21152) -expr_containers(#21153,#20001) +scopes(#21151,1) +scopenodes(#21150,#21151) +scopenesting(#21151,#20000) +#21152=@"var;{this};{#21151}" +variables(#21152,"this",#21151) +#21153=@"var;{arguments};{#21151}" +variables(#21153,"arguments",#21151) +is_arguments_object(#21153) +#21154=* +typeexprs(#21154,0,#21150,-3,"Point") +hasLocation(#21154,#20438) +expr_containers(#21154,#21150) +literals("Point","Point",#21154) +typebind(#21154,#20975) #21155=* -exprs(#21155,78,#21153,0,"callSigVoidVar") -hasLocation(#21155,#20444) -enclosing_stmt(#21155,#21152) -expr_containers(#21155,#20001) -literals("callSigVoidVar","callSigVoidVar",#21155) -decl(#21155,#20949) +stmts(#21155,18,#20001,23,"var cal ... > void;") +hasLocation(#21155,#20059) +stmt_containers(#21155,#20001) #21156=* -typeexprs(#21156,23,#21153,2,"() => void") -#21157=@"loc,{#10000},29,25,29,34" -locations_default(#21157,#10000,29,25,29,34) +exprs(#21156,64,#21155,0,"callSig ... => void") +#21157=@"loc,{#10000},29,5,29,34" +locations_default(#21157,#10000,29,5,29,34) hasLocation(#21156,#21157) -enclosing_stmt(#21156,#21152) +enclosing_stmt(#21156,#21155) expr_containers(#21156,#20001) #21158=* -exprs(#21158,9,#21156,0,"() => void") -hasLocation(#21158,#21157) -enclosing_stmt(#21158,#21152) +exprs(#21158,78,#21156,0,"callSigVoidVar") +hasLocation(#21158,#20444) +enclosing_stmt(#21158,#21155) expr_containers(#21158,#20001) +literals("callSigVoidVar","callSigVoidVar",#21158) +decl(#21158,#20949) #21159=* -scopes(#21159,1) -scopenodes(#21158,#21159) -scopenesting(#21159,#20000) -#21160=@"var;{arguments};{#21159}" -variables(#21160,"arguments",#21159) -is_arguments_object(#21160) +typeexprs(#21159,23,#21156,2,"() => void") +#21160=@"loc,{#10000},29,25,29,34" +locations_default(#21160,#10000,29,25,29,34) +hasLocation(#21159,#21160) +enclosing_stmt(#21159,#21155) +expr_containers(#21159,#20001) #21161=* -typeexprs(#21161,2,#21158,-3,"void") -hasLocation(#21161,#20454) -expr_containers(#21161,#21158) -literals("void","void",#21161) +exprs(#21161,9,#21159,0,"() => void") +hasLocation(#21161,#21160) +enclosing_stmt(#21161,#21155) +expr_containers(#21161,#20001) #21162=* -stmts(#21162,18,#20001,24,"var cal ... never;") -hasLocation(#21162,#20061) -stmt_containers(#21162,#20001) -#21163=* -exprs(#21163,64,#21162,0,"callSig ... > never") -#21164=@"loc,{#10000},30,5,30,35" -locations_default(#21164,#10000,30,5,30,35) -hasLocation(#21163,#21164) -enclosing_stmt(#21163,#21162) -expr_containers(#21163,#20001) +scopes(#21162,1) +scopenodes(#21161,#21162) +scopenesting(#21162,#20000) +#21163=@"var;{this};{#21162}" +variables(#21163,"this",#21162) +#21164=@"var;{arguments};{#21162}" +variables(#21164,"arguments",#21162) +is_arguments_object(#21164) #21165=* -exprs(#21165,78,#21163,0,"callSigNeverVar") -hasLocation(#21165,#20460) -enclosing_stmt(#21165,#21162) -expr_containers(#21165,#20001) -literals("callSigNeverVar","callSigNeverVar",#21165) -decl(#21165,#20950) +typeexprs(#21165,2,#21161,-3,"void") +hasLocation(#21165,#20454) +expr_containers(#21165,#21161) +literals("void","void",#21165) #21166=* -typeexprs(#21166,23,#21163,2,"() => never") -#21167=@"loc,{#10000},30,25,30,35" -locations_default(#21167,#10000,30,25,30,35) -hasLocation(#21166,#21167) -enclosing_stmt(#21166,#21162) -expr_containers(#21166,#20001) -#21168=* -exprs(#21168,9,#21166,0,"() => never") -hasLocation(#21168,#21167) -enclosing_stmt(#21168,#21162) -expr_containers(#21168,#20001) +stmts(#21166,18,#20001,24,"var cal ... never;") +hasLocation(#21166,#20061) +stmt_containers(#21166,#20001) +#21167=* +exprs(#21167,64,#21166,0,"callSig ... > never") +#21168=@"loc,{#10000},30,5,30,35" +locations_default(#21168,#10000,30,5,30,35) +hasLocation(#21167,#21168) +enclosing_stmt(#21167,#21166) +expr_containers(#21167,#20001) #21169=* -scopes(#21169,1) -scopenodes(#21168,#21169) -scopenesting(#21169,#20000) -#21170=@"var;{arguments};{#21169}" -variables(#21170,"arguments",#21169) -is_arguments_object(#21170) -#21171=* -typeexprs(#21171,2,#21168,-3,"never") -hasLocation(#21171,#20470) -expr_containers(#21171,#21168) -literals("never","never",#21171) +exprs(#21169,78,#21167,0,"callSigNeverVar") +hasLocation(#21169,#20460) +enclosing_stmt(#21169,#21166) +expr_containers(#21169,#20001) +literals("callSigNeverVar","callSigNeverVar",#21169) +decl(#21169,#20950) +#21170=* +typeexprs(#21170,23,#21167,2,"() => never") +#21171=@"loc,{#10000},30,25,30,35" +locations_default(#21171,#10000,30,25,30,35) +hasLocation(#21170,#21171) +enclosing_stmt(#21170,#21166) +expr_containers(#21170,#20001) #21172=* -stmts(#21172,18,#20001,25,"var uni ... string;") -hasLocation(#21172,#20063) -stmt_containers(#21172,#20001) +exprs(#21172,9,#21170,0,"() => never") +hasLocation(#21172,#21171) +enclosing_stmt(#21172,#21166) +expr_containers(#21172,#20001) #21173=* -exprs(#21173,64,#21172,0,"unionVa ... string") -#21174=@"loc,{#10000},31,5,31,39" -locations_default(#21174,#10000,31,5,31,39) -hasLocation(#21173,#21174) -enclosing_stmt(#21173,#21172) -expr_containers(#21173,#20001) -#21175=* -exprs(#21175,78,#21173,0,"unionVar") -hasLocation(#21175,#20476) -enclosing_stmt(#21175,#21172) -expr_containers(#21175,#20001) -literals("unionVar","unionVar",#21175) -decl(#21175,#20951) +scopes(#21173,1) +scopenodes(#21172,#21173) +scopenesting(#21173,#20000) +#21174=@"var;{this};{#21173}" +variables(#21174,"this",#21173) +#21175=@"var;{arguments};{#21173}" +variables(#21175,"arguments",#21173) +is_arguments_object(#21175) #21176=* -typeexprs(#21176,7,#21173,2,"number | string") -#21177=@"loc,{#10000},31,25,31,39" -locations_default(#21177,#10000,31,25,31,39) -hasLocation(#21176,#21177) -enclosing_stmt(#21176,#21172) -expr_containers(#21176,#20001) +typeexprs(#21176,2,#21172,-3,"never") +hasLocation(#21176,#20470) +expr_containers(#21176,#21172) +literals("never","never",#21176) +#21177=* +stmts(#21177,18,#20001,25,"var uni ... string;") +hasLocation(#21177,#20063) +stmt_containers(#21177,#20001) #21178=* -typeexprs(#21178,2,#21176,0,"number") -hasLocation(#21178,#20480) -enclosing_stmt(#21178,#21172) +exprs(#21178,64,#21177,0,"unionVa ... string") +#21179=@"loc,{#10000},31,5,31,39" +locations_default(#21179,#10000,31,5,31,39) +hasLocation(#21178,#21179) +enclosing_stmt(#21178,#21177) expr_containers(#21178,#20001) -literals("number","number",#21178) -#21179=* -typeexprs(#21179,2,#21176,1,"string") -hasLocation(#21179,#20484) -enclosing_stmt(#21179,#21172) -expr_containers(#21179,#20001) -literals("string","string",#21179) #21180=* -stmts(#21180,18,#20001,26,"var str ... teral"";") -hasLocation(#21180,#20065) -stmt_containers(#21180,#20001) +exprs(#21180,78,#21178,0,"unionVar") +hasLocation(#21180,#20476) +enclosing_stmt(#21180,#21177) +expr_containers(#21180,#20001) +literals("unionVar","unionVar",#21180) +decl(#21180,#20951) #21181=* -exprs(#21181,64,#21180,0,"stringL ... iteral""") -#21182=@"loc,{#10000},32,5,32,33" -locations_default(#21182,#10000,32,5,32,33) +typeexprs(#21181,7,#21178,2,"number | string") +#21182=@"loc,{#10000},31,25,31,39" +locations_default(#21182,#10000,31,25,31,39) hasLocation(#21181,#21182) -enclosing_stmt(#21181,#21180) +enclosing_stmt(#21181,#21177) expr_containers(#21181,#20001) #21183=* -exprs(#21183,78,#21181,0,"stringLiteralVar") -hasLocation(#21183,#20490) -enclosing_stmt(#21183,#21180) +typeexprs(#21183,2,#21181,0,"number") +hasLocation(#21183,#20480) +enclosing_stmt(#21183,#21177) expr_containers(#21183,#20001) -literals("stringLiteralVar","stringLiteralVar",#21183) -decl(#21183,#20952) +literals("number","number",#21183) #21184=* -typeexprs(#21184,3,#21181,2,"""literal""") -hasLocation(#21184,#20494) -enclosing_stmt(#21184,#21180) +typeexprs(#21184,2,#21181,1,"string") +hasLocation(#21184,#20484) +enclosing_stmt(#21184,#21177) expr_containers(#21184,#20001) -literals("literal","""literal""",#21184) +literals("string","string",#21184) #21185=* -stmts(#21185,18,#20001,27,"var tru ... true;") -hasLocation(#21185,#20067) +stmts(#21185,18,#20001,26,"var str ... teral"";") +hasLocation(#21185,#20065) stmt_containers(#21185,#20001) #21186=* -exprs(#21186,64,#21185,0,"trueVar ... true") -#21187=@"loc,{#10000},33,5,33,28" -locations_default(#21187,#10000,33,5,33,28) +exprs(#21186,64,#21185,0,"stringL ... iteral""") +#21187=@"loc,{#10000},32,5,32,33" +locations_default(#21187,#10000,32,5,32,33) hasLocation(#21186,#21187) enclosing_stmt(#21186,#21185) expr_containers(#21186,#20001) #21188=* -exprs(#21188,78,#21186,0,"trueVar") -hasLocation(#21188,#20500) +exprs(#21188,78,#21186,0,"stringLiteralVar") +hasLocation(#21188,#20490) enclosing_stmt(#21188,#21185) expr_containers(#21188,#20001) -literals("trueVar","trueVar",#21188) -decl(#21188,#20953) +literals("stringLiteralVar","stringLiteralVar",#21188) +decl(#21188,#20952) #21189=* -typeexprs(#21189,5,#21186,2,"true") -hasLocation(#21189,#20504) +typeexprs(#21189,3,#21186,2,"""literal""") +hasLocation(#21189,#20494) enclosing_stmt(#21189,#21185) expr_containers(#21189,#20001) -literals("true","true",#21189) +literals("literal","""literal""",#21189) #21190=* -stmts(#21190,18,#20001,28,"var fal ... false;") -hasLocation(#21190,#20069) +stmts(#21190,18,#20001,27,"var tru ... true;") +hasLocation(#21190,#20067) stmt_containers(#21190,#20001) #21191=* -exprs(#21191,64,#21190,0,"falseVa ... false") -#21192=@"loc,{#10000},34,5,34,29" -locations_default(#21192,#10000,34,5,34,29) +exprs(#21191,64,#21190,0,"trueVar ... true") +#21192=@"loc,{#10000},33,5,33,28" +locations_default(#21192,#10000,33,5,33,28) hasLocation(#21191,#21192) enclosing_stmt(#21191,#21190) expr_containers(#21191,#20001) #21193=* -exprs(#21193,78,#21191,0,"falseVar") -hasLocation(#21193,#20510) +exprs(#21193,78,#21191,0,"trueVar") +hasLocation(#21193,#20500) enclosing_stmt(#21193,#21190) expr_containers(#21193,#20001) -literals("falseVar","falseVar",#21193) -decl(#21193,#20954) +literals("trueVar","trueVar",#21193) +decl(#21193,#20953) #21194=* -typeexprs(#21194,5,#21191,2,"false") -hasLocation(#21194,#20514) +typeexprs(#21194,5,#21191,2,"true") +hasLocation(#21194,#20504) enclosing_stmt(#21194,#21190) expr_containers(#21194,#20001) -literals("false","false",#21194) +literals("true","true",#21194) #21195=* -stmts(#21195,18,#20001,29,"var int ... 100;") -hasLocation(#21195,#20071) +stmts(#21195,18,#20001,28,"var fal ... false;") +hasLocation(#21195,#20069) stmt_containers(#21195,#20001) #21196=* -exprs(#21196,64,#21195,0,"intLite ... 100") -#21197=@"loc,{#10000},35,5,35,27" -locations_default(#21197,#10000,35,5,35,27) +exprs(#21196,64,#21195,0,"falseVa ... false") +#21197=@"loc,{#10000},34,5,34,29" +locations_default(#21197,#10000,34,5,34,29) hasLocation(#21196,#21197) enclosing_stmt(#21196,#21195) expr_containers(#21196,#20001) #21198=* -exprs(#21198,78,#21196,0,"intLiteralVar") -hasLocation(#21198,#20520) +exprs(#21198,78,#21196,0,"falseVar") +hasLocation(#21198,#20510) enclosing_stmt(#21198,#21195) expr_containers(#21198,#20001) -literals("intLiteralVar","intLiteralVar",#21198) -decl(#21198,#20955) +literals("falseVar","falseVar",#21198) +decl(#21198,#20954) #21199=* -typeexprs(#21199,4,#21196,2,"100") -hasLocation(#21199,#20524) +typeexprs(#21199,5,#21196,2,"false") +hasLocation(#21199,#20514) enclosing_stmt(#21199,#21195) expr_containers(#21199,#20001) -literals("100","100",#21199) +literals("false","false",#21199) #21200=* -stmts(#21200,18,#20001,30,"var dou ... 100.50;") -hasLocation(#21200,#20073) +stmts(#21200,18,#20001,29,"var int ... 100;") +hasLocation(#21200,#20071) stmt_containers(#21200,#20001) #21201=* -exprs(#21201,64,#21200,0,"doubleL ... 100.50") -#21202=@"loc,{#10000},36,5,36,30" -locations_default(#21202,#10000,36,5,36,30) +exprs(#21201,64,#21200,0,"intLite ... 100") +#21202=@"loc,{#10000},35,5,35,27" +locations_default(#21202,#10000,35,5,35,27) hasLocation(#21201,#21202) enclosing_stmt(#21201,#21200) expr_containers(#21201,#20001) #21203=* -exprs(#21203,78,#21201,0,"doubleLiteralVar") -hasLocation(#21203,#20530) +exprs(#21203,78,#21201,0,"intLiteralVar") +hasLocation(#21203,#20520) enclosing_stmt(#21203,#21200) expr_containers(#21203,#20001) -literals("doubleLiteralVar","doubleLiteralVar",#21203) -decl(#21203,#20956) +literals("intLiteralVar","intLiteralVar",#21203) +decl(#21203,#20955) #21204=* -typeexprs(#21204,4,#21201,2,"100.50") -hasLocation(#21204,#20534) +typeexprs(#21204,4,#21201,2,"100") +hasLocation(#21204,#20524) enclosing_stmt(#21204,#21200) expr_containers(#21204,#20001) -literals("100.5","100.50",#21204) +literals("100","100",#21204) #21205=* -stmts(#21205,18,#20001,31,"var tup ... number]") -hasLocation(#21205,#20075) +stmts(#21205,18,#20001,30,"var dou ... 100.50;") +hasLocation(#21205,#20073) stmt_containers(#21205,#20001) #21206=* -exprs(#21206,64,#21205,0,"tupleVa ... number]") -#21207=@"loc,{#10000},37,5,37,40" -locations_default(#21207,#10000,37,5,37,40) +exprs(#21206,64,#21205,0,"doubleL ... 100.50") +#21207=@"loc,{#10000},36,5,36,30" +locations_default(#21207,#10000,36,5,36,30) hasLocation(#21206,#21207) enclosing_stmt(#21206,#21205) expr_containers(#21206,#20001) #21208=* -exprs(#21208,78,#21206,0,"tupleVar") -hasLocation(#21208,#20540) +exprs(#21208,78,#21206,0,"doubleLiteralVar") +hasLocation(#21208,#20530) enclosing_stmt(#21208,#21205) expr_containers(#21208,#20001) -literals("tupleVar","tupleVar",#21208) -decl(#21208,#20957) +literals("doubleLiteralVar","doubleLiteralVar",#21208) +decl(#21208,#20956) #21209=* -typeexprs(#21209,11,#21206,2,"[string, number]") -#21210=@"loc,{#10000},37,25,37,40" -locations_default(#21210,#10000,37,25,37,40) -hasLocation(#21209,#21210) +typeexprs(#21209,4,#21206,2,"100.50") +hasLocation(#21209,#20534) enclosing_stmt(#21209,#21205) expr_containers(#21209,#20001) +literals("100.5","100.50",#21209) +#21210=* +stmts(#21210,18,#20001,31,"var tup ... number]") +hasLocation(#21210,#20075) +stmt_containers(#21210,#20001) #21211=* -typeexprs(#21211,2,#21209,0,"string") -hasLocation(#21211,#20546) -enclosing_stmt(#21211,#21205) +exprs(#21211,64,#21210,0,"tupleVa ... number]") +#21212=@"loc,{#10000},37,5,37,40" +locations_default(#21212,#10000,37,5,37,40) +hasLocation(#21211,#21212) +enclosing_stmt(#21211,#21210) expr_containers(#21211,#20001) -literals("string","string",#21211) -#21212=* -typeexprs(#21212,2,#21209,1,"number") -hasLocation(#21212,#20550) -enclosing_stmt(#21212,#21205) -expr_containers(#21212,#20001) -literals("number","number",#21212) #21213=* -stmts(#21213,18,#20001,32,"var lon ... "" | [3]") -hasLocation(#21213,#20077) -stmt_containers(#21213,#20001) +exprs(#21213,78,#21211,0,"tupleVar") +hasLocation(#21213,#20540) +enclosing_stmt(#21213,#21210) +expr_containers(#21213,#20001) +literals("tupleVar","tupleVar",#21213) +decl(#21213,#20957) #21214=* -exprs(#21214,64,#21213,0,"longUni ... "" | [3]") -#21215=@"loc,{#10000},38,5,38,46" -locations_default(#21215,#10000,38,5,38,46) +typeexprs(#21214,11,#21211,2,"[string, number]") +#21215=@"loc,{#10000},37,25,37,40" +locations_default(#21215,#10000,37,25,37,40) hasLocation(#21214,#21215) -enclosing_stmt(#21214,#21213) +enclosing_stmt(#21214,#21210) expr_containers(#21214,#20001) #21216=* -exprs(#21216,78,#21214,0,"longUnionVar") -hasLocation(#21216,#20556) -enclosing_stmt(#21216,#21213) +typeexprs(#21216,2,#21214,0,"string") +hasLocation(#21216,#20546) +enclosing_stmt(#21216,#21210) expr_containers(#21216,#20001) -literals("longUnionVar","longUnionVar",#21216) -decl(#21216,#20958) +literals("string","string",#21216) #21217=* -typeexprs(#21217,7,#21214,2,"null | ... "" | [3]") -#21218=@"loc,{#10000},38,25,38,46" -locations_default(#21218,#10000,38,25,38,46) -hasLocation(#21217,#21218) -enclosing_stmt(#21217,#21213) +typeexprs(#21217,2,#21214,1,"number") +hasLocation(#21217,#20550) +enclosing_stmt(#21217,#21210) expr_containers(#21217,#20001) +literals("number","number",#21217) +#21218=* +stmts(#21218,18,#20001,32,"var lon ... "" | [3]") +hasLocation(#21218,#20077) +stmt_containers(#21218,#20001) #21219=* -typeexprs(#21219,2,#21217,0,"null") -hasLocation(#21219,#20560) -enclosing_stmt(#21219,#21213) +exprs(#21219,64,#21218,0,"longUni ... "" | [3]") +#21220=@"loc,{#10000},38,5,38,46" +locations_default(#21220,#10000,38,5,38,46) +hasLocation(#21219,#21220) +enclosing_stmt(#21219,#21218) expr_containers(#21219,#20001) -literals("null","null",#21219) -#21220=* -typeexprs(#21220,4,#21217,1,"1") -hasLocation(#21220,#20564) -enclosing_stmt(#21220,#21213) -expr_containers(#21220,#20001) -literals("1","1",#21220) #21221=* -typeexprs(#21221,3,#21217,2,"""two""") -hasLocation(#21221,#20568) -enclosing_stmt(#21221,#21213) +exprs(#21221,78,#21219,0,"longUnionVar") +hasLocation(#21221,#20556) +enclosing_stmt(#21221,#21218) expr_containers(#21221,#20001) -literals("two","""two""",#21221) +literals("longUnionVar","longUnionVar",#21221) +decl(#21221,#20958) #21222=* -typeexprs(#21222,11,#21217,3,"[3]") -#21223=@"loc,{#10000},38,44,38,46" -locations_default(#21223,#10000,38,44,38,46) +typeexprs(#21222,7,#21219,2,"null | ... "" | [3]") +#21223=@"loc,{#10000},38,25,38,46" +locations_default(#21223,#10000,38,25,38,46) hasLocation(#21222,#21223) -enclosing_stmt(#21222,#21213) +enclosing_stmt(#21222,#21218) expr_containers(#21222,#20001) #21224=* -typeexprs(#21224,4,#21222,0,"3") -hasLocation(#21224,#20574) -enclosing_stmt(#21224,#21213) +typeexprs(#21224,2,#21222,0,"null") +hasLocation(#21224,#20560) +enclosing_stmt(#21224,#21218) expr_containers(#21224,#20001) -literals("3","3",#21224) +literals("null","null",#21224) #21225=* -stmts(#21225,18,#20001,33,"var int ... & Bar;") -hasLocation(#21225,#20079) -stmt_containers(#21225,#20001) +typeexprs(#21225,4,#21222,1,"1") +hasLocation(#21225,#20564) +enclosing_stmt(#21225,#21218) +expr_containers(#21225,#20001) +literals("1","1",#21225) #21226=* -exprs(#21226,64,#21225,0,"interse ... o & Bar") -#21227=@"loc,{#10000},39,5,39,33" -locations_default(#21227,#10000,39,5,39,33) -hasLocation(#21226,#21227) -enclosing_stmt(#21226,#21225) +typeexprs(#21226,3,#21222,2,"""two""") +hasLocation(#21226,#20568) +enclosing_stmt(#21226,#21218) expr_containers(#21226,#20001) -#21228=* -exprs(#21228,78,#21226,0,"intersectVar") -hasLocation(#21228,#20580) -enclosing_stmt(#21228,#21225) -expr_containers(#21228,#20001) -literals("intersectVar","intersectVar",#21228) -decl(#21228,#20959) +literals("two","""two""",#21226) +#21227=* +typeexprs(#21227,11,#21222,3,"[3]") +#21228=@"loc,{#10000},38,44,38,46" +locations_default(#21228,#10000,38,44,38,46) +hasLocation(#21227,#21228) +enclosing_stmt(#21227,#21218) +expr_containers(#21227,#20001) #21229=* -typeexprs(#21229,9,#21226,2,"Foo & Bar") -#21230=@"loc,{#10000},39,25,39,33" -locations_default(#21230,#10000,39,25,39,33) -hasLocation(#21229,#21230) -enclosing_stmt(#21229,#21225) +typeexprs(#21229,4,#21227,0,"3") +hasLocation(#21229,#20574) +enclosing_stmt(#21229,#21218) expr_containers(#21229,#20001) +literals("3","3",#21229) +#21230=* +stmts(#21230,18,#20001,33,"var int ... & Bar;") +hasLocation(#21230,#20079) +stmt_containers(#21230,#20001) #21231=* -typeexprs(#21231,0,#21229,0,"Foo") -hasLocation(#21231,#20584) -enclosing_stmt(#21231,#21225) +exprs(#21231,64,#21230,0,"interse ... o & Bar") +#21232=@"loc,{#10000},39,5,39,33" +locations_default(#21232,#10000,39,5,39,33) +hasLocation(#21231,#21232) +enclosing_stmt(#21231,#21230) expr_containers(#21231,#20001) -literals("Foo","Foo",#21231) -#21232=* -typeexprs(#21232,0,#21229,1,"Bar") -hasLocation(#21232,#20588) -enclosing_stmt(#21232,#21225) -expr_containers(#21232,#20001) -literals("Bar","Bar",#21232) #21233=* -stmts(#21233,18,#20001,34,"var gen ... ) => T;") -hasLocation(#21233,#20081) -stmt_containers(#21233,#20001) +exprs(#21233,78,#21231,0,"intersectVar") +hasLocation(#21233,#20580) +enclosing_stmt(#21233,#21230) +expr_containers(#21233,#20001) +literals("intersectVar","intersectVar",#21233) +decl(#21233,#20959) #21234=* -exprs(#21234,64,#21233,0,"generic ... T) => T") -#21235=@"loc,{#10000},40,5,40,38" -locations_default(#21235,#10000,40,5,40,38) +typeexprs(#21234,9,#21231,2,"Foo & Bar") +#21235=@"loc,{#10000},39,25,39,33" +locations_default(#21235,#10000,39,25,39,33) hasLocation(#21234,#21235) -enclosing_stmt(#21234,#21233) +enclosing_stmt(#21234,#21230) expr_containers(#21234,#20001) #21236=* -exprs(#21236,78,#21234,0,"genericCallSigVar") -hasLocation(#21236,#20594) -enclosing_stmt(#21236,#21233) +typeexprs(#21236,0,#21234,0,"Foo") +hasLocation(#21236,#20584) +enclosing_stmt(#21236,#21230) expr_containers(#21236,#20001) -literals("genericCallSigVar","genericCallSigVar",#21236) -decl(#21236,#20960) +literals("Foo","Foo",#21236) #21237=* -typeexprs(#21237,23,#21234,2,"(x: T) => T") -#21238=@"loc,{#10000},40,25,40,38" -locations_default(#21238,#10000,40,25,40,38) -hasLocation(#21237,#21238) -enclosing_stmt(#21237,#21233) +typeexprs(#21237,0,#21234,1,"Bar") +hasLocation(#21237,#20588) +enclosing_stmt(#21237,#21230) expr_containers(#21237,#20001) +literals("Bar","Bar",#21237) +#21238=* +stmts(#21238,18,#20001,34,"var gen ... ) => T;") +hasLocation(#21238,#20081) +stmt_containers(#21238,#20001) #21239=* -exprs(#21239,9,#21237,0,"(x: T) => T") -hasLocation(#21239,#21238) -enclosing_stmt(#21239,#21233) +exprs(#21239,64,#21238,0,"generic ... T) => T") +#21240=@"loc,{#10000},40,5,40,38" +locations_default(#21240,#10000,40,5,40,38) +hasLocation(#21239,#21240) +enclosing_stmt(#21239,#21238) expr_containers(#21239,#20001) -#21240=* -scopes(#21240,1) -scopenodes(#21239,#21240) -scopenesting(#21240,#20000) -#21241=@"local_type_name;{T};{#21240}" -local_type_names(#21241,"T",#21240) -#21242=@"var;{x};{#21240}" -variables(#21242,"x",#21240) -#21243=* -exprs(#21243,78,#21239,0,"x") -hasLocation(#21243,#20606) -expr_containers(#21243,#21239) -literals("x","x",#21243) -decl(#21243,#21242) -#21244=@"var;{arguments};{#21240}" -variables(#21244,"arguments",#21240) -is_arguments_object(#21244) +#21241=* +exprs(#21241,78,#21239,0,"genericCallSigVar") +hasLocation(#21241,#20594) +enclosing_stmt(#21241,#21238) +expr_containers(#21241,#20001) +literals("genericCallSigVar","genericCallSigVar",#21241) +decl(#21241,#20960) +#21242=* +typeexprs(#21242,23,#21239,2,"(x: T) => T") +#21243=@"loc,{#10000},40,25,40,38" +locations_default(#21243,#10000,40,25,40,38) +hasLocation(#21242,#21243) +enclosing_stmt(#21242,#21238) +expr_containers(#21242,#20001) +#21244=* +exprs(#21244,9,#21242,0,"(x: T) => T") +hasLocation(#21244,#21243) +enclosing_stmt(#21244,#21238) +expr_containers(#21244,#20001) #21245=* -typeexprs(#21245,0,#21239,-3,"T") -hasLocation(#21245,#20616) -expr_containers(#21245,#21239) -literals("T","T",#21245) -typebind(#21245,#21241) -#21246=* -typeexprs(#21246,0,#21239,-6,"T") -hasLocation(#21246,#20610) -expr_containers(#21246,#21239) -literals("T","T",#21246) -typebind(#21246,#21241) -#21247=* -typeexprs(#21247,22,#21239,-7,"T") -hasLocation(#21247,#20600) -expr_containers(#21247,#21239) -#21248=* -typeexprs(#21248,1,#21247,0,"T") -hasLocation(#21248,#20600) -expr_containers(#21248,#21239) -literals("T","T",#21248) -typedecl(#21248,#21241) +scopes(#21245,1) +scopenodes(#21244,#21245) +scopenesting(#21245,#20000) +#21246=@"var;{this};{#21245}" +variables(#21246,"this",#21245) +#21247=@"local_type_name;{T};{#21245}" +local_type_names(#21247,"T",#21245) +#21248=@"var;{x};{#21245}" +variables(#21248,"x",#21245) #21249=* -stmts(#21249,18,#20001,35,"var gen ... ) => T;") -hasLocation(#21249,#20083) -stmt_containers(#21249,#20001) -#21250=* -exprs(#21250,64,#21249,0,"generic ... T) => T") -#21251=@"loc,{#10000},41,5,41,46" -locations_default(#21251,#10000,41,5,41,46) -hasLocation(#21250,#21251) -enclosing_stmt(#21250,#21249) -expr_containers(#21250,#20001) +exprs(#21249,78,#21244,0,"x") +hasLocation(#21249,#20606) +expr_containers(#21249,#21244) +literals("x","x",#21249) +decl(#21249,#21248) +#21250=@"var;{arguments};{#21245}" +variables(#21250,"arguments",#21245) +is_arguments_object(#21250) +#21251=* +typeexprs(#21251,0,#21244,-3,"T") +hasLocation(#21251,#20616) +expr_containers(#21251,#21244) +literals("T","T",#21251) +typebind(#21251,#21247) #21252=* -exprs(#21252,78,#21250,0,"generic ... tSigVar") -hasLocation(#21252,#20622) -enclosing_stmt(#21252,#21249) -expr_containers(#21252,#20001) -literals("genericConstructSigVar","genericConstructSigVar",#21252) -decl(#21252,#20961) +typeexprs(#21252,0,#21244,-6,"T") +hasLocation(#21252,#20610) +expr_containers(#21252,#21244) +literals("T","T",#21252) +typebind(#21252,#21247) #21253=* -typeexprs(#21253,24,#21250,2,"new (x: T) => T") -#21254=@"loc,{#10000},41,29,41,46" -locations_default(#21254,#10000,41,29,41,46) -hasLocation(#21253,#21254) -enclosing_stmt(#21253,#21249) -expr_containers(#21253,#20001) +typeexprs(#21253,22,#21244,-7,"T") +hasLocation(#21253,#20600) +expr_containers(#21253,#21244) +#21254=* +typeexprs(#21254,1,#21253,0,"T") +hasLocation(#21254,#20600) +expr_containers(#21254,#21244) +literals("T","T",#21254) +typedecl(#21254,#21247) #21255=* -exprs(#21255,9,#21253,0,"new (x: T) => T") -hasLocation(#21255,#21254) -enclosing_stmt(#21255,#21249) -expr_containers(#21255,#20001) +stmts(#21255,18,#20001,35,"var gen ... ) => T;") +hasLocation(#21255,#20083) +stmt_containers(#21255,#20001) #21256=* -scopes(#21256,1) -scopenodes(#21255,#21256) -scopenesting(#21256,#20000) -#21257=@"local_type_name;{T};{#21256}" -local_type_names(#21257,"T",#21256) -#21258=@"var;{x};{#21256}" -variables(#21258,"x",#21256) +exprs(#21256,64,#21255,0,"generic ... T) => T") +#21257=@"loc,{#10000},41,5,41,46" +locations_default(#21257,#10000,41,5,41,46) +hasLocation(#21256,#21257) +enclosing_stmt(#21256,#21255) +expr_containers(#21256,#20001) +#21258=* +exprs(#21258,78,#21256,0,"generic ... tSigVar") +hasLocation(#21258,#20622) +enclosing_stmt(#21258,#21255) +expr_containers(#21258,#20001) +literals("genericConstructSigVar","genericConstructSigVar",#21258) +decl(#21258,#20961) #21259=* -exprs(#21259,78,#21255,0,"x") -hasLocation(#21259,#20636) -expr_containers(#21259,#21255) -literals("x","x",#21259) -decl(#21259,#21258) -#21260=@"var;{arguments};{#21256}" -variables(#21260,"arguments",#21256) -is_arguments_object(#21260) +typeexprs(#21259,24,#21256,2,"new (x: T) => T") +#21260=@"loc,{#10000},41,29,41,46" +locations_default(#21260,#10000,41,29,41,46) +hasLocation(#21259,#21260) +enclosing_stmt(#21259,#21255) +expr_containers(#21259,#20001) #21261=* -typeexprs(#21261,0,#21255,-3,"T") -hasLocation(#21261,#20646) -expr_containers(#21261,#21255) -literals("T","T",#21261) -typebind(#21261,#21257) +exprs(#21261,9,#21259,0,"new (x: T) => T") +hasLocation(#21261,#21260) +enclosing_stmt(#21261,#21255) +expr_containers(#21261,#20001) #21262=* -typeexprs(#21262,0,#21255,-6,"T") -hasLocation(#21262,#20640) -expr_containers(#21262,#21255) -literals("T","T",#21262) -typebind(#21262,#21257) -#21263=* -typeexprs(#21263,22,#21255,-7,"T") -hasLocation(#21263,#20630) -expr_containers(#21263,#21255) -#21264=* -typeexprs(#21264,1,#21263,0,"T") -hasLocation(#21264,#20630) -expr_containers(#21264,#21255) -literals("T","T",#21264) -typedecl(#21264,#21257) -#21265=* -stmts(#21265,18,#20001,36,"var key ... f Point") -hasLocation(#21265,#20085) -stmt_containers(#21265,#20001) +scopes(#21262,1) +scopenodes(#21261,#21262) +scopenesting(#21262,#20000) +#21263=@"var;{this};{#21262}" +variables(#21263,"this",#21262) +#21264=@"local_type_name;{T};{#21262}" +local_type_names(#21264,"T",#21262) +#21265=@"var;{x};{#21262}" +variables(#21265,"x",#21262) #21266=* -exprs(#21266,64,#21265,0,"keyofVa ... f Point") -#21267=@"loc,{#10000},42,5,42,35" -locations_default(#21267,#10000,42,5,42,35) -hasLocation(#21266,#21267) -enclosing_stmt(#21266,#21265) -expr_containers(#21266,#20001) +exprs(#21266,78,#21261,0,"x") +hasLocation(#21266,#20636) +expr_containers(#21266,#21261) +literals("x","x",#21266) +decl(#21266,#21265) +#21267=@"var;{arguments};{#21262}" +variables(#21267,"arguments",#21262) +is_arguments_object(#21267) #21268=* -exprs(#21268,78,#21266,0,"keyofVar") -hasLocation(#21268,#20652) -enclosing_stmt(#21268,#21265) -expr_containers(#21268,#20001) -literals("keyofVar","keyofVar",#21268) -decl(#21268,#20962) +typeexprs(#21268,0,#21261,-3,"T") +hasLocation(#21268,#20646) +expr_containers(#21268,#21261) +literals("T","T",#21268) +typebind(#21268,#21264) #21269=* -typeexprs(#21269,12,#21266,2,"keyof Point") -#21270=@"loc,{#10000},42,25,42,35" -locations_default(#21270,#10000,42,25,42,35) -hasLocation(#21269,#21270) -enclosing_stmt(#21269,#21265) -expr_containers(#21269,#20001) +typeexprs(#21269,0,#21261,-6,"T") +hasLocation(#21269,#20640) +expr_containers(#21269,#21261) +literals("T","T",#21269) +typebind(#21269,#21264) +#21270=* +typeexprs(#21270,22,#21261,-7,"T") +hasLocation(#21270,#20630) +expr_containers(#21270,#21261) #21271=* -typeexprs(#21271,0,#21269,0,"Point") -hasLocation(#21271,#20658) -enclosing_stmt(#21271,#21265) -expr_containers(#21271,#20001) -literals("Point","Point",#21271) -typebind(#21271,#20975) +typeexprs(#21271,1,#21270,0,"T") +hasLocation(#21271,#20630) +expr_containers(#21271,#21261) +literals("T","T",#21271) +typedecl(#21271,#21264) #21272=* -stmts(#21272,18,#20001,37,"var ind ... nt[""x""]") -hasLocation(#21272,#20087) +stmts(#21272,18,#20001,36,"var key ... f Point") +hasLocation(#21272,#20085) stmt_containers(#21272,#20001) #21273=* -exprs(#21273,64,#21272,0,"indexed ... nt[""x""]") -#21274=@"loc,{#10000},43,5,43,34" -locations_default(#21274,#10000,43,5,43,34) +exprs(#21273,64,#21272,0,"keyofVa ... f Point") +#21274=@"loc,{#10000},42,5,42,35" +locations_default(#21274,#10000,42,5,42,35) hasLocation(#21273,#21274) enclosing_stmt(#21273,#21272) expr_containers(#21273,#20001) #21275=* -exprs(#21275,78,#21273,0,"indexedVar") -hasLocation(#21275,#20662) +exprs(#21275,78,#21273,0,"keyofVar") +hasLocation(#21275,#20652) enclosing_stmt(#21275,#21272) expr_containers(#21275,#20001) -literals("indexedVar","indexedVar",#21275) -decl(#21275,#20963) +literals("keyofVar","keyofVar",#21275) +decl(#21275,#20962) #21276=* -typeexprs(#21276,8,#21273,2,"Point[""x""]") -#21277=@"loc,{#10000},43,25,43,34" -locations_default(#21277,#10000,43,25,43,34) +typeexprs(#21276,12,#21273,2,"keyof Point") +#21277=@"loc,{#10000},42,25,42,35" +locations_default(#21277,#10000,42,25,42,35) hasLocation(#21276,#21277) enclosing_stmt(#21276,#21272) expr_containers(#21276,#20001) #21278=* typeexprs(#21278,0,#21276,0,"Point") -hasLocation(#21278,#20666) +hasLocation(#21278,#20658) enclosing_stmt(#21278,#21272) expr_containers(#21278,#20001) literals("Point","Point",#21278) typebind(#21278,#20975) #21279=* -typeexprs(#21279,3,#21276,1,"""x""") -hasLocation(#21279,#20670) -enclosing_stmt(#21279,#21272) -expr_containers(#21279,#20001) -literals("x","""x""",#21279) +stmts(#21279,18,#20001,37,"var ind ... nt[""x""]") +hasLocation(#21279,#20087) +stmt_containers(#21279,#20001) #21280=* -stmts(#21280,18,#20001,38,"var typ ... eof x31") -hasLocation(#21280,#20089) -stmt_containers(#21280,#20001) -#21281=* -exprs(#21281,64,#21280,0,"typeofV ... eof x31") -#21282=@"loc,{#10000},44,5,44,34" -locations_default(#21282,#10000,44,5,44,34) -hasLocation(#21281,#21282) -enclosing_stmt(#21281,#21280) -expr_containers(#21281,#20001) +exprs(#21280,64,#21279,0,"indexed ... nt[""x""]") +#21281=@"loc,{#10000},43,5,43,34" +locations_default(#21281,#10000,43,5,43,34) +hasLocation(#21280,#21281) +enclosing_stmt(#21280,#21279) +expr_containers(#21280,#20001) +#21282=* +exprs(#21282,78,#21280,0,"indexedVar") +hasLocation(#21282,#20662) +enclosing_stmt(#21282,#21279) +expr_containers(#21282,#20001) +literals("indexedVar","indexedVar",#21282) +decl(#21282,#20963) #21283=* -exprs(#21283,78,#21281,0,"typeofVar") -hasLocation(#21283,#20676) -enclosing_stmt(#21283,#21280) +typeexprs(#21283,8,#21280,2,"Point[""x""]") +#21284=@"loc,{#10000},43,25,43,34" +locations_default(#21284,#10000,43,25,43,34) +hasLocation(#21283,#21284) +enclosing_stmt(#21283,#21279) expr_containers(#21283,#20001) -literals("typeofVar","typeofVar",#21283) -decl(#21283,#20964) -#21284=* -typeexprs(#21284,16,#21281,2,"typeof x31") -#21285=@"loc,{#10000},44,25,44,34" -locations_default(#21285,#10000,44,25,44,34) -hasLocation(#21284,#21285) -enclosing_stmt(#21284,#21280) -expr_containers(#21284,#20001) +#21285=* +typeexprs(#21285,0,#21283,0,"Point") +hasLocation(#21285,#20666) +enclosing_stmt(#21285,#21279) +expr_containers(#21285,#20001) +literals("Point","Point",#21285) +typebind(#21285,#20975) #21286=* -typeexprs(#21286,17,#21284,0,"x31") -hasLocation(#21286,#20682) -enclosing_stmt(#21286,#21280) +typeexprs(#21286,3,#21283,1,"""x""") +hasLocation(#21286,#20670) +enclosing_stmt(#21286,#21279) expr_containers(#21286,#20001) -literals("x31","x31",#21286) -#21287=@"var;{x31};{#20000}" -variables(#21287,"x31",#20000) -bind(#21286,#21287) +literals("x","""x""",#21286) +#21287=* +stmts(#21287,18,#20001,38,"var typ ... eof x31") +hasLocation(#21287,#20089) +stmt_containers(#21287,#20001) #21288=* -stmts(#21288,18,#20001,39,"var map ... : any }") -hasLocation(#21288,#20091) -stmt_containers(#21288,#20001) -#21289=* -exprs(#21289,64,#21288,0,"mappedV ... : any }") -#21290=@"loc,{#10000},45,5,45,51" -locations_default(#21290,#10000,45,5,45,51) -hasLocation(#21289,#21290) -enclosing_stmt(#21289,#21288) -expr_containers(#21289,#20001) +exprs(#21288,64,#21287,0,"typeofV ... eof x31") +#21289=@"loc,{#10000},44,5,44,34" +locations_default(#21289,#10000,44,5,44,34) +hasLocation(#21288,#21289) +enclosing_stmt(#21288,#21287) +expr_containers(#21288,#20001) +#21290=* +exprs(#21290,78,#21288,0,"typeofVar") +hasLocation(#21290,#20676) +enclosing_stmt(#21290,#21287) +expr_containers(#21290,#20001) +literals("typeofVar","typeofVar",#21290) +decl(#21290,#20964) #21291=* -exprs(#21291,78,#21289,0,"mappedVar") -hasLocation(#21291,#20686) -enclosing_stmt(#21291,#21288) +typeexprs(#21291,16,#21288,2,"typeof x31") +#21292=@"loc,{#10000},44,25,44,34" +locations_default(#21292,#10000,44,25,44,34) +hasLocation(#21291,#21292) +enclosing_stmt(#21291,#21287) expr_containers(#21291,#20001) -literals("mappedVar","mappedVar",#21291) -decl(#21291,#20965) -#21292=* -typeexprs(#21292,27,#21289,2,"{ [K in ... : any }") -#21293=@"loc,{#10000},45,25,45,51" -locations_default(#21293,#10000,45,25,45,51) -hasLocation(#21292,#21293) -enclosing_stmt(#21292,#21288) -expr_containers(#21292,#20001) -#21294=* -scopes(#21294,13) -scopenodes(#21292,#21294) -scopenesting(#21294,#20000) -#21295=@"local_type_name;{K};{#21294}" -local_type_names(#21295,"K",#21294) +#21293=* +typeexprs(#21293,17,#21291,0,"x31") +hasLocation(#21293,#20682) +enclosing_stmt(#21293,#21287) +expr_containers(#21293,#20001) +literals("x31","x31",#21293) +#21294=@"var;{x31};{#20000}" +variables(#21294,"x31",#20000) +bind(#21293,#21294) +#21295=* +stmts(#21295,18,#20001,39,"var map ... : any }") +hasLocation(#21295,#20091) +stmt_containers(#21295,#20001) #21296=* -typeexprs(#21296,22,#21292,0,"K in keyof Point") -#21297=@"loc,{#10000},45,28,45,43" -locations_default(#21297,#10000,45,28,45,43) +exprs(#21296,64,#21295,0,"mappedV ... : any }") +#21297=@"loc,{#10000},45,5,45,51" +locations_default(#21297,#10000,45,5,45,51) hasLocation(#21296,#21297) -enclosing_stmt(#21296,#21288) +enclosing_stmt(#21296,#21295) expr_containers(#21296,#20001) #21298=* -typeexprs(#21298,1,#21296,0,"K") -hasLocation(#21298,#20694) -enclosing_stmt(#21298,#21288) +exprs(#21298,78,#21296,0,"mappedVar") +hasLocation(#21298,#20686) +enclosing_stmt(#21298,#21295) expr_containers(#21298,#20001) -literals("K","K",#21298) -typedecl(#21298,#21295) +literals("mappedVar","mappedVar",#21298) +decl(#21298,#20965) #21299=* -typeexprs(#21299,12,#21296,1,"keyof Point") -#21300=@"loc,{#10000},45,33,45,43" -locations_default(#21300,#10000,45,33,45,43) +typeexprs(#21299,27,#21296,2,"{ [K in ... : any }") +#21300=@"loc,{#10000},45,25,45,51" +locations_default(#21300,#10000,45,25,45,51) hasLocation(#21299,#21300) -enclosing_stmt(#21299,#21288) +enclosing_stmt(#21299,#21295) expr_containers(#21299,#20001) #21301=* -typeexprs(#21301,0,#21299,0,"Point") -hasLocation(#21301,#20700) -enclosing_stmt(#21301,#21288) -expr_containers(#21301,#20001) -literals("Point","Point",#21301) -typebind(#21301,#20975) -#21302=* -typeexprs(#21302,2,#21292,1,"any") -hasLocation(#21302,#20706) -enclosing_stmt(#21302,#21288) -expr_containers(#21302,#20001) -literals("any","any",#21302) +scopes(#21301,13) +scopenodes(#21299,#21301) +scopenesting(#21301,#20000) +#21302=@"local_type_name;{K};{#21301}" +local_type_names(#21302,"K",#21301) #21303=* -stmts(#21303,18,#20001,40,"var par ... umber);") -hasLocation(#21303,#20093) -stmt_containers(#21303,#20001) -#21304=* -exprs(#21304,64,#21303,0,"parenth ... number)") -#21305=@"loc,{#10000},46,5,46,32" -locations_default(#21305,#10000,46,5,46,32) -hasLocation(#21304,#21305) -enclosing_stmt(#21304,#21303) -expr_containers(#21304,#20001) +typeexprs(#21303,22,#21299,0,"K in keyof Point") +#21304=@"loc,{#10000},45,28,45,43" +locations_default(#21304,#10000,45,28,45,43) +hasLocation(#21303,#21304) +enclosing_stmt(#21303,#21295) +expr_containers(#21303,#20001) +#21305=* +typeexprs(#21305,1,#21303,0,"K") +hasLocation(#21305,#20694) +enclosing_stmt(#21305,#21295) +expr_containers(#21305,#20001) +literals("K","K",#21305) +typedecl(#21305,#21302) #21306=* -exprs(#21306,78,#21304,0,"parenthesizedVar") -hasLocation(#21306,#20712) -enclosing_stmt(#21306,#21303) +typeexprs(#21306,12,#21303,1,"keyof Point") +#21307=@"loc,{#10000},45,33,45,43" +locations_default(#21307,#10000,45,33,45,43) +hasLocation(#21306,#21307) +enclosing_stmt(#21306,#21295) expr_containers(#21306,#20001) -literals("parenthesizedVar","parenthesizedVar",#21306) -decl(#21306,#20966) -#21307=* -typeexprs(#21307,10,#21304,2,"(number)") -#21308=@"loc,{#10000},46,25,46,32" -locations_default(#21308,#10000,46,25,46,32) -hasLocation(#21307,#21308) -enclosing_stmt(#21307,#21303) -expr_containers(#21307,#20001) +#21308=* +typeexprs(#21308,0,#21306,0,"Point") +hasLocation(#21308,#20700) +enclosing_stmt(#21308,#21295) +expr_containers(#21308,#20001) +literals("Point","Point",#21308) +typebind(#21308,#20975) #21309=* -typeexprs(#21309,2,#21307,0,"number") -hasLocation(#21309,#20718) -enclosing_stmt(#21309,#21303) +typeexprs(#21309,2,#21299,1,"any") +hasLocation(#21309,#20706) +enclosing_stmt(#21309,#21295) expr_containers(#21309,#20001) -literals("number","number",#21309) +literals("any","any",#21309) #21310=* -stmts(#21310,18,#20001,41,"var nam ... N.I;") -hasLocation(#21310,#20095) +stmts(#21310,18,#20001,40,"var par ... umber);") +hasLocation(#21310,#20093) stmt_containers(#21310,#20001) #21311=* -exprs(#21311,64,#21310,0,"namespa ... : N.I") -#21312=@"loc,{#10000},47,5,47,27" -locations_default(#21312,#10000,47,5,47,27) +exprs(#21311,64,#21310,0,"parenth ... number)") +#21312=@"loc,{#10000},46,5,46,32" +locations_default(#21312,#10000,46,5,46,32) hasLocation(#21311,#21312) enclosing_stmt(#21311,#21310) expr_containers(#21311,#20001) #21313=* -exprs(#21313,78,#21311,0,"namespaceTypeVar") -hasLocation(#21313,#20726) +exprs(#21313,78,#21311,0,"parenthesizedVar") +hasLocation(#21313,#20712) enclosing_stmt(#21313,#21310) expr_containers(#21313,#20001) -literals("namespaceTypeVar","namespaceTypeVar",#21313) -decl(#21313,#20967) +literals("parenthesizedVar","parenthesizedVar",#21313) +decl(#21313,#20966) #21314=* -typeexprs(#21314,13,#21311,2,"N.I") -#21315=@"loc,{#10000},47,25,47,27" -locations_default(#21315,#10000,47,25,47,27) +typeexprs(#21314,10,#21311,2,"(number)") +#21315=@"loc,{#10000},46,25,46,32" +locations_default(#21315,#10000,46,25,46,32) hasLocation(#21314,#21315) enclosing_stmt(#21314,#21310) expr_containers(#21314,#20001) #21316=* -typeexprs(#21316,25,#21314,0,"N") -hasLocation(#21316,#20730) +typeexprs(#21316,2,#21314,0,"number") +hasLocation(#21316,#20718) enclosing_stmt(#21316,#21310) expr_containers(#21316,#20001) -literals("N","N",#21316) -namespacebind(#21316,#20970) +literals("number","number",#21316) #21317=* -typeexprs(#21317,15,#21314,1,"I") -hasLocation(#21317,#20734) -enclosing_stmt(#21317,#21310) -expr_containers(#21317,#20001) -literals("I","I",#21317) +stmts(#21317,18,#20001,41,"var nam ... N.I;") +hasLocation(#21317,#20095) +stmt_containers(#21317,#20001) #21318=* -stmts(#21318,18,#20001,42,"var nam ... umber>;") -hasLocation(#21318,#20097) -stmt_containers(#21318,#20001) -#21319=* -exprs(#21319,64,#21318,0,"namespa ... number>") -#21320=@"loc,{#10000},48,5,48,40" -locations_default(#21320,#10000,48,5,48,40) -hasLocation(#21319,#21320) -enclosing_stmt(#21319,#21318) -expr_containers(#21319,#20001) +exprs(#21318,64,#21317,0,"namespa ... : N.I") +#21319=@"loc,{#10000},47,5,47,27" +locations_default(#21319,#10000,47,5,47,27) +hasLocation(#21318,#21319) +enclosing_stmt(#21318,#21317) +expr_containers(#21318,#20001) +#21320=* +exprs(#21320,78,#21318,0,"namespaceTypeVar") +hasLocation(#21320,#20726) +enclosing_stmt(#21320,#21317) +expr_containers(#21320,#20001) +literals("namespaceTypeVar","namespaceTypeVar",#21320) +decl(#21320,#20967) #21321=* -exprs(#21321,78,#21319,0,"namespa ... TypeVar") -hasLocation(#21321,#20740) -enclosing_stmt(#21321,#21318) +typeexprs(#21321,13,#21318,2,"N.I") +#21322=@"loc,{#10000},47,25,47,27" +locations_default(#21322,#10000,47,25,47,27) +hasLocation(#21321,#21322) +enclosing_stmt(#21321,#21317) expr_containers(#21321,#20001) -literals("namespaceGenericTypeVar","namespaceGenericTypeVar",#21321) -decl(#21321,#20968) -#21322=* -typeexprs(#21322,14,#21319,2,"N.J") -#21323=@"loc,{#10000},48,30,48,40" -locations_default(#21323,#10000,48,30,48,40) -hasLocation(#21322,#21323) -enclosing_stmt(#21322,#21318) -expr_containers(#21322,#20001) +#21323=* +typeexprs(#21323,25,#21321,0,"N") +hasLocation(#21323,#20730) +enclosing_stmt(#21323,#21317) +expr_containers(#21323,#20001) +literals("N","N",#21323) +namespacebind(#21323,#20970) #21324=* -typeexprs(#21324,13,#21322,-1,"N.J") -#21325=@"loc,{#10000},48,30,48,32" -locations_default(#21325,#10000,48,30,48,32) -hasLocation(#21324,#21325) -enclosing_stmt(#21324,#21318) +typeexprs(#21324,15,#21321,1,"I") +hasLocation(#21324,#20734) +enclosing_stmt(#21324,#21317) expr_containers(#21324,#20001) +literals("I","I",#21324) +#21325=* +stmts(#21325,18,#20001,42,"var nam ... umber>;") +hasLocation(#21325,#20097) +stmt_containers(#21325,#20001) #21326=* -typeexprs(#21326,25,#21324,0,"N") -hasLocation(#21326,#20744) -enclosing_stmt(#21326,#21318) +exprs(#21326,64,#21325,0,"namespa ... number>") +#21327=@"loc,{#10000},48,5,48,40" +locations_default(#21327,#10000,48,5,48,40) +hasLocation(#21326,#21327) +enclosing_stmt(#21326,#21325) expr_containers(#21326,#20001) -literals("N","N",#21326) -namespacebind(#21326,#20970) -#21327=* -typeexprs(#21327,15,#21324,1,"J") -hasLocation(#21327,#20748) -enclosing_stmt(#21327,#21318) -expr_containers(#21327,#20001) -literals("J","J",#21327) #21328=* -typeexprs(#21328,2,#21322,0,"number") -hasLocation(#21328,#20752) -enclosing_stmt(#21328,#21318) +exprs(#21328,78,#21326,0,"namespa ... TypeVar") +hasLocation(#21328,#20740) +enclosing_stmt(#21328,#21325) expr_containers(#21328,#20001) -literals("number","number",#21328) +literals("namespaceGenericTypeVar","namespaceGenericTypeVar",#21328) +decl(#21328,#20968) #21329=* -stmts(#21329,34,#20001,43,"interfa ... ): T;\n}") -#21330=@"loc,{#10000},50,1,53,1" -locations_default(#21330,#10000,50,1,53,1) +typeexprs(#21329,14,#21326,2,"N.J") +#21330=@"loc,{#10000},48,30,48,40" +locations_default(#21330,#10000,48,30,48,40) hasLocation(#21329,#21330) -stmt_containers(#21329,#20001) +enclosing_stmt(#21329,#21325) +expr_containers(#21329,#20001) #21331=* -scopes(#21331,11) -scopenodes(#21329,#21331) -scopenesting(#21331,#20000) -#21332=@"local_type_name;{T};{#21331}" -local_type_names(#21332,"T",#21331) +typeexprs(#21331,13,#21329,-1,"N.J") +#21332=@"loc,{#10000},48,30,48,32" +locations_default(#21332,#10000,48,30,48,32) +hasLocation(#21331,#21332) +enclosing_stmt(#21331,#21325) +expr_containers(#21331,#20001) #21333=* -typeexprs(#21333,22,#21329,-2,"T") -hasLocation(#21333,#20764) -enclosing_stmt(#21333,#21329) +typeexprs(#21333,25,#21331,0,"N") +hasLocation(#21333,#20744) +enclosing_stmt(#21333,#21325) expr_containers(#21333,#20001) +literals("N","N",#21333) +namespacebind(#21333,#20970) #21334=* -typeexprs(#21334,1,#21333,0,"T") -hasLocation(#21334,#20764) -enclosing_stmt(#21334,#21329) +typeexprs(#21334,15,#21331,1,"J") +hasLocation(#21334,#20748) +enclosing_stmt(#21334,#21325) expr_containers(#21334,#20001) -literals("T","T",#21334) -typedecl(#21334,#21332) +literals("J","J",#21334) #21335=* -typeexprs(#21335,1,#21329,0,"GenericInterface") -hasLocation(#21335,#20760) -enclosing_stmt(#21335,#21329) +typeexprs(#21335,2,#21329,0,"number") +hasLocation(#21335,#20752) +enclosing_stmt(#21335,#21325) expr_containers(#21335,#20001) -literals("GenericInterface","GenericInterface",#21335) -typedecl(#21335,#20976) +literals("number","number",#21335) #21336=* -properties(#21336,#21329,2,8,"field: T;") -#21337=@"loc,{#10000},51,3,51,11" -locations_default(#21337,#10000,51,3,51,11) +stmts(#21336,34,#20001,43,"interfa ... ): T;\n}") +#21337=@"loc,{#10000},50,1,53,1" +locations_default(#21337,#10000,50,1,53,1) hasLocation(#21336,#21337) +stmt_containers(#21336,#20001) #21338=* -exprs(#21338,0,#21336,0,"field") -hasLocation(#21338,#20770) -enclosing_stmt(#21338,#21329) -expr_containers(#21338,#20001) -literals("field","field",#21338) -is_abstract_member(#21336) -#21339=* -typeexprs(#21339,0,#21336,2,"T") -hasLocation(#21339,#20774) -enclosing_stmt(#21339,#21329) -expr_containers(#21339,#20001) -literals("T","T",#21339) -typebind(#21339,#21332) +scopes(#21338,11) +scopenodes(#21336,#21338) +scopenesting(#21338,#20000) +#21339=@"local_type_name;{T};{#21338}" +local_type_names(#21339,"T",#21338) #21340=* -properties(#21340,#21329,3,0,"method(x: T): T;") -#21341=@"loc,{#10000},52,3,52,18" -locations_default(#21341,#10000,52,3,52,18) -hasLocation(#21340,#21341) +typeexprs(#21340,22,#21336,-2,"T") +hasLocation(#21340,#20764) +enclosing_stmt(#21340,#21336) +expr_containers(#21340,#20001) +#21341=* +typeexprs(#21341,1,#21340,0,"T") +hasLocation(#21341,#20764) +enclosing_stmt(#21341,#21336) +expr_containers(#21341,#20001) +literals("T","T",#21341) +typedecl(#21341,#21339) #21342=* -exprs(#21342,0,#21340,0,"method") -hasLocation(#21342,#20778) -enclosing_stmt(#21342,#21329) +typeexprs(#21342,1,#21336,0,"GenericInterface") +hasLocation(#21342,#20760) +enclosing_stmt(#21342,#21336) expr_containers(#21342,#20001) -literals("method","method",#21342) +literals("GenericInterface","GenericInterface",#21342) +typedecl(#21342,#20976) #21343=* -exprs(#21343,9,#21340,1,"method(x: T): T;") -hasLocation(#21343,#21341) -enclosing_stmt(#21343,#21329) -expr_containers(#21343,#20001) -#21344=* -scopes(#21344,1) -scopenodes(#21343,#21344) -scopenesting(#21344,#21331) -#21345=@"var;{x};{#21344}" -variables(#21345,"x",#21344) +properties(#21343,#21336,2,8,"field: T;") +#21344=@"loc,{#10000},51,3,51,11" +locations_default(#21344,#10000,51,3,51,11) +hasLocation(#21343,#21344) +#21345=* +exprs(#21345,0,#21343,0,"field") +hasLocation(#21345,#20770) +enclosing_stmt(#21345,#21336) +expr_containers(#21345,#20001) +literals("field","field",#21345) +is_abstract_member(#21343) #21346=* -exprs(#21346,78,#21343,0,"x") -hasLocation(#21346,#20782) -expr_containers(#21346,#21343) -literals("x","x",#21346) -decl(#21346,#21345) -#21347=@"var;{arguments};{#21344}" -variables(#21347,"arguments",#21344) -is_arguments_object(#21347) -#21348=* -typeexprs(#21348,0,#21343,-3,"T") -hasLocation(#21348,#20792) -expr_containers(#21348,#21343) -literals("T","T",#21348) -typebind(#21348,#21332) +typeexprs(#21346,0,#21343,2,"T") +hasLocation(#21346,#20774) +enclosing_stmt(#21346,#21336) +expr_containers(#21346,#20001) +literals("T","T",#21346) +typebind(#21346,#21339) +#21347=* +properties(#21347,#21336,3,0,"method(x: T): T;") +#21348=@"loc,{#10000},52,3,52,18" +locations_default(#21348,#10000,52,3,52,18) +hasLocation(#21347,#21348) #21349=* -typeexprs(#21349,0,#21343,-6,"T") -hasLocation(#21349,#20786) -expr_containers(#21349,#21343) -literals("T","T",#21349) -typebind(#21349,#21332) -is_method(#21340) -is_abstract_member(#21340) +exprs(#21349,0,#21347,0,"method") +hasLocation(#21349,#20778) +enclosing_stmt(#21349,#21336) +expr_containers(#21349,#20001) +literals("method","method",#21349) #21350=* -stmts(#21350,26,#20001,44,"abstrac ... ): T;\n}") -#21351=@"loc,{#10000},54,1,57,1" -locations_default(#21351,#10000,54,1,57,1) -hasLocation(#21350,#21351) -stmt_containers(#21350,#20001) -is_abstract_class(#21350) -#21352=* -exprs(#21352,78,#21350,0,"GenericClass") -hasLocation(#21352,#20801) -enclosing_stmt(#21352,#21350) -expr_containers(#21352,#20001) -literals("GenericClass","GenericClass",#21352) -decl(#21352,#20971) -typedecl(#21352,#20977) -#21353=* -scopes(#21353,10) -scopenodes(#21350,#21353) -scopenesting(#21353,#20000) -#21354=@"local_type_name;{T};{#21353}" -local_type_names(#21354,"T",#21353) -#21355=* -typeexprs(#21355,22,#21350,-3,"T") -hasLocation(#21355,#20805) -enclosing_stmt(#21355,#21350) -expr_containers(#21355,#20001) +exprs(#21350,9,#21347,1,"method(x: T): T;") +hasLocation(#21350,#21348) +enclosing_stmt(#21350,#21336) +expr_containers(#21350,#20001) +#21351=* +scopes(#21351,1) +scopenodes(#21350,#21351) +scopenesting(#21351,#21338) +#21352=@"var;{this};{#21351}" +variables(#21352,"this",#21351) +#21353=@"var;{x};{#21351}" +variables(#21353,"x",#21351) +#21354=* +exprs(#21354,78,#21350,0,"x") +hasLocation(#21354,#20782) +expr_containers(#21354,#21350) +literals("x","x",#21354) +decl(#21354,#21353) +#21355=@"var;{arguments};{#21351}" +variables(#21355,"arguments",#21351) +is_arguments_object(#21355) #21356=* -typeexprs(#21356,1,#21355,0,"T") -hasLocation(#21356,#20805) -enclosing_stmt(#21356,#21350) -expr_containers(#21356,#20001) +typeexprs(#21356,0,#21350,-3,"T") +hasLocation(#21356,#20792) +expr_containers(#21356,#21350) literals("T","T",#21356) -typedecl(#21356,#21354) +typebind(#21356,#21339) #21357=* -typeexprs(#21357,14,#21350,-1,"GenericInterface") -#21358=@"loc,{#10000},54,43,54,61" -locations_default(#21358,#10000,54,43,54,61) -hasLocation(#21357,#21358) -enclosing_stmt(#21357,#21350) -expr_containers(#21357,#20001) -#21359=* -typeexprs(#21359,0,#21357,-1,"GenericInterface") -hasLocation(#21359,#20811) -enclosing_stmt(#21359,#21350) -expr_containers(#21359,#20001) -literals("GenericInterface","GenericInterface",#21359) -typebind(#21359,#20976) +typeexprs(#21357,0,#21350,-6,"T") +hasLocation(#21357,#20786) +expr_containers(#21357,#21350) +literals("T","T",#21357) +typebind(#21357,#21339) +is_method(#21347) +is_abstract_member(#21347) +#21358=* +stmts(#21358,26,#20001,44,"abstrac ... ): T;\n}") +#21359=@"loc,{#10000},54,1,57,1" +locations_default(#21359,#10000,54,1,57,1) +hasLocation(#21358,#21359) +stmt_containers(#21358,#20001) +is_abstract_class(#21358) #21360=* -typeexprs(#21360,0,#21357,0,"T") -hasLocation(#21360,#20815) -enclosing_stmt(#21360,#21350) +exprs(#21360,78,#21358,0,"GenericClass") +hasLocation(#21360,#20801) +enclosing_stmt(#21360,#21358) expr_containers(#21360,#20001) -literals("T","T",#21360) -typebind(#21360,#21354) +literals("GenericClass","GenericClass",#21360) +decl(#21360,#20971) +typedecl(#21360,#20977) #21361=* -properties(#21361,#21350,2,8,"field: T") -#21362=@"loc,{#10000},55,3,55,10" -locations_default(#21362,#10000,55,3,55,10) -hasLocation(#21361,#21362) -#21363=* +scopes(#21361,10) +scopenodes(#21358,#21361) +scopenesting(#21361,#20000) +#21362=@"var;{this};{#21361}" +variables(#21362,"this",#21361) +#21363=@"local_type_name;{T};{#21361}" +local_type_names(#21363,"T",#21361) #21364=* -exprs(#21364,0,#21361,0,"field") -hasLocation(#21364,#20821) -expr_containers(#21364,#21363) -literals("field","field",#21364) +typeexprs(#21364,22,#21358,-3,"T") +hasLocation(#21364,#20805) +enclosing_stmt(#21364,#21358) +expr_containers(#21364,#20001) #21365=* -typeexprs(#21365,0,#21361,2,"T") -hasLocation(#21365,#20825) -enclosing_stmt(#21365,#21350) +typeexprs(#21365,1,#21364,0,"T") +hasLocation(#21365,#20805) +enclosing_stmt(#21365,#21358) expr_containers(#21365,#20001) literals("T","T",#21365) -typebind(#21365,#21354) +typedecl(#21365,#21363) #21366=* -properties(#21366,#21350,3,0,"abstrac ... :T): T;") -#21367=@"loc,{#10000},56,3,56,26" -locations_default(#21367,#10000,56,3,56,26) +typeexprs(#21366,14,#21358,-1,"GenericInterface") +#21367=@"loc,{#10000},54,43,54,61" +locations_default(#21367,#10000,54,43,54,61) hasLocation(#21366,#21367) +enclosing_stmt(#21366,#21358) +expr_containers(#21366,#20001) #21368=* -exprs(#21368,0,#21366,0,"method") -hasLocation(#21368,#20829) -enclosing_stmt(#21368,#21350) +typeexprs(#21368,0,#21366,-1,"GenericInterface") +hasLocation(#21368,#20811) +enclosing_stmt(#21368,#21358) expr_containers(#21368,#20001) -literals("method","method",#21368) +literals("GenericInterface","GenericInterface",#21368) +typebind(#21368,#20976) #21369=* -exprs(#21369,9,#21366,1,"abstrac ... :T): T;") -hasLocation(#21369,#21367) -enclosing_stmt(#21369,#21350) +typeexprs(#21369,0,#21366,0,"T") +hasLocation(#21369,#20815) +enclosing_stmt(#21369,#21358) expr_containers(#21369,#20001) +literals("T","T",#21369) +typebind(#21369,#21363) #21370=* -scopes(#21370,1) -scopenodes(#21369,#21370) -scopenesting(#21370,#21353) -#21371=@"var;{x};{#21370}" -variables(#21371,"x",#21370) +properties(#21370,#21358,2,8,"field: T") +#21371=@"loc,{#10000},55,3,55,10" +locations_default(#21371,#10000,55,3,55,10) +hasLocation(#21370,#21371) #21372=* -exprs(#21372,78,#21369,0,"x") -hasLocation(#21372,#20833) -expr_containers(#21372,#21369) -literals("x","x",#21372) -decl(#21372,#21371) -#21373=@"var;{arguments};{#21370}" -variables(#21373,"arguments",#21370) -is_arguments_object(#21373) +#21373=* +exprs(#21373,0,#21370,0,"field") +hasLocation(#21373,#20821) +expr_containers(#21373,#21372) +literals("field","field",#21373) #21374=* -typeexprs(#21374,0,#21369,-3,"T") -hasLocation(#21374,#20843) -expr_containers(#21374,#21369) +typeexprs(#21374,0,#21370,2,"T") +hasLocation(#21374,#20825) +enclosing_stmt(#21374,#21358) +expr_containers(#21374,#20001) literals("T","T",#21374) -typebind(#21374,#21354) +typebind(#21374,#21363) #21375=* -typeexprs(#21375,0,#21369,-6,"T") -hasLocation(#21375,#20837) -expr_containers(#21375,#21369) -literals("T","T",#21375) -typebind(#21375,#21354) -is_method(#21366) -is_abstract_member(#21366) -#21376=* -properties(#21376,#21350,4,0,"constructor() {}") -#21377=@"loc,{#10000},54,63,54,62" -locations_default(#21377,#10000,54,63,54,62) -hasLocation(#21376,#21377) +properties(#21375,#21358,3,0,"abstrac ... :T): T;") +#21376=@"loc,{#10000},56,3,56,26" +locations_default(#21376,#10000,56,3,56,26) +hasLocation(#21375,#21376) +#21377=* +exprs(#21377,0,#21375,0,"method") +hasLocation(#21377,#20829) +enclosing_stmt(#21377,#21358) +expr_containers(#21377,#20001) +literals("method","method",#21377) #21378=* -exprs(#21378,0,#21376,0,"constructor") -hasLocation(#21378,#21377) -enclosing_stmt(#21378,#21350) +exprs(#21378,9,#21375,1,"abstrac ... :T): T;") +hasLocation(#21378,#21376) +enclosing_stmt(#21378,#21358) expr_containers(#21378,#20001) -literals("constructor","constructor",#21378) -exprs(#21363,9,#21376,1,"() {}") -hasLocation(#21363,#21377) -enclosing_stmt(#21363,#21350) -expr_containers(#21363,#20001) #21379=* scopes(#21379,1) -scopenodes(#21363,#21379) -scopenesting(#21379,#21353) -#21380=@"var;{arguments};{#21379}" -variables(#21380,"arguments",#21379) -is_arguments_object(#21380) -#21381=* -stmts(#21381,1,#21363,-2,"{}") -hasLocation(#21381,#21377) -stmt_containers(#21381,#21363) -is_method(#21376) +scopenodes(#21378,#21379) +scopenesting(#21379,#21361) +#21380=@"var;{this};{#21379}" +variables(#21380,"this",#21379) +#21381=@"var;{x};{#21379}" +variables(#21381,"x",#21379) #21382=* -stmts(#21382,26,#20001,45,"class Fish {}") -hasLocation(#21382,#20119) -stmt_containers(#21382,#20001) -#21383=* -exprs(#21383,78,#21382,0,"Fish") -hasLocation(#21383,#20850) -enclosing_stmt(#21383,#21382) -expr_containers(#21383,#20001) -literals("Fish","Fish",#21383) -decl(#21383,#20972) -typedecl(#21383,#20978) +exprs(#21382,78,#21378,0,"x") +hasLocation(#21382,#20833) +expr_containers(#21382,#21378) +literals("x","x",#21382) +decl(#21382,#21381) +#21383=@"var;{arguments};{#21379}" +variables(#21383,"arguments",#21379) +is_arguments_object(#21383) #21384=* -scopes(#21384,10) -scopenodes(#21382,#21384) -scopenesting(#21384,#20000) +typeexprs(#21384,0,#21378,-3,"T") +hasLocation(#21384,#20843) +expr_containers(#21384,#21378) +literals("T","T",#21384) +typebind(#21384,#21363) #21385=* -properties(#21385,#21382,2,0,"constructor() {}") -#21386=@"loc,{#10000},59,12,59,11" -locations_default(#21386,#10000,59,12,59,11) -hasLocation(#21385,#21386) -#21387=* -exprs(#21387,0,#21385,0,"constructor") -hasLocation(#21387,#21386) -enclosing_stmt(#21387,#21382) -expr_containers(#21387,#20001) -literals("constructor","constructor",#21387) +typeexprs(#21385,0,#21378,-6,"T") +hasLocation(#21385,#20837) +expr_containers(#21385,#21378) +literals("T","T",#21385) +typebind(#21385,#21363) +is_method(#21375) +is_abstract_member(#21375) +#21386=* +properties(#21386,#21358,4,0,"constructor() {}") +#21387=@"loc,{#10000},54,63,54,62" +locations_default(#21387,#10000,54,63,54,62) +hasLocation(#21386,#21387) #21388=* -exprs(#21388,9,#21385,1,"() {}") -hasLocation(#21388,#21386) -enclosing_stmt(#21388,#21382) +exprs(#21388,0,#21386,0,"constructor") +hasLocation(#21388,#21387) +enclosing_stmt(#21388,#21358) expr_containers(#21388,#20001) +literals("constructor","constructor",#21388) +exprs(#21372,9,#21386,1,"() {}") +hasLocation(#21372,#21387) +enclosing_stmt(#21372,#21358) +expr_containers(#21372,#20001) #21389=* scopes(#21389,1) -scopenodes(#21388,#21389) -scopenesting(#21389,#21384) -#21390=@"var;{arguments};{#21389}" -variables(#21390,"arguments",#21389) -is_arguments_object(#21390) -#21391=* -stmts(#21391,1,#21388,-2,"{}") -hasLocation(#21391,#21386) -stmt_containers(#21391,#21388) -is_method(#21385) +scopenodes(#21372,#21389) +scopenesting(#21389,#21361) +#21390=@"var;{this};{#21389}" +variables(#21390,"this",#21389) +#21391=@"var;{arguments};{#21389}" +variables(#21391,"arguments",#21389) +is_arguments_object(#21391) #21392=* -stmts(#21392,26,#20001,46,"class Bird {}") -hasLocation(#21392,#20121) -stmt_containers(#21392,#20001) +stmts(#21392,1,#21372,-2,"{}") +hasLocation(#21392,#21387) +stmt_containers(#21392,#21372) +is_method(#21386) #21393=* -exprs(#21393,78,#21392,0,"Bird") -hasLocation(#21393,#20858) -enclosing_stmt(#21393,#21392) -expr_containers(#21393,#20001) -literals("Bird","Bird",#21393) -decl(#21393,#20973) -typedecl(#21393,#20979) +stmts(#21393,26,#20001,45,"class Fish {}") +hasLocation(#21393,#20119) +stmt_containers(#21393,#20001) #21394=* -scopes(#21394,10) -scopenodes(#21392,#21394) -scopenesting(#21394,#20000) +exprs(#21394,78,#21393,0,"Fish") +hasLocation(#21394,#20850) +enclosing_stmt(#21394,#21393) +expr_containers(#21394,#20001) +literals("Fish","Fish",#21394) +decl(#21394,#20972) +typedecl(#21394,#20978) #21395=* -properties(#21395,#21392,2,0,"constructor() {}") -#21396=@"loc,{#10000},60,12,60,11" -locations_default(#21396,#10000,60,12,60,11) -hasLocation(#21395,#21396) +scopes(#21395,10) +scopenodes(#21393,#21395) +scopenesting(#21395,#20000) +#21396=@"var;{this};{#21395}" +variables(#21396,"this",#21395) #21397=* -exprs(#21397,0,#21395,0,"constructor") -hasLocation(#21397,#21396) -enclosing_stmt(#21397,#21392) -expr_containers(#21397,#20001) -literals("constructor","constructor",#21397) -#21398=* -exprs(#21398,9,#21395,1,"() {}") -hasLocation(#21398,#21396) -enclosing_stmt(#21398,#21392) -expr_containers(#21398,#20001) +properties(#21397,#21393,2,0,"constructor() {}") +#21398=@"loc,{#10000},59,12,59,11" +locations_default(#21398,#10000,59,12,59,11) +hasLocation(#21397,#21398) #21399=* -scopes(#21399,1) -scopenodes(#21398,#21399) -scopenesting(#21399,#21394) -#21400=@"var;{arguments};{#21399}" -variables(#21400,"arguments",#21399) -is_arguments_object(#21400) +exprs(#21399,0,#21397,0,"constructor") +hasLocation(#21399,#21398) +enclosing_stmt(#21399,#21393) +expr_containers(#21399,#20001) +literals("constructor","constructor",#21399) +#21400=* +exprs(#21400,9,#21397,1,"() {}") +hasLocation(#21400,#21398) +enclosing_stmt(#21400,#21393) +expr_containers(#21400,#20001) #21401=* -stmts(#21401,1,#21398,-2,"{}") -hasLocation(#21401,#21396) -stmt_containers(#21401,#21398) -is_method(#21395) -#21402=* -stmts(#21402,17,#20001,47,"functio ... Fish {}") -hasLocation(#21402,#20123) -stmt_containers(#21402,#20001) -#21403=* -exprs(#21403,78,#21402,-1,"isFish") -hasLocation(#21403,#20866) -expr_containers(#21403,#21402) -literals("isFish","isFish",#21403) -decl(#21403,#20969) +scopes(#21401,1) +scopenodes(#21400,#21401) +scopenesting(#21401,#21395) +#21402=@"var;{this};{#21401}" +variables(#21402,"this",#21401) +#21403=@"var;{arguments};{#21401}" +variables(#21403,"arguments",#21401) +is_arguments_object(#21403) #21404=* -scopes(#21404,1) -scopenodes(#21402,#21404) -scopenesting(#21404,#20000) -#21405=@"var;{pet};{#21404}" -variables(#21405,"pet",#21404) +stmts(#21404,1,#21400,-2,"{}") +hasLocation(#21404,#21398) +stmt_containers(#21404,#21400) +is_method(#21397) +#21405=* +stmts(#21405,26,#20001,46,"class Bird {}") +hasLocation(#21405,#20121) +stmt_containers(#21405,#20001) #21406=* -exprs(#21406,78,#21402,0,"pet") -hasLocation(#21406,#20870) -expr_containers(#21406,#21402) -literals("pet","pet",#21406) -decl(#21406,#21405) -#21407=@"var;{arguments};{#21404}" -variables(#21407,"arguments",#21404) -is_arguments_object(#21407) -#21408=* -typeexprs(#21408,20,#21402,-3,"pet is Fish") -#21409=@"loc,{#10000},61,37,61,47" -locations_default(#21409,#10000,61,37,61,47) -hasLocation(#21408,#21409) -expr_containers(#21408,#21402) -#21410=* -typeexprs(#21410,17,#21408,0,"pet") -hasLocation(#21410,#20884) -expr_containers(#21410,#21402) -literals("pet","pet",#21410) -bind(#21410,#21405) +exprs(#21406,78,#21405,0,"Bird") +hasLocation(#21406,#20858) +enclosing_stmt(#21406,#21405) +expr_containers(#21406,#20001) +literals("Bird","Bird",#21406) +decl(#21406,#20973) +typedecl(#21406,#20979) +#21407=* +scopes(#21407,10) +scopenodes(#21405,#21407) +scopenesting(#21407,#20000) +#21408=@"var;{this};{#21407}" +variables(#21408,"this",#21407) +#21409=* +properties(#21409,#21405,2,0,"constructor() {}") +#21410=@"loc,{#10000},60,12,60,11" +locations_default(#21410,#10000,60,12,60,11) +hasLocation(#21409,#21410) #21411=* -typeexprs(#21411,0,#21408,1,"Fish") -hasLocation(#21411,#20888) -expr_containers(#21411,#21402) -literals("Fish","Fish",#21411) -typebind(#21411,#20978) +exprs(#21411,0,#21409,0,"constructor") +hasLocation(#21411,#21410) +enclosing_stmt(#21411,#21405) +expr_containers(#21411,#20001) +literals("constructor","constructor",#21411) #21412=* -typeexprs(#21412,7,#21402,-6,"Fish | Bird") -#21413=@"loc,{#10000},61,23,61,33" -locations_default(#21413,#10000,61,23,61,33) -hasLocation(#21412,#21413) -expr_containers(#21412,#21402) -#21414=* -typeexprs(#21414,0,#21412,0,"Fish") -hasLocation(#21414,#20874) -expr_containers(#21414,#21402) -literals("Fish","Fish",#21414) -typebind(#21414,#20978) -#21415=* -typeexprs(#21415,0,#21412,1,"Bird") -hasLocation(#21415,#20878) -expr_containers(#21415,#21402) -literals("Bird","Bird",#21415) -typebind(#21415,#20979) +exprs(#21412,9,#21409,1,"() {}") +hasLocation(#21412,#21410) +enclosing_stmt(#21412,#21405) +expr_containers(#21412,#20001) +#21413=* +scopes(#21413,1) +scopenodes(#21412,#21413) +scopenesting(#21413,#21407) +#21414=@"var;{this};{#21413}" +variables(#21414,"this",#21413) +#21415=@"var;{arguments};{#21413}" +variables(#21415,"arguments",#21413) +is_arguments_object(#21415) #21416=* -stmts(#21416,1,#21402,-2,"{}") -#21417=@"loc,{#10000},61,49,61,50" -locations_default(#21417,#10000,61,49,61,50) -hasLocation(#21416,#21417) -stmt_containers(#21416,#21402) +stmts(#21416,1,#21412,-2,"{}") +hasLocation(#21416,#21410) +stmt_containers(#21416,#21412) +is_method(#21409) +#21417=* +stmts(#21417,17,#20001,47,"functio ... Fish {}") +hasLocation(#21417,#20123) +stmt_containers(#21417,#20001) #21418=* -stmts(#21418,26,#20001,48,"class T ... is; }\n}") -#21419=@"loc,{#10000},63,1,65,1" -locations_default(#21419,#10000,63,1,65,1) -hasLocation(#21418,#21419) -stmt_containers(#21418,#20001) -#21420=* -exprs(#21420,78,#21418,0,"ThisTypes") -hasLocation(#21420,#20896) -enclosing_stmt(#21420,#21418) -expr_containers(#21420,#20001) -literals("ThisTypes","ThisTypes",#21420) -decl(#21420,#20974) -typedecl(#21420,#20980) -#21421=* -scopes(#21421,10) -scopenodes(#21418,#21421) -scopenesting(#21421,#20000) +exprs(#21418,78,#21417,-1,"isFish") +hasLocation(#21418,#20866) +expr_containers(#21418,#21417) +literals("isFish","isFish",#21418) +decl(#21418,#20969) +#21419=* +scopes(#21419,1) +scopenodes(#21417,#21419) +scopenesting(#21419,#20000) +#21420=@"var;{this};{#21419}" +variables(#21420,"this",#21419) +#21421=@"var;{pet};{#21419}" +variables(#21421,"pet",#21419) #21422=* -properties(#21422,#21418,2,0,"foo(x: ... this; }") -#21423=@"loc,{#10000},64,3,64,39" -locations_default(#21423,#10000,64,3,64,39) -hasLocation(#21422,#21423) +exprs(#21422,78,#21417,0,"pet") +hasLocation(#21422,#20870) +expr_containers(#21422,#21417) +literals("pet","pet",#21422) +decl(#21422,#21421) +#21423=@"var;{arguments};{#21419}" +variables(#21423,"arguments",#21419) +is_arguments_object(#21423) #21424=* -exprs(#21424,0,#21422,0,"foo") -hasLocation(#21424,#20900) -enclosing_stmt(#21424,#21418) -expr_containers(#21424,#20001) -literals("foo","foo",#21424) -#21425=* -exprs(#21425,9,#21422,1,"foo(x: ... this; }") -hasLocation(#21425,#21423) -enclosing_stmt(#21425,#21418) -expr_containers(#21425,#20001) +typeexprs(#21424,20,#21417,-3,"pet is Fish") +#21425=@"loc,{#10000},61,37,61,47" +locations_default(#21425,#10000,61,37,61,47) +hasLocation(#21424,#21425) +expr_containers(#21424,#21417) #21426=* -scopes(#21426,1) -scopenodes(#21425,#21426) -scopenesting(#21426,#21421) -#21427=@"var;{x};{#21426}" -variables(#21427,"x",#21426) +typeexprs(#21426,17,#21424,0,"pet") +hasLocation(#21426,#20884) +expr_containers(#21426,#21417) +literals("pet","pet",#21426) +bind(#21426,#21421) +#21427=* +typeexprs(#21427,0,#21424,1,"Fish") +hasLocation(#21427,#20888) +expr_containers(#21427,#21417) +literals("Fish","Fish",#21427) +typebind(#21427,#20978) #21428=* -exprs(#21428,78,#21425,0,"x") -hasLocation(#21428,#20904) -expr_containers(#21428,#21425) -literals("x","x",#21428) -decl(#21428,#21427) -#21429=@"var;{arguments};{#21426}" -variables(#21429,"arguments",#21426) -is_arguments_object(#21429) +typeexprs(#21428,7,#21417,-6,"Fish | Bird") +#21429=@"loc,{#10000},61,23,61,33" +locations_default(#21429,#10000,61,23,61,33) +hasLocation(#21428,#21429) +expr_containers(#21428,#21417) #21430=* -typeexprs(#21430,2,#21425,-3,"this") -hasLocation(#21430,#20914) -expr_containers(#21430,#21425) -literals("this","this",#21430) +typeexprs(#21430,0,#21428,0,"Fish") +hasLocation(#21430,#20874) +expr_containers(#21430,#21417) +literals("Fish","Fish",#21430) +typebind(#21430,#20978) #21431=* -typeexprs(#21431,2,#21425,-6,"number") -hasLocation(#21431,#20908) -expr_containers(#21431,#21425) -literals("number","number",#21431) +typeexprs(#21431,0,#21428,1,"Bird") +hasLocation(#21431,#20878) +expr_containers(#21431,#21417) +literals("Bird","Bird",#21431) +typebind(#21431,#20979) #21432=* -stmts(#21432,1,#21425,-2,"{ return this; }") -#21433=@"loc,{#10000},64,24,64,39" -locations_default(#21433,#10000,64,24,64,39) +stmts(#21432,1,#21417,-2,"{}") +#21433=@"loc,{#10000},61,49,61,50" +locations_default(#21433,#10000,61,49,61,50) hasLocation(#21432,#21433) -stmt_containers(#21432,#21425) +stmt_containers(#21432,#21417) #21434=* -stmts(#21434,9,#21432,0,"return this;") -#21435=@"loc,{#10000},64,26,64,37" -locations_default(#21435,#10000,64,26,64,37) +stmts(#21434,26,#20001,48,"class T ... is; }\n}") +#21435=@"loc,{#10000},63,1,65,1" +locations_default(#21435,#10000,63,1,65,1) hasLocation(#21434,#21435) -stmt_containers(#21434,#21425) +stmt_containers(#21434,#20001) #21436=* -exprs(#21436,6,#21434,0,"this") -hasLocation(#21436,#20920) +exprs(#21436,78,#21434,0,"ThisTypes") +hasLocation(#21436,#20896) enclosing_stmt(#21436,#21434) -expr_containers(#21436,#21425) -is_method(#21422) +expr_containers(#21436,#20001) +literals("ThisTypes","ThisTypes",#21436) +decl(#21436,#20974) +typedecl(#21436,#20980) #21437=* -properties(#21437,#21418,3,0,"constructor() {}") -#21438=@"loc,{#10000},63,17,63,16" -locations_default(#21438,#10000,63,17,63,16) -hasLocation(#21437,#21438) +scopes(#21437,10) +scopenodes(#21434,#21437) +scopenesting(#21437,#20000) +#21438=@"var;{this};{#21437}" +variables(#21438,"this",#21437) #21439=* -exprs(#21439,0,#21437,0,"constructor") -hasLocation(#21439,#21438) -enclosing_stmt(#21439,#21418) -expr_containers(#21439,#20001) -literals("constructor","constructor",#21439) -#21440=* -exprs(#21440,9,#21437,1,"() {}") -hasLocation(#21440,#21438) -enclosing_stmt(#21440,#21418) -expr_containers(#21440,#20001) +properties(#21439,#21434,2,0,"foo(x: ... this; }") +#21440=@"loc,{#10000},64,3,64,39" +locations_default(#21440,#10000,64,3,64,39) +hasLocation(#21439,#21440) #21441=* -scopes(#21441,1) -scopenodes(#21440,#21441) -scopenesting(#21441,#21421) -#21442=@"var;{arguments};{#21441}" -variables(#21442,"arguments",#21441) -is_arguments_object(#21442) +exprs(#21441,0,#21439,0,"foo") +hasLocation(#21441,#20900) +enclosing_stmt(#21441,#21434) +expr_containers(#21441,#20001) +literals("foo","foo",#21441) +#21442=* +exprs(#21442,9,#21439,1,"foo(x: ... this; }") +hasLocation(#21442,#21440) +enclosing_stmt(#21442,#21434) +expr_containers(#21442,#20001) #21443=* -stmts(#21443,1,#21440,-2,"{}") -hasLocation(#21443,#21438) -stmt_containers(#21443,#21440) -is_method(#21437) -#21444=* -entry_cfg_node(#21444,#20001) -#21445=@"loc,{#10000},1,1,1,0" -locations_default(#21445,#10000,1,1,1,0) -hasLocation(#21444,#21445) +scopes(#21443,1) +scopenodes(#21442,#21443) +scopenesting(#21443,#21437) +#21444=@"var;{this};{#21443}" +variables(#21444,"this",#21443) +#21445=@"var;{x};{#21443}" +variables(#21445,"x",#21443) #21446=* -exit_cfg_node(#21446,#20001) -hasLocation(#21446,#20927) -successor(#21440,#21437) -#21447=* -entry_cfg_node(#21447,#21440) -hasLocation(#21447,#21438) +exprs(#21446,78,#21442,0,"x") +hasLocation(#21446,#20904) +expr_containers(#21446,#21442) +literals("x","x",#21446) +decl(#21446,#21445) +#21447=@"var;{arguments};{#21443}" +variables(#21447,"arguments",#21443) +is_arguments_object(#21447) #21448=* -exit_cfg_node(#21448,#21440) -hasLocation(#21448,#21438) -successor(#21443,#21448) -successor(#21447,#21443) -successor(#21439,#21440) -successor(#21437,#21418) -successor(#21425,#21422) +typeexprs(#21448,2,#21442,-3,"this") +hasLocation(#21448,#20914) +expr_containers(#21448,#21442) +literals("this","this",#21448) #21449=* -entry_cfg_node(#21449,#21425) -#21450=@"loc,{#10000},64,3,64,2" -locations_default(#21450,#10000,64,3,64,2) -hasLocation(#21449,#21450) -#21451=* -exit_cfg_node(#21451,#21425) -#21452=@"loc,{#10000},64,40,64,39" -locations_default(#21452,#10000,64,40,64,39) -hasLocation(#21451,#21452) -successor(#21436,#21434) -successor(#21434,#21451) -successor(#21432,#21436) -successor(#21428,#21432) -successor(#21449,#21428) -successor(#21424,#21425) -successor(#21422,#21439) -successor(#21420,#21424) -successor(#21418,#21446) -successor(#21402,#21420) -#21453=* -entry_cfg_node(#21453,#21402) -#21454=@"loc,{#10000},61,1,61,0" -locations_default(#21454,#10000,61,1,61,0) -hasLocation(#21453,#21454) +typeexprs(#21449,2,#21442,-6,"number") +hasLocation(#21449,#20908) +expr_containers(#21449,#21442) +literals("number","number",#21449) +#21450=* +stmts(#21450,1,#21442,-2,"{ return this; }") +#21451=@"loc,{#10000},64,24,64,39" +locations_default(#21451,#10000,64,24,64,39) +hasLocation(#21450,#21451) +stmt_containers(#21450,#21442) +#21452=* +stmts(#21452,9,#21450,0,"return this;") +#21453=@"loc,{#10000},64,26,64,37" +locations_default(#21453,#10000,64,26,64,37) +hasLocation(#21452,#21453) +stmt_containers(#21452,#21442) +#21454=* +exprs(#21454,6,#21452,0,"this") +hasLocation(#21454,#20920) +enclosing_stmt(#21454,#21452) +expr_containers(#21454,#21442) +bind(#21454,#21444) +is_method(#21439) #21455=* -exit_cfg_node(#21455,#21402) -#21456=@"loc,{#10000},61,51,61,50" -locations_default(#21456,#10000,61,51,61,50) +properties(#21455,#21434,3,0,"constructor() {}") +#21456=@"loc,{#10000},63,17,63,16" +locations_default(#21456,#10000,63,17,63,16) hasLocation(#21455,#21456) -successor(#21416,#21455) -successor(#21406,#21416) -successor(#21453,#21406) -successor(#21398,#21395) #21457=* -entry_cfg_node(#21457,#21398) -hasLocation(#21457,#21396) +exprs(#21457,0,#21455,0,"constructor") +hasLocation(#21457,#21456) +enclosing_stmt(#21457,#21434) +expr_containers(#21457,#20001) +literals("constructor","constructor",#21457) #21458=* -exit_cfg_node(#21458,#21398) -hasLocation(#21458,#21396) -successor(#21401,#21458) -successor(#21457,#21401) -successor(#21397,#21398) -successor(#21395,#21392) -successor(#21393,#21397) -successor(#21392,#21402) -successor(#21388,#21385) +exprs(#21458,9,#21455,1,"() {}") +hasLocation(#21458,#21456) +enclosing_stmt(#21458,#21434) +expr_containers(#21458,#20001) #21459=* -entry_cfg_node(#21459,#21388) -hasLocation(#21459,#21386) -#21460=* -exit_cfg_node(#21460,#21388) -hasLocation(#21460,#21386) -successor(#21391,#21460) -successor(#21459,#21391) -successor(#21387,#21388) -successor(#21385,#21382) -successor(#21383,#21387) -successor(#21382,#21393) -successor(#21364,#21361) -successor(#21363,#21376) -#21461=* -entry_cfg_node(#21461,#21363) -hasLocation(#21461,#21377) -successor(#21361,#21381) +scopes(#21459,1) +scopenodes(#21458,#21459) +scopenesting(#21459,#21437) +#21460=@"var;{this};{#21459}" +variables(#21460,"this",#21459) +#21461=@"var;{arguments};{#21459}" +variables(#21461,"arguments",#21459) +is_arguments_object(#21461) #21462=* -exit_cfg_node(#21462,#21363) -hasLocation(#21462,#21377) -successor(#21381,#21462) -successor(#21461,#21364) -successor(#21378,#21363) -successor(#21376,#21350) -successor(#21366,#21378) -successor(#21352,#21366) -successor(#21350,#21383) -successor(#21329,#21352) -successor(#21318,#21321) -successor(#21321,#21319) -successor(#21319,#21329) +stmts(#21462,1,#21458,-2,"{}") +hasLocation(#21462,#21456) +stmt_containers(#21462,#21458) +is_method(#21455) +#21463=* +entry_cfg_node(#21463,#20001) +#21464=@"loc,{#10000},1,1,1,0" +locations_default(#21464,#10000,1,1,1,0) +hasLocation(#21463,#21464) +#21465=* +exit_cfg_node(#21465,#20001) +hasLocation(#21465,#20927) +successor(#21458,#21455) +#21466=* +entry_cfg_node(#21466,#21458) +hasLocation(#21466,#21456) +#21467=* +exit_cfg_node(#21467,#21458) +hasLocation(#21467,#21456) +successor(#21462,#21467) +successor(#21466,#21462) +successor(#21457,#21458) +successor(#21455,#21434) +successor(#21442,#21439) +#21468=* +entry_cfg_node(#21468,#21442) +#21469=@"loc,{#10000},64,3,64,2" +locations_default(#21469,#10000,64,3,64,2) +hasLocation(#21468,#21469) +#21470=* +exit_cfg_node(#21470,#21442) +#21471=@"loc,{#10000},64,40,64,39" +locations_default(#21471,#10000,64,40,64,39) +hasLocation(#21470,#21471) +successor(#21454,#21452) +successor(#21452,#21470) +successor(#21450,#21454) +successor(#21446,#21450) +successor(#21468,#21446) +successor(#21441,#21442) +successor(#21439,#21457) +successor(#21436,#21441) +successor(#21434,#21465) +successor(#21417,#21436) +#21472=* +entry_cfg_node(#21472,#21417) +#21473=@"loc,{#10000},61,1,61,0" +locations_default(#21473,#10000,61,1,61,0) +hasLocation(#21472,#21473) +#21474=* +exit_cfg_node(#21474,#21417) +#21475=@"loc,{#10000},61,51,61,50" +locations_default(#21475,#10000,61,51,61,50) +hasLocation(#21474,#21475) +successor(#21432,#21474) +successor(#21422,#21432) +successor(#21472,#21422) +successor(#21412,#21409) +#21476=* +entry_cfg_node(#21476,#21412) +hasLocation(#21476,#21410) +#21477=* +exit_cfg_node(#21477,#21412) +hasLocation(#21477,#21410) +successor(#21416,#21477) +successor(#21476,#21416) +successor(#21411,#21412) +successor(#21409,#21405) +successor(#21406,#21411) +successor(#21405,#21417) +successor(#21400,#21397) +#21478=* +entry_cfg_node(#21478,#21400) +hasLocation(#21478,#21398) +#21479=* +exit_cfg_node(#21479,#21400) +hasLocation(#21479,#21398) +successor(#21404,#21479) +successor(#21478,#21404) +successor(#21399,#21400) +successor(#21397,#21393) +successor(#21394,#21399) +successor(#21393,#21406) +successor(#21373,#21370) +successor(#21372,#21386) +#21480=* +entry_cfg_node(#21480,#21372) +hasLocation(#21480,#21387) +successor(#21370,#21392) +#21481=* +exit_cfg_node(#21481,#21372) +hasLocation(#21481,#21387) +successor(#21392,#21481) +successor(#21480,#21373) +successor(#21388,#21372) +successor(#21386,#21358) +successor(#21375,#21388) +successor(#21360,#21375) +successor(#21358,#21394) +successor(#21336,#21360) +successor(#21325,#21328) +successor(#21328,#21326) +successor(#21326,#21336) +successor(#21317,#21320) +successor(#21320,#21318) +successor(#21318,#21325) successor(#21310,#21313) successor(#21313,#21311) -successor(#21311,#21318) -successor(#21303,#21306) -successor(#21306,#21304) -successor(#21304,#21310) -successor(#21288,#21291) -successor(#21291,#21289) -successor(#21289,#21303) -successor(#21280,#21283) -successor(#21283,#21281) -successor(#21281,#21288) +successor(#21311,#21317) +successor(#21295,#21298) +successor(#21298,#21296) +successor(#21296,#21310) +successor(#21287,#21290) +successor(#21290,#21288) +successor(#21288,#21295) +successor(#21279,#21282) +successor(#21282,#21280) +successor(#21280,#21287) successor(#21272,#21275) successor(#21275,#21273) -successor(#21273,#21280) -successor(#21265,#21268) -successor(#21268,#21266) -successor(#21266,#21272) -successor(#21249,#21252) -successor(#21252,#21250) -successor(#21250,#21265) -successor(#21233,#21236) -successor(#21236,#21234) -successor(#21234,#21249) -successor(#21225,#21228) -successor(#21228,#21226) -successor(#21226,#21233) -successor(#21213,#21216) -successor(#21216,#21214) -successor(#21214,#21225) +successor(#21273,#21279) +successor(#21255,#21258) +successor(#21258,#21256) +successor(#21256,#21272) +successor(#21238,#21241) +successor(#21241,#21239) +successor(#21239,#21255) +successor(#21230,#21233) +successor(#21233,#21231) +successor(#21231,#21238) +successor(#21218,#21221) +successor(#21221,#21219) +successor(#21219,#21230) +successor(#21210,#21213) +successor(#21213,#21211) +successor(#21211,#21218) successor(#21205,#21208) successor(#21208,#21206) -successor(#21206,#21213) +successor(#21206,#21210) successor(#21200,#21203) successor(#21203,#21201) successor(#21201,#21205) @@ -4717,89 +4759,86 @@ successor(#21191,#21195) successor(#21185,#21188) successor(#21188,#21186) successor(#21186,#21190) -successor(#21180,#21183) -successor(#21183,#21181) -successor(#21181,#21185) -successor(#21172,#21175) -successor(#21175,#21173) -successor(#21173,#21180) -successor(#21162,#21165) -successor(#21165,#21163) -successor(#21163,#21172) -successor(#21152,#21155) -successor(#21155,#21153) -successor(#21153,#21162) -successor(#21142,#21145) -successor(#21145,#21143) -successor(#21143,#21152) -successor(#21132,#21135) -successor(#21135,#21133) -successor(#21133,#21142) -successor(#21121,#21124) -successor(#21124,#21122) -successor(#21122,#21132) -successor(#21113,#21116) -successor(#21116,#21114) -successor(#21114,#21121) -successor(#21108,#21111) -successor(#21111,#21109) -successor(#21109,#21113) -successor(#21103,#21106) -successor(#21106,#21104) -successor(#21104,#21108) -successor(#21098,#21101) -successor(#21101,#21099) -successor(#21099,#21103) -successor(#21093,#21096) -successor(#21096,#21094) -successor(#21094,#21098) -successor(#21086,#21089) -successor(#21089,#21087) -successor(#21087,#21093) -successor(#21071,#21074) -successor(#21074,#21072) -successor(#21072,#21086) -successor(#21061,#21064) -successor(#21064,#21062) -successor(#21062,#21071) -successor(#21056,#21059) -successor(#21059,#21057) -successor(#21057,#21061) -successor(#21051,#21054) -successor(#21054,#21052) -successor(#21052,#21056) -successor(#21046,#21049) -successor(#21049,#21047) -successor(#21047,#21051) -successor(#21041,#21044) -successor(#21044,#21042) -successor(#21042,#21046) -successor(#21036,#21039) -successor(#21039,#21037) -successor(#21037,#21041) -successor(#21031,#21034) -successor(#21034,#21032) -successor(#21032,#21036) -successor(#21026,#21029) -successor(#21029,#21027) -successor(#21027,#21031) -successor(#21021,#21024) -successor(#21024,#21022) -successor(#21022,#21026) -successor(#21016,#21019) -successor(#21019,#21017) -successor(#21017,#21021) -successor(#21011,#21014) -successor(#21014,#21012) -successor(#21012,#21016) -successor(#20993,#20991) -successor(#21002,#21004) -successor(#21004,#21011) -successor(#20997,#20999) -successor(#20999,#21002) -successor(#20991,#20997) -successor(#20981,#20993) -successor(#21403,#20981) -successor(#21444,#21403) +successor(#21177,#21180) +successor(#21180,#21178) +successor(#21178,#21185) +successor(#21166,#21169) +successor(#21169,#21167) +successor(#21167,#21177) +successor(#21155,#21158) +successor(#21158,#21156) +successor(#21156,#21166) +successor(#21144,#21147) +successor(#21147,#21145) +successor(#21145,#21155) +successor(#21133,#21136) +successor(#21136,#21134) +successor(#21134,#21144) +successor(#21122,#21125) +successor(#21125,#21123) +successor(#21123,#21133) +successor(#21114,#21117) +successor(#21117,#21115) +successor(#21115,#21122) +successor(#21109,#21112) +successor(#21112,#21110) +successor(#21110,#21114) +successor(#21104,#21107) +successor(#21107,#21105) +successor(#21105,#21109) +successor(#21099,#21102) +successor(#21102,#21100) +successor(#21100,#21104) +successor(#21094,#21097) +successor(#21097,#21095) +successor(#21095,#21099) +successor(#21087,#21090) +successor(#21090,#21088) +successor(#21088,#21094) +successor(#21072,#21075) +successor(#21075,#21073) +successor(#21073,#21087) +successor(#21062,#21065) +successor(#21065,#21063) +successor(#21063,#21072) +successor(#21057,#21060) +successor(#21060,#21058) +successor(#21058,#21062) +successor(#21052,#21055) +successor(#21055,#21053) +successor(#21053,#21057) +successor(#21047,#21050) +successor(#21050,#21048) +successor(#21048,#21052) +successor(#21042,#21045) +successor(#21045,#21043) +successor(#21043,#21047) +successor(#21037,#21040) +successor(#21040,#21038) +successor(#21038,#21042) +successor(#21032,#21035) +successor(#21035,#21033) +successor(#21033,#21037) +successor(#21027,#21030) +successor(#21030,#21028) +successor(#21028,#21032) +successor(#21022,#21025) +successor(#21025,#21023) +successor(#21023,#21027) +successor(#21017,#21020) +successor(#21020,#21018) +successor(#21018,#21022) +successor(#21012,#21015) +successor(#21015,#21013) +successor(#21013,#21017) +successor(#20994,#20992) +successor(#21003,#21005) +successor(#21005,#21012) +successor(#20998,#21000) +successor(#21000,#21003) +successor(#20992,#20998) +successor(#20982,#20994) +successor(#21418,#20982) +successor(#21463,#21418) numlines(#10000,65,60,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/unicode.ts.trap b/javascript/extractor/tests/ts/output/trap/unicode.ts.trap index 749725d9a46a..04c31c6c63f0 100644 --- a/javascript/extractor/tests/ts/output/trap/unicode.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/unicode.ts.trap @@ -47,12 +47,14 @@ next_token(#20004,#20011) next_token(#20006,#20011) toplevels(#20001,0) hasLocation(#20001,#20012) -#20013=* -entry_cfg_node(#20013,#20001) -hasLocation(#20013,#20012) +#20013=@"var;{this};{#20000}" +variables(#20013,"this",#20000) #20014=* -exit_cfg_node(#20014,#20001) +entry_cfg_node(#20014,#20001) hasLocation(#20014,#20012) -successor(#20013,#20014) +#20015=* +exit_cfg_node(#20015,#20001) +hasLocation(#20015,#20012) +successor(#20014,#20015) numlines(#10000,3,0,3) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/unicodeId.ts.trap b/javascript/extractor/tests/ts/output/trap/unicodeId.ts.trap index d5655de7c32a..4584a7d75665 100644 --- a/javascript/extractor/tests/ts/output/trap/unicodeId.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/unicodeId.ts.trap @@ -52,42 +52,44 @@ locations_default(#20016,#10000,1,1,2,0) hasLocation(#20001,#20016) #20017=@"var;{才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123};{#20000}" variables(#20017,"才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123",#20000) -#20018=* -stmts(#20018,18,#20001,0,"var \u624d\u80fd\u30bd ... 23 = 1;") -hasLocation(#20018,#20003) -stmt_containers(#20018,#20001) +#20018=@"var;{this};{#20000}" +variables(#20018,"this",#20000) #20019=* -exprs(#20019,64,#20018,0,"\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3 ... 123 = 1") -#20020=@"loc,{#10000},1,5,1,81" -locations_default(#20020,#10000,1,5,1,81) -hasLocation(#20019,#20020) -enclosing_stmt(#20019,#20018) -expr_containers(#20019,#20001) -#20021=* -exprs(#20021,78,#20019,0,"\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3 ... Abcd123") -hasLocation(#20021,#20007) -enclosing_stmt(#20021,#20018) -expr_containers(#20021,#20001) -literals("才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123","才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123",#20021) -decl(#20021,#20017) +stmts(#20019,18,#20001,0,"var \u624d\u80fd\u30bd ... 23 = 1;") +hasLocation(#20019,#20003) +stmt_containers(#20019,#20001) +#20020=* +exprs(#20020,64,#20019,0,"\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3 ... 123 = 1") +#20021=@"loc,{#10000},1,5,1,81" +locations_default(#20021,#10000,1,5,1,81) +hasLocation(#20020,#20021) +enclosing_stmt(#20020,#20019) +expr_containers(#20020,#20001) #20022=* -exprs(#20022,3,#20019,1,"1") -hasLocation(#20022,#20011) -enclosing_stmt(#20022,#20018) +exprs(#20022,78,#20020,0,"\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3 ... Abcd123") +hasLocation(#20022,#20007) +enclosing_stmt(#20022,#20019) expr_containers(#20022,#20001) -literals("1","1",#20022) +literals("才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123","才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123",#20022) +decl(#20022,#20017) #20023=* -entry_cfg_node(#20023,#20001) -#20024=@"loc,{#10000},1,1,1,0" -locations_default(#20024,#10000,1,1,1,0) -hasLocation(#20023,#20024) -#20025=* -exit_cfg_node(#20025,#20001) -hasLocation(#20025,#20015) -successor(#20018,#20021) -successor(#20022,#20019) -successor(#20021,#20022) -successor(#20019,#20025) -successor(#20023,#20018) +exprs(#20023,3,#20020,1,"1") +hasLocation(#20023,#20011) +enclosing_stmt(#20023,#20019) +expr_containers(#20023,#20001) +literals("1","1",#20023) +#20024=* +entry_cfg_node(#20024,#20001) +#20025=@"loc,{#10000},1,1,1,0" +locations_default(#20025,#10000,1,1,1,0) +hasLocation(#20024,#20025) +#20026=* +exit_cfg_node(#20026,#20001) +hasLocation(#20026,#20015) +successor(#20019,#20022) +successor(#20023,#20020) +successor(#20022,#20023) +successor(#20020,#20026) +successor(#20024,#20019) numlines(#10000,1,1,0) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/ts/output/trap/uninstantiatedNamespace.ts.trap b/javascript/extractor/tests/ts/output/trap/uninstantiatedNamespace.ts.trap index 7cc993e08e31..4aa3daac8d9e 100644 --- a/javascript/extractor/tests/ts/output/trap/uninstantiatedNamespace.ts.trap +++ b/javascript/extractor/tests/ts/output/trap/uninstantiatedNamespace.ts.trap @@ -583,415 +583,419 @@ hasLocation(#20001,#20209) variables(#20210,"Wrapper",#20000) #20211=@"local_namespace_name;{Wrapper};{#20000}" local_namespace_names(#20211,"Wrapper",#20000) -#20212=* -stmts(#20212,31,#20001,0,"namespa ... lock]\n}") -#20213=@"loc,{#10000},1,1,25,1" -locations_default(#20213,#10000,1,1,25,1) -hasLocation(#20212,#20213) -stmt_containers(#20212,#20001) -#20214=* -exprs(#20214,78,#20212,-1,"Wrapper") -hasLocation(#20214,#20059) -enclosing_stmt(#20214,#20212) -expr_containers(#20214,#20001) -literals("Wrapper","Wrapper",#20214) -decl(#20214,#20210) -namespacedecl(#20214,#20211) +#20212=@"var;{this};{#20000}" +variables(#20212,"this",#20000) +#20213=* +stmts(#20213,31,#20001,0,"namespa ... lock]\n}") +#20214=@"loc,{#10000},1,1,25,1" +locations_default(#20214,#10000,1,1,25,1) +hasLocation(#20213,#20214) +stmt_containers(#20213,#20001) #20215=* -scopes(#20215,9) -scopenodes(#20212,#20215) -scopenesting(#20215,#20000) -#20216=@"var;{EmptyStatement};{#20215}" -variables(#20216,"EmptyStatement",#20215) -#20217=@"var;{EmptyBlock};{#20215}" -variables(#20217,"EmptyBlock",#20215) -#20218=@"var;{x};{#20215}" -variables(#20218,"x",#20215) -#20219=@"local_namespace_name;{Empty};{#20215}" -local_namespace_names(#20219,"Empty",#20215) -#20220=@"local_namespace_name;{Comments};{#20215}" -local_namespace_names(#20220,"Comments",#20215) -#20221=@"local_namespace_name;{Outer};{#20215}" -local_namespace_names(#20221,"Outer",#20215) -#20222=@"local_namespace_name;{Outer2};{#20215}" -local_namespace_names(#20222,"Outer2",#20215) -#20223=@"local_namespace_name;{Interfaces};{#20215}" -local_namespace_names(#20223,"Interfaces",#20215) -#20224=@"local_namespace_name;{EmptyStatement};{#20215}" -local_namespace_names(#20224,"EmptyStatement",#20215) -#20225=@"local_namespace_name;{EmptyBlock};{#20215}" -local_namespace_names(#20225,"EmptyBlock",#20215) -#20226=* -stmts(#20226,31,#20212,0,"namespace Empty {}") -#20227=@"loc,{#10000},3,3,3,20" -locations_default(#20227,#10000,3,3,3,20) -hasLocation(#20226,#20227) -stmt_containers(#20226,#20212) -#20228=* -exprs(#20228,78,#20226,-1,"Empty") -hasLocation(#20228,#20065) -enclosing_stmt(#20228,#20226) -expr_containers(#20228,#20212) -literals("Empty","Empty",#20228) -namespacedecl(#20228,#20219) +exprs(#20215,78,#20213,-1,"Wrapper") +hasLocation(#20215,#20059) +enclosing_stmt(#20215,#20213) +expr_containers(#20215,#20001) +literals("Wrapper","Wrapper",#20215) +decl(#20215,#20210) +namespacedecl(#20215,#20211) +#20216=* +scopes(#20216,9) +scopenodes(#20213,#20216) +scopenesting(#20216,#20000) +#20217=@"var;{EmptyStatement};{#20216}" +variables(#20217,"EmptyStatement",#20216) +#20218=@"var;{EmptyBlock};{#20216}" +variables(#20218,"EmptyBlock",#20216) +#20219=@"var;{x};{#20216}" +variables(#20219,"x",#20216) +#20220=@"local_namespace_name;{Empty};{#20216}" +local_namespace_names(#20220,"Empty",#20216) +#20221=@"local_namespace_name;{Comments};{#20216}" +local_namespace_names(#20221,"Comments",#20216) +#20222=@"local_namespace_name;{Outer};{#20216}" +local_namespace_names(#20222,"Outer",#20216) +#20223=@"local_namespace_name;{Outer2};{#20216}" +local_namespace_names(#20223,"Outer2",#20216) +#20224=@"local_namespace_name;{Interfaces};{#20216}" +local_namespace_names(#20224,"Interfaces",#20216) +#20225=@"local_namespace_name;{EmptyStatement};{#20216}" +local_namespace_names(#20225,"EmptyStatement",#20216) +#20226=@"local_namespace_name;{EmptyBlock};{#20216}" +local_namespace_names(#20226,"EmptyBlock",#20216) +#20227=* +stmts(#20227,31,#20213,0,"namespace Empty {}") +#20228=@"loc,{#10000},3,3,3,20" +locations_default(#20228,#10000,3,3,3,20) +hasLocation(#20227,#20228) +stmt_containers(#20227,#20213) #20229=* -scopes(#20229,9) -scopenodes(#20226,#20229) -scopenesting(#20229,#20215) +exprs(#20229,78,#20227,-1,"Empty") +hasLocation(#20229,#20065) +enclosing_stmt(#20229,#20227) +expr_containers(#20229,#20213) +literals("Empty","Empty",#20229) +namespacedecl(#20229,#20220) #20230=* -stmts(#20230,31,#20212,1,"namespa ... */\n }") -#20231=@"loc,{#10000},4,3,7,3" -locations_default(#20231,#10000,4,3,7,3) -hasLocation(#20230,#20231) -stmt_containers(#20230,#20212) -#20232=* -exprs(#20232,78,#20230,-1,"Comments") -hasLocation(#20232,#20073) -enclosing_stmt(#20232,#20230) -expr_containers(#20232,#20212) -literals("Comments","Comments",#20232) -namespacedecl(#20232,#20220) +scopes(#20230,9) +scopenodes(#20227,#20230) +scopenesting(#20230,#20216) +#20231=* +stmts(#20231,31,#20213,1,"namespa ... */\n }") +#20232=@"loc,{#10000},4,3,7,3" +locations_default(#20232,#10000,4,3,7,3) +hasLocation(#20231,#20232) +stmt_containers(#20231,#20213) #20233=* -scopes(#20233,9) -scopenodes(#20230,#20233) -scopenesting(#20233,#20215) +exprs(#20233,78,#20231,-1,"Comments") +hasLocation(#20233,#20073) +enclosing_stmt(#20233,#20231) +expr_containers(#20233,#20213) +literals("Comments","Comments",#20233) +namespacedecl(#20233,#20221) #20234=* -stmts(#20234,31,#20212,2,"namespa ... {}\n }") -#20235=@"loc,{#10000},8,3,10,3" -locations_default(#20235,#10000,8,3,10,3) -hasLocation(#20234,#20235) -stmt_containers(#20234,#20212) -#20236=* -exprs(#20236,78,#20234,-1,"Outer") -hasLocation(#20236,#20081) -enclosing_stmt(#20236,#20234) -expr_containers(#20236,#20212) -literals("Outer","Outer",#20236) -namespacedecl(#20236,#20221) +scopes(#20234,9) +scopenodes(#20231,#20234) +scopenesting(#20234,#20216) +#20235=* +stmts(#20235,31,#20213,2,"namespa ... {}\n }") +#20236=@"loc,{#10000},8,3,10,3" +locations_default(#20236,#10000,8,3,10,3) +hasLocation(#20235,#20236) +stmt_containers(#20235,#20213) #20237=* -scopes(#20237,9) -scopenodes(#20234,#20237) -scopenesting(#20237,#20215) -#20238=@"local_namespace_name;{Inner};{#20237}" -local_namespace_names(#20238,"Inner",#20237) -#20239=* -stmts(#20239,31,#20234,0,"namespace Inner {}") -#20240=@"loc,{#10000},9,5,9,22" -locations_default(#20240,#10000,9,5,9,22) -hasLocation(#20239,#20240) -stmt_containers(#20239,#20234) -#20241=* -exprs(#20241,78,#20239,-1,"Inner") -hasLocation(#20241,#20087) -enclosing_stmt(#20241,#20239) -expr_containers(#20241,#20234) -literals("Inner","Inner",#20241) -namespacedecl(#20241,#20238) +exprs(#20237,78,#20235,-1,"Outer") +hasLocation(#20237,#20081) +enclosing_stmt(#20237,#20235) +expr_containers(#20237,#20213) +literals("Outer","Outer",#20237) +namespacedecl(#20237,#20222) +#20238=* +scopes(#20238,9) +scopenodes(#20235,#20238) +scopenesting(#20238,#20216) +#20239=@"local_namespace_name;{Inner};{#20238}" +local_namespace_names(#20239,"Inner",#20238) +#20240=* +stmts(#20240,31,#20235,0,"namespace Inner {}") +#20241=@"loc,{#10000},9,5,9,22" +locations_default(#20241,#10000,9,5,9,22) +hasLocation(#20240,#20241) +stmt_containers(#20240,#20235) #20242=* -scopes(#20242,9) -scopenodes(#20239,#20242) -scopenesting(#20242,#20237) +exprs(#20242,78,#20240,-1,"Inner") +hasLocation(#20242,#20087) +enclosing_stmt(#20242,#20240) +expr_containers(#20242,#20235) +literals("Inner","Inner",#20242) +namespacedecl(#20242,#20239) #20243=* -stmts(#20243,31,#20212,3,"namespa ... {}\n }") -#20244=@"loc,{#10000},11,3,13,3" -locations_default(#20244,#10000,11,3,13,3) -hasLocation(#20243,#20244) -stmt_containers(#20243,#20212) -#20245=* -exprs(#20245,78,#20243,-1,"Outer2") -hasLocation(#20245,#20097) -enclosing_stmt(#20245,#20243) -expr_containers(#20245,#20212) -literals("Outer2","Outer2",#20245) -namespacedecl(#20245,#20222) +scopes(#20243,9) +scopenodes(#20240,#20243) +scopenesting(#20243,#20238) +#20244=* +stmts(#20244,31,#20213,3,"namespa ... {}\n }") +#20245=@"loc,{#10000},11,3,13,3" +locations_default(#20245,#10000,11,3,13,3) +hasLocation(#20244,#20245) +stmt_containers(#20244,#20213) #20246=* -scopes(#20246,9) -scopenodes(#20243,#20246) -scopenesting(#20246,#20215) -#20247=@"local_namespace_name;{Inner};{#20246}" -local_namespace_names(#20247,"Inner",#20246) -#20248=* -stmts(#20248,30,#20243,0,"export ... nner {}") -#20249=@"loc,{#10000},12,5,12,29" -locations_default(#20249,#10000,12,5,12,29) -hasLocation(#20248,#20249) -stmt_containers(#20248,#20243) -#20250=* -stmts(#20250,31,#20248,-1,"namespace Inner {}") -#20251=@"loc,{#10000},12,12,12,29" -locations_default(#20251,#10000,12,12,12,29) -hasLocation(#20250,#20251) -stmt_containers(#20250,#20243) -#20252=* -exprs(#20252,78,#20250,-1,"Inner") -hasLocation(#20252,#20105) -enclosing_stmt(#20252,#20250) -expr_containers(#20252,#20243) -literals("Inner","Inner",#20252) -namespacedecl(#20252,#20247) +exprs(#20246,78,#20244,-1,"Outer2") +hasLocation(#20246,#20097) +enclosing_stmt(#20246,#20244) +expr_containers(#20246,#20213) +literals("Outer2","Outer2",#20246) +namespacedecl(#20246,#20223) +#20247=* +scopes(#20247,9) +scopenodes(#20244,#20247) +scopenesting(#20247,#20216) +#20248=@"local_namespace_name;{Inner};{#20247}" +local_namespace_names(#20248,"Inner",#20247) +#20249=* +stmts(#20249,30,#20244,0,"export ... nner {}") +#20250=@"loc,{#10000},12,5,12,29" +locations_default(#20250,#10000,12,5,12,29) +hasLocation(#20249,#20250) +stmt_containers(#20249,#20244) +#20251=* +stmts(#20251,31,#20249,-1,"namespace Inner {}") +#20252=@"loc,{#10000},12,12,12,29" +locations_default(#20252,#10000,12,12,12,29) +hasLocation(#20251,#20252) +stmt_containers(#20251,#20244) #20253=* -scopes(#20253,9) -scopenodes(#20250,#20253) -scopenesting(#20253,#20246) +exprs(#20253,78,#20251,-1,"Inner") +hasLocation(#20253,#20105) +enclosing_stmt(#20253,#20251) +expr_containers(#20253,#20244) +literals("Inner","Inner",#20253) +namespacedecl(#20253,#20248) #20254=* -stmts(#20254,31,#20212,4,"namespa ... }\n }") -#20255=@"loc,{#10000},14,3,19,3" -locations_default(#20255,#10000,14,3,19,3) -hasLocation(#20254,#20255) -stmt_containers(#20254,#20212) -#20256=* -exprs(#20256,78,#20254,-1,"Interfaces") -hasLocation(#20256,#20115) -enclosing_stmt(#20256,#20254) -expr_containers(#20256,#20212) -literals("Interfaces","Interfaces",#20256) -namespacedecl(#20256,#20223) +scopes(#20254,9) +scopenodes(#20251,#20254) +scopenesting(#20254,#20247) +#20255=* +stmts(#20255,31,#20213,4,"namespa ... }\n }") +#20256=@"loc,{#10000},14,3,19,3" +locations_default(#20256,#10000,14,3,19,3) +hasLocation(#20255,#20256) +stmt_containers(#20255,#20213) #20257=* -scopes(#20257,9) -scopenodes(#20254,#20257) -scopenesting(#20257,#20215) -#20258=@"local_type_name;{I};{#20257}" -local_type_names(#20258,"I",#20257) -#20259=* -stmts(#20259,34,#20254,0,"interfa ... ;\n }") -#20260=@"loc,{#10000},15,5,18,5" -locations_default(#20260,#10000,15,5,18,5) -hasLocation(#20259,#20260) -stmt_containers(#20259,#20254) -#20261=* -typeexprs(#20261,1,#20259,0,"I") -hasLocation(#20261,#20121) -enclosing_stmt(#20261,#20259) -expr_containers(#20261,#20254) -literals("I","I",#20261) -typedecl(#20261,#20258) +exprs(#20257,78,#20255,-1,"Interfaces") +hasLocation(#20257,#20115) +enclosing_stmt(#20257,#20255) +expr_containers(#20257,#20213) +literals("Interfaces","Interfaces",#20257) +namespacedecl(#20257,#20224) +#20258=* +scopes(#20258,9) +scopenodes(#20255,#20258) +scopenesting(#20258,#20216) +#20259=@"local_type_name;{I};{#20258}" +local_type_names(#20259,"I",#20258) +#20260=* +stmts(#20260,34,#20255,0,"interfa ... ;\n }") +#20261=@"loc,{#10000},15,5,18,5" +locations_default(#20261,#10000,15,5,18,5) +hasLocation(#20260,#20261) +stmt_containers(#20260,#20255) #20262=* -properties(#20262,#20259,2,8,"x: number;") -#20263=@"loc,{#10000},16,7,16,16" -locations_default(#20263,#10000,16,7,16,16) -hasLocation(#20262,#20263) -#20264=* -exprs(#20264,0,#20262,0,"x") -hasLocation(#20264,#20125) -enclosing_stmt(#20264,#20259) -expr_containers(#20264,#20254) -literals("x","x",#20264) -is_abstract_member(#20262) +typeexprs(#20262,1,#20260,0,"I") +hasLocation(#20262,#20121) +enclosing_stmt(#20262,#20260) +expr_containers(#20262,#20255) +literals("I","I",#20262) +typedecl(#20262,#20259) +#20263=* +properties(#20263,#20260,2,8,"x: number;") +#20264=@"loc,{#10000},16,7,16,16" +locations_default(#20264,#10000,16,7,16,16) +hasLocation(#20263,#20264) #20265=* -typeexprs(#20265,2,#20262,2,"number") -hasLocation(#20265,#20129) -enclosing_stmt(#20265,#20259) -expr_containers(#20265,#20254) -literals("number","number",#20265) +exprs(#20265,0,#20263,0,"x") +hasLocation(#20265,#20125) +enclosing_stmt(#20265,#20260) +expr_containers(#20265,#20255) +literals("x","x",#20265) +is_abstract_member(#20263) #20266=* -properties(#20266,#20259,3,0,"foo(): number;") -#20267=@"loc,{#10000},17,7,17,20" -locations_default(#20267,#10000,17,7,17,20) -hasLocation(#20266,#20267) -#20268=* -exprs(#20268,0,#20266,0,"foo") -hasLocation(#20268,#20133) -enclosing_stmt(#20268,#20259) -expr_containers(#20268,#20254) -literals("foo","foo",#20268) +typeexprs(#20266,2,#20263,2,"number") +hasLocation(#20266,#20129) +enclosing_stmt(#20266,#20260) +expr_containers(#20266,#20255) +literals("number","number",#20266) +#20267=* +properties(#20267,#20260,3,0,"foo(): number;") +#20268=@"loc,{#10000},17,7,17,20" +locations_default(#20268,#10000,17,7,17,20) +hasLocation(#20267,#20268) #20269=* -exprs(#20269,9,#20266,1,"foo(): number;") -hasLocation(#20269,#20267) -enclosing_stmt(#20269,#20259) -expr_containers(#20269,#20254) +exprs(#20269,0,#20267,0,"foo") +hasLocation(#20269,#20133) +enclosing_stmt(#20269,#20260) +expr_containers(#20269,#20255) +literals("foo","foo",#20269) #20270=* -scopes(#20270,1) -scopenodes(#20269,#20270) -scopenesting(#20270,#20257) -#20271=@"var;{arguments};{#20270}" -variables(#20271,"arguments",#20270) -is_arguments_object(#20271) -#20272=* -typeexprs(#20272,2,#20269,-3,"number") -hasLocation(#20272,#20141) -expr_containers(#20272,#20269) -literals("number","number",#20272) -is_method(#20266) -is_abstract_member(#20266) -#20273=* -stmts(#20273,31,#20212,5,"namespa ... ent {;}") -#20274=@"loc,{#10000},21,3,21,30" -locations_default(#20274,#10000,21,3,21,30) -hasLocation(#20273,#20274) -stmt_containers(#20273,#20212) +exprs(#20270,9,#20267,1,"foo(): number;") +hasLocation(#20270,#20268) +enclosing_stmt(#20270,#20260) +expr_containers(#20270,#20255) +#20271=* +scopes(#20271,1) +scopenodes(#20270,#20271) +scopenesting(#20271,#20258) +#20272=@"var;{this};{#20271}" +variables(#20272,"this",#20271) +#20273=@"var;{arguments};{#20271}" +variables(#20273,"arguments",#20271) +is_arguments_object(#20273) +#20274=* +typeexprs(#20274,2,#20270,-3,"number") +hasLocation(#20274,#20141) +expr_containers(#20274,#20270) +literals("number","number",#20274) +is_method(#20267) +is_abstract_member(#20267) #20275=* -exprs(#20275,78,#20273,-1,"EmptyStatement") -hasLocation(#20275,#20151) -enclosing_stmt(#20275,#20273) -expr_containers(#20275,#20212) -literals("EmptyStatement","EmptyStatement",#20275) -decl(#20275,#20216) -namespacedecl(#20275,#20224) -#20276=* -scopes(#20276,9) -scopenodes(#20273,#20276) -scopenesting(#20276,#20215) +stmts(#20275,31,#20213,5,"namespa ... ent {;}") +#20276=@"loc,{#10000},21,3,21,30" +locations_default(#20276,#10000,21,3,21,30) +hasLocation(#20275,#20276) +stmt_containers(#20275,#20213) #20277=* -stmts(#20277,0,#20273,0,";") -hasLocation(#20277,#20155) -stmt_containers(#20277,#20273) -is_instantiated(#20273) +exprs(#20277,78,#20275,-1,"EmptyStatement") +hasLocation(#20277,#20151) +enclosing_stmt(#20277,#20275) +expr_containers(#20277,#20213) +literals("EmptyStatement","EmptyStatement",#20277) +decl(#20277,#20217) +namespacedecl(#20277,#20225) #20278=* -stmts(#20278,31,#20212,6,"namespa ... ck {{}}") -#20279=@"loc,{#10000},22,3,22,27" -locations_default(#20279,#10000,22,3,22,27) -hasLocation(#20278,#20279) -stmt_containers(#20278,#20212) +scopes(#20278,9) +scopenodes(#20275,#20278) +scopenesting(#20278,#20216) +#20279=* +stmts(#20279,0,#20275,0,";") +hasLocation(#20279,#20155) +stmt_containers(#20279,#20275) +is_instantiated(#20275) #20280=* -exprs(#20280,78,#20278,-1,"EmptyBlock") -hasLocation(#20280,#20161) -enclosing_stmt(#20280,#20278) -expr_containers(#20280,#20212) -literals("EmptyBlock","EmptyBlock",#20280) -decl(#20280,#20217) -namespacedecl(#20280,#20225) -#20281=* -scopes(#20281,9) -scopenodes(#20278,#20281) -scopenesting(#20281,#20215) +stmts(#20280,31,#20213,6,"namespa ... ck {{}}") +#20281=@"loc,{#10000},22,3,22,27" +locations_default(#20281,#10000,22,3,22,27) +hasLocation(#20280,#20281) +stmt_containers(#20280,#20213) #20282=* -stmts(#20282,1,#20278,0,"{}") -#20283=@"loc,{#10000},22,25,22,26" -locations_default(#20283,#10000,22,25,22,26) -hasLocation(#20282,#20283) -stmt_containers(#20282,#20278) -is_instantiated(#20278) +exprs(#20282,78,#20280,-1,"EmptyBlock") +hasLocation(#20282,#20161) +enclosing_stmt(#20282,#20280) +expr_containers(#20282,#20213) +literals("EmptyBlock","EmptyBlock",#20282) +decl(#20282,#20218) +namespacedecl(#20282,#20226) +#20283=* +scopes(#20283,9) +scopenodes(#20280,#20283) +scopenesting(#20283,#20216) #20284=* -stmts(#20284,18,#20212,7,"var x = ... yBlock]") -#20285=@"loc,{#10000},24,3,24,82" -locations_default(#20285,#10000,24,3,24,82) +stmts(#20284,1,#20280,0,"{}") +#20285=@"loc,{#10000},22,25,22,26" +locations_default(#20285,#10000,22,25,22,26) hasLocation(#20284,#20285) -stmt_containers(#20284,#20212) +stmt_containers(#20284,#20280) +is_instantiated(#20280) #20286=* -exprs(#20286,64,#20284,0,"x = [Em ... yBlock]") -#20287=@"loc,{#10000},24,7,24,82" -locations_default(#20287,#10000,24,7,24,82) +stmts(#20286,18,#20213,7,"var x = ... yBlock]") +#20287=@"loc,{#10000},24,3,24,82" +locations_default(#20287,#10000,24,3,24,82) hasLocation(#20286,#20287) -enclosing_stmt(#20286,#20284) -expr_containers(#20286,#20212) +stmt_containers(#20286,#20213) #20288=* -exprs(#20288,78,#20286,0,"x") -hasLocation(#20288,#20173) -enclosing_stmt(#20288,#20284) -expr_containers(#20288,#20212) -literals("x","x",#20288) -decl(#20288,#20218) -#20289=* -exprs(#20289,7,#20286,1,"[Empty, ... yBlock]") -#20290=@"loc,{#10000},24,11,24,82" -locations_default(#20290,#10000,24,11,24,82) -hasLocation(#20289,#20290) -enclosing_stmt(#20289,#20284) -expr_containers(#20289,#20212) +exprs(#20288,64,#20286,0,"x = [Em ... yBlock]") +#20289=@"loc,{#10000},24,7,24,82" +locations_default(#20289,#10000,24,7,24,82) +hasLocation(#20288,#20289) +enclosing_stmt(#20288,#20286) +expr_containers(#20288,#20213) +#20290=* +exprs(#20290,78,#20288,0,"x") +hasLocation(#20290,#20173) +enclosing_stmt(#20290,#20286) +expr_containers(#20290,#20213) +literals("x","x",#20290) +decl(#20290,#20219) #20291=* -exprs(#20291,79,#20289,0,"Empty") -hasLocation(#20291,#20179) -enclosing_stmt(#20291,#20284) -expr_containers(#20291,#20212) -literals("Empty","Empty",#20291) -#20292=@"var;{Empty};{#20000}" -variables(#20292,"Empty",#20000) -bind(#20291,#20292) +exprs(#20291,7,#20288,1,"[Empty, ... yBlock]") +#20292=@"loc,{#10000},24,11,24,82" +locations_default(#20292,#10000,24,11,24,82) +hasLocation(#20291,#20292) +enclosing_stmt(#20291,#20286) +expr_containers(#20291,#20213) #20293=* -exprs(#20293,79,#20289,1,"Comments") -hasLocation(#20293,#20183) -enclosing_stmt(#20293,#20284) -expr_containers(#20293,#20212) -literals("Comments","Comments",#20293) -#20294=@"var;{Comments};{#20000}" -variables(#20294,"Comments",#20000) +exprs(#20293,79,#20291,0,"Empty") +hasLocation(#20293,#20179) +enclosing_stmt(#20293,#20286) +expr_containers(#20293,#20213) +literals("Empty","Empty",#20293) +#20294=@"var;{Empty};{#20000}" +variables(#20294,"Empty",#20000) bind(#20293,#20294) #20295=* -exprs(#20295,79,#20289,2,"Outer") -hasLocation(#20295,#20187) -enclosing_stmt(#20295,#20284) -expr_containers(#20295,#20212) -literals("Outer","Outer",#20295) -#20296=@"var;{Outer};{#20000}" -variables(#20296,"Outer",#20000) +exprs(#20295,79,#20291,1,"Comments") +hasLocation(#20295,#20183) +enclosing_stmt(#20295,#20286) +expr_containers(#20295,#20213) +literals("Comments","Comments",#20295) +#20296=@"var;{Comments};{#20000}" +variables(#20296,"Comments",#20000) bind(#20295,#20296) #20297=* -exprs(#20297,79,#20289,3,"Outer2") -hasLocation(#20297,#20191) -enclosing_stmt(#20297,#20284) -expr_containers(#20297,#20212) -literals("Outer2","Outer2",#20297) -#20298=@"var;{Outer2};{#20000}" -variables(#20298,"Outer2",#20000) +exprs(#20297,79,#20291,2,"Outer") +hasLocation(#20297,#20187) +enclosing_stmt(#20297,#20286) +expr_containers(#20297,#20213) +literals("Outer","Outer",#20297) +#20298=@"var;{Outer};{#20000}" +variables(#20298,"Outer",#20000) bind(#20297,#20298) #20299=* -exprs(#20299,79,#20289,4,"Interfaces") -hasLocation(#20299,#20195) -enclosing_stmt(#20299,#20284) -expr_containers(#20299,#20212) -literals("Interfaces","Interfaces",#20299) -#20300=@"var;{Interfaces};{#20000}" -variables(#20300,"Interfaces",#20000) +exprs(#20299,79,#20291,3,"Outer2") +hasLocation(#20299,#20191) +enclosing_stmt(#20299,#20286) +expr_containers(#20299,#20213) +literals("Outer2","Outer2",#20299) +#20300=@"var;{Outer2};{#20000}" +variables(#20300,"Outer2",#20000) bind(#20299,#20300) #20301=* -exprs(#20301,79,#20289,5,"EmptyStatement") -hasLocation(#20301,#20199) -enclosing_stmt(#20301,#20284) -expr_containers(#20301,#20212) -literals("EmptyStatement","EmptyStatement",#20301) -bind(#20301,#20216) -#20302=* -exprs(#20302,79,#20289,6,"EmptyBlock") -hasLocation(#20302,#20203) -enclosing_stmt(#20302,#20284) -expr_containers(#20302,#20212) -literals("EmptyBlock","EmptyBlock",#20302) -bind(#20302,#20217) -array_size(#20289,7) -is_instantiated(#20212) +exprs(#20301,79,#20291,4,"Interfaces") +hasLocation(#20301,#20195) +enclosing_stmt(#20301,#20286) +expr_containers(#20301,#20213) +literals("Interfaces","Interfaces",#20301) +#20302=@"var;{Interfaces};{#20000}" +variables(#20302,"Interfaces",#20000) +bind(#20301,#20302) #20303=* -entry_cfg_node(#20303,#20001) -#20304=@"loc,{#10000},1,1,1,0" -locations_default(#20304,#10000,1,1,1,0) -hasLocation(#20303,#20304) +exprs(#20303,79,#20291,5,"EmptyStatement") +hasLocation(#20303,#20199) +enclosing_stmt(#20303,#20286) +expr_containers(#20303,#20213) +literals("EmptyStatement","EmptyStatement",#20303) +bind(#20303,#20217) +#20304=* +exprs(#20304,79,#20291,6,"EmptyBlock") +hasLocation(#20304,#20203) +enclosing_stmt(#20304,#20286) +expr_containers(#20304,#20213) +literals("EmptyBlock","EmptyBlock",#20304) +bind(#20304,#20218) +array_size(#20291,7) +is_instantiated(#20213) #20305=* -exit_cfg_node(#20305,#20001) -hasLocation(#20305,#20208) -successor(#20214,#20212) -successor(#20284,#20288) -successor(#20289,#20291) -successor(#20302,#20286) -successor(#20301,#20302) +entry_cfg_node(#20305,#20001) +#20306=@"loc,{#10000},1,1,1,0" +locations_default(#20306,#10000,1,1,1,0) +hasLocation(#20305,#20306) +#20307=* +exit_cfg_node(#20307,#20001) +hasLocation(#20307,#20208) +successor(#20215,#20213) +successor(#20286,#20290) +successor(#20291,#20293) +successor(#20304,#20288) +successor(#20303,#20304) +successor(#20301,#20303) successor(#20299,#20301) successor(#20297,#20299) successor(#20295,#20297) successor(#20293,#20295) -successor(#20291,#20293) -successor(#20288,#20289) -successor(#20286,#20305) -successor(#20280,#20278) -successor(#20282,#20284) -successor(#20278,#20282) -successor(#20275,#20273) -successor(#20277,#20280) -successor(#20273,#20277) -successor(#20256,#20254) -successor(#20259,#20275) -successor(#20254,#20259) -successor(#20245,#20243) -successor(#20248,#20252) -successor(#20252,#20250) -successor(#20250,#20256) -successor(#20243,#20248) -successor(#20236,#20234) -successor(#20241,#20239) -successor(#20239,#20245) -successor(#20234,#20241) -successor(#20232,#20230) -successor(#20230,#20236) -successor(#20228,#20226) -successor(#20226,#20232) -successor(#20212,#20228) -successor(#20303,#20214) +successor(#20290,#20291) +successor(#20288,#20307) +successor(#20282,#20280) +successor(#20284,#20286) +successor(#20280,#20284) +successor(#20277,#20275) +successor(#20279,#20282) +successor(#20275,#20279) +successor(#20257,#20255) +successor(#20260,#20277) +successor(#20255,#20260) +successor(#20246,#20244) +successor(#20249,#20253) +successor(#20253,#20251) +successor(#20251,#20257) +successor(#20244,#20249) +successor(#20237,#20235) +successor(#20242,#20240) +successor(#20240,#20246) +successor(#20235,#20242) +successor(#20233,#20231) +successor(#20231,#20237) +successor(#20229,#20227) +successor(#20227,#20233) +successor(#20213,#20229) +successor(#20305,#20215) numlines(#10000,25,20,2) filetype(#10000,"typescript") diff --git a/javascript/extractor/tests/v8/output/trap/tst.js.trap b/javascript/extractor/tests/v8/output/trap/tst.js.trap index 4eb025bd9d3c..c21c47821503 100644 --- a/javascript/extractor/tests/v8/output/trap/tst.js.trap +++ b/javascript/extractor/tests/v8/output/trap/tst.js.trap @@ -105,96 +105,98 @@ toplevels(#20001,0) #20038=@"loc,{#10000},1,1,2,19" locations_default(#20038,#10000,1,1,2,19) hasLocation(#20001,#20038) -#20039=* -stmts(#20039,2,#20001,0,"%CheckI ... ping();") -hasLocation(#20039,#20003) -stmt_containers(#20039,#20001) +#20039=@"var;{this};{#20000}" +variables(#20039,"this",#20000) #20040=* -exprs(#20040,13,#20039,0,"%CheckI ... pping()") -#20041=@"loc,{#10000},1,1,1,23" -locations_default(#20041,#10000,1,1,1,23) -hasLocation(#20040,#20041) -enclosing_stmt(#20040,#20039) -expr_containers(#20040,#20001) -#20042=* -exprs(#20042,79,#20040,-1,"%CheckI ... rapping") -#20043=@"loc,{#10000},1,1,1,21" -locations_default(#20043,#10000,1,1,1,21) -hasLocation(#20042,#20043) -enclosing_stmt(#20042,#20039) -expr_containers(#20042,#20001) -literals("%CheckIsBootstrapping","%CheckIsBootstrapping",#20042) -#20044=@"var;{%CheckIsBootstrapping};{#20000}" -variables(#20044,"%CheckIsBootstrapping",#20000) -bind(#20042,#20044) -#20045=* -stmts(#20045,2,#20001,1,"a%%NumberAdd(1, 2);") -hasLocation(#20045,#20005) -stmt_containers(#20045,#20001) +stmts(#20040,2,#20001,0,"%CheckI ... ping();") +hasLocation(#20040,#20003) +stmt_containers(#20040,#20001) +#20041=* +exprs(#20041,13,#20040,0,"%CheckI ... pping()") +#20042=@"loc,{#10000},1,1,1,23" +locations_default(#20042,#10000,1,1,1,23) +hasLocation(#20041,#20042) +enclosing_stmt(#20041,#20040) +expr_containers(#20041,#20001) +#20043=* +exprs(#20043,79,#20041,-1,"%CheckI ... rapping") +#20044=@"loc,{#10000},1,1,1,21" +locations_default(#20044,#10000,1,1,1,21) +hasLocation(#20043,#20044) +enclosing_stmt(#20043,#20040) +expr_containers(#20043,#20001) +literals("%CheckIsBootstrapping","%CheckIsBootstrapping",#20043) +#20045=@"var;{%CheckIsBootstrapping};{#20000}" +variables(#20045,"%CheckIsBootstrapping",#20000) +bind(#20043,#20045) #20046=* -exprs(#20046,38,#20045,0,"a%%NumberAdd(1, 2)") -#20047=@"loc,{#10000},2,1,2,18" -locations_default(#20047,#10000,2,1,2,18) -hasLocation(#20046,#20047) -enclosing_stmt(#20046,#20045) -expr_containers(#20046,#20001) -#20048=* -exprs(#20048,79,#20046,0,"a") -hasLocation(#20048,#20017) -enclosing_stmt(#20048,#20045) -expr_containers(#20048,#20001) -literals("a","a",#20048) -#20049=@"var;{a};{#20000}" -variables(#20049,"a",#20000) -bind(#20048,#20049) -#20050=* -exprs(#20050,13,#20046,1,"%NumberAdd(1, 2)") -#20051=@"loc,{#10000},2,3,2,18" -locations_default(#20051,#10000,2,3,2,18) -hasLocation(#20050,#20051) -enclosing_stmt(#20050,#20045) -expr_containers(#20050,#20001) -#20052=* -exprs(#20052,79,#20050,-1,"%NumberAdd") -#20053=@"loc,{#10000},2,3,2,12" -locations_default(#20053,#10000,2,3,2,12) -hasLocation(#20052,#20053) -enclosing_stmt(#20052,#20045) -expr_containers(#20052,#20001) -literals("%NumberAdd","%NumberAdd",#20052) -#20054=@"var;{%NumberAdd};{#20000}" -variables(#20054,"%NumberAdd",#20000) -bind(#20052,#20054) -#20055=* -exprs(#20055,3,#20050,0,"1") -hasLocation(#20055,#20027) -enclosing_stmt(#20055,#20045) -expr_containers(#20055,#20001) -literals("1","1",#20055) +stmts(#20046,2,#20001,1,"a%%NumberAdd(1, 2);") +hasLocation(#20046,#20005) +stmt_containers(#20046,#20001) +#20047=* +exprs(#20047,38,#20046,0,"a%%NumberAdd(1, 2)") +#20048=@"loc,{#10000},2,1,2,18" +locations_default(#20048,#10000,2,1,2,18) +hasLocation(#20047,#20048) +enclosing_stmt(#20047,#20046) +expr_containers(#20047,#20001) +#20049=* +exprs(#20049,79,#20047,0,"a") +hasLocation(#20049,#20017) +enclosing_stmt(#20049,#20046) +expr_containers(#20049,#20001) +literals("a","a",#20049) +#20050=@"var;{a};{#20000}" +variables(#20050,"a",#20000) +bind(#20049,#20050) +#20051=* +exprs(#20051,13,#20047,1,"%NumberAdd(1, 2)") +#20052=@"loc,{#10000},2,3,2,18" +locations_default(#20052,#10000,2,3,2,18) +hasLocation(#20051,#20052) +enclosing_stmt(#20051,#20046) +expr_containers(#20051,#20001) +#20053=* +exprs(#20053,79,#20051,-1,"%NumberAdd") +#20054=@"loc,{#10000},2,3,2,12" +locations_default(#20054,#10000,2,3,2,12) +hasLocation(#20053,#20054) +enclosing_stmt(#20053,#20046) +expr_containers(#20053,#20001) +literals("%NumberAdd","%NumberAdd",#20053) +#20055=@"var;{%NumberAdd};{#20000}" +variables(#20055,"%NumberAdd",#20000) +bind(#20053,#20055) #20056=* -exprs(#20056,3,#20050,1,"2") -hasLocation(#20056,#20031) -enclosing_stmt(#20056,#20045) +exprs(#20056,3,#20051,0,"1") +hasLocation(#20056,#20027) +enclosing_stmt(#20056,#20046) expr_containers(#20056,#20001) -literals("2","2",#20056) +literals("1","1",#20056) #20057=* -entry_cfg_node(#20057,#20001) -#20058=@"loc,{#10000},1,1,1,0" -locations_default(#20058,#10000,1,1,1,0) -hasLocation(#20057,#20058) -#20059=* -exit_cfg_node(#20059,#20001) -hasLocation(#20059,#20037) -successor(#20045,#20048) -successor(#20056,#20050) -successor(#20055,#20056) -successor(#20052,#20055) -successor(#20050,#20046) -successor(#20048,#20052) -successor(#20046,#20059) -successor(#20039,#20042) -successor(#20042,#20040) -successor(#20040,#20045) -successor(#20057,#20039) +exprs(#20057,3,#20051,1,"2") +hasLocation(#20057,#20031) +enclosing_stmt(#20057,#20046) +expr_containers(#20057,#20001) +literals("2","2",#20057) +#20058=* +entry_cfg_node(#20058,#20001) +#20059=@"loc,{#10000},1,1,1,0" +locations_default(#20059,#10000,1,1,1,0) +hasLocation(#20058,#20059) +#20060=* +exit_cfg_node(#20060,#20001) +hasLocation(#20060,#20037) +successor(#20046,#20049) +successor(#20057,#20051) +successor(#20056,#20057) +successor(#20053,#20056) +successor(#20051,#20047) +successor(#20049,#20053) +successor(#20047,#20060) +successor(#20040,#20043) +successor(#20043,#20041) +successor(#20041,#20046) +successor(#20058,#20040) numlines(#10000,2,2,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/variables/output/trap/const.js.trap b/javascript/extractor/tests/variables/output/trap/const.js.trap index 6b4f41cd0b80..6834a8373d9d 100644 --- a/javascript/extractor/tests/variables/output/trap/const.js.trap +++ b/javascript/extractor/tests/variables/output/trap/const.js.trap @@ -49,42 +49,44 @@ toplevels(#20001,0) hasLocation(#20001,#20003) #20016=@"var;{answer};{#20000}" variables(#20016,"answer",#20000) -#20017=* -stmts(#20017,22,#20001,0,"const answer = 42;") -hasLocation(#20017,#20003) -stmt_containers(#20017,#20001) +#20017=@"var;{this};{#20000}" +variables(#20017,"this",#20000) #20018=* -exprs(#20018,64,#20017,0,"answer = 42") -#20019=@"loc,{#10000},1,7,1,17" -locations_default(#20019,#10000,1,7,1,17) -hasLocation(#20018,#20019) -enclosing_stmt(#20018,#20017) -expr_containers(#20018,#20001) -#20020=* -exprs(#20020,78,#20018,0,"answer") -hasLocation(#20020,#20007) -enclosing_stmt(#20020,#20017) -expr_containers(#20020,#20001) -literals("answer","answer",#20020) -decl(#20020,#20016) +stmts(#20018,22,#20001,0,"const answer = 42;") +hasLocation(#20018,#20003) +stmt_containers(#20018,#20001) +#20019=* +exprs(#20019,64,#20018,0,"answer = 42") +#20020=@"loc,{#10000},1,7,1,17" +locations_default(#20020,#10000,1,7,1,17) +hasLocation(#20019,#20020) +enclosing_stmt(#20019,#20018) +expr_containers(#20019,#20001) #20021=* -exprs(#20021,3,#20018,1,"42") -hasLocation(#20021,#20011) -enclosing_stmt(#20021,#20017) +exprs(#20021,78,#20019,0,"answer") +hasLocation(#20021,#20007) +enclosing_stmt(#20021,#20018) expr_containers(#20021,#20001) -literals("42","42",#20021) +literals("answer","answer",#20021) +decl(#20021,#20016) #20022=* -entry_cfg_node(#20022,#20001) -#20023=@"loc,{#10000},1,1,1,0" -locations_default(#20023,#10000,1,1,1,0) -hasLocation(#20022,#20023) -#20024=* -exit_cfg_node(#20024,#20001) -hasLocation(#20024,#20015) -successor(#20017,#20020) -successor(#20021,#20018) -successor(#20020,#20021) -successor(#20018,#20024) -successor(#20022,#20017) +exprs(#20022,3,#20019,1,"42") +hasLocation(#20022,#20011) +enclosing_stmt(#20022,#20018) +expr_containers(#20022,#20001) +literals("42","42",#20022) +#20023=* +entry_cfg_node(#20023,#20001) +#20024=@"loc,{#10000},1,1,1,0" +locations_default(#20024,#10000,1,1,1,0) +hasLocation(#20023,#20024) +#20025=* +exit_cfg_node(#20025,#20001) +hasLocation(#20025,#20015) +successor(#20018,#20021) +successor(#20022,#20019) +successor(#20021,#20022) +successor(#20019,#20025) +successor(#20023,#20018) numlines(#10000,1,1,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/variables/output/trap/finally.js.trap b/javascript/extractor/tests/variables/output/trap/finally.js.trap index 7d6511265298..ab9acce7df10 100644 --- a/javascript/extractor/tests/variables/output/trap/finally.js.trap +++ b/javascript/extractor/tests/variables/output/trap/finally.js.trap @@ -183,145 +183,151 @@ locations_default(#20063,#10000,1,1,9,0) hasLocation(#20001,#20063) #20064=@"var;{f};{#20000}" variables(#20064,"f",#20000) -#20065=* -stmts(#20065,17,#20001,0,"functio ... }\n }\n}") -#20066=@"loc,{#10000},1,1,8,1" -locations_default(#20066,#10000,1,1,8,1) -hasLocation(#20065,#20066) -stmt_containers(#20065,#20001) -#20067=* -exprs(#20067,78,#20065,-1,"f") -hasLocation(#20067,#20021) -expr_containers(#20067,#20065) -literals("f","f",#20067) -decl(#20067,#20064) +#20065=@"var;{this};{#20000}" +variables(#20065,"this",#20000) +#20066=* +stmts(#20066,17,#20001,0,"functio ... }\n }\n}") +#20067=@"loc,{#10000},1,1,8,1" +locations_default(#20067,#10000,1,1,8,1) +hasLocation(#20066,#20067) +stmt_containers(#20066,#20001) #20068=* -scopes(#20068,1) -scopenodes(#20065,#20068) -scopenesting(#20068,#20000) -#20069=@"var;{g};{#20068}" -variables(#20069,"g",#20068) -#20070=@"var;{x};{#20068}" -variables(#20070,"x",#20068) -#20071=* -exprs(#20071,78,#20065,0,"x") -hasLocation(#20071,#20025) -expr_containers(#20071,#20065) -literals("x","x",#20071) -decl(#20071,#20070) -#20072=@"var;{arguments};{#20068}" -variables(#20072,"arguments",#20068) -is_arguments_object(#20072) +exprs(#20068,78,#20066,-1,"f") +hasLocation(#20068,#20021) +expr_containers(#20068,#20066) +literals("f","f",#20068) +decl(#20068,#20064) +#20069=* +scopes(#20069,1) +scopenodes(#20066,#20069) +scopenesting(#20069,#20000) +#20070=@"var;{g};{#20069}" +variables(#20070,"g",#20069) +#20071=@"var;{this};{#20069}" +variables(#20071,"this",#20069) +#20072=@"var;{x};{#20069}" +variables(#20072,"x",#20069) #20073=* -stmts(#20073,1,#20065,-2,"{\n fun ... }\n }\n}") -#20074=@"loc,{#10000},1,15,8,1" -locations_default(#20074,#10000,1,15,8,1) -hasLocation(#20073,#20074) -stmt_containers(#20073,#20065) +exprs(#20073,78,#20066,0,"x") +hasLocation(#20073,#20025) +expr_containers(#20073,#20066) +literals("x","x",#20073) +decl(#20073,#20072) +#20074=@"var;{arguments};{#20069}" +variables(#20074,"arguments",#20069) +is_arguments_object(#20074) #20075=* -stmts(#20075,17,#20073,0,"functio ... }\n }") -#20076=@"loc,{#10000},2,3,7,3" -locations_default(#20076,#10000,2,3,7,3) +stmts(#20075,1,#20066,-2,"{\n fun ... }\n }\n}") +#20076=@"loc,{#10000},1,15,8,1" +locations_default(#20076,#10000,1,15,8,1) hasLocation(#20075,#20076) -stmt_containers(#20075,#20065) +stmt_containers(#20075,#20066) #20077=* -exprs(#20077,78,#20075,-1,"g") -hasLocation(#20077,#20033) -expr_containers(#20077,#20075) -literals("g","g",#20077) -decl(#20077,#20069) -#20078=* -scopes(#20078,1) -scopenodes(#20075,#20078) -scopenesting(#20078,#20068) -#20079=@"var;{x};{#20078}" -variables(#20079,"x",#20078) -#20080=@"var;{arguments};{#20078}" -variables(#20080,"arguments",#20078) -is_arguments_object(#20080) -#20081=* -stmts(#20081,1,#20075,-2,"{\n t ... }\n }") -#20082=@"loc,{#10000},2,16,7,3" -locations_default(#20082,#10000,2,16,7,3) -hasLocation(#20081,#20082) -stmt_containers(#20081,#20075) -#20083=* -stmts(#20083,11,#20081,0,"try {\n ... ;\n }") -#20084=@"loc,{#10000},3,5,6,5" -locations_default(#20084,#10000,3,5,6,5) -hasLocation(#20083,#20084) -stmt_containers(#20083,#20075) -#20085=* -stmts(#20085,1,#20083,0,"{\n }") -#20086=@"loc,{#10000},3,9,4,5" -locations_default(#20086,#10000,3,9,4,5) -hasLocation(#20085,#20086) -stmt_containers(#20085,#20075) -#20087=* -stmts(#20087,1,#20083,-1,"{\n var x;\n }") -#20088=@"loc,{#10000},4,15,6,5" -locations_default(#20088,#10000,4,15,6,5) -hasLocation(#20087,#20088) -stmt_containers(#20087,#20075) -#20089=* -stmts(#20089,18,#20087,0,"var x;") -#20090=@"loc,{#10000},5,7,5,12" -locations_default(#20090,#10000,5,7,5,12) -hasLocation(#20089,#20090) -stmt_containers(#20089,#20075) -#20091=* -exprs(#20091,64,#20089,0,"x") -hasLocation(#20091,#20053) -enclosing_stmt(#20091,#20089) -expr_containers(#20091,#20075) +stmts(#20077,17,#20075,0,"functio ... }\n }") +#20078=@"loc,{#10000},2,3,7,3" +locations_default(#20078,#10000,2,3,7,3) +hasLocation(#20077,#20078) +stmt_containers(#20077,#20066) +#20079=* +exprs(#20079,78,#20077,-1,"g") +hasLocation(#20079,#20033) +expr_containers(#20079,#20077) +literals("g","g",#20079) +decl(#20079,#20070) +#20080=* +scopes(#20080,1) +scopenodes(#20077,#20080) +scopenesting(#20080,#20069) +#20081=@"var;{x};{#20080}" +variables(#20081,"x",#20080) +#20082=@"var;{this};{#20080}" +variables(#20082,"this",#20080) +#20083=@"var;{arguments};{#20080}" +variables(#20083,"arguments",#20080) +is_arguments_object(#20083) +#20084=* +stmts(#20084,1,#20077,-2,"{\n t ... }\n }") +#20085=@"loc,{#10000},2,16,7,3" +locations_default(#20085,#10000,2,16,7,3) +hasLocation(#20084,#20085) +stmt_containers(#20084,#20077) +#20086=* +stmts(#20086,11,#20084,0,"try {\n ... ;\n }") +#20087=@"loc,{#10000},3,5,6,5" +locations_default(#20087,#10000,3,5,6,5) +hasLocation(#20086,#20087) +stmt_containers(#20086,#20077) +#20088=* +stmts(#20088,1,#20086,0,"{\n }") +#20089=@"loc,{#10000},3,9,4,5" +locations_default(#20089,#10000,3,9,4,5) +hasLocation(#20088,#20089) +stmt_containers(#20088,#20077) +#20090=* +stmts(#20090,1,#20086,-1,"{\n var x;\n }") +#20091=@"loc,{#10000},4,15,6,5" +locations_default(#20091,#10000,4,15,6,5) +hasLocation(#20090,#20091) +stmt_containers(#20090,#20077) #20092=* -exprs(#20092,78,#20091,0,"x") -hasLocation(#20092,#20053) -enclosing_stmt(#20092,#20089) -expr_containers(#20092,#20075) -literals("x","x",#20092) -decl(#20092,#20079) -#20093=* -entry_cfg_node(#20093,#20001) -#20094=@"loc,{#10000},1,1,1,0" -locations_default(#20094,#10000,1,1,1,0) -hasLocation(#20093,#20094) +stmts(#20092,18,#20090,0,"var x;") +#20093=@"loc,{#10000},5,7,5,12" +locations_default(#20093,#10000,5,7,5,12) +hasLocation(#20092,#20093) +stmt_containers(#20092,#20077) +#20094=* +exprs(#20094,64,#20092,0,"x") +hasLocation(#20094,#20053) +enclosing_stmt(#20094,#20092) +expr_containers(#20094,#20077) #20095=* -exit_cfg_node(#20095,#20001) -hasLocation(#20095,#20062) -successor(#20065,#20095) +exprs(#20095,78,#20094,0,"x") +hasLocation(#20095,#20053) +enclosing_stmt(#20095,#20092) +expr_containers(#20095,#20077) +literals("x","x",#20095) +decl(#20095,#20081) #20096=* -entry_cfg_node(#20096,#20065) -hasLocation(#20096,#20094) -#20097=* -exit_cfg_node(#20097,#20065) -#20098=@"loc,{#10000},8,2,8,1" -locations_default(#20098,#10000,8,2,8,1) -hasLocation(#20097,#20098) -successor(#20075,#20097) +entry_cfg_node(#20096,#20001) +#20097=@"loc,{#10000},1,1,1,0" +locations_default(#20097,#10000,1,1,1,0) +hasLocation(#20096,#20097) +#20098=* +exit_cfg_node(#20098,#20001) +hasLocation(#20098,#20062) +successor(#20066,#20098) #20099=* -entry_cfg_node(#20099,#20075) -#20100=@"loc,{#10000},2,3,2,2" -locations_default(#20100,#10000,2,3,2,2) -hasLocation(#20099,#20100) -#20101=* -exit_cfg_node(#20101,#20075) -#20102=@"loc,{#10000},7,4,7,3" -locations_default(#20102,#10000,7,4,7,3) -hasLocation(#20101,#20102) -successor(#20083,#20085) -successor(#20085,#20087) -successor(#20089,#20092) -successor(#20092,#20091) -successor(#20091,#20101) -successor(#20087,#20089) -successor(#20081,#20083) -successor(#20099,#20081) -successor(#20077,#20075) -successor(#20073,#20077) -successor(#20071,#20073) -successor(#20096,#20071) -successor(#20067,#20065) -successor(#20093,#20067) +entry_cfg_node(#20099,#20066) +hasLocation(#20099,#20097) +#20100=* +exit_cfg_node(#20100,#20066) +#20101=@"loc,{#10000},8,2,8,1" +locations_default(#20101,#10000,8,2,8,1) +hasLocation(#20100,#20101) +successor(#20077,#20100) +#20102=* +entry_cfg_node(#20102,#20077) +#20103=@"loc,{#10000},2,3,2,2" +locations_default(#20103,#10000,2,3,2,2) +hasLocation(#20102,#20103) +#20104=* +exit_cfg_node(#20104,#20077) +#20105=@"loc,{#10000},7,4,7,3" +locations_default(#20105,#10000,7,4,7,3) +hasLocation(#20104,#20105) +successor(#20086,#20088) +successor(#20088,#20090) +successor(#20092,#20095) +successor(#20095,#20094) +successor(#20094,#20104) +successor(#20090,#20092) +successor(#20084,#20086) +successor(#20102,#20084) +successor(#20079,#20077) +successor(#20075,#20079) +successor(#20073,#20075) +successor(#20099,#20073) +successor(#20068,#20066) +successor(#20096,#20068) numlines(#10000,8,8,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/variables/output/trap/switch.js.trap b/javascript/extractor/tests/variables/output/trap/switch.js.trap index 7ea8d83f4ee1..17d71b8ab9e3 100644 --- a/javascript/extractor/tests/variables/output/trap/switch.js.trap +++ b/javascript/extractor/tests/variables/output/trap/switch.js.trap @@ -144,95 +144,99 @@ locations_default(#20049,#10000,1,1,7,0) hasLocation(#20001,#20049) #20050=@"var;{g};{#20000}" variables(#20050,"g",#20000) -#20051=* -stmts(#20051,17,#20001,0,"functio ... i;\n\t}\n}") -#20052=@"loc,{#10000},1,1,6,1" -locations_default(#20052,#10000,1,1,6,1) -hasLocation(#20051,#20052) -stmt_containers(#20051,#20001) -#20053=* -exprs(#20053,78,#20051,-1,"g") -hasLocation(#20053,#20017) -expr_containers(#20053,#20051) -literals("g","g",#20053) -decl(#20053,#20050) +#20051=@"var;{this};{#20000}" +variables(#20051,"this",#20000) +#20052=* +stmts(#20052,17,#20001,0,"functio ... i;\n\t}\n}") +#20053=@"loc,{#10000},1,1,6,1" +locations_default(#20053,#10000,1,1,6,1) +hasLocation(#20052,#20053) +stmt_containers(#20052,#20001) #20054=* -scopes(#20054,1) -scopenodes(#20051,#20054) -scopenesting(#20054,#20000) -#20055=@"var;{i};{#20054}" -variables(#20055,"i",#20054) -#20056=@"var;{arguments};{#20054}" -variables(#20056,"arguments",#20054) -is_arguments_object(#20056) -#20057=* -stmts(#20057,1,#20051,-2,"{\n\tswit ... i;\n\t}\n}") -#20058=@"loc,{#10000},1,14,6,1" -locations_default(#20058,#10000,1,14,6,1) -hasLocation(#20057,#20058) -stmt_containers(#20057,#20051) +exprs(#20054,78,#20052,-1,"g") +hasLocation(#20054,#20017) +expr_containers(#20054,#20052) +literals("g","g",#20054) +decl(#20054,#20050) +#20055=* +scopes(#20055,1) +scopenodes(#20052,#20055) +scopenesting(#20055,#20000) +#20056=@"var;{i};{#20055}" +variables(#20056,"i",#20055) +#20057=@"var;{this};{#20055}" +variables(#20057,"this",#20055) +#20058=@"var;{arguments};{#20055}" +variables(#20058,"arguments",#20055) +is_arguments_object(#20058) #20059=* -stmts(#20059,8,#20057,0,"switch ... r i;\n\t}") -#20060=@"loc,{#10000},2,2,5,2" -locations_default(#20060,#10000,2,2,5,2) +stmts(#20059,1,#20052,-2,"{\n\tswit ... i;\n\t}\n}") +#20060=@"loc,{#10000},1,14,6,1" +locations_default(#20060,#10000,1,14,6,1) hasLocation(#20059,#20060) -stmt_containers(#20059,#20051) +stmt_containers(#20059,#20052) #20061=* -exprs(#20061,3,#20059,-1,"0") -hasLocation(#20061,#20029) -enclosing_stmt(#20061,#20059) -expr_containers(#20061,#20051) -literals("0","0",#20061) -#20062=* -stmts(#20062,19,#20059,0,"default:\n\t\tvar i;") -#20063=@"loc,{#10000},3,2,4,8" -locations_default(#20063,#10000,3,2,4,8) -hasLocation(#20062,#20063) -stmt_containers(#20062,#20051) +stmts(#20061,8,#20059,0,"switch ... r i;\n\t}") +#20062=@"loc,{#10000},2,2,5,2" +locations_default(#20062,#10000,2,2,5,2) +hasLocation(#20061,#20062) +stmt_containers(#20061,#20052) +#20063=* +exprs(#20063,3,#20061,-1,"0") +hasLocation(#20063,#20029) +enclosing_stmt(#20063,#20061) +expr_containers(#20063,#20052) +literals("0","0",#20063) #20064=* -stmts(#20064,18,#20062,0,"var i;") -#20065=@"loc,{#10000},4,3,4,8" -locations_default(#20065,#10000,4,3,4,8) +stmts(#20064,19,#20061,0,"default:\n\t\tvar i;") +#20065=@"loc,{#10000},3,2,4,8" +locations_default(#20065,#10000,3,2,4,8) hasLocation(#20064,#20065) -stmt_containers(#20064,#20051) +stmt_containers(#20064,#20052) #20066=* -exprs(#20066,64,#20064,0,"i") -hasLocation(#20066,#20041) -enclosing_stmt(#20066,#20064) -expr_containers(#20066,#20051) -#20067=* -exprs(#20067,78,#20066,0,"i") -hasLocation(#20067,#20041) -enclosing_stmt(#20067,#20064) -expr_containers(#20067,#20051) -literals("i","i",#20067) -decl(#20067,#20055) +stmts(#20066,18,#20064,0,"var i;") +#20067=@"loc,{#10000},4,3,4,8" +locations_default(#20067,#10000,4,3,4,8) +hasLocation(#20066,#20067) +stmt_containers(#20066,#20052) #20068=* -entry_cfg_node(#20068,#20001) -#20069=@"loc,{#10000},1,1,1,0" -locations_default(#20069,#10000,1,1,1,0) -hasLocation(#20068,#20069) +exprs(#20068,64,#20066,0,"i") +hasLocation(#20068,#20041) +enclosing_stmt(#20068,#20066) +expr_containers(#20068,#20052) +#20069=* +exprs(#20069,78,#20068,0,"i") +hasLocation(#20069,#20041) +enclosing_stmt(#20069,#20066) +expr_containers(#20069,#20052) +literals("i","i",#20069) +decl(#20069,#20056) #20070=* -exit_cfg_node(#20070,#20001) -hasLocation(#20070,#20048) -successor(#20051,#20070) -#20071=* -entry_cfg_node(#20071,#20051) -hasLocation(#20071,#20069) +entry_cfg_node(#20070,#20001) +#20071=@"loc,{#10000},1,1,1,0" +locations_default(#20071,#10000,1,1,1,0) +hasLocation(#20070,#20071) #20072=* -exit_cfg_node(#20072,#20051) -#20073=@"loc,{#10000},6,2,6,1" -locations_default(#20073,#10000,6,2,6,1) -hasLocation(#20072,#20073) +exit_cfg_node(#20072,#20001) +hasLocation(#20072,#20048) +successor(#20052,#20072) +#20073=* +entry_cfg_node(#20073,#20052) +hasLocation(#20073,#20071) +#20074=* +exit_cfg_node(#20074,#20052) +#20075=@"loc,{#10000},6,2,6,1" +locations_default(#20075,#10000,6,2,6,1) +hasLocation(#20074,#20075) +successor(#20061,#20063) +successor(#20063,#20064) +successor(#20064,#20066) +successor(#20066,#20069) +successor(#20069,#20068) +successor(#20068,#20074) successor(#20059,#20061) -successor(#20061,#20062) -successor(#20062,#20064) -successor(#20064,#20067) -successor(#20067,#20066) -successor(#20066,#20072) -successor(#20057,#20059) -successor(#20071,#20057) -successor(#20053,#20051) -successor(#20068,#20053) +successor(#20073,#20059) +successor(#20054,#20052) +successor(#20070,#20054) numlines(#10000,6,6,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/variables/output/trap/try.js.trap b/javascript/extractor/tests/variables/output/trap/try.js.trap index 4ce7fe8bb584..e656b81820ad 100644 --- a/javascript/extractor/tests/variables/output/trap/try.js.trap +++ b/javascript/extractor/tests/variables/output/trap/try.js.trap @@ -126,91 +126,95 @@ locations_default(#20043,#10000,1,1,5,1) hasLocation(#20001,#20043) #20044=@"var;{f};{#20000}" variables(#20044,"f",#20000) -#20045=* -stmts(#20045,17,#20001,0,"functio ... ly {}\n}") -hasLocation(#20045,#20043) -stmt_containers(#20045,#20001) +#20045=@"var;{this};{#20000}" +variables(#20045,"this",#20000) #20046=* -exprs(#20046,78,#20045,-1,"f") -hasLocation(#20046,#20015) -expr_containers(#20046,#20045) -literals("f","f",#20046) -decl(#20046,#20044) +stmts(#20046,17,#20001,0,"functio ... ly {}\n}") +hasLocation(#20046,#20043) +stmt_containers(#20046,#20001) #20047=* -scopes(#20047,1) -scopenodes(#20045,#20047) -scopenesting(#20047,#20000) -#20048=@"var;{x};{#20047}" -variables(#20048,"x",#20047) -#20049=@"var;{arguments};{#20047}" -variables(#20049,"arguments",#20047) -is_arguments_object(#20049) -#20050=* -stmts(#20050,1,#20045,-2,"{\n\ttry ... ly {}\n}") -#20051=@"loc,{#10000},1,14,5,1" -locations_default(#20051,#10000,1,14,5,1) -hasLocation(#20050,#20051) -stmt_containers(#20050,#20045) +exprs(#20047,78,#20046,-1,"f") +hasLocation(#20047,#20015) +expr_containers(#20047,#20046) +literals("f","f",#20047) +decl(#20047,#20044) +#20048=* +scopes(#20048,1) +scopenodes(#20046,#20048) +scopenesting(#20048,#20000) +#20049=@"var;{x};{#20048}" +variables(#20049,"x",#20048) +#20050=@"var;{this};{#20048}" +variables(#20050,"this",#20048) +#20051=@"var;{arguments};{#20048}" +variables(#20051,"arguments",#20048) +is_arguments_object(#20051) #20052=* -stmts(#20052,11,#20050,0,"try {\n\t ... ally {}") -#20053=@"loc,{#10000},2,2,4,13" -locations_default(#20053,#10000,2,2,4,13) +stmts(#20052,1,#20046,-2,"{\n\ttry ... ly {}\n}") +#20053=@"loc,{#10000},1,14,5,1" +locations_default(#20053,#10000,1,14,5,1) hasLocation(#20052,#20053) -stmt_containers(#20052,#20045) +stmt_containers(#20052,#20046) #20054=* -stmts(#20054,1,#20052,0,"{\n\t\tvar x;\n\t}") -#20055=@"loc,{#10000},2,6,4,2" -locations_default(#20055,#10000,2,6,4,2) +stmts(#20054,11,#20052,0,"try {\n\t ... ally {}") +#20055=@"loc,{#10000},2,2,4,13" +locations_default(#20055,#10000,2,2,4,13) hasLocation(#20054,#20055) -stmt_containers(#20054,#20045) +stmt_containers(#20054,#20046) #20056=* -stmts(#20056,18,#20054,0,"var x;") -#20057=@"loc,{#10000},3,3,3,8" -locations_default(#20057,#10000,3,3,3,8) +stmts(#20056,1,#20054,0,"{\n\t\tvar x;\n\t}") +#20057=@"loc,{#10000},2,6,4,2" +locations_default(#20057,#10000,2,6,4,2) hasLocation(#20056,#20057) -stmt_containers(#20056,#20045) +stmt_containers(#20056,#20046) #20058=* -exprs(#20058,64,#20056,0,"x") -hasLocation(#20058,#20029) -enclosing_stmt(#20058,#20056) -expr_containers(#20058,#20045) -#20059=* -exprs(#20059,78,#20058,0,"x") -hasLocation(#20059,#20029) -enclosing_stmt(#20059,#20056) -expr_containers(#20059,#20045) -literals("x","x",#20059) -decl(#20059,#20048) +stmts(#20058,18,#20056,0,"var x;") +#20059=@"loc,{#10000},3,3,3,8" +locations_default(#20059,#10000,3,3,3,8) +hasLocation(#20058,#20059) +stmt_containers(#20058,#20046) #20060=* -stmts(#20060,1,#20052,-1,"{}") -#20061=@"loc,{#10000},4,12,4,13" -locations_default(#20061,#10000,4,12,4,13) -hasLocation(#20060,#20061) -stmt_containers(#20060,#20045) +exprs(#20060,64,#20058,0,"x") +hasLocation(#20060,#20029) +enclosing_stmt(#20060,#20058) +expr_containers(#20060,#20046) +#20061=* +exprs(#20061,78,#20060,0,"x") +hasLocation(#20061,#20029) +enclosing_stmt(#20061,#20058) +expr_containers(#20061,#20046) +literals("x","x",#20061) +decl(#20061,#20049) #20062=* -entry_cfg_node(#20062,#20001) -#20063=@"loc,{#10000},1,1,1,0" -locations_default(#20063,#10000,1,1,1,0) +stmts(#20062,1,#20054,-1,"{}") +#20063=@"loc,{#10000},4,12,4,13" +locations_default(#20063,#10000,4,12,4,13) hasLocation(#20062,#20063) +stmt_containers(#20062,#20046) #20064=* -exit_cfg_node(#20064,#20001) -hasLocation(#20064,#20042) -successor(#20045,#20064) -#20065=* -entry_cfg_node(#20065,#20045) -hasLocation(#20065,#20063) +entry_cfg_node(#20064,#20001) +#20065=@"loc,{#10000},1,1,1,0" +locations_default(#20065,#10000,1,1,1,0) +hasLocation(#20064,#20065) #20066=* -exit_cfg_node(#20066,#20045) +exit_cfg_node(#20066,#20001) hasLocation(#20066,#20042) -successor(#20052,#20054) -successor(#20056,#20059) -successor(#20059,#20058) -successor(#20058,#20060) +successor(#20046,#20066) +#20067=* +entry_cfg_node(#20067,#20046) +hasLocation(#20067,#20065) +#20068=* +exit_cfg_node(#20068,#20046) +hasLocation(#20068,#20042) successor(#20054,#20056) -successor(#20060,#20066) -successor(#20050,#20052) -successor(#20065,#20050) -successor(#20046,#20045) -successor(#20062,#20046) +successor(#20058,#20061) +successor(#20061,#20060) +successor(#20060,#20062) +successor(#20056,#20058) +successor(#20062,#20068) +successor(#20052,#20054) +successor(#20067,#20052) +successor(#20047,#20046) +successor(#20064,#20047) numlines(#10000,5,5,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/variables/output/trap/variables.js.trap b/javascript/extractor/tests/variables/output/trap/variables.js.trap index b0c3a1b7e71d..bf445efea76b 100644 --- a/javascript/extractor/tests/variables/output/trap/variables.js.trap +++ b/javascript/extractor/tests/variables/output/trap/variables.js.trap @@ -406,372 +406,382 @@ variables(#20146,"another_global",#20000) variables(#20147,"f",#20000) #20148=@"var;{g};{#20000}" variables(#20148,"g",#20000) -#20149=* -stmts(#20149,18,#20001,0,"var global;") -hasLocation(#20149,#20003) -stmt_containers(#20149,#20001) +#20149=@"var;{this};{#20000}" +variables(#20149,"this",#20000) #20150=* -exprs(#20150,64,#20149,0,"global") -hasLocation(#20150,#20043) -enclosing_stmt(#20150,#20149) -expr_containers(#20150,#20001) +stmts(#20150,18,#20001,0,"var global;") +hasLocation(#20150,#20003) +stmt_containers(#20150,#20001) #20151=* -exprs(#20151,78,#20150,0,"global") +exprs(#20151,64,#20150,0,"global") hasLocation(#20151,#20043) -enclosing_stmt(#20151,#20149) +enclosing_stmt(#20151,#20150) expr_containers(#20151,#20001) -literals("global","global",#20151) -decl(#20151,#20145) #20152=* -stmts(#20152,2,#20001,1,"also_a_global = 23;") -hasLocation(#20152,#20005) -stmt_containers(#20152,#20001) +exprs(#20152,78,#20151,0,"global") +hasLocation(#20152,#20043) +enclosing_stmt(#20152,#20150) +expr_containers(#20152,#20001) +literals("global","global",#20152) +decl(#20152,#20145) #20153=* -exprs(#20153,47,#20152,0,"also_a_global = 23") -#20154=@"loc,{#10000},2,1,2,18" -locations_default(#20154,#10000,2,1,2,18) -hasLocation(#20153,#20154) -enclosing_stmt(#20153,#20152) -expr_containers(#20153,#20001) -#20155=* -exprs(#20155,79,#20153,0,"also_a_global") -hasLocation(#20155,#20047) -enclosing_stmt(#20155,#20152) -expr_containers(#20155,#20001) -literals("also_a_global","also_a_global",#20155) -#20156=@"var;{also_a_global};{#20000}" -variables(#20156,"also_a_global",#20000) -bind(#20155,#20156) -#20157=* -exprs(#20157,3,#20153,1,"23") -hasLocation(#20157,#20051) -enclosing_stmt(#20157,#20152) -expr_containers(#20157,#20001) -literals("23","23",#20157) +stmts(#20153,2,#20001,1,"also_a_global = 23;") +hasLocation(#20153,#20005) +stmt_containers(#20153,#20001) +#20154=* +exprs(#20154,47,#20153,0,"also_a_global = 23") +#20155=@"loc,{#10000},2,1,2,18" +locations_default(#20155,#10000,2,1,2,18) +hasLocation(#20154,#20155) +enclosing_stmt(#20154,#20153) +expr_containers(#20154,#20001) +#20156=* +exprs(#20156,79,#20154,0,"also_a_global") +hasLocation(#20156,#20047) +enclosing_stmt(#20156,#20153) +expr_containers(#20156,#20001) +literals("also_a_global","also_a_global",#20156) +#20157=@"var;{also_a_global};{#20000}" +variables(#20157,"also_a_global",#20000) +bind(#20156,#20157) #20158=* -stmts(#20158,2,#20001,2,"global;") -hasLocation(#20158,#20007) -stmt_containers(#20158,#20001) +exprs(#20158,3,#20154,1,"23") +hasLocation(#20158,#20051) +enclosing_stmt(#20158,#20153) +expr_containers(#20158,#20001) +literals("23","23",#20158) #20159=* -exprs(#20159,79,#20158,0,"global") -hasLocation(#20159,#20055) -enclosing_stmt(#20159,#20158) -expr_containers(#20159,#20001) -literals("global","global",#20159) -bind(#20159,#20145) +stmts(#20159,2,#20001,2,"global;") +hasLocation(#20159,#20007) +stmt_containers(#20159,#20001) #20160=* -stmts(#20160,2,#20001,3,"another_global;") -hasLocation(#20160,#20009) -stmt_containers(#20160,#20001) +exprs(#20160,79,#20159,0,"global") +hasLocation(#20160,#20055) +enclosing_stmt(#20160,#20159) +expr_containers(#20160,#20001) +literals("global","global",#20160) +bind(#20160,#20145) #20161=* -exprs(#20161,79,#20160,0,"another_global") -hasLocation(#20161,#20059) -enclosing_stmt(#20161,#20160) -expr_containers(#20161,#20001) -literals("another_global","another_global",#20161) -bind(#20161,#20146) +stmts(#20161,2,#20001,3,"another_global;") +hasLocation(#20161,#20009) +stmt_containers(#20161,#20001) #20162=* -stmts(#20162,1,#20001,4,"{\n\tvar ... obal;\n}") -#20163=@"loc,{#10000},5,1,7,1" -locations_default(#20163,#10000,5,1,7,1) -hasLocation(#20162,#20163) -stmt_containers(#20162,#20001) -#20164=* -stmts(#20164,18,#20162,0,"var another_global;") -#20165=@"loc,{#10000},6,2,6,20" -locations_default(#20165,#10000,6,2,6,20) -hasLocation(#20164,#20165) -stmt_containers(#20164,#20001) -#20166=* -exprs(#20166,64,#20164,0,"another_global") -hasLocation(#20166,#20066) -enclosing_stmt(#20166,#20164) -expr_containers(#20166,#20001) +exprs(#20162,79,#20161,0,"another_global") +hasLocation(#20162,#20059) +enclosing_stmt(#20162,#20161) +expr_containers(#20162,#20001) +literals("another_global","another_global",#20162) +bind(#20162,#20146) +#20163=* +stmts(#20163,1,#20001,4,"{\n\tvar ... obal;\n}") +#20164=@"loc,{#10000},5,1,7,1" +locations_default(#20164,#10000,5,1,7,1) +hasLocation(#20163,#20164) +stmt_containers(#20163,#20001) +#20165=* +stmts(#20165,18,#20163,0,"var another_global;") +#20166=@"loc,{#10000},6,2,6,20" +locations_default(#20166,#10000,6,2,6,20) +hasLocation(#20165,#20166) +stmt_containers(#20165,#20001) #20167=* -exprs(#20167,78,#20166,0,"another_global") +exprs(#20167,64,#20165,0,"another_global") hasLocation(#20167,#20066) -enclosing_stmt(#20167,#20164) +enclosing_stmt(#20167,#20165) expr_containers(#20167,#20001) -literals("another_global","another_global",#20167) -decl(#20167,#20146) #20168=* -stmts(#20168,17,#20001,5,"functio ... ;\n\tx;\n}") -#20169=@"loc,{#10000},8,1,11,1" -locations_default(#20169,#10000,8,1,11,1) -hasLocation(#20168,#20169) -stmt_containers(#20168,#20001) -#20170=* -exprs(#20170,78,#20168,-1,"f") -hasLocation(#20170,#20073) -expr_containers(#20170,#20168) -literals("f","f",#20170) -decl(#20170,#20147) +exprs(#20168,78,#20167,0,"another_global") +hasLocation(#20168,#20066) +enclosing_stmt(#20168,#20165) +expr_containers(#20168,#20001) +literals("another_global","another_global",#20168) +decl(#20168,#20146) +#20169=* +stmts(#20169,17,#20001,5,"functio ... ;\n\tx;\n}") +#20170=@"loc,{#10000},8,1,11,1" +locations_default(#20170,#10000,8,1,11,1) +hasLocation(#20169,#20170) +stmt_containers(#20169,#20001) #20171=* -scopes(#20171,1) -scopenodes(#20168,#20171) -scopenesting(#20171,#20000) -#20172=@"var;{x};{#20171}" -variables(#20172,"x",#20171) -#20173=@"var;{arguments};{#20171}" -variables(#20173,"arguments",#20171) -is_arguments_object(#20173) -#20174=* -stmts(#20174,1,#20168,-2,"{\n\tvar x;\n\tx;\n}") -#20175=@"loc,{#10000},8,14,11,1" -locations_default(#20175,#10000,8,14,11,1) -hasLocation(#20174,#20175) -stmt_containers(#20174,#20168) +exprs(#20171,78,#20169,-1,"f") +hasLocation(#20171,#20073) +expr_containers(#20171,#20169) +literals("f","f",#20171) +decl(#20171,#20147) +#20172=* +scopes(#20172,1) +scopenodes(#20169,#20172) +scopenesting(#20172,#20000) +#20173=@"var;{x};{#20172}" +variables(#20173,"x",#20172) +#20174=@"var;{this};{#20172}" +variables(#20174,"this",#20172) +#20175=@"var;{arguments};{#20172}" +variables(#20175,"arguments",#20172) +is_arguments_object(#20175) #20176=* -stmts(#20176,18,#20174,0,"var x;") -#20177=@"loc,{#10000},9,2,9,7" -locations_default(#20177,#10000,9,2,9,7) +stmts(#20176,1,#20169,-2,"{\n\tvar x;\n\tx;\n}") +#20177=@"loc,{#10000},8,14,11,1" +locations_default(#20177,#10000,8,14,11,1) hasLocation(#20176,#20177) -stmt_containers(#20176,#20168) +stmt_containers(#20176,#20169) #20178=* -exprs(#20178,64,#20176,0,"x") -hasLocation(#20178,#20083) -enclosing_stmt(#20178,#20176) -expr_containers(#20178,#20168) -#20179=* -exprs(#20179,78,#20178,0,"x") -hasLocation(#20179,#20083) -enclosing_stmt(#20179,#20176) -expr_containers(#20179,#20168) -literals("x","x",#20179) -decl(#20179,#20172) +stmts(#20178,18,#20176,0,"var x;") +#20179=@"loc,{#10000},9,2,9,7" +locations_default(#20179,#10000,9,2,9,7) +hasLocation(#20178,#20179) +stmt_containers(#20178,#20169) #20180=* -stmts(#20180,2,#20174,1,"x;") -#20181=@"loc,{#10000},10,2,10,3" -locations_default(#20181,#10000,10,2,10,3) -hasLocation(#20180,#20181) -stmt_containers(#20180,#20168) +exprs(#20180,64,#20178,0,"x") +hasLocation(#20180,#20083) +enclosing_stmt(#20180,#20178) +expr_containers(#20180,#20169) +#20181=* +exprs(#20181,78,#20180,0,"x") +hasLocation(#20181,#20083) +enclosing_stmt(#20181,#20178) +expr_containers(#20181,#20169) +literals("x","x",#20181) +decl(#20181,#20173) #20182=* -exprs(#20182,79,#20180,0,"x") -hasLocation(#20182,#20087) -enclosing_stmt(#20182,#20180) -expr_containers(#20182,#20168) -literals("x","x",#20182) -bind(#20182,#20172) -#20183=* -stmts(#20183,17,#20001,6,"functio ... {}\n\t}\n}") -#20184=@"loc,{#10000},12,1,19,1" -locations_default(#20184,#10000,12,1,19,1) -hasLocation(#20183,#20184) -stmt_containers(#20183,#20001) +stmts(#20182,2,#20176,1,"x;") +#20183=@"loc,{#10000},10,2,10,3" +locations_default(#20183,#10000,10,2,10,3) +hasLocation(#20182,#20183) +stmt_containers(#20182,#20169) +#20184=* +exprs(#20184,79,#20182,0,"x") +hasLocation(#20184,#20087) +enclosing_stmt(#20184,#20182) +expr_containers(#20184,#20169) +literals("x","x",#20184) +bind(#20184,#20173) #20185=* -exprs(#20185,78,#20183,-1,"g") -hasLocation(#20185,#20094) -expr_containers(#20185,#20183) -literals("g","g",#20185) -decl(#20185,#20148) -#20186=* -scopes(#20186,1) -scopenodes(#20183,#20186) -scopenesting(#20186,#20000) -#20187=@"var;{x};{#20186}" -variables(#20187,"x",#20186) -#20188=@"var;{h};{#20186}" -variables(#20188,"h",#20186) -#20189=@"var;{arguments};{#20186}" -variables(#20189,"arguments",#20186) -is_arguments_object(#20189) -#20190=* -stmts(#20190,1,#20183,-2,"{\n\tx;\n\t ... {}\n\t}\n}") -#20191=@"loc,{#10000},12,14,19,1" -locations_default(#20191,#10000,12,14,19,1) -hasLocation(#20190,#20191) -stmt_containers(#20190,#20183) -#20192=* -stmts(#20192,2,#20190,0,"x;") -#20193=@"loc,{#10000},13,2,13,3" -locations_default(#20193,#10000,13,2,13,3) -hasLocation(#20192,#20193) -stmt_containers(#20192,#20183) -#20194=* -exprs(#20194,79,#20192,0,"x") -hasLocation(#20194,#20102) -enclosing_stmt(#20194,#20192) -expr_containers(#20194,#20183) -literals("x","x",#20194) -bind(#20194,#20187) +stmts(#20185,17,#20001,6,"functio ... {}\n\t}\n}") +#20186=@"loc,{#10000},12,1,19,1" +locations_default(#20186,#10000,12,1,19,1) +hasLocation(#20185,#20186) +stmt_containers(#20185,#20001) +#20187=* +exprs(#20187,78,#20185,-1,"g") +hasLocation(#20187,#20094) +expr_containers(#20187,#20185) +literals("g","g",#20187) +decl(#20187,#20148) +#20188=* +scopes(#20188,1) +scopenodes(#20185,#20188) +scopenesting(#20188,#20000) +#20189=@"var;{x};{#20188}" +variables(#20189,"x",#20188) +#20190=@"var;{h};{#20188}" +variables(#20190,"h",#20188) +#20191=@"var;{this};{#20188}" +variables(#20191,"this",#20188) +#20192=@"var;{arguments};{#20188}" +variables(#20192,"arguments",#20188) +is_arguments_object(#20192) +#20193=* +stmts(#20193,1,#20185,-2,"{\n\tx;\n\t ... {}\n\t}\n}") +#20194=@"loc,{#10000},12,14,19,1" +locations_default(#20194,#10000,12,14,19,1) +hasLocation(#20193,#20194) +stmt_containers(#20193,#20185) #20195=* -stmts(#20195,18,#20190,1,"var x;") -#20196=@"loc,{#10000},14,2,14,7" -locations_default(#20196,#10000,14,2,14,7) +stmts(#20195,2,#20193,0,"x;") +#20196=@"loc,{#10000},13,2,13,3" +locations_default(#20196,#10000,13,2,13,3) hasLocation(#20195,#20196) -stmt_containers(#20195,#20183) +stmt_containers(#20195,#20185) #20197=* -exprs(#20197,64,#20195,0,"x") -hasLocation(#20197,#20108) +exprs(#20197,79,#20195,0,"x") +hasLocation(#20197,#20102) enclosing_stmt(#20197,#20195) -expr_containers(#20197,#20183) +expr_containers(#20197,#20185) +literals("x","x",#20197) +bind(#20197,#20189) #20198=* -exprs(#20198,78,#20197,0,"x") -hasLocation(#20198,#20108) -enclosing_stmt(#20198,#20195) -expr_containers(#20198,#20183) -literals("x","x",#20198) -decl(#20198,#20187) -#20199=* -stmts(#20199,1,#20190,2,"{\n\t\tfun ... ) {}\n\t}") -#20200=@"loc,{#10000},15,2,18,2" -locations_default(#20200,#10000,15,2,18,2) -hasLocation(#20199,#20200) -stmt_containers(#20199,#20183) +stmts(#20198,18,#20193,1,"var x;") +#20199=@"loc,{#10000},14,2,14,7" +locations_default(#20199,#10000,14,2,14,7) +hasLocation(#20198,#20199) +stmt_containers(#20198,#20185) +#20200=* +exprs(#20200,64,#20198,0,"x") +hasLocation(#20200,#20108) +enclosing_stmt(#20200,#20198) +expr_containers(#20200,#20185) #20201=* -stmts(#20201,17,#20199,0,"function h() {}") -#20202=@"loc,{#10000},16,3,16,17" -locations_default(#20202,#10000,16,3,16,17) -hasLocation(#20201,#20202) -stmt_containers(#20201,#20183) -#20203=* -exprs(#20203,78,#20201,-1,"h") -hasLocation(#20203,#20116) -expr_containers(#20203,#20201) -literals("h","h",#20203) -decl(#20203,#20188) +exprs(#20201,78,#20200,0,"x") +hasLocation(#20201,#20108) +enclosing_stmt(#20201,#20198) +expr_containers(#20201,#20185) +literals("x","x",#20201) +decl(#20201,#20189) +#20202=* +stmts(#20202,1,#20193,2,"{\n\t\tfun ... ) {}\n\t}") +#20203=@"loc,{#10000},15,2,18,2" +locations_default(#20203,#10000,15,2,18,2) +hasLocation(#20202,#20203) +stmt_containers(#20202,#20185) #20204=* -scopes(#20204,1) -scopenodes(#20201,#20204) -scopenesting(#20204,#20186) -#20205=@"var;{arguments};{#20204}" -variables(#20205,"arguments",#20204) -is_arguments_object(#20205) +stmts(#20204,17,#20202,0,"function h() {}") +#20205=@"loc,{#10000},16,3,16,17" +locations_default(#20205,#10000,16,3,16,17) +hasLocation(#20204,#20205) +stmt_containers(#20204,#20185) #20206=* -stmts(#20206,1,#20201,-2,"{}") -#20207=@"loc,{#10000},16,16,16,17" -locations_default(#20207,#10000,16,16,16,17) -hasLocation(#20206,#20207) -stmt_containers(#20206,#20201) -#20208=* -stmts(#20208,2,#20199,1,"!function k() {}") -#20209=@"loc,{#10000},17,3,17,18" -locations_default(#20209,#10000,17,3,17,18) -hasLocation(#20208,#20209) -stmt_containers(#20208,#20183) +exprs(#20206,78,#20204,-1,"h") +hasLocation(#20206,#20116) +expr_containers(#20206,#20204) +literals("h","h",#20206) +decl(#20206,#20190) +#20207=* +scopes(#20207,1) +scopenodes(#20204,#20207) +scopenesting(#20207,#20188) +#20208=@"var;{this};{#20207}" +variables(#20208,"this",#20207) +#20209=@"var;{arguments};{#20207}" +variables(#20209,"arguments",#20207) +is_arguments_object(#20209) #20210=* -exprs(#20210,18,#20208,0,"!function k() {}") -hasLocation(#20210,#20209) -enclosing_stmt(#20210,#20208) -expr_containers(#20210,#20183) -#20211=* -exprs(#20211,9,#20210,0,"function k() {}") -#20212=@"loc,{#10000},17,4,17,18" -locations_default(#20212,#10000,17,4,17,18) -hasLocation(#20211,#20212) -enclosing_stmt(#20211,#20208) -expr_containers(#20211,#20183) -#20213=* -scopes(#20213,1) -scopenodes(#20211,#20213) -scopenesting(#20213,#20186) -#20214=@"var;{k};{#20213}" -variables(#20214,"k",#20213) +stmts(#20210,1,#20204,-2,"{}") +#20211=@"loc,{#10000},16,16,16,17" +locations_default(#20211,#10000,16,16,16,17) +hasLocation(#20210,#20211) +stmt_containers(#20210,#20204) +#20212=* +stmts(#20212,2,#20202,1,"!function k() {}") +#20213=@"loc,{#10000},17,3,17,18" +locations_default(#20213,#10000,17,3,17,18) +hasLocation(#20212,#20213) +stmt_containers(#20212,#20185) +#20214=* +exprs(#20214,18,#20212,0,"!function k() {}") +hasLocation(#20214,#20213) +enclosing_stmt(#20214,#20212) +expr_containers(#20214,#20185) #20215=* -exprs(#20215,78,#20211,-1,"k") -hasLocation(#20215,#20130) -expr_containers(#20215,#20211) -literals("k","k",#20215) -decl(#20215,#20214) -#20216=@"var;{arguments};{#20213}" -variables(#20216,"arguments",#20213) -is_arguments_object(#20216) +exprs(#20215,9,#20214,0,"function k() {}") +#20216=@"loc,{#10000},17,4,17,18" +locations_default(#20216,#10000,17,4,17,18) +hasLocation(#20215,#20216) +enclosing_stmt(#20215,#20212) +expr_containers(#20215,#20185) #20217=* -stmts(#20217,1,#20211,-2,"{}") -#20218=@"loc,{#10000},17,17,17,18" -locations_default(#20218,#10000,17,17,17,18) -hasLocation(#20217,#20218) -stmt_containers(#20217,#20211) -#20219=* -entry_cfg_node(#20219,#20001) -#20220=@"loc,{#10000},1,1,1,0" -locations_default(#20220,#10000,1,1,1,0) -hasLocation(#20219,#20220) -#20221=* -exit_cfg_node(#20221,#20001) -hasLocation(#20221,#20143) -successor(#20183,#20221) +scopes(#20217,1) +scopenodes(#20215,#20217) +scopenesting(#20217,#20188) +#20218=@"var;{this};{#20217}" +variables(#20218,"this",#20217) +#20219=@"var;{k};{#20217}" +variables(#20219,"k",#20217) +#20220=* +exprs(#20220,78,#20215,-1,"k") +hasLocation(#20220,#20130) +expr_containers(#20220,#20215) +literals("k","k",#20220) +decl(#20220,#20219) +#20221=@"var;{arguments};{#20217}" +variables(#20221,"arguments",#20217) +is_arguments_object(#20221) #20222=* -entry_cfg_node(#20222,#20183) -#20223=@"loc,{#10000},12,1,12,0" -locations_default(#20223,#10000,12,1,12,0) +stmts(#20222,1,#20215,-2,"{}") +#20223=@"loc,{#10000},17,17,17,18" +locations_default(#20223,#10000,17,17,17,18) hasLocation(#20222,#20223) +stmt_containers(#20222,#20215) #20224=* -exit_cfg_node(#20224,#20183) -hasLocation(#20224,#20143) -successor(#20208,#20211) -successor(#20211,#20210) -#20225=* -entry_cfg_node(#20225,#20211) -#20226=@"loc,{#10000},17,4,17,3" -locations_default(#20226,#10000,17,4,17,3) -hasLocation(#20225,#20226) +entry_cfg_node(#20224,#20001) +#20225=@"loc,{#10000},1,1,1,0" +locations_default(#20225,#10000,1,1,1,0) +hasLocation(#20224,#20225) +#20226=* +exit_cfg_node(#20226,#20001) +hasLocation(#20226,#20143) +successor(#20185,#20226) #20227=* -exit_cfg_node(#20227,#20211) -#20228=@"loc,{#10000},17,19,17,18" -locations_default(#20228,#10000,17,19,17,18) +entry_cfg_node(#20227,#20185) +#20228=@"loc,{#10000},12,1,12,0" +locations_default(#20228,#10000,12,1,12,0) hasLocation(#20227,#20228) -successor(#20217,#20227) -successor(#20215,#20217) -successor(#20225,#20215) -successor(#20210,#20224) -successor(#20201,#20208) #20229=* -entry_cfg_node(#20229,#20201) -#20230=@"loc,{#10000},16,3,16,2" -locations_default(#20230,#10000,16,3,16,2) -hasLocation(#20229,#20230) -#20231=* -exit_cfg_node(#20231,#20201) -#20232=@"loc,{#10000},16,18,16,17" -locations_default(#20232,#10000,16,18,16,17) -hasLocation(#20231,#20232) -successor(#20206,#20231) -successor(#20229,#20206) -successor(#20203,#20201) -successor(#20199,#20203) -successor(#20195,#20198) -successor(#20198,#20197) -successor(#20197,#20199) -successor(#20192,#20194) -successor(#20194,#20195) -successor(#20190,#20192) -successor(#20222,#20190) -successor(#20168,#20183) -#20233=* -entry_cfg_node(#20233,#20168) -#20234=@"loc,{#10000},8,1,8,0" -locations_default(#20234,#10000,8,1,8,0) -hasLocation(#20233,#20234) -#20235=* -exit_cfg_node(#20235,#20168) -#20236=@"loc,{#10000},11,2,11,1" -locations_default(#20236,#10000,11,2,11,1) -hasLocation(#20235,#20236) +exit_cfg_node(#20229,#20185) +hasLocation(#20229,#20143) +successor(#20212,#20215) +successor(#20215,#20214) +#20230=* +entry_cfg_node(#20230,#20215) +#20231=@"loc,{#10000},17,4,17,3" +locations_default(#20231,#10000,17,4,17,3) +hasLocation(#20230,#20231) +#20232=* +exit_cfg_node(#20232,#20215) +#20233=@"loc,{#10000},17,19,17,18" +locations_default(#20233,#10000,17,19,17,18) +hasLocation(#20232,#20233) +successor(#20222,#20232) +successor(#20220,#20222) +successor(#20230,#20220) +successor(#20214,#20229) +successor(#20204,#20212) +#20234=* +entry_cfg_node(#20234,#20204) +#20235=@"loc,{#10000},16,3,16,2" +locations_default(#20235,#10000,16,3,16,2) +hasLocation(#20234,#20235) +#20236=* +exit_cfg_node(#20236,#20204) +#20237=@"loc,{#10000},16,18,16,17" +locations_default(#20237,#10000,16,18,16,17) +hasLocation(#20236,#20237) +successor(#20210,#20236) +successor(#20234,#20210) +successor(#20206,#20204) +successor(#20202,#20206) +successor(#20198,#20201) +successor(#20201,#20200) +successor(#20200,#20202) +successor(#20195,#20197) +successor(#20197,#20198) +successor(#20193,#20195) +successor(#20227,#20193) +successor(#20169,#20185) +#20238=* +entry_cfg_node(#20238,#20169) +#20239=@"loc,{#10000},8,1,8,0" +locations_default(#20239,#10000,8,1,8,0) +hasLocation(#20238,#20239) +#20240=* +exit_cfg_node(#20240,#20169) +#20241=@"loc,{#10000},11,2,11,1" +locations_default(#20241,#10000,11,2,11,1) +hasLocation(#20240,#20241) +successor(#20182,#20184) +successor(#20184,#20240) +successor(#20178,#20181) +successor(#20181,#20180) successor(#20180,#20182) -successor(#20182,#20235) -successor(#20176,#20179) -successor(#20179,#20178) -successor(#20178,#20180) -successor(#20174,#20176) -successor(#20233,#20174) -successor(#20164,#20167) -successor(#20167,#20166) -successor(#20166,#20168) -successor(#20162,#20164) -successor(#20160,#20161) +successor(#20176,#20178) +successor(#20238,#20176) +successor(#20165,#20168) +successor(#20168,#20167) +successor(#20167,#20169) +successor(#20163,#20165) successor(#20161,#20162) -successor(#20158,#20159) +successor(#20162,#20163) successor(#20159,#20160) -successor(#20152,#20155) -successor(#20157,#20153) -successor(#20155,#20157) -successor(#20153,#20158) -successor(#20149,#20151) -successor(#20151,#20150) +successor(#20160,#20161) +successor(#20153,#20156) +successor(#20158,#20154) +successor(#20156,#20158) +successor(#20154,#20159) successor(#20150,#20152) -successor(#20185,#20149) -successor(#20170,#20185) -successor(#20219,#20170) +successor(#20152,#20151) +successor(#20151,#20153) +successor(#20187,#20150) +successor(#20171,#20187) +successor(#20224,#20171) numlines(#10000,19,19,0) filetype(#10000,"javascript") diff --git a/javascript/extractor/tests/vue/output/trap/rails.html.erb.trap b/javascript/extractor/tests/vue/output/trap/rails.html.erb.trap index 2bfa0afc073d..be7ac3a32be2 100644 --- a/javascript/extractor/tests/vue/output/trap/rails.html.erb.trap +++ b/javascript/extractor/tests/vue/output/trap/rails.html.erb.trap @@ -68,70 +68,72 @@ toplevels(#20002,1) #20023=@"loc,{#10000},1,9,3,0" locations_default(#20023,#10000,1,9,3,0) hasLocation(#20002,#20023) -#20024=* -stmts(#20024,2,#20002,0,"console.log(""FOO"");") -#20025=@"loc,{#10000},2,3,2,21" -locations_default(#20025,#10000,2,3,2,21) -hasLocation(#20024,#20025) -stmt_containers(#20024,#20002) -#20026=* -exprs(#20026,13,#20024,0,"console.log(""FOO"")") -#20027=@"loc,{#10000},2,3,2,20" -locations_default(#20027,#10000,2,3,2,20) -hasLocation(#20026,#20027) -enclosing_stmt(#20026,#20024) -expr_containers(#20026,#20002) -#20028=* -exprs(#20028,14,#20026,-1,"console.log") -#20029=@"loc,{#10000},2,3,2,13" -locations_default(#20029,#10000,2,3,2,13) -hasLocation(#20028,#20029) -enclosing_stmt(#20028,#20024) -expr_containers(#20028,#20002) -#20030=* -exprs(#20030,79,#20028,0,"console") -hasLocation(#20030,#20008) -enclosing_stmt(#20030,#20024) -expr_containers(#20030,#20002) -literals("console","console",#20030) -#20031=@"var;{console};{#20000}" -variables(#20031,"console",#20000) -bind(#20030,#20031) -#20032=* -exprs(#20032,0,#20028,1,"log") -hasLocation(#20032,#20012) -enclosing_stmt(#20032,#20024) -expr_containers(#20032,#20002) -literals("log","log",#20032) +#20024=@"var;{this};{#20000}" +variables(#20024,"this",#20000) +#20025=* +stmts(#20025,2,#20002,0,"console.log(""FOO"");") +#20026=@"loc,{#10000},2,3,2,21" +locations_default(#20026,#10000,2,3,2,21) +hasLocation(#20025,#20026) +stmt_containers(#20025,#20002) +#20027=* +exprs(#20027,13,#20025,0,"console.log(""FOO"")") +#20028=@"loc,{#10000},2,3,2,20" +locations_default(#20028,#10000,2,3,2,20) +hasLocation(#20027,#20028) +enclosing_stmt(#20027,#20025) +expr_containers(#20027,#20002) +#20029=* +exprs(#20029,14,#20027,-1,"console.log") +#20030=@"loc,{#10000},2,3,2,13" +locations_default(#20030,#10000,2,3,2,13) +hasLocation(#20029,#20030) +enclosing_stmt(#20029,#20025) +expr_containers(#20029,#20002) +#20031=* +exprs(#20031,79,#20029,0,"console") +hasLocation(#20031,#20008) +enclosing_stmt(#20031,#20025) +expr_containers(#20031,#20002) +literals("console","console",#20031) +#20032=@"var;{console};{#20000}" +variables(#20032,"console",#20000) +bind(#20031,#20032) #20033=* -exprs(#20033,4,#20026,0,"""FOO""") -hasLocation(#20033,#20016) -enclosing_stmt(#20033,#20024) +exprs(#20033,0,#20029,1,"log") +hasLocation(#20033,#20012) +enclosing_stmt(#20033,#20025) expr_containers(#20033,#20002) -literals("FOO","""FOO""",#20033) +literals("log","log",#20033) #20034=* -regexpterm(#20034,14,#20033,0,"FOO") -#20035=@"loc,{#10000},2,16,2,18" -locations_default(#20035,#10000,2,16,2,18) -hasLocation(#20034,#20035) -regexp_const_value(#20034,"FOO") -#20036=* -entry_cfg_node(#20036,#20002) -hasLocation(#20036,#20004) +exprs(#20034,4,#20027,0,"""FOO""") +hasLocation(#20034,#20016) +enclosing_stmt(#20034,#20025) +expr_containers(#20034,#20002) +literals("FOO","""FOO""",#20034) +#20035=* +regexpterm(#20035,14,#20034,0,"FOO") +#20036=@"loc,{#10000},2,16,2,18" +locations_default(#20036,#10000,2,16,2,18) +hasLocation(#20035,#20036) +regexp_const_value(#20035,"FOO") #20037=* -exit_cfg_node(#20037,#20002) -hasLocation(#20037,#20022) -successor(#20024,#20030) -successor(#20033,#20026) -successor(#20032,#20028) -successor(#20030,#20032) -successor(#20028,#20033) -successor(#20026,#20037) -successor(#20036,#20024) +entry_cfg_node(#20037,#20002) +hasLocation(#20037,#20004) +#20038=* +exit_cfg_node(#20038,#20002) +hasLocation(#20038,#20022) +successor(#20025,#20031) +successor(#20034,#20027) +successor(#20033,#20029) +successor(#20031,#20033) +successor(#20029,#20034) +successor(#20027,#20038) +successor(#20037,#20025) toplevel_parent_xml_node(#20002,#20001) xmlElements(#20001,"script",#10000,0,#10000) -#20038=@"loc,{#10000},1,1,3,9" -locations_default(#20038,#10000,1,1,3,9) -xmllocations(#20001,#20038) +#20039=@"loc,{#10000},1,1,3,9" +locations_default(#20039,#10000,1,1,3,9) +xmllocations(#20001,#20039) numlines(#10000,3,1,0) filetype(#10000,"html") diff --git a/javascript/extractor/tests/vue/output/trap/simple-jsp.jsp.trap b/javascript/extractor/tests/vue/output/trap/simple-jsp.jsp.trap index 066868e24b33..a112b3ae1a15 100644 --- a/javascript/extractor/tests/vue/output/trap/simple-jsp.jsp.trap +++ b/javascript/extractor/tests/vue/output/trap/simple-jsp.jsp.trap @@ -73,160 +73,164 @@ toplevels(#20002,1) #20025=@"loc,{#10000},10,13,12,4" locations_default(#20025,#10000,10,13,12,4) hasLocation(#20002,#20025) -#20026=* -stmts(#20026,2,#20002,0,"console.log(123);") -#20027=@"loc,{#10000},11,7,11,23" -locations_default(#20027,#10000,11,7,11,23) -hasLocation(#20026,#20027) -stmt_containers(#20026,#20002) -#20028=* -exprs(#20028,13,#20026,0,"console.log(123)") -#20029=@"loc,{#10000},11,7,11,22" -locations_default(#20029,#10000,11,7,11,22) -hasLocation(#20028,#20029) -enclosing_stmt(#20028,#20026) -expr_containers(#20028,#20002) -#20030=* -exprs(#20030,14,#20028,-1,"console.log") -#20031=@"loc,{#10000},11,7,11,17" -locations_default(#20031,#10000,11,7,11,17) -hasLocation(#20030,#20031) -enclosing_stmt(#20030,#20026) -expr_containers(#20030,#20002) -#20032=* -exprs(#20032,79,#20030,0,"console") -hasLocation(#20032,#20010) -enclosing_stmt(#20032,#20026) -expr_containers(#20032,#20002) -literals("console","console",#20032) -#20033=@"var;{console};{#20000}" -variables(#20033,"console",#20000) -bind(#20032,#20033) -#20034=* -exprs(#20034,0,#20030,1,"log") -hasLocation(#20034,#20014) -enclosing_stmt(#20034,#20026) -expr_containers(#20034,#20002) -literals("log","log",#20034) +#20026=@"var;{this};{#20000}" +variables(#20026,"this",#20000) +#20027=* +stmts(#20027,2,#20002,0,"console.log(123);") +#20028=@"loc,{#10000},11,7,11,23" +locations_default(#20028,#10000,11,7,11,23) +hasLocation(#20027,#20028) +stmt_containers(#20027,#20002) +#20029=* +exprs(#20029,13,#20027,0,"console.log(123)") +#20030=@"loc,{#10000},11,7,11,22" +locations_default(#20030,#10000,11,7,11,22) +hasLocation(#20029,#20030) +enclosing_stmt(#20029,#20027) +expr_containers(#20029,#20002) +#20031=* +exprs(#20031,14,#20029,-1,"console.log") +#20032=@"loc,{#10000},11,7,11,17" +locations_default(#20032,#10000,11,7,11,17) +hasLocation(#20031,#20032) +enclosing_stmt(#20031,#20027) +expr_containers(#20031,#20002) +#20033=* +exprs(#20033,79,#20031,0,"console") +hasLocation(#20033,#20010) +enclosing_stmt(#20033,#20027) +expr_containers(#20033,#20002) +literals("console","console",#20033) +#20034=@"var;{console};{#20000}" +variables(#20034,"console",#20000) +bind(#20033,#20034) #20035=* -exprs(#20035,3,#20028,0,"123") -hasLocation(#20035,#20018) -enclosing_stmt(#20035,#20026) +exprs(#20035,0,#20031,1,"log") +hasLocation(#20035,#20014) +enclosing_stmt(#20035,#20027) expr_containers(#20035,#20002) -literals("123","123",#20035) +literals("log","log",#20035) #20036=* -entry_cfg_node(#20036,#20002) -hasLocation(#20036,#20004) +exprs(#20036,3,#20029,0,"123") +hasLocation(#20036,#20018) +enclosing_stmt(#20036,#20027) +expr_containers(#20036,#20002) +literals("123","123",#20036) #20037=* -exit_cfg_node(#20037,#20002) -hasLocation(#20037,#20024) -successor(#20026,#20032) -successor(#20035,#20028) -successor(#20034,#20030) -successor(#20032,#20034) -successor(#20030,#20035) -successor(#20028,#20037) -successor(#20036,#20026) -toplevel_parent_xml_node(#20002,#20001) +entry_cfg_node(#20037,#20002) +hasLocation(#20037,#20004) #20038=* -template_placeholder_tag_info(#20038,#10000,"<%@ page contentType=""text/html;charset=UTF-8"" language=""java"" %>") -#20039=@"loc,{#10000},1,1,1,65" -locations_default(#20039,#10000,1,1,1,65) -hasLocation(#20038,#20039) -#20040=* -xmlElements(#20040,"html",#10000,0,#10000) -#20041=@"loc,{#10000},2,1,14,7" -locations_default(#20041,#10000,2,1,14,7) -xmllocations(#20040,#20041) -#20042=* -xmlElements(#20042,"body",#20040,1,#10000) -#20043=@"loc,{#10000},6,3,13,9" -locations_default(#20043,#10000,6,3,13,9) -xmllocations(#20042,#20043) -#20044=* -template_placeholder_tag_info(#20044,#20042,"<% String name = ""John""; %>") -#20045=@"loc,{#10000},8,5,8,31" -locations_default(#20045,#10000,8,5,8,31) -hasLocation(#20044,#20045) -xmlElements(#20001,"script",#20042,2,#10000) -#20046=@"loc,{#10000},10,5,12,13" -locations_default(#20046,#10000,10,5,12,13) -xmllocations(#20001,#20046) -#20047=* -xmlElements(#20047,"p",#20042,1,#10000) -#20048=@"loc,{#10000},9,5,9,31" -locations_default(#20048,#10000,9,5,9,31) -xmllocations(#20047,#20048) -#20049=* -template_placeholder_tag_info(#20049,#20047,"<%= name %>") -#20050=@"loc,{#10000},9,16,9,26" -locations_default(#20050,#10000,9,16,9,26) -hasLocation(#20049,#20050) +exit_cfg_node(#20038,#20002) +hasLocation(#20038,#20024) +successor(#20027,#20033) +successor(#20036,#20029) +successor(#20035,#20031) +successor(#20033,#20035) +successor(#20031,#20036) +successor(#20029,#20038) +successor(#20037,#20027) +toplevel_parent_xml_node(#20002,#20001) +#20039=* +template_placeholder_tag_info(#20039,#10000,"<%@ page contentType=""text/html;charset=UTF-8"" language=""java"" %>") +#20040=@"loc,{#10000},1,1,1,65" +locations_default(#20040,#10000,1,1,1,65) +hasLocation(#20039,#20040) +#20041=* +xmlElements(#20041,"html",#10000,0,#10000) +#20042=@"loc,{#10000},2,1,14,7" +locations_default(#20042,#10000,2,1,14,7) +xmllocations(#20041,#20042) +#20043=* +xmlElements(#20043,"body",#20041,1,#10000) +#20044=@"loc,{#10000},6,3,13,9" +locations_default(#20044,#10000,6,3,13,9) +xmllocations(#20043,#20044) +#20045=* +template_placeholder_tag_info(#20045,#20043,"<% String name = ""John""; %>") +#20046=@"loc,{#10000},8,5,8,31" +locations_default(#20046,#10000,8,5,8,31) +hasLocation(#20045,#20046) +xmlElements(#20001,"script",#20043,2,#10000) +#20047=@"loc,{#10000},10,5,12,13" +locations_default(#20047,#10000,10,5,12,13) +xmllocations(#20001,#20047) +#20048=* +xmlElements(#20048,"p",#20043,1,#10000) +#20049=@"loc,{#10000},9,5,9,31" +locations_default(#20049,#10000,9,5,9,31) +xmllocations(#20048,#20049) +#20050=* +template_placeholder_tag_info(#20050,#20048,"<%= name %>") +#20051=@"loc,{#10000},9,16,9,26" +locations_default(#20051,#10000,9,16,9,26) +hasLocation(#20050,#20051) scopes(#20000,0) -#20051=@"script;{#10000},9,19" -#20052=* -lines(#20052,#20051," name ","") -#20053=@"loc,{#10000},9,19,9,24" -locations_default(#20053,#10000,9,19,9,24) -hasLocation(#20052,#20053) +#20052=@"script;{#10000},9,19" +#20053=* +lines(#20053,#20052," name ","") +#20054=@"loc,{#10000},9,19,9,24" +locations_default(#20054,#10000,9,19,9,24) +hasLocation(#20053,#20054) indentation(#10000,9," ",1) -numlines(#20051,1,1,0) -#20054=* -tokeninfo(#20054,6,#20051,0,"name") -#20055=@"loc,{#10000},9,20,9,23" -locations_default(#20055,#10000,9,20,9,23) -hasLocation(#20054,#20055) -#20056=* -tokeninfo(#20056,0,#20051,1,"") -#20057=@"loc,{#10000},9,25,9,24" -locations_default(#20057,#10000,9,25,9,24) -hasLocation(#20056,#20057) -toplevels(#20051,4) -hasLocation(#20051,#20053) -#20058=@"module;{#10000},9,19" -scopes(#20058,3) -scopenodes(#20051,#20058) -scopenesting(#20058,#20000) -is_module(#20051) -#20059=* -stmts(#20059,2,#20051,0,"name") -hasLocation(#20059,#20055) -stmt_containers(#20059,#20051) -#20060=* -exprs(#20060,79,#20059,0,"name") -hasLocation(#20060,#20055) -enclosing_stmt(#20060,#20059) -expr_containers(#20060,#20051) -literals("name","name",#20060) -#20061=@"var;{name};{#20058}" -variables(#20061,"name",#20058) -bind(#20060,#20061) +numlines(#20052,1,1,0) +#20055=* +tokeninfo(#20055,6,#20052,0,"name") +#20056=@"loc,{#10000},9,20,9,23" +locations_default(#20056,#10000,9,20,9,23) +hasLocation(#20055,#20056) +#20057=* +tokeninfo(#20057,0,#20052,1,"") +#20058=@"loc,{#10000},9,25,9,24" +locations_default(#20058,#10000,9,25,9,24) +hasLocation(#20057,#20058) +toplevels(#20052,4) +hasLocation(#20052,#20054) +#20059=@"module;{#10000},9,19" +scopes(#20059,3) +scopenodes(#20052,#20059) +scopenesting(#20059,#20000) +is_module(#20052) +#20060=@"var;{this};{#20059}" +variables(#20060,"this",#20059) +#20061=* +stmts(#20061,2,#20052,0,"name") +hasLocation(#20061,#20056) +stmt_containers(#20061,#20052) #20062=* -entry_cfg_node(#20062,#20051) -#20063=@"loc,{#10000},9,19,9,18" -locations_default(#20063,#10000,9,19,9,18) -hasLocation(#20062,#20063) +exprs(#20062,79,#20061,0,"name") +hasLocation(#20062,#20056) +enclosing_stmt(#20062,#20061) +expr_containers(#20062,#20052) +literals("name","name",#20062) +#20063=@"var;{name};{#20059}" +variables(#20063,"name",#20059) +bind(#20062,#20063) #20064=* -exit_cfg_node(#20064,#20051) -hasLocation(#20064,#20057) -successor(#20059,#20060) -successor(#20060,#20064) -successor(#20062,#20059) -toplevel_parent_xml_node(#20051,#20049) -#20065=* -xmlElements(#20065,"h1",#20042,0,#10000) -#20066=@"loc,{#10000},7,5,7,25" -locations_default(#20066,#10000,7,5,7,25) -xmllocations(#20065,#20066) +entry_cfg_node(#20064,#20052) +#20065=@"loc,{#10000},9,19,9,18" +locations_default(#20065,#10000,9,19,9,18) +hasLocation(#20064,#20065) +#20066=* +exit_cfg_node(#20066,#20052) +hasLocation(#20066,#20058) +successor(#20061,#20062) +successor(#20062,#20066) +successor(#20064,#20061) +toplevel_parent_xml_node(#20052,#20050) #20067=* -xmlElements(#20067,"head",#20040,0,#10000) -#20068=@"loc,{#10000},3,3,5,9" -locations_default(#20068,#10000,3,3,5,9) +xmlElements(#20067,"h1",#20043,0,#10000) +#20068=@"loc,{#10000},7,5,7,25" +locations_default(#20068,#10000,7,5,7,25) xmllocations(#20067,#20068) #20069=* -xmlElements(#20069,"title",#20067,0,#10000) -#20070=@"loc,{#10000},4,5,4,34" -locations_default(#20070,#10000,4,5,4,34) +xmlElements(#20069,"head",#20041,0,#10000) +#20070=@"loc,{#10000},3,3,5,9" +locations_default(#20070,#10000,3,3,5,9) xmllocations(#20069,#20070) +#20071=* +xmlElements(#20071,"title",#20069,0,#10000) +#20072=@"loc,{#10000},4,5,4,34" +locations_default(#20072,#10000,4,5,4,34) +xmllocations(#20071,#20072) numlines(#10000,14,2,0) filetype(#10000,"html")