From 4f7184a587bfe75c12b5af36dabb34dc42276dee Mon Sep 17 00:00:00 2001 From: Wesley Wigham Date: Tue, 18 Dec 2018 11:34:02 -0800 Subject: [PATCH] Fix all new lint failures (#29080) --- src/compiler/binder.ts | 2 +- src/compiler/core.ts | 4 ++-- src/compiler/utilities.ts | 2 +- src/harness/fourslash.ts | 2 +- src/harness/harness.ts | 6 ++---- src/services/refactors/extractSymbol.ts | 6 ++---- src/tsserver/server.ts | 15 +++++---------- 7 files changed, 14 insertions(+), 23 deletions(-) diff --git a/src/compiler/binder.ts b/src/compiler/binder.ts index 7cb321a95fa..21bc30cfdc8 100644 --- a/src/compiler/binder.ts +++ b/src/compiler/binder.ts @@ -143,7 +143,7 @@ namespace ts { let symbolCount = 0; - let Symbol: { new (flags: SymbolFlags, name: __String): Symbol }; // tslint:disable-line variable-name + let Symbol: new (flags: SymbolFlags, name: __String) => Symbol; // tslint:disable-line variable-name let classifiableNames: UnderscoreEscapedMap; const unreachableFlow: FlowNode = { flags: FlowFlags.Unreachable }; diff --git a/src/compiler/core.ts b/src/compiler/core.ts index 322355117ec..cb9e385b366 100644 --- a/src/compiler/core.ts +++ b/src/compiler/core.ts @@ -112,13 +112,13 @@ namespace ts { } // The global Map object. This may not be available, so we must test for it. - declare const Map: { new (): Map } | undefined; + declare const Map: (new () => Map) | undefined; // Internet Explorer's Map doesn't support iteration, so don't use it. // tslint:disable-next-line no-in-operator variable-name export const MapCtr = typeof Map !== "undefined" && "entries" in Map.prototype ? Map : shimMap(); // Keep the class inside a function so it doesn't get compiled if it's not used. - function shimMap(): { new (): Map } { + function shimMap(): new () => Map { class MapIterator { private data: MapLike; diff --git a/src/compiler/utilities.ts b/src/compiler/utilities.ts index 966149f2a6c..69f63a4a303 100644 --- a/src/compiler/utilities.ts +++ b/src/compiler/utilities.ts @@ -6925,7 +6925,7 @@ namespace ts { export interface ObjectAllocator { getNodeConstructor(): new (kind: SyntaxKind, pos?: number, end?: number) => Node; - getTokenConstructor(): { new (kind: TKind, pos?: number, end?: number): Token }; + getTokenConstructor(): new (kind: TKind, pos?: number, end?: number) => Token; getIdentifierConstructor(): new (kind: SyntaxKind.Identifier, pos?: number, end?: number) => Identifier; getSourceFileConstructor(): new (kind: SyntaxKind.SourceFile, pos?: number, end?: number) => SourceFile; getSymbolConstructor(): new (flags: SymbolFlags, name: __String) => Symbol; diff --git a/src/harness/fourslash.ts b/src/harness/fourslash.ts index b02aff523d1..db1c326a504 100644 --- a/src/harness/fourslash.ts +++ b/src/harness/fourslash.ts @@ -600,7 +600,7 @@ namespace FourSlash { throw new Error("Expected exactly one output from emit of " + this.activeFile.fileName); } - const evaluation = new Function(`${emit.outputFiles[0].text};\r\nreturn (${expr});`)(); + const evaluation = new Function(`${emit.outputFiles[0].text};\r\nreturn (${expr});`)(); // tslint:disable-line:function-constructor if (evaluation !== value) { this.raiseError(`Expected evaluation of expression "${expr}" to equal "${value}", but got "${evaluation}"`); } diff --git a/src/harness/harness.ts b/src/harness/harness.ts index fc275529258..13ef2adbf90 100644 --- a/src/harness/harness.ts +++ b/src/harness/harness.ts @@ -28,12 +28,10 @@ var assert: typeof _chai.assert = _chai.assert; }; } -var global: NodeJS.Global = Function("return this").call(undefined); +var global: NodeJS.Global = Function("return this").call(undefined); // tslint:disable-line:function-constructor declare var window: {}; -declare var XMLHttpRequest: { - new(): XMLHttpRequest; -}; +declare var XMLHttpRequest: new() => XMLHttpRequest; interface XMLHttpRequest { readonly readyState: number; readonly responseText: string; diff --git a/src/services/refactors/extractSymbol.ts b/src/services/refactors/extractSymbol.ts index c1915a66431..823bd640a59 100644 --- a/src/services/refactors/extractSymbol.ts +++ b/src/services/refactors/extractSymbol.ts @@ -449,8 +449,7 @@ namespace ts.refactor.extractSymbol { case SyntaxKind.ThisKeyword: rangeFacts |= RangeFacts.UsesThis; break; - case SyntaxKind.LabeledStatement: - { + case SyntaxKind.LabeledStatement: { const label = (node).label; (seenLabels || (seenLabels = [])).push(label.escapedText); forEachChild(node, visit); @@ -458,8 +457,7 @@ namespace ts.refactor.extractSymbol { break; } case SyntaxKind.BreakStatement: - case SyntaxKind.ContinueStatement: - { + case SyntaxKind.ContinueStatement: { const label = (node).label; if (label) { if (!contains(seenLabels, label.escapedText)) { diff --git a/src/tsserver/server.ts b/src/tsserver/server.ts index 66574ceaac1..e5820260d5f 100644 --- a/src/tsserver/server.ts +++ b/src/tsserver/server.ts @@ -388,8 +388,7 @@ namespace ts.server { this.inspectValuePromise!.resolve(response.result); this.inspectValuePromise = undefined; break; - case EventInitializationFailed: - { + case EventInitializationFailed: { const body: protocol.TypesInstallerInitializationFailedEventBody = { message: response.message }; @@ -397,8 +396,7 @@ namespace ts.server { this.event(body, eventName); break; } - case EventBeginInstallTypes: - { + case EventBeginInstallTypes: { const body: protocol.BeginInstallTypesEventBody = { eventId: response.eventId, packages: response.packagesToInstall, @@ -407,8 +405,7 @@ namespace ts.server { this.event(body, eventName); break; } - case EventEndInstallTypes: - { + case EventEndInstallTypes: { if (this.telemetryEnabled) { const body: protocol.TypingsInstalledTelemetryEventBody = { telemetryEventName: "typingsInstalled", @@ -431,13 +428,11 @@ namespace ts.server { this.event(body, eventName); break; } - case ActionInvalidate: - { + case ActionInvalidate: { this.projectService.updateTypingsForProject(response); break; } - case ActionSet: - { + case ActionSet: { if (this.activeRequestCount > 0) { this.activeRequestCount--; }