diff --git a/lib/tsc.js b/lib/tsc.js index bcaf43bad9e..94f9f6dd0ad 100644 --- a/lib/tsc.js +++ b/lib/tsc.js @@ -15981,6 +15981,7 @@ var ts; skipTransformFlagAggregation = true; bindChildrenWorker(node); skipTransformFlagAggregation = false; + subtreeTransformFlags |= node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); } else { var savedSubtreeTransformFlags = subtreeTransformFlags; @@ -17985,6 +17986,58 @@ var ts; node.transformFlags = transformFlags | 536870912; return transformFlags & ~excludeFlags; } + function getTransformFlagsSubtreeExclusions(kind) { + if (kind >= 155 && kind <= 167) { + return -3; + } + switch (kind) { + case 175: + case 176: + case 171: + return 537922901; + case 226: + return 574729557; + case 143: + return 545262933; + case 181: + return 592227669; + case 180: + case 221: + return 592293205; + case 220: + return 545262933; + case 222: + case 193: + return 539749717; + case 149: + return 591760725; + case 148: + case 150: + case 151: + return 591760725; + case 118: + case 131: + case 128: + case 133: + case 121: + case 134: + case 104: + case 142: + case 145: + case 147: + case 152: + case 153: + case 154: + case 223: + case 224: + return -3; + case 172: + return 539110741; + default: + return 536874325; + } + } + ts.getTransformFlagsSubtreeExclusions = getTransformFlagsSubtreeExclusions; })(ts || (ts = {})); var ts; (function (ts) { @@ -35283,7 +35336,7 @@ var ts; return 0; } else if (node.transformFlags & 536870912) { - return node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); + return node.transformFlags & ~ts.getTransformFlagsSubtreeExclusions(node.kind); } else { var subtreeFlags = aggregateTransformFlagsForSubtree(node); @@ -35299,57 +35352,6 @@ var ts; function aggregateTransformFlagsForChildNode(transformFlags, child) { return transformFlags | aggregateTransformFlagsForNode(child); } - function getTransformFlagsSubtreeExclusions(kind) { - if (kind >= 155 && kind <= 167) { - return -3; - } - switch (kind) { - case 175: - case 176: - case 171: - return 537922901; - case 226: - return 574729557; - case 143: - return 545262933; - case 181: - return 592227669; - case 180: - case 221: - return 592293205; - case 220: - return 545262933; - case 222: - case 193: - return 539749717; - case 149: - return 591760725; - case 148: - case 150: - case 151: - return 591760725; - case 118: - case 131: - case 128: - case 133: - case 121: - case 134: - case 104: - case 142: - case 145: - case 147: - case 152: - case 153: - case 154: - case 223: - case 224: - return -3; - case 172: - return 539110741; - default: - return 536874325; - } - } var Debug; (function (Debug) { Debug.failNotOptional = Debug.shouldAssert(1) diff --git a/lib/tsserver.js b/lib/tsserver.js index 4495055baf8..522e33fcf5b 100644 --- a/lib/tsserver.js +++ b/lib/tsserver.js @@ -18066,6 +18066,7 @@ var ts; skipTransformFlagAggregation = true; bindChildrenWorker(node); skipTransformFlagAggregation = false; + subtreeTransformFlags |= node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); } else { var savedSubtreeTransformFlags = subtreeTransformFlags; @@ -20070,6 +20071,58 @@ var ts; node.transformFlags = transformFlags | 536870912; return transformFlags & ~excludeFlags; } + function getTransformFlagsSubtreeExclusions(kind) { + if (kind >= 155 && kind <= 167) { + return -3; + } + switch (kind) { + case 175: + case 176: + case 171: + return 537922901; + case 226: + return 574729557; + case 143: + return 545262933; + case 181: + return 592227669; + case 180: + case 221: + return 592293205; + case 220: + return 545262933; + case 222: + case 193: + return 539749717; + case 149: + return 591760725; + case 148: + case 150: + case 151: + return 591760725; + case 118: + case 131: + case 128: + case 133: + case 121: + case 134: + case 104: + case 142: + case 145: + case 147: + case 152: + case 153: + case 154: + case 223: + case 224: + return -3; + case 172: + return 539110741; + default: + return 536874325; + } + } + ts.getTransformFlagsSubtreeExclusions = getTransformFlagsSubtreeExclusions; })(ts || (ts = {})); var ts; (function (ts) { @@ -36814,7 +36867,7 @@ var ts; return 0; } else if (node.transformFlags & 536870912) { - return node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); + return node.transformFlags & ~ts.getTransformFlagsSubtreeExclusions(node.kind); } else { var subtreeFlags = aggregateTransformFlagsForSubtree(node); @@ -36830,57 +36883,6 @@ var ts; function aggregateTransformFlagsForChildNode(transformFlags, child) { return transformFlags | aggregateTransformFlagsForNode(child); } - function getTransformFlagsSubtreeExclusions(kind) { - if (kind >= 155 && kind <= 167) { - return -3; - } - switch (kind) { - case 175: - case 176: - case 171: - return 537922901; - case 226: - return 574729557; - case 143: - return 545262933; - case 181: - return 592227669; - case 180: - case 221: - return 592293205; - case 220: - return 545262933; - case 222: - case 193: - return 539749717; - case 149: - return 591760725; - case 148: - case 150: - case 151: - return 591760725; - case 118: - case 131: - case 128: - case 133: - case 121: - case 134: - case 104: - case 142: - case 145: - case 147: - case 152: - case 153: - case 154: - case 223: - case 224: - return -3; - case 172: - return 539110741; - default: - return 536874325; - } - } var Debug; (function (Debug) { Debug.failNotOptional = Debug.shouldAssert(1) @@ -60358,7 +60360,6 @@ var ts; this.end = end; this.flags = 0; this.transformFlags = undefined; - this.excludeTransformFlags = undefined; this.parent = undefined; this.kind = kind; } diff --git a/lib/tsserverlibrary.d.ts b/lib/tsserverlibrary.d.ts index a5f552b16a8..9f7f7305527 100644 --- a/lib/tsserverlibrary.d.ts +++ b/lib/tsserverlibrary.d.ts @@ -9226,6 +9226,7 @@ declare namespace ts { function getModuleInstanceState(node: Node): ModuleInstanceState; function bindSourceFile(file: SourceFile, options: CompilerOptions): void; function computeTransformFlagsForNode(node: Node, subtreeFlags: TransformFlags): TransformFlags; + function getTransformFlagsSubtreeExclusions(kind: SyntaxKind): TransformFlags; } declare namespace ts { function getNodeId(node: Node): number; diff --git a/lib/tsserverlibrary.js b/lib/tsserverlibrary.js index eda0b2dfb12..6346456ef6c 100644 --- a/lib/tsserverlibrary.js +++ b/lib/tsserverlibrary.js @@ -18066,6 +18066,7 @@ var ts; skipTransformFlagAggregation = true; bindChildrenWorker(node); skipTransformFlagAggregation = false; + subtreeTransformFlags |= node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); } else { var savedSubtreeTransformFlags = subtreeTransformFlags; @@ -20070,6 +20071,58 @@ var ts; node.transformFlags = transformFlags | 536870912; return transformFlags & ~excludeFlags; } + function getTransformFlagsSubtreeExclusions(kind) { + if (kind >= 155 && kind <= 167) { + return -3; + } + switch (kind) { + case 175: + case 176: + case 171: + return 537922901; + case 226: + return 574729557; + case 143: + return 545262933; + case 181: + return 592227669; + case 180: + case 221: + return 592293205; + case 220: + return 545262933; + case 222: + case 193: + return 539749717; + case 149: + return 591760725; + case 148: + case 150: + case 151: + return 591760725; + case 118: + case 131: + case 128: + case 133: + case 121: + case 134: + case 104: + case 142: + case 145: + case 147: + case 152: + case 153: + case 154: + case 223: + case 224: + return -3; + case 172: + return 539110741; + default: + return 536874325; + } + } + ts.getTransformFlagsSubtreeExclusions = getTransformFlagsSubtreeExclusions; })(ts || (ts = {})); var ts; (function (ts) { @@ -36814,7 +36867,7 @@ var ts; return 0; } else if (node.transformFlags & 536870912) { - return node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); + return node.transformFlags & ~ts.getTransformFlagsSubtreeExclusions(node.kind); } else { var subtreeFlags = aggregateTransformFlagsForSubtree(node); @@ -36830,57 +36883,6 @@ var ts; function aggregateTransformFlagsForChildNode(transformFlags, child) { return transformFlags | aggregateTransformFlagsForNode(child); } - function getTransformFlagsSubtreeExclusions(kind) { - if (kind >= 155 && kind <= 167) { - return -3; - } - switch (kind) { - case 175: - case 176: - case 171: - return 537922901; - case 226: - return 574729557; - case 143: - return 545262933; - case 181: - return 592227669; - case 180: - case 221: - return 592293205; - case 220: - return 545262933; - case 222: - case 193: - return 539749717; - case 149: - return 591760725; - case 148: - case 150: - case 151: - return 591760725; - case 118: - case 131: - case 128: - case 133: - case 121: - case 134: - case 104: - case 142: - case 145: - case 147: - case 152: - case 153: - case 154: - case 223: - case 224: - return -3; - case 172: - return 539110741; - default: - return 536874325; - } - } var Debug; (function (Debug) { Debug.failNotOptional = Debug.shouldAssert(1) @@ -60358,7 +60360,6 @@ var ts; this.end = end; this.flags = 0; this.transformFlags = undefined; - this.excludeTransformFlags = undefined; this.parent = undefined; this.kind = kind; } diff --git a/lib/typescript.js b/lib/typescript.js index 83494513a5f..764538dbfe7 100644 --- a/lib/typescript.js +++ b/lib/typescript.js @@ -19877,6 +19877,7 @@ var ts; skipTransformFlagAggregation = true; bindChildrenWorker(node); skipTransformFlagAggregation = false; + subtreeTransformFlags |= node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); } else { var savedSubtreeTransformFlags = subtreeTransformFlags; @@ -22200,6 +22201,66 @@ var ts; node.transformFlags = transformFlags | 536870912 /* HasComputedFlags */; return transformFlags & ~excludeFlags; } + /** + * Gets the transform flags to exclude when unioning the transform flags of a subtree. + * + * NOTE: This needs to be kept up-to-date with the exclusions used in `computeTransformFlagsForNode`. + * For performance reasons, `computeTransformFlagsForNode` uses local constant values rather + * than calling this function. + */ + /* @internal */ + function getTransformFlagsSubtreeExclusions(kind) { + if (kind >= 155 /* FirstTypeNode */ && kind <= 167 /* LastTypeNode */) { + return -3 /* TypeExcludes */; + } + switch (kind) { + case 175 /* CallExpression */: + case 176 /* NewExpression */: + case 171 /* ArrayLiteralExpression */: + return 537922901 /* ArrayLiteralOrCallOrNewExcludes */; + case 226 /* ModuleDeclaration */: + return 574729557 /* ModuleExcludes */; + case 143 /* Parameter */: + return 545262933 /* ParameterExcludes */; + case 181 /* ArrowFunction */: + return 592227669 /* ArrowFunctionExcludes */; + case 180 /* FunctionExpression */: + case 221 /* FunctionDeclaration */: + return 592293205 /* FunctionExcludes */; + case 220 /* VariableDeclarationList */: + return 545262933 /* VariableDeclarationListExcludes */; + case 222 /* ClassDeclaration */: + case 193 /* ClassExpression */: + return 539749717 /* ClassExcludes */; + case 149 /* Constructor */: + return 591760725 /* ConstructorExcludes */; + case 148 /* MethodDeclaration */: + case 150 /* GetAccessor */: + case 151 /* SetAccessor */: + return 591760725 /* MethodOrAccessorExcludes */; + case 118 /* AnyKeyword */: + case 131 /* NumberKeyword */: + case 128 /* NeverKeyword */: + case 133 /* StringKeyword */: + case 121 /* BooleanKeyword */: + case 134 /* SymbolKeyword */: + case 104 /* VoidKeyword */: + case 142 /* TypeParameter */: + case 145 /* PropertySignature */: + case 147 /* MethodSignature */: + case 152 /* CallSignature */: + case 153 /* ConstructSignature */: + case 154 /* IndexSignature */: + case 223 /* InterfaceDeclaration */: + case 224 /* TypeAliasDeclaration */: + return -3 /* TypeExcludes */; + case 172 /* ObjectLiteralExpression */: + return 539110741 /* ObjectLiteralExcludes */; + default: + return 536874325 /* NodeExcludes */; + } + } + ts.getTransformFlagsSubtreeExclusions = getTransformFlagsSubtreeExclusions; })(ts || (ts = {})); /// /// @@ -42653,7 +42714,7 @@ var ts; return 0 /* None */; } else if (node.transformFlags & 536870912 /* HasComputedFlags */) { - return node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); + return node.transformFlags & ~ts.getTransformFlagsSubtreeExclusions(node.kind); } else { var subtreeFlags = aggregateTransformFlagsForSubtree(node); @@ -42679,64 +42740,6 @@ var ts; function aggregateTransformFlagsForChildNode(transformFlags, child) { return transformFlags | aggregateTransformFlagsForNode(child); } - /** - * Gets the transform flags to exclude when unioning the transform flags of a subtree. - * - * NOTE: This needs to be kept up-to-date with the exclusions used in `computeTransformFlagsForNode`. - * For performance reasons, `computeTransformFlagsForNode` uses local constant values rather - * than calling this function. - */ - function getTransformFlagsSubtreeExclusions(kind) { - if (kind >= 155 /* FirstTypeNode */ && kind <= 167 /* LastTypeNode */) { - return -3 /* TypeExcludes */; - } - switch (kind) { - case 175 /* CallExpression */: - case 176 /* NewExpression */: - case 171 /* ArrayLiteralExpression */: - return 537922901 /* ArrayLiteralOrCallOrNewExcludes */; - case 226 /* ModuleDeclaration */: - return 574729557 /* ModuleExcludes */; - case 143 /* Parameter */: - return 545262933 /* ParameterExcludes */; - case 181 /* ArrowFunction */: - return 592227669 /* ArrowFunctionExcludes */; - case 180 /* FunctionExpression */: - case 221 /* FunctionDeclaration */: - return 592293205 /* FunctionExcludes */; - case 220 /* VariableDeclarationList */: - return 545262933 /* VariableDeclarationListExcludes */; - case 222 /* ClassDeclaration */: - case 193 /* ClassExpression */: - return 539749717 /* ClassExcludes */; - case 149 /* Constructor */: - return 591760725 /* ConstructorExcludes */; - case 148 /* MethodDeclaration */: - case 150 /* GetAccessor */: - case 151 /* SetAccessor */: - return 591760725 /* MethodOrAccessorExcludes */; - case 118 /* AnyKeyword */: - case 131 /* NumberKeyword */: - case 128 /* NeverKeyword */: - case 133 /* StringKeyword */: - case 121 /* BooleanKeyword */: - case 134 /* SymbolKeyword */: - case 104 /* VoidKeyword */: - case 142 /* TypeParameter */: - case 145 /* PropertySignature */: - case 147 /* MethodSignature */: - case 152 /* CallSignature */: - case 153 /* ConstructSignature */: - case 154 /* IndexSignature */: - case 223 /* InterfaceDeclaration */: - case 224 /* TypeAliasDeclaration */: - return -3 /* TypeExcludes */; - case 172 /* ObjectLiteralExpression */: - return 539110741 /* ObjectLiteralExcludes */; - default: - return 536874325 /* NodeExcludes */; - } - } var Debug; (function (Debug) { Debug.failNotOptional = Debug.shouldAssert(1 /* Normal */) @@ -74126,7 +74129,6 @@ var ts; this.end = end; this.flags = 0 /* None */; this.transformFlags = undefined; - this.excludeTransformFlags = undefined; this.parent = undefined; this.kind = kind; } diff --git a/lib/typescriptServices.js b/lib/typescriptServices.js index 83494513a5f..764538dbfe7 100644 --- a/lib/typescriptServices.js +++ b/lib/typescriptServices.js @@ -19877,6 +19877,7 @@ var ts; skipTransformFlagAggregation = true; bindChildrenWorker(node); skipTransformFlagAggregation = false; + subtreeTransformFlags |= node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); } else { var savedSubtreeTransformFlags = subtreeTransformFlags; @@ -22200,6 +22201,66 @@ var ts; node.transformFlags = transformFlags | 536870912 /* HasComputedFlags */; return transformFlags & ~excludeFlags; } + /** + * Gets the transform flags to exclude when unioning the transform flags of a subtree. + * + * NOTE: This needs to be kept up-to-date with the exclusions used in `computeTransformFlagsForNode`. + * For performance reasons, `computeTransformFlagsForNode` uses local constant values rather + * than calling this function. + */ + /* @internal */ + function getTransformFlagsSubtreeExclusions(kind) { + if (kind >= 155 /* FirstTypeNode */ && kind <= 167 /* LastTypeNode */) { + return -3 /* TypeExcludes */; + } + switch (kind) { + case 175 /* CallExpression */: + case 176 /* NewExpression */: + case 171 /* ArrayLiteralExpression */: + return 537922901 /* ArrayLiteralOrCallOrNewExcludes */; + case 226 /* ModuleDeclaration */: + return 574729557 /* ModuleExcludes */; + case 143 /* Parameter */: + return 545262933 /* ParameterExcludes */; + case 181 /* ArrowFunction */: + return 592227669 /* ArrowFunctionExcludes */; + case 180 /* FunctionExpression */: + case 221 /* FunctionDeclaration */: + return 592293205 /* FunctionExcludes */; + case 220 /* VariableDeclarationList */: + return 545262933 /* VariableDeclarationListExcludes */; + case 222 /* ClassDeclaration */: + case 193 /* ClassExpression */: + return 539749717 /* ClassExcludes */; + case 149 /* Constructor */: + return 591760725 /* ConstructorExcludes */; + case 148 /* MethodDeclaration */: + case 150 /* GetAccessor */: + case 151 /* SetAccessor */: + return 591760725 /* MethodOrAccessorExcludes */; + case 118 /* AnyKeyword */: + case 131 /* NumberKeyword */: + case 128 /* NeverKeyword */: + case 133 /* StringKeyword */: + case 121 /* BooleanKeyword */: + case 134 /* SymbolKeyword */: + case 104 /* VoidKeyword */: + case 142 /* TypeParameter */: + case 145 /* PropertySignature */: + case 147 /* MethodSignature */: + case 152 /* CallSignature */: + case 153 /* ConstructSignature */: + case 154 /* IndexSignature */: + case 223 /* InterfaceDeclaration */: + case 224 /* TypeAliasDeclaration */: + return -3 /* TypeExcludes */; + case 172 /* ObjectLiteralExpression */: + return 539110741 /* ObjectLiteralExcludes */; + default: + return 536874325 /* NodeExcludes */; + } + } + ts.getTransformFlagsSubtreeExclusions = getTransformFlagsSubtreeExclusions; })(ts || (ts = {})); /// /// @@ -42653,7 +42714,7 @@ var ts; return 0 /* None */; } else if (node.transformFlags & 536870912 /* HasComputedFlags */) { - return node.transformFlags & ~getTransformFlagsSubtreeExclusions(node.kind); + return node.transformFlags & ~ts.getTransformFlagsSubtreeExclusions(node.kind); } else { var subtreeFlags = aggregateTransformFlagsForSubtree(node); @@ -42679,64 +42740,6 @@ var ts; function aggregateTransformFlagsForChildNode(transformFlags, child) { return transformFlags | aggregateTransformFlagsForNode(child); } - /** - * Gets the transform flags to exclude when unioning the transform flags of a subtree. - * - * NOTE: This needs to be kept up-to-date with the exclusions used in `computeTransformFlagsForNode`. - * For performance reasons, `computeTransformFlagsForNode` uses local constant values rather - * than calling this function. - */ - function getTransformFlagsSubtreeExclusions(kind) { - if (kind >= 155 /* FirstTypeNode */ && kind <= 167 /* LastTypeNode */) { - return -3 /* TypeExcludes */; - } - switch (kind) { - case 175 /* CallExpression */: - case 176 /* NewExpression */: - case 171 /* ArrayLiteralExpression */: - return 537922901 /* ArrayLiteralOrCallOrNewExcludes */; - case 226 /* ModuleDeclaration */: - return 574729557 /* ModuleExcludes */; - case 143 /* Parameter */: - return 545262933 /* ParameterExcludes */; - case 181 /* ArrowFunction */: - return 592227669 /* ArrowFunctionExcludes */; - case 180 /* FunctionExpression */: - case 221 /* FunctionDeclaration */: - return 592293205 /* FunctionExcludes */; - case 220 /* VariableDeclarationList */: - return 545262933 /* VariableDeclarationListExcludes */; - case 222 /* ClassDeclaration */: - case 193 /* ClassExpression */: - return 539749717 /* ClassExcludes */; - case 149 /* Constructor */: - return 591760725 /* ConstructorExcludes */; - case 148 /* MethodDeclaration */: - case 150 /* GetAccessor */: - case 151 /* SetAccessor */: - return 591760725 /* MethodOrAccessorExcludes */; - case 118 /* AnyKeyword */: - case 131 /* NumberKeyword */: - case 128 /* NeverKeyword */: - case 133 /* StringKeyword */: - case 121 /* BooleanKeyword */: - case 134 /* SymbolKeyword */: - case 104 /* VoidKeyword */: - case 142 /* TypeParameter */: - case 145 /* PropertySignature */: - case 147 /* MethodSignature */: - case 152 /* CallSignature */: - case 153 /* ConstructSignature */: - case 154 /* IndexSignature */: - case 223 /* InterfaceDeclaration */: - case 224 /* TypeAliasDeclaration */: - return -3 /* TypeExcludes */; - case 172 /* ObjectLiteralExpression */: - return 539110741 /* ObjectLiteralExcludes */; - default: - return 536874325 /* NodeExcludes */; - } - } var Debug; (function (Debug) { Debug.failNotOptional = Debug.shouldAssert(1 /* Normal */) @@ -74126,7 +74129,6 @@ var ts; this.end = end; this.flags = 0 /* None */; this.transformFlags = undefined; - this.excludeTransformFlags = undefined; this.parent = undefined; this.kind = kind; }