From ca26de8c5533b55efa1d46bca4a896a94786ad99 Mon Sep 17 00:00:00 2001 From: Tim van der Lippe Date: Tue, 7 Feb 2017 00:19:06 +0100 Subject: [PATCH 1/2] Fix several compilation errors with Typescript 2.2 --- package.json | 4 ++-- src/javascript/ast-value.ts | 3 +++ src/perf/parse-all-benchmark.ts | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 83810972..5b77060a 100644 --- a/package.json +++ b/package.json @@ -83,6 +83,6 @@ "shady-css-parser": "0.0.8", "split": "^1.0.0", "strip-indent": "^2.0.0", - "typescript": "^2.1.4" + "typescript": "2.1.4" } -} \ No newline at end of file +} diff --git a/src/javascript/ast-value.ts b/src/javascript/ast-value.ts index 941d3140..d3fedb2b 100644 --- a/src/javascript/ast-value.ts +++ b/src/javascript/ast-value.ts @@ -28,6 +28,9 @@ function literalToValue(literal: estree.Literal): LiteralValue { */ function unaryToValue(unary: estree.UnaryExpression): LiteralValue { const operand = expressionToValue(unary.argument); + if (operand === null || operand === undefined) { + return operand; + } switch (unary.operator) { case '!': return !operand; diff --git a/src/perf/parse-all-benchmark.ts b/src/perf/parse-all-benchmark.ts index 1ed78833..92ebd08b 100644 --- a/src/perf/parse-all-benchmark.ts +++ b/src/perf/parse-all-benchmark.ts @@ -176,7 +176,7 @@ class Averager { entries(): Iterable<[K, number]> { const entries = this.count.keys().map( - (k) => <[K, number]>[k, this.elapsed.get(k) / this.count.get(k)]); + (k) => <[K, number]>[k, this.elapsed.get(k)! / this.count.get(k)!]); return entries.sort((a, b) => a[1] - b[1]); } } From e386467bc13fcdae0fef2bfa5f204e24f5d1707f Mon Sep 17 00:00:00 2001 From: Tim van der Lippe Date: Tue, 7 Feb 2017 01:13:26 +0100 Subject: [PATCH 2/2] Change back version number and fix errors in a different manner --- package.json | 2 +- src/javascript/ast-value.ts | 11 ++++------- src/typescript/typescript-analyzer.ts | 2 +- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 5b77060a..ae1a8002 100644 --- a/package.json +++ b/package.json @@ -83,6 +83,6 @@ "shady-css-parser": "0.0.8", "split": "^1.0.0", "strip-indent": "^2.0.0", - "typescript": "2.1.4" + "typescript": "^2.1.4" } } diff --git a/src/javascript/ast-value.ts b/src/javascript/ast-value.ts index d3fedb2b..793db115 100644 --- a/src/javascript/ast-value.ts +++ b/src/javascript/ast-value.ts @@ -28,18 +28,15 @@ function literalToValue(literal: estree.Literal): LiteralValue { */ function unaryToValue(unary: estree.UnaryExpression): LiteralValue { const operand = expressionToValue(unary.argument); - if (operand === null || operand === undefined) { - return operand; - } switch (unary.operator) { case '!': - return !operand; + return !(operand as any); case '-': - return -operand; + return -(operand as any); case '+': - return +operand; + return +(operand as any); case '~': - return ~operand; + return ~(operand as any); case 'typeof': return typeof operand; case 'void': diff --git a/src/typescript/typescript-analyzer.ts b/src/typescript/typescript-analyzer.ts index 657ce222..95d0c459 100644 --- a/src/typescript/typescript-analyzer.ts +++ b/src/typescript/typescript-analyzer.ts @@ -49,7 +49,7 @@ function isLibraryPath(filename: string) { return filename.startsWith('/$lib/'); } -const libraryCache = new Map(); +const libraryCache = new Map(); function getLibrarySource(filePath: string) { if (libraryCache.has(filePath)) { return libraryCache.get(filePath);