typescript-src 1.0.0.0 → 1.0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/.gitignore +2 -0
- data/Gemfile +4 -2
- data/Rakefile +20 -1
- data/lib/typescript-src/support/typescript/.npmignore +12 -0
- data/lib/typescript-src/support/typescript/CopyrightNotice.txt +15 -0
- data/lib/typescript-src/support/typescript/LICENSE.txt +55 -0
- data/lib/typescript-src/support/typescript/README.txt +27 -0
- data/lib/typescript-src/support/typescript/ThirdPartyNoticeText.txt +85 -0
- data/lib/{support → typescript-src/support/typescript/bin}/lib.d.ts +1 -1
- data/lib/{support → typescript-src/support/typescript/bin}/resources/cs/cz/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/cs/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/cz/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/de/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/en/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/en/us/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/es/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/fr/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/it/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/ja/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/ja/jp/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/ko/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/ko/kr/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/pl/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/pt/br/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/pt/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/ru/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/tr/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/zh/cn/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/resources/zh/tw/diagnosticMessages.generated.json +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/tsc +0 -0
- data/lib/{support → typescript-src/support/typescript/bin}/tsc.js +294 -154
- data/lib/{support → typescript-src/support/typescript/bin}/typescript.js +289 -152
- data/lib/typescript-src/support/typescript/package.json +61 -0
- data/lib/typescript-src.rb +37 -5
- data/test/test_type_script_src.rb +31 -0
- data/typescript-src.gemspec +20 -10
- metadata +60 -37
@@ -28167,6 +28167,11 @@ var TypeScript;
|
|
28167
28167
|
}
|
28168
28168
|
ASTHelpers.isRightSideOfQualifiedName = isRightSideOfQualifiedName;
|
28169
28169
|
|
28170
|
+
function parentIsModuleDeclaration(ast) {
|
28171
|
+
return ast.parent && ast.parent.kind() === 130 /* ModuleDeclaration */;
|
28172
|
+
}
|
28173
|
+
ASTHelpers.parentIsModuleDeclaration = parentIsModuleDeclaration;
|
28174
|
+
|
28170
28175
|
function parametersFromIdentifier(id) {
|
28171
28176
|
return {
|
28172
28177
|
length: 1,
|
@@ -28448,37 +28453,55 @@ var TypeScript;
|
|
28448
28453
|
}
|
28449
28454
|
ASTHelpers.getEnclosingModuleDeclaration = getEnclosingModuleDeclaration;
|
28450
28455
|
|
28451
|
-
function
|
28456
|
+
function isEntireNameOfModuleDeclaration(nameAST) {
|
28457
|
+
return parentIsModuleDeclaration(nameAST) && nameAST.parent.name === nameAST;
|
28458
|
+
}
|
28459
|
+
|
28460
|
+
function getModuleDeclarationFromNameAST(ast) {
|
28452
28461
|
if (ast) {
|
28453
|
-
|
28454
|
-
|
28455
|
-
|
28456
|
-
|
28457
|
-
|
28462
|
+
switch (ast.kind()) {
|
28463
|
+
case 14 /* StringLiteral */:
|
28464
|
+
if (parentIsModuleDeclaration(ast) && ast.parent.stringLiteral === ast) {
|
28465
|
+
return ast.parent;
|
28466
|
+
}
|
28467
|
+
return null;
|
28468
|
+
|
28469
|
+
case 11 /* IdentifierName */:
|
28470
|
+
case 121 /* QualifiedName */:
|
28471
|
+
if (isEntireNameOfModuleDeclaration(ast)) {
|
28472
|
+
return ast.parent;
|
28473
|
+
}
|
28474
|
+
break;
|
28475
|
+
|
28476
|
+
default:
|
28477
|
+
return null;
|
28478
|
+
}
|
28458
28479
|
|
28459
|
-
|
28480
|
+
for (ast = ast.parent; ast && ast.kind() === 121 /* QualifiedName */; ast = ast.parent) {
|
28481
|
+
if (isEntireNameOfModuleDeclaration(ast)) {
|
28482
|
+
return ast.parent;
|
28483
|
+
}
|
28460
28484
|
}
|
28461
28485
|
}
|
28462
28486
|
|
28463
|
-
return
|
28487
|
+
return null;
|
28464
28488
|
}
|
28465
|
-
ASTHelpers.
|
28489
|
+
ASTHelpers.getModuleDeclarationFromNameAST = getModuleDeclarationFromNameAST;
|
28466
28490
|
|
28467
|
-
function
|
28491
|
+
function isLastNameOfModule(ast, astName) {
|
28468
28492
|
if (ast) {
|
28469
28493
|
if (ast.stringLiteral) {
|
28470
|
-
return ast.stringLiteral
|
28494
|
+
return astName === ast.stringLiteral;
|
28495
|
+
} else if (ast.name.kind() === 121 /* QualifiedName */) {
|
28496
|
+
return astName === ast.name.right;
|
28471
28497
|
} else {
|
28472
|
-
|
28473
|
-
var nameIndex = moduleNames.indexOf(astName);
|
28474
|
-
|
28475
|
-
return nameIndex >= 0;
|
28498
|
+
return astName === ast.name;
|
28476
28499
|
}
|
28477
28500
|
}
|
28478
28501
|
|
28479
28502
|
return false;
|
28480
28503
|
}
|
28481
|
-
ASTHelpers.
|
28504
|
+
ASTHelpers.isLastNameOfModule = isLastNameOfModule;
|
28482
28505
|
|
28483
28506
|
function getNameOfIdenfierOrQualifiedName(name) {
|
28484
28507
|
if (name.kind() === 11 /* IdentifierName */) {
|
@@ -31947,7 +31970,42 @@ var TypeScript;
|
|
31947
31970
|
};
|
31948
31971
|
|
31949
31972
|
Emitter.prototype.emitParenthesizedExpression = function (parenthesizedExpression) {
|
31973
|
+
var omitParentheses = false;
|
31974
|
+
|
31950
31975
|
if (parenthesizedExpression.expression.kind() === 220 /* CastExpression */ && parenthesizedExpression.openParenTrailingComments === null) {
|
31976
|
+
var castedExpression = parenthesizedExpression.expression.expression;
|
31977
|
+
|
31978
|
+
while (castedExpression.kind() == 220 /* CastExpression */) {
|
31979
|
+
castedExpression = castedExpression.expression;
|
31980
|
+
}
|
31981
|
+
|
31982
|
+
switch (castedExpression.kind()) {
|
31983
|
+
case 217 /* ParenthesizedExpression */:
|
31984
|
+
case 11 /* IdentifierName */:
|
31985
|
+
case 32 /* NullKeyword */:
|
31986
|
+
case 35 /* ThisKeyword */:
|
31987
|
+
case 14 /* StringLiteral */:
|
31988
|
+
case 13 /* NumericLiteral */:
|
31989
|
+
case 12 /* RegularExpressionLiteral */:
|
31990
|
+
case 37 /* TrueKeyword */:
|
31991
|
+
case 24 /* FalseKeyword */:
|
31992
|
+
case 214 /* ArrayLiteralExpression */:
|
31993
|
+
case 215 /* ObjectLiteralExpression */:
|
31994
|
+
case 212 /* MemberAccessExpression */:
|
31995
|
+
case 221 /* ElementAccessExpression */:
|
31996
|
+
omitParentheses = true;
|
31997
|
+
break;
|
31998
|
+
|
31999
|
+
case 213 /* InvocationExpression */:
|
32000
|
+
if (parenthesizedExpression.parent.kind() !== 216 /* ObjectCreationExpression */) {
|
32001
|
+
omitParentheses = true;
|
32002
|
+
}
|
32003
|
+
|
32004
|
+
break;
|
32005
|
+
}
|
32006
|
+
}
|
32007
|
+
|
32008
|
+
if (omitParentheses) {
|
31951
32009
|
this.emit(parenthesizedExpression.expression);
|
31952
32010
|
} else {
|
31953
32011
|
this.recordSourceMappingStart(parenthesizedExpression);
|
@@ -34314,10 +34372,8 @@ var TypeScript;
|
|
34314
34372
|
};
|
34315
34373
|
|
34316
34374
|
DeclarationEmitter.getEnclosingContainer = function (ast) {
|
34317
|
-
var enclosingModule = TypeScript.ASTHelpers.
|
34318
|
-
|
34319
|
-
ast = enclosingModule;
|
34320
|
-
}
|
34375
|
+
var enclosingModule = TypeScript.ASTHelpers.getModuleDeclarationFromNameAST(ast);
|
34376
|
+
ast = enclosingModule || ast;
|
34321
34377
|
|
34322
34378
|
ast = ast.parent;
|
34323
34379
|
while (ast) {
|
@@ -35409,7 +35465,7 @@ var TypeScript;
|
|
35409
35465
|
return false;
|
35410
35466
|
};
|
35411
35467
|
|
35412
|
-
PullSymbol.prototype.
|
35468
|
+
PullSymbol.prototype.findAliasedTypeSymbols = function (scopeSymbol, skipScopeSymbolAliasesLookIn, lookIntoOnlyExportedAlias, aliasSymbols, visitedScopeDeclarations) {
|
35413
35469
|
if (typeof aliasSymbols === "undefined") { aliasSymbols = []; }
|
35414
35470
|
if (typeof visitedScopeDeclarations === "undefined") { visitedScopeDeclarations = []; }
|
35415
35471
|
var scopeDeclarations = scopeSymbol.getDeclarations();
|
@@ -35443,7 +35499,7 @@ var TypeScript;
|
|
35443
35499
|
var scopeSymbolAlias = scopeSymbolAliasesToLookIn[i];
|
35444
35500
|
|
35445
35501
|
aliasSymbols.push(scopeSymbolAlias);
|
35446
|
-
var result = this.
|
35502
|
+
var result = this.findAliasedTypeSymbols(scopeSymbolAlias.assignedContainer().hasExportAssignment() ? scopeSymbolAlias.assignedContainer().getExportAssignedContainerSymbol() : scopeSymbolAlias.assignedContainer(), false, true, aliasSymbols, visitedScopeDeclarations);
|
35447
35503
|
if (result) {
|
35448
35504
|
return result;
|
35449
35505
|
}
|
@@ -35461,7 +35517,7 @@ var TypeScript;
|
|
35461
35517
|
|
35462
35518
|
var scopePath = scopeSymbol.pathToRoot();
|
35463
35519
|
if (scopePath.length && scopePath[scopePath.length - 1].kind === 32 /* DynamicModule */) {
|
35464
|
-
var symbols = this.
|
35520
|
+
var symbols = this.findAliasedTypeSymbols(scopePath[scopePath.length - 1]);
|
35465
35521
|
return symbols;
|
35466
35522
|
}
|
35467
35523
|
|
@@ -35493,7 +35549,7 @@ var TypeScript;
|
|
35493
35549
|
if (this.kind !== 128 /* TypeAlias */) {
|
35494
35550
|
var scopePath = scopeSymbol.pathToRoot();
|
35495
35551
|
for (var i = 0; i < scopePath.length; i++) {
|
35496
|
-
var internalAliases = this.
|
35552
|
+
var internalAliases = this.findAliasedTypeSymbols(scopeSymbol, true, true);
|
35497
35553
|
if (internalAliases) {
|
35498
35554
|
TypeScript.Debug.assert(internalAliases.length === 1);
|
35499
35555
|
return internalAliases[0];
|
@@ -35515,7 +35571,7 @@ var TypeScript;
|
|
35515
35571
|
|
35516
35572
|
var externalAliases = this.getExternalAliasedSymbols(scopeSymbol);
|
35517
35573
|
|
35518
|
-
if (externalAliases && PullSymbol._isExternalModuleReferenceAlias(externalAliases[externalAliases.length - 1])) {
|
35574
|
+
if (externalAliases && externalAliases[0] != this && PullSymbol._isExternalModuleReferenceAlias(externalAliases[externalAliases.length - 1])) {
|
35519
35575
|
var aliasFullName = aliasNameGetter(externalAliases[0]);
|
35520
35576
|
if (!aliasFullName) {
|
35521
35577
|
return null;
|
@@ -36041,7 +36097,7 @@ var TypeScript;
|
|
36041
36097
|
var ast = decl.ast();
|
36042
36098
|
|
36043
36099
|
if (ast) {
|
36044
|
-
var enclosingModuleDeclaration = TypeScript.ASTHelpers.
|
36100
|
+
var enclosingModuleDeclaration = TypeScript.ASTHelpers.getModuleDeclarationFromNameAST(ast);
|
36045
36101
|
if (TypeScript.ASTHelpers.isLastNameOfModule(enclosingModuleDeclaration, ast)) {
|
36046
36102
|
return TypeScript.ASTHelpers.docComments(enclosingModuleDeclaration);
|
36047
36103
|
}
|
@@ -37443,6 +37499,8 @@ var TypeScript;
|
|
37443
37499
|
var signatures = [];
|
37444
37500
|
for (var i = 0; i < baseConstructSignatures.length; i++) {
|
37445
37501
|
var baseSignature = baseConstructSignatures[i];
|
37502
|
+
|
37503
|
+
baseSignature._resolveDeclaredSymbol();
|
37446
37504
|
var currentSignature = new PullSignatureSymbol(2097152 /* ConstructSignature */, baseSignature.isDefinition());
|
37447
37505
|
currentSignature.returnType = instanceTypeSymbol;
|
37448
37506
|
currentSignature.addTypeParametersFromReturnType();
|
@@ -38206,7 +38264,13 @@ var TypeScript;
|
|
38206
38264
|
var typeExportSymbol = moduleSymbol.getExportAssignedTypeSymbol();
|
38207
38265
|
var containerExportSymbol = moduleSymbol.getExportAssignedContainerSymbol();
|
38208
38266
|
if (valueExportSymbol || typeExportSymbol || containerExportSymbol) {
|
38209
|
-
|
38267
|
+
if (valueExportSymbol === symbol || typeExportSymbol == symbol || containerExportSymbol == symbol) {
|
38268
|
+
return true;
|
38269
|
+
}
|
38270
|
+
|
38271
|
+
if (containerExportSymbol != containerSymbol) {
|
38272
|
+
return PullContainerSymbol.usedAsSymbol(containerExportSymbol, symbol);
|
38273
|
+
}
|
38210
38274
|
}
|
38211
38275
|
|
38212
38276
|
return false;
|
@@ -38696,13 +38760,60 @@ var TypeScript;
|
|
38696
38760
|
})(TypeScript || (TypeScript = {}));
|
38697
38761
|
var TypeScript;
|
38698
38762
|
(function (TypeScript) {
|
38763
|
+
var EnclosingTypeWalkerState = (function () {
|
38764
|
+
function EnclosingTypeWalkerState() {
|
38765
|
+
}
|
38766
|
+
EnclosingTypeWalkerState.getDefaultEnclosingTypeWalkerState = function () {
|
38767
|
+
var defaultEnclosingTypeWalkerState = new EnclosingTypeWalkerState();
|
38768
|
+
defaultEnclosingTypeWalkerState._hasSetEnclosingType = false;
|
38769
|
+
return defaultEnclosingTypeWalkerState;
|
38770
|
+
};
|
38771
|
+
|
38772
|
+
EnclosingTypeWalkerState.getNonGenericEnclosingTypeWalkerState = function () {
|
38773
|
+
var defaultEnclosingTypeWalkerState = new EnclosingTypeWalkerState();
|
38774
|
+
defaultEnclosingTypeWalkerState._hasSetEnclosingType = true;
|
38775
|
+
return defaultEnclosingTypeWalkerState;
|
38776
|
+
};
|
38777
|
+
|
38778
|
+
EnclosingTypeWalkerState.getGenericEnclosingTypeWalkerState = function (genericEnclosingType) {
|
38779
|
+
var defaultEnclosingTypeWalkerState = new EnclosingTypeWalkerState();
|
38780
|
+
defaultEnclosingTypeWalkerState._hasSetEnclosingType = true;
|
38781
|
+
defaultEnclosingTypeWalkerState._currentSymbols = [TypeScript.PullHelpers.getRootType(genericEnclosingType)];
|
38782
|
+
return defaultEnclosingTypeWalkerState;
|
38783
|
+
};
|
38784
|
+
return EnclosingTypeWalkerState;
|
38785
|
+
})();
|
38786
|
+
TypeScript.EnclosingTypeWalkerState = EnclosingTypeWalkerState;
|
38787
|
+
|
38699
38788
|
var PullTypeEnclosingTypeWalker = (function () {
|
38700
38789
|
function PullTypeEnclosingTypeWalker() {
|
38701
|
-
this.
|
38790
|
+
this.setDefaultTypeWalkerState();
|
38702
38791
|
}
|
38792
|
+
PullTypeEnclosingTypeWalker.prototype.setDefaultTypeWalkerState = function () {
|
38793
|
+
this.enclosingTypeWalkerState = PullTypeEnclosingTypeWalker._defaultEnclosingTypeWalkerState;
|
38794
|
+
};
|
38795
|
+
|
38796
|
+
PullTypeEnclosingTypeWalker.prototype.setNonGenericEnclosingTypeWalkerState = function () {
|
38797
|
+
this.enclosingTypeWalkerState = PullTypeEnclosingTypeWalker._nonGenericEnclosingTypeWalkerState;
|
38798
|
+
};
|
38799
|
+
|
38800
|
+
PullTypeEnclosingTypeWalker.prototype.canSymbolOrDeclBeUsedAsEnclosingTypeHelper = function (name, kind) {
|
38801
|
+
return name && (kind === 8 /* Class */ || kind === 16 /* Interface */);
|
38802
|
+
};
|
38803
|
+
|
38804
|
+
PullTypeEnclosingTypeWalker.prototype.canDeclBeUsedAsEnclosingType = function (decl) {
|
38805
|
+
return this.canSymbolOrDeclBeUsedAsEnclosingTypeHelper(decl.name, decl.kind);
|
38806
|
+
};
|
38807
|
+
|
38808
|
+
PullTypeEnclosingTypeWalker.prototype.canSymbolBeUsedAsEnclosingType = function (symbol) {
|
38809
|
+
return this.canSymbolOrDeclBeUsedAsEnclosingTypeHelper(symbol.name, symbol.kind);
|
38810
|
+
};
|
38811
|
+
|
38703
38812
|
PullTypeEnclosingTypeWalker.prototype.getEnclosingType = function () {
|
38704
|
-
|
38705
|
-
|
38813
|
+
var currentSymbols = this.enclosingTypeWalkerState._currentSymbols;
|
38814
|
+
if (currentSymbols) {
|
38815
|
+
TypeScript.Debug.assert(currentSymbols.length > 0);
|
38816
|
+
return currentSymbols[0];
|
38706
38817
|
}
|
38707
38818
|
|
38708
38819
|
return null;
|
@@ -38710,12 +38821,14 @@ var TypeScript;
|
|
38710
38821
|
|
38711
38822
|
PullTypeEnclosingTypeWalker.prototype._canWalkStructure = function () {
|
38712
38823
|
var enclosingType = this.getEnclosingType();
|
38713
|
-
|
38824
|
+
TypeScript.Debug.assert(!enclosingType || enclosingType.isGeneric());
|
38825
|
+
return !!enclosingType;
|
38714
38826
|
};
|
38715
38827
|
|
38716
38828
|
PullTypeEnclosingTypeWalker.prototype._getCurrentSymbol = function () {
|
38717
|
-
|
38718
|
-
|
38829
|
+
var currentSymbols = this.enclosingTypeWalkerState._currentSymbols;
|
38830
|
+
if (currentSymbols && currentSymbols.length) {
|
38831
|
+
return currentSymbols[currentSymbols.length - 1];
|
38719
38832
|
}
|
38720
38833
|
|
38721
38834
|
return null;
|
@@ -38723,7 +38836,7 @@ var TypeScript;
|
|
38723
38836
|
|
38724
38837
|
PullTypeEnclosingTypeWalker.prototype.getGenerativeClassification = function () {
|
38725
38838
|
if (this._canWalkStructure()) {
|
38726
|
-
var currentType = this.
|
38839
|
+
var currentType = this._getCurrentSymbol();
|
38727
38840
|
if (!currentType) {
|
38728
38841
|
return 0 /* Unknown */;
|
38729
38842
|
}
|
@@ -38737,18 +38850,27 @@ var TypeScript;
|
|
38737
38850
|
};
|
38738
38851
|
|
38739
38852
|
PullTypeEnclosingTypeWalker.prototype._pushSymbol = function (symbol) {
|
38740
|
-
return this.
|
38853
|
+
return this.enclosingTypeWalkerState._currentSymbols.push(symbol);
|
38741
38854
|
};
|
38742
38855
|
|
38743
38856
|
PullTypeEnclosingTypeWalker.prototype._popSymbol = function () {
|
38744
|
-
return this.
|
38857
|
+
return this.enclosingTypeWalkerState._currentSymbols.pop();
|
38858
|
+
};
|
38859
|
+
|
38860
|
+
PullTypeEnclosingTypeWalker.prototype.setSymbolAsEnclosingType = function (type) {
|
38861
|
+
if (type.isGeneric()) {
|
38862
|
+
this.enclosingTypeWalkerState = EnclosingTypeWalkerState.getGenericEnclosingTypeWalkerState(type);
|
38863
|
+
} else {
|
38864
|
+
this.setNonGenericEnclosingTypeWalkerState();
|
38865
|
+
}
|
38745
38866
|
};
|
38746
38867
|
|
38747
38868
|
PullTypeEnclosingTypeWalker.prototype._setEnclosingTypeOfParentDecl = function (decl, setSignature) {
|
38748
38869
|
var parentDecl = decl.getParentDecl();
|
38749
|
-
|
38750
|
-
|
38751
|
-
|
38870
|
+
|
38871
|
+
if (parentDecl && !(parentDecl.kind & (164 /* SomeContainer */ | 1 /* Script */))) {
|
38872
|
+
if (this.canDeclBeUsedAsEnclosingType(parentDecl)) {
|
38873
|
+
this.setSymbolAsEnclosingType(parentDecl.getSymbol());
|
38752
38874
|
} else {
|
38753
38875
|
this._setEnclosingTypeOfParentDecl(parentDecl, true);
|
38754
38876
|
}
|
@@ -38773,45 +38895,42 @@ var TypeScript;
|
|
38773
38895
|
}
|
38774
38896
|
};
|
38775
38897
|
|
38776
|
-
PullTypeEnclosingTypeWalker.prototype.
|
38777
|
-
|
38778
|
-
|
38779
|
-
|
38780
|
-
}
|
38898
|
+
PullTypeEnclosingTypeWalker.prototype.setEnclosingTypeForSymbol = function (symbol) {
|
38899
|
+
var currentEnclosingTypeWalkerState = this.enclosingTypeWalkerState;
|
38900
|
+
if (this.canSymbolBeUsedAsEnclosingType(symbol)) {
|
38901
|
+
this.setSymbolAsEnclosingType(symbol);
|
38902
|
+
} else {
|
38903
|
+
this.setDefaultTypeWalkerState();
|
38781
38904
|
|
38782
|
-
|
38783
|
-
|
38784
|
-
|
38785
|
-
|
38786
|
-
|
38787
|
-
|
38905
|
+
var decls = symbol.getDeclarations();
|
38906
|
+
for (var i = 0; i < decls.length; i++) {
|
38907
|
+
var decl = decls[i];
|
38908
|
+
this._setEnclosingTypeOfParentDecl(decl, symbol.isSignature());
|
38909
|
+
|
38910
|
+
if (this.enclosingTypeWalkerState._hasSetEnclosingType) {
|
38911
|
+
break;
|
38912
|
+
}
|
38788
38913
|
}
|
38789
|
-
}
|
38790
|
-
};
|
38791
38914
|
|
38792
|
-
|
38793
|
-
|
38794
|
-
|
38915
|
+
if (!this.enclosingTypeWalkerState._hasSetEnclosingType) {
|
38916
|
+
this.setNonGenericEnclosingTypeWalkerState();
|
38917
|
+
}
|
38918
|
+
}
|
38919
|
+
return currentEnclosingTypeWalkerState;
|
38795
38920
|
};
|
38796
38921
|
|
38797
38922
|
PullTypeEnclosingTypeWalker.prototype.startWalkingType = function (symbol) {
|
38798
|
-
var
|
38923
|
+
var currentState = this.enclosingTypeWalkerState;
|
38799
38924
|
|
38800
|
-
var
|
38801
|
-
if (
|
38802
|
-
this.
|
38803
|
-
this.setEnclosingType(symbol);
|
38925
|
+
var setEnclosingTypeForSymbol = !this.enclosingTypeWalkerState._hasSetEnclosingType || this.canSymbolBeUsedAsEnclosingType(symbol);
|
38926
|
+
if (setEnclosingTypeForSymbol) {
|
38927
|
+
this.setEnclosingTypeForSymbol(symbol);
|
38804
38928
|
}
|
38805
|
-
return
|
38929
|
+
return currentState;
|
38806
38930
|
};
|
38807
38931
|
|
38808
|
-
PullTypeEnclosingTypeWalker.prototype.endWalkingType = function (
|
38809
|
-
this.
|
38810
|
-
};
|
38811
|
-
|
38812
|
-
PullTypeEnclosingTypeWalker.prototype.setEnclosingType = function (symbol) {
|
38813
|
-
TypeScript.Debug.assert(!this.getEnclosingType());
|
38814
|
-
this._setEnclosingTypeWorker(symbol, symbol.isSignature());
|
38932
|
+
PullTypeEnclosingTypeWalker.prototype.endWalkingType = function (stateWhenStartedWalkingTypes) {
|
38933
|
+
this.enclosingTypeWalkerState = stateWhenStartedWalkingTypes;
|
38815
38934
|
};
|
38816
38935
|
|
38817
38936
|
PullTypeEnclosingTypeWalker.prototype.walkMemberType = function (memberName, resolver) {
|
@@ -38945,6 +39064,23 @@ var TypeScript;
|
|
38945
39064
|
this._popSymbol();
|
38946
39065
|
}
|
38947
39066
|
};
|
39067
|
+
|
39068
|
+
PullTypeEnclosingTypeWalker.prototype.resetEnclosingTypeWalkerState = function () {
|
39069
|
+
var currentState = this.enclosingTypeWalkerState;
|
39070
|
+
this.setDefaultTypeWalkerState();
|
39071
|
+
return currentState;
|
39072
|
+
};
|
39073
|
+
|
39074
|
+
PullTypeEnclosingTypeWalker.prototype.setEnclosingTypeWalkerState = function (enclosingTypeWalkerState) {
|
39075
|
+
if (enclosingTypeWalkerState) {
|
39076
|
+
this.enclosingTypeWalkerState = enclosingTypeWalkerState;
|
39077
|
+
} else {
|
39078
|
+
this.setDefaultTypeWalkerState();
|
39079
|
+
}
|
39080
|
+
};
|
39081
|
+
PullTypeEnclosingTypeWalker._defaultEnclosingTypeWalkerState = EnclosingTypeWalkerState.getDefaultEnclosingTypeWalkerState();
|
39082
|
+
|
39083
|
+
PullTypeEnclosingTypeWalker._nonGenericEnclosingTypeWalkerState = EnclosingTypeWalkerState.getNonGenericEnclosingTypeWalkerState();
|
38948
39084
|
return PullTypeEnclosingTypeWalker;
|
38949
39085
|
})();
|
38950
39086
|
TypeScript.PullTypeEnclosingTypeWalker = PullTypeEnclosingTypeWalker;
|
@@ -39341,28 +39477,35 @@ var TypeScript;
|
|
39341
39477
|
if (!this.enclosingTypeWalker1) {
|
39342
39478
|
this.enclosingTypeWalker1 = new TypeScript.PullTypeEnclosingTypeWalker();
|
39343
39479
|
}
|
39344
|
-
var
|
39480
|
+
var stateWhenStartedWalkingTypes1 = this.enclosingTypeWalker1.startWalkingType(symbol1);
|
39345
39481
|
if (!this.enclosingTypeWalker2) {
|
39346
39482
|
this.enclosingTypeWalker2 = new TypeScript.PullTypeEnclosingTypeWalker();
|
39347
39483
|
}
|
39348
|
-
var
|
39349
|
-
return {
|
39484
|
+
var stateWhenStartedWalkingTypes2 = this.enclosingTypeWalker2.startWalkingType(symbol2);
|
39485
|
+
return {
|
39486
|
+
stateWhenStartedWalkingTypes1: stateWhenStartedWalkingTypes1,
|
39487
|
+
stateWhenStartedWalkingTypes2: stateWhenStartedWalkingTypes2
|
39488
|
+
};
|
39350
39489
|
};
|
39351
39490
|
|
39352
|
-
PullTypeResolutionContext.prototype.endWalkingTypes = function (
|
39353
|
-
this.enclosingTypeWalker1.endWalkingType(
|
39354
|
-
this.enclosingTypeWalker2.endWalkingType(
|
39491
|
+
PullTypeResolutionContext.prototype.endWalkingTypes = function (statesWhenStartedWalkingTypes) {
|
39492
|
+
this.enclosingTypeWalker1.endWalkingType(statesWhenStartedWalkingTypes.stateWhenStartedWalkingTypes1);
|
39493
|
+
this.enclosingTypeWalker2.endWalkingType(statesWhenStartedWalkingTypes.stateWhenStartedWalkingTypes2);
|
39355
39494
|
};
|
39356
39495
|
|
39357
|
-
PullTypeResolutionContext.prototype.
|
39496
|
+
PullTypeResolutionContext.prototype.setEnclosingTypeForSymbols = function (symbol1, symbol2) {
|
39358
39497
|
if (!this.enclosingTypeWalker1) {
|
39359
39498
|
this.enclosingTypeWalker1 = new TypeScript.PullTypeEnclosingTypeWalker();
|
39360
39499
|
}
|
39361
|
-
this.enclosingTypeWalker1.
|
39500
|
+
var enclosingTypeWalkerState1 = this.enclosingTypeWalker1.setEnclosingTypeForSymbol(symbol1);
|
39362
39501
|
if (!this.enclosingTypeWalker2) {
|
39363
39502
|
this.enclosingTypeWalker2 = new TypeScript.PullTypeEnclosingTypeWalker();
|
39364
39503
|
}
|
39365
|
-
this.enclosingTypeWalker2.
|
39504
|
+
var enclosingTypeWalkerState2 = this.enclosingTypeWalker2.setEnclosingTypeForSymbol(symbol2);
|
39505
|
+
return {
|
39506
|
+
enclosingTypeWalkerState1: enclosingTypeWalkerState1,
|
39507
|
+
enclosingTypeWalkerState2: enclosingTypeWalkerState2
|
39508
|
+
};
|
39366
39509
|
};
|
39367
39510
|
|
39368
39511
|
PullTypeResolutionContext.prototype.walkMemberTypes = function (memberName) {
|
@@ -39460,20 +39603,24 @@ var TypeScript;
|
|
39460
39603
|
return false;
|
39461
39604
|
};
|
39462
39605
|
|
39463
|
-
PullTypeResolutionContext.prototype.
|
39464
|
-
var
|
39465
|
-
var
|
39466
|
-
this.enclosingTypeWalker1 = null;
|
39467
|
-
this.enclosingTypeWalker2 = null;
|
39606
|
+
PullTypeResolutionContext.prototype.resetEnclosingTypeWalkerStates = function () {
|
39607
|
+
var enclosingTypeWalkerState1 = this.enclosingTypeWalker1 ? this.enclosingTypeWalker1.resetEnclosingTypeWalkerState() : null;
|
39608
|
+
var enclosingTypeWalkerState2 = this.enclosingTypeWalker2 ? this.enclosingTypeWalker2.resetEnclosingTypeWalkerState() : null;
|
39468
39609
|
return {
|
39469
|
-
|
39470
|
-
|
39610
|
+
enclosingTypeWalkerState1: enclosingTypeWalkerState1,
|
39611
|
+
enclosingTypeWalkerState2: enclosingTypeWalkerState2
|
39471
39612
|
};
|
39472
39613
|
};
|
39473
39614
|
|
39474
|
-
PullTypeResolutionContext.prototype.
|
39475
|
-
this.enclosingTypeWalker1
|
39476
|
-
this.
|
39615
|
+
PullTypeResolutionContext.prototype.setEnclosingTypeWalkerStates = function (enclosingTypeWalkerStates) {
|
39616
|
+
TypeScript.Debug.assert(this.enclosingTypeWalker1 || !enclosingTypeWalkerStates.enclosingTypeWalkerState1);
|
39617
|
+
if (this.enclosingTypeWalker1) {
|
39618
|
+
this.enclosingTypeWalker1.setEnclosingTypeWalkerState(enclosingTypeWalkerStates.enclosingTypeWalkerState1);
|
39619
|
+
}
|
39620
|
+
TypeScript.Debug.assert(this.enclosingTypeWalker2 || !enclosingTypeWalkerStates.enclosingTypeWalkerState2);
|
39621
|
+
if (this.enclosingTypeWalker2) {
|
39622
|
+
this.enclosingTypeWalker2.setEnclosingTypeWalkerState(enclosingTypeWalkerStates.enclosingTypeWalkerState2);
|
39623
|
+
}
|
39477
39624
|
};
|
39478
39625
|
return PullTypeResolutionContext;
|
39479
39626
|
})();
|
@@ -40328,9 +40475,9 @@ var TypeScript;
|
|
40328
40475
|
return symbol;
|
40329
40476
|
}
|
40330
40477
|
|
40331
|
-
var enclosingModule = TypeScript.ASTHelpers.
|
40478
|
+
var enclosingModule = TypeScript.ASTHelpers.getModuleDeclarationFromNameAST(ast);
|
40332
40479
|
var resolvedSymbol;
|
40333
|
-
if (
|
40480
|
+
if (enclosingModule) {
|
40334
40481
|
resolvedSymbol = this.resolveSingleModuleDeclaration(enclosingModule, ast, context);
|
40335
40482
|
} else if (ast.kind() === 120 /* SourceUnit */ && decl.kind === 32 /* DynamicModule */) {
|
40336
40483
|
resolvedSymbol = this.resolveModuleSymbol(decl.getSymbol(), context, null, null, ast);
|
@@ -40345,13 +40492,19 @@ var TypeScript;
|
|
40345
40492
|
}
|
40346
40493
|
}
|
40347
40494
|
|
40495
|
+
if (!symbol.isResolved) {
|
40496
|
+
TypeScript.Debug.assert(!symbol.inResolution);
|
40497
|
+
|
40498
|
+
symbol.setResolved();
|
40499
|
+
}
|
40500
|
+
|
40348
40501
|
return symbol;
|
40349
40502
|
};
|
40350
40503
|
|
40351
40504
|
PullTypeResolver.prototype.resolveOtherDecl = function (otherDecl, context) {
|
40352
40505
|
var astForOtherDecl = this.getASTForDecl(otherDecl);
|
40353
|
-
var moduleDecl = TypeScript.ASTHelpers.
|
40354
|
-
if (
|
40506
|
+
var moduleDecl = TypeScript.ASTHelpers.getModuleDeclarationFromNameAST(astForOtherDecl);
|
40507
|
+
if (moduleDecl) {
|
40355
40508
|
this.resolveSingleModuleDeclaration(moduleDecl, astForOtherDecl, context);
|
40356
40509
|
} else {
|
40357
40510
|
this.resolveAST(astForOtherDecl, false, context);
|
@@ -40666,8 +40819,11 @@ var TypeScript;
|
|
40666
40819
|
if (enclosingDecl.kind === 1 /* Script */ && declGroups[i].length) {
|
40667
40820
|
var name = declGroups[i][0].name;
|
40668
40821
|
var candidateSymbol = this.semanticInfoChain.findTopLevelSymbol(name, 512 /* Variable */, enclosingDecl);
|
40669
|
-
if (candidateSymbol
|
40822
|
+
if (candidateSymbol) {
|
40670
40823
|
if (!candidateSymbol.anyDeclHasFlag(118784 /* ImplicitVariable */)) {
|
40824
|
+
if (!candidateSymbol.isResolved) {
|
40825
|
+
this.resolveDeclaredSymbol(candidateSymbol);
|
40826
|
+
}
|
40671
40827
|
firstSymbol = candidateSymbol;
|
40672
40828
|
}
|
40673
40829
|
}
|
@@ -41740,8 +41896,8 @@ var TypeScript;
|
|
41740
41896
|
PullTypeResolver.prototype.checkExternalModuleRequireExportsCollides = function (ast, name, context) {
|
41741
41897
|
var enclosingDecl = this.getEnclosingDeclForAST(ast);
|
41742
41898
|
|
41743
|
-
var enclosingModule = TypeScript.ASTHelpers.
|
41744
|
-
if (
|
41899
|
+
var enclosingModule = TypeScript.ASTHelpers.getModuleDeclarationFromNameAST(name);
|
41900
|
+
if (enclosingModule) {
|
41745
41901
|
enclosingDecl = this.getEnclosingDeclForAST(enclosingModule);
|
41746
41902
|
}
|
41747
41903
|
|
@@ -42365,8 +42521,8 @@ var TypeScript;
|
|
42365
42521
|
|
42366
42522
|
var enclosingDecl = this.getEnclosingDeclForAST(_thisAST);
|
42367
42523
|
|
42368
|
-
var enclosingModule = TypeScript.ASTHelpers.
|
42369
|
-
if (
|
42524
|
+
var enclosingModule = TypeScript.ASTHelpers.getModuleDeclarationFromNameAST(_thisAST);
|
42525
|
+
if (enclosingModule) {
|
42370
42526
|
enclosingDecl = this.getEnclosingDeclForAST(enclosingModule);
|
42371
42527
|
}
|
42372
42528
|
|
@@ -47564,9 +47720,9 @@ var TypeScript;
|
|
47564
47720
|
};
|
47565
47721
|
|
47566
47722
|
PullTypeResolver.prototype.typesAreIdenticalWithNewEnclosingTypes = function (t1, t2, context) {
|
47567
|
-
var
|
47723
|
+
var enclosingTypeWalkerStates = context.resetEnclosingTypeWalkerStates();
|
47568
47724
|
var areTypesIdentical = this.typesAreIdentical(t1, t2, context);
|
47569
|
-
context.
|
47725
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47570
47726
|
return areTypesIdentical;
|
47571
47727
|
};
|
47572
47728
|
|
@@ -47621,9 +47777,9 @@ var TypeScript;
|
|
47621
47777
|
}
|
47622
47778
|
|
47623
47779
|
this.identicalCache.setValueAt(t1.pullSymbolID, t2.pullSymbolID, true);
|
47624
|
-
var
|
47780
|
+
var statesWhenStartedWalkingTypes = context.startWalkingTypes(t1, t2);
|
47625
47781
|
isIdentical = this.typesAreIdenticalWorker(t1, t2, context);
|
47626
|
-
context.endWalkingTypes(
|
47782
|
+
context.endWalkingTypes(statesWhenStartedWalkingTypes);
|
47627
47783
|
this.identicalCache.setValueAt(t1.pullSymbolID, t2.pullSymbolID, isIdentical);
|
47628
47784
|
|
47629
47785
|
return isIdentical;
|
@@ -47725,10 +47881,9 @@ var TypeScript;
|
|
47725
47881
|
};
|
47726
47882
|
|
47727
47883
|
PullTypeResolver.prototype.propertiesAreIdenticalWithNewEnclosingTypes = function (type1, type2, property1, property2, context) {
|
47728
|
-
var
|
47729
|
-
context.setEnclosingTypes(type1, type2);
|
47884
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(type1, type2);
|
47730
47885
|
var arePropertiesIdentical = this.propertiesAreIdentical(property1, property2, context);
|
47731
|
-
context.
|
47886
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47732
47887
|
return arePropertiesIdentical;
|
47733
47888
|
};
|
47734
47889
|
|
@@ -47798,10 +47953,9 @@ var TypeScript;
|
|
47798
47953
|
|
47799
47954
|
PullTypeResolver.prototype.signaturesAreIdenticalWithNewEnclosingTypes = function (s1, s2, context, includingReturnType) {
|
47800
47955
|
if (typeof includingReturnType === "undefined") { includingReturnType = true; }
|
47801
|
-
var
|
47802
|
-
context.setEnclosingTypes(s1, s2);
|
47956
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(s1, s2);
|
47803
47957
|
var areSignaturesIdentical = this.signaturesAreIdentical(s1, s2, context, includingReturnType);
|
47804
|
-
context.
|
47958
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47805
47959
|
return areSignaturesIdentical;
|
47806
47960
|
};
|
47807
47961
|
|
@@ -47893,12 +48047,11 @@ var TypeScript;
|
|
47893
48047
|
var s2TypeParameters = s2.getTypeParameters();
|
47894
48048
|
this.setTypeParameterIdentity(s1TypeParameters, s2TypeParameters, true);
|
47895
48049
|
|
47896
|
-
var
|
47897
|
-
context.setEnclosingTypes(s1, s2);
|
48050
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(s1, s2);
|
47898
48051
|
context.walkReturnTypes();
|
47899
48052
|
var returnTypeIsIdentical = this.typesAreIdenticalInEnclosingTypes(s1.returnType, s2.returnType, context);
|
47900
48053
|
|
47901
|
-
context.
|
48054
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47902
48055
|
|
47903
48056
|
this.setTypeParameterIdentity(s1TypeParameters, s2TypeParameters, undefined);
|
47904
48057
|
|
@@ -47921,42 +48074,37 @@ var TypeScript;
|
|
47921
48074
|
};
|
47922
48075
|
|
47923
48076
|
PullTypeResolver.prototype.sourceMembersAreAssignableToTargetMembers = function (source, target, ast, context, comparisonInfo, isComparingInstantiatedSignatures) {
|
47924
|
-
var
|
47925
|
-
context.setEnclosingTypes(source, target);
|
48077
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(source, target);
|
47926
48078
|
var areSourceMembersAreAssignableToTargetMembers = this.sourceMembersAreRelatableToTargetMembers(source, target, true, this.assignableCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
47927
|
-
context.
|
48079
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47928
48080
|
return areSourceMembersAreAssignableToTargetMembers;
|
47929
48081
|
};
|
47930
48082
|
|
47931
48083
|
PullTypeResolver.prototype.sourcePropertyIsAssignableToTargetProperty = function (source, target, sourceProp, targetProp, ast, context, comparisonInfo, isComparingInstantiatedSignatures) {
|
47932
|
-
var
|
47933
|
-
context.setEnclosingTypes(source, target);
|
48084
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(source, target);
|
47934
48085
|
var isSourcePropertyIsAssignableToTargetProperty = this.sourcePropertyIsRelatableToTargetProperty(source, target, sourceProp, targetProp, true, this.assignableCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
47935
|
-
context.
|
48086
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47936
48087
|
return isSourcePropertyIsAssignableToTargetProperty;
|
47937
48088
|
};
|
47938
48089
|
|
47939
48090
|
PullTypeResolver.prototype.sourceCallSignaturesAreAssignableToTargetCallSignatures = function (source, target, ast, context, comparisonInfo, isComparingInstantiatedSignatures) {
|
47940
|
-
var
|
47941
|
-
context.setEnclosingTypes(source, target);
|
48091
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(source, target);
|
47942
48092
|
var areSourceCallSignaturesAssignableToTargetCallSignatures = this.sourceCallSignaturesAreRelatableToTargetCallSignatures(source, target, true, this.assignableCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
47943
|
-
context.
|
48093
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47944
48094
|
return areSourceCallSignaturesAssignableToTargetCallSignatures;
|
47945
48095
|
};
|
47946
48096
|
|
47947
48097
|
PullTypeResolver.prototype.sourceConstructSignaturesAreAssignableToTargetConstructSignatures = function (source, target, ast, context, comparisonInfo, isComparingInstantiatedSignatures) {
|
47948
|
-
var
|
47949
|
-
context.setEnclosingTypes(source, target);
|
48098
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(source, target);
|
47950
48099
|
var areSourceConstructSignaturesAssignableToTargetConstructSignatures = this.sourceConstructSignaturesAreRelatableToTargetConstructSignatures(source, target, true, this.assignableCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
47951
|
-
context.
|
48100
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47952
48101
|
return areSourceConstructSignaturesAssignableToTargetConstructSignatures;
|
47953
48102
|
};
|
47954
48103
|
|
47955
48104
|
PullTypeResolver.prototype.sourceIndexSignaturesAreAssignableToTargetIndexSignatures = function (source, target, ast, context, comparisonInfo, isComparingInstantiatedSignatures) {
|
47956
|
-
var
|
47957
|
-
context.setEnclosingTypes(source, target);
|
48105
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(source, target);
|
47958
48106
|
var areSourceIndexSignaturesAssignableToTargetIndexSignatures = this.sourceIndexSignaturesAreRelatableToTargetIndexSignatures(source, target, true, this.assignableCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
47959
|
-
context.
|
48107
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47960
48108
|
return areSourceIndexSignaturesAssignableToTargetIndexSignatures;
|
47961
48109
|
};
|
47962
48110
|
|
@@ -47969,10 +48117,9 @@ var TypeScript;
|
|
47969
48117
|
};
|
47970
48118
|
|
47971
48119
|
PullTypeResolver.prototype.signatureIsAssignableToTarget = function (s1, s2, ast, context, comparisonInfo, isComparingInstantiatedSignatures) {
|
47972
|
-
var
|
47973
|
-
context.setEnclosingTypes(s1, s2);
|
48120
|
+
var enclosingTypeWalkerStates = context.setEnclosingTypeForSymbols(s1, s2);
|
47974
48121
|
var isSignatureIsAssignableToTarget = this.signatureIsRelatableToTarget(s1, s2, true, this.assignableCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
47975
|
-
context.
|
48122
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
47976
48123
|
return isSignatureIsAssignableToTarget;
|
47977
48124
|
};
|
47978
48125
|
|
@@ -48010,9 +48157,9 @@ var TypeScript;
|
|
48010
48157
|
};
|
48011
48158
|
|
48012
48159
|
PullTypeResolver.prototype.sourceIsRelatableToTargetWithNewEnclosingTypes = function (source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures) {
|
48013
|
-
var
|
48160
|
+
var enclosingTypeWalkerStates = context.resetEnclosingTypeWalkerStates();
|
48014
48161
|
var isSourceRelatable = this.sourceIsRelatableToTarget(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
48015
|
-
context.
|
48162
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
48016
48163
|
return isSourceRelatable;
|
48017
48164
|
};
|
48018
48165
|
|
@@ -48155,17 +48302,7 @@ var TypeScript;
|
|
48155
48302
|
comparisonCache.setValueAt(source.pullSymbolID, target.pullSymbolID, true);
|
48156
48303
|
|
48157
48304
|
var symbolsWhenStartedWalkingTypes = context.startWalkingTypes(sourceApparentType, target);
|
48158
|
-
|
48159
|
-
var needsSourceSubstitutionUpdate = source != sourceApparentType && context.enclosingTypeWalker1._canWalkStructure() && context.enclosingTypeWalker1._getCurrentSymbol() != sourceApparentType;
|
48160
|
-
if (needsSourceSubstitutionUpdate) {
|
48161
|
-
context.enclosingTypeWalker1.setCurrentSymbol(sourceApparentType);
|
48162
|
-
}
|
48163
|
-
|
48164
|
-
var isRelatable = this.sourceIsRelatableToTargetWorker(source, target, sourceApparentType, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
48165
|
-
|
48166
|
-
if (needsSourceSubstitutionUpdate) {
|
48167
|
-
context.enclosingTypeWalker1.setCurrentSymbol(source);
|
48168
|
-
}
|
48305
|
+
var isRelatable = this.sourceIsRelatableToTargetWorker(sourceApparentType, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures);
|
48169
48306
|
context.endWalkingTypes(symbolsWhenStartedWalkingTypes);
|
48170
48307
|
|
48171
48308
|
comparisonCache.setValueAt(source.pullSymbolID, target.pullSymbolID, isRelatable);
|
@@ -48184,20 +48321,20 @@ var TypeScript;
|
|
48184
48321
|
return false;
|
48185
48322
|
};
|
48186
48323
|
|
48187
|
-
PullTypeResolver.prototype.sourceIsRelatableToTargetWorker = function (source, target,
|
48188
|
-
if (target.hasMembers() && !this.sourceMembersAreRelatableToTargetMembers(
|
48324
|
+
PullTypeResolver.prototype.sourceIsRelatableToTargetWorker = function (source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures) {
|
48325
|
+
if (target.hasMembers() && !this.sourceMembersAreRelatableToTargetMembers(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures)) {
|
48189
48326
|
return false;
|
48190
48327
|
}
|
48191
48328
|
|
48192
|
-
if (!this.sourceCallSignaturesAreRelatableToTargetCallSignatures(
|
48329
|
+
if (!this.sourceCallSignaturesAreRelatableToTargetCallSignatures(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures)) {
|
48193
48330
|
return false;
|
48194
48331
|
}
|
48195
48332
|
|
48196
|
-
if (!this.sourceConstructSignaturesAreRelatableToTargetConstructSignatures(
|
48333
|
+
if (!this.sourceConstructSignaturesAreRelatableToTargetConstructSignatures(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures)) {
|
48197
48334
|
return false;
|
48198
48335
|
}
|
48199
48336
|
|
48200
|
-
if (!this.sourceIndexSignaturesAreRelatableToTargetIndexSignatures(
|
48337
|
+
if (!this.sourceIndexSignaturesAreRelatableToTargetIndexSignatures(source, target, assignableTo, comparisonCache, ast, context, comparisonInfo, isComparingInstantiatedSignatures)) {
|
48201
48338
|
return false;
|
48202
48339
|
}
|
48203
48340
|
|
@@ -48960,9 +49097,9 @@ var TypeScript;
|
|
48960
49097
|
};
|
48961
49098
|
|
48962
49099
|
PullTypeResolver.prototype.relateTypeToTypeParametersWithNewEnclosingTypes = function (expressionType, parameterType, argContext, context) {
|
48963
|
-
var
|
49100
|
+
var enclosingTypeWalkerStates = context.resetEnclosingTypeWalkerStates();
|
48964
49101
|
this.relateTypeToTypeParameters(expressionType, parameterType, argContext, context);
|
48965
|
-
context.
|
49102
|
+
context.setEnclosingTypeWalkerStates(enclosingTypeWalkerStates);
|
48966
49103
|
};
|
48967
49104
|
|
48968
49105
|
PullTypeResolver.prototype.relateTypeToTypeParameters = function (expressionType, parameterType, argContext, context) {
|
@@ -55859,14 +55996,14 @@ var TypeScript;
|
|
55859
55996
|
return this.semanticInfoChain.topLevelDecl(fileName);
|
55860
55997
|
};
|
55861
55998
|
|
55862
|
-
TypeScriptCompiler.getLocationText = function (location) {
|
55863
|
-
return location.fileName() + "(" + (location.line() + 1) + "," + (location.character() + 1) + ")";
|
55999
|
+
TypeScriptCompiler.getLocationText = function (location, resolvePath) {
|
56000
|
+
return resolvePath(location.fileName()) + "(" + (location.line() + 1) + "," + (location.character() + 1) + ")";
|
55864
56001
|
};
|
55865
56002
|
|
55866
|
-
TypeScriptCompiler.getFullDiagnosticText = function (diagnostic) {
|
56003
|
+
TypeScriptCompiler.getFullDiagnosticText = function (diagnostic, resolvePath) {
|
55867
56004
|
var result = "";
|
55868
56005
|
if (diagnostic.fileName()) {
|
55869
|
-
result += this.getLocationText(diagnostic) + ": ";
|
56006
|
+
result += this.getLocationText(diagnostic, resolvePath) + ": ";
|
55870
56007
|
}
|
55871
56008
|
|
55872
56009
|
result += diagnostic.message();
|
@@ -55876,7 +56013,7 @@ var TypeScript;
|
|
55876
56013
|
result += " " + TypeScript.getLocalizedText(TypeScript.DiagnosticCode.Additional_locations, null) + TypeScript.Environment.newLine;
|
55877
56014
|
|
55878
56015
|
for (var i = 0, n = additionalLocations.length; i < n; i++) {
|
55879
|
-
result += "\t" + this.getLocationText(additionalLocations[i]) + TypeScript.Environment.newLine;
|
56016
|
+
result += "\t" + this.getLocationText(additionalLocations[i], resolvePath) + TypeScript.Environment.newLine;
|
55880
56017
|
}
|
55881
56018
|
} else {
|
55882
56019
|
result += TypeScript.Environment.newLine;
|
@@ -62078,7 +62215,7 @@ var TypeScript;
|
|
62078
62215
|
var BatchCompiler = (function () {
|
62079
62216
|
function BatchCompiler(ioHost) {
|
62080
62217
|
this.ioHost = ioHost;
|
62081
|
-
this.compilerVersion = "1.0.
|
62218
|
+
this.compilerVersion = "1.0.1.0";
|
62082
62219
|
this.inputFiles = [];
|
62083
62220
|
this.resolvedFiles = [];
|
62084
62221
|
this.fileNameToSourceFile = new TypeScript.StringHashTable();
|
@@ -62733,12 +62870,15 @@ var TypeScript;
|
|
62733
62870
|
};
|
62734
62871
|
|
62735
62872
|
BatchCompiler.prototype.addDiagnostic = function (diagnostic) {
|
62873
|
+
var _this = this;
|
62736
62874
|
var diagnosticInfo = diagnostic.info();
|
62737
62875
|
if (diagnosticInfo.category === 1 /* Error */) {
|
62738
62876
|
this.hasErrors = true;
|
62739
62877
|
}
|
62740
62878
|
|
62741
|
-
this.ioHost.stderr.Write(TypeScript.TypeScriptCompiler.getFullDiagnosticText(diagnostic)
|
62879
|
+
this.ioHost.stderr.Write(TypeScript.TypeScriptCompiler.getFullDiagnosticText(diagnostic, function (path) {
|
62880
|
+
return _this.resolvePath(path);
|
62881
|
+
}));
|
62742
62882
|
};
|
62743
62883
|
|
62744
62884
|
BatchCompiler.prototype.tryWriteOutputFiles = function (outputFiles) {
|