Skip to content

Commit 33a2c0b

Browse files
author
Torben Fitschen
committed
Merge branch 'master' into bug-mac-osx-case-sensitive
2 parents 85d5894 + 9812ab5 commit 33a2c0b

File tree

2,279 files changed

+29493
-14915
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,279 files changed

+29493
-14915
lines changed

Jakefile.js

+12-8
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,7 @@ var servicesSources = [
126126
"classifier.ts",
127127
"completions.ts",
128128
"documentHighlights.ts",
129+
"documentRegistry.ts",
129130
"findAllReferences.ts",
130131
"goToDefinition.ts",
131132
"jsDoc.ts",
@@ -1003,15 +1004,18 @@ function acceptBaseline(containerFolder) {
10031004
var deleteEnding = '.delete';
10041005
for (var i in files) {
10051006
var filename = files[i];
1006-
if (filename.substr(filename.length - deleteEnding.length) === deleteEnding) {
1007-
filename = filename.substr(0, filename.length - deleteEnding.length);
1008-
fs.unlinkSync(path.join(targetFolder, filename));
1009-
} else {
1010-
var target = path.join(targetFolder, filename);
1011-
if (fs.existsSync(target)) {
1012-
fs.unlinkSync(target);
1007+
var fullLocalPath = path.join(sourceFolder, filename);
1008+
if (fs.statSync(fullLocalPath).isFile()) {
1009+
if (filename.substr(filename.length - deleteEnding.length) === deleteEnding) {
1010+
filename = filename.substr(0, filename.length - deleteEnding.length);
1011+
fs.unlinkSync(path.join(targetFolder, filename));
1012+
} else {
1013+
var target = path.join(targetFolder, filename);
1014+
if (fs.existsSync(target)) {
1015+
fs.unlinkSync(target);
1016+
}
1017+
fs.renameSync(path.join(sourceFolder, filename), target);
10131018
}
1014-
fs.renameSync(path.join(sourceFolder, filename), target);
10151019
}
10161020
}
10171021
}

lib/lib.es2015.collection.d.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ interface Map<K, V> {
2020
forEach(callbackfn: (value: V, index: K, map: Map<K, V>) => void, thisArg?: any): void;
2121
get(key: K): V | undefined;
2222
has(key: K): boolean;
23-
set(key: K, value?: V): this;
23+
set(key: K, value: V): this;
2424
readonly size: number;
2525
}
2626

@@ -36,7 +36,7 @@ interface WeakMap<K, V> {
3636
delete(key: K): boolean;
3737
get(key: K): V | undefined;
3838
has(key: K): boolean;
39-
set(key: K, value?: V): this;
39+
set(key: K, value: V): this;
4040
}
4141

4242
interface WeakMapConstructor {

scripts/tslint/preferConstRule.ts

+11-4
Original file line numberDiff line numberDiff line change
@@ -93,11 +93,16 @@ class PreferConstWalker extends Lint.RuleWalker {
9393

9494
private visitBindingPatternIdentifiers(pattern: ts.BindingPattern) {
9595
for (const element of pattern.elements) {
96-
if (element.name.kind === ts.SyntaxKind.Identifier) {
97-
this.markAssignment(element.name as ts.Identifier);
96+
if (element.kind !== ts.SyntaxKind.BindingElement) {
97+
continue;
98+
}
99+
100+
const name = (<ts.BindingElement>element).name;
101+
if (name.kind === ts.SyntaxKind.Identifier) {
102+
this.markAssignment(name as ts.Identifier);
98103
}
99104
else {
100-
this.visitBindingPatternIdentifiers(element.name as ts.BindingPattern);
105+
this.visitBindingPatternIdentifiers(name as ts.BindingPattern);
101106
}
102107
}
103108
}
@@ -191,7 +196,9 @@ class PreferConstWalker extends Lint.RuleWalker {
191196

192197
private collectBindingPatternIdentifiers(value: ts.VariableDeclaration, pattern: ts.BindingPattern, table: ts.MapLike<DeclarationUsages>) {
193198
for (const element of pattern.elements) {
194-
this.collectNameIdentifiers(value, element.name, table);
199+
if (element.kind === ts.SyntaxKind.BindingElement) {
200+
this.collectNameIdentifiers(value, (<ts.BindingElement>element).name, table);
201+
}
195202
}
196203
}
197204
}

src/compiler/binder.ts

+13
Original file line numberDiff line numberDiff line change
@@ -591,6 +591,9 @@ namespace ts {
591591
case SyntaxKind.PrefixUnaryExpression:
592592
bindPrefixUnaryExpressionFlow(<PrefixUnaryExpression>node);
593593
break;
594+
case SyntaxKind.PostfixUnaryExpression:
595+
bindPostfixUnaryExpressionFlow(<PostfixUnaryExpression>node);
596+
break;
594597
case SyntaxKind.BinaryExpression:
595598
bindBinaryExpressionFlow(<BinaryExpression>node);
596599
break;
@@ -1106,6 +1109,16 @@ namespace ts {
11061109
}
11071110
else {
11081111
forEachChild(node, bind);
1112+
if (node.operator === SyntaxKind.PlusEqualsToken || node.operator === SyntaxKind.MinusMinusToken) {
1113+
bindAssignmentTargetFlow(node.operand);
1114+
}
1115+
}
1116+
}
1117+
1118+
function bindPostfixUnaryExpressionFlow(node: PostfixUnaryExpression) {
1119+
forEachChild(node, bind);
1120+
if (node.operator === SyntaxKind.PlusPlusToken || node.operator === SyntaxKind.MinusMinusToken) {
1121+
bindAssignmentTargetFlow(node.operand);
11091122
}
11101123
}
11111124

0 commit comments

Comments
 (0)