From 2eb51ab874ac576e7b10d3ec7c09b074e793620d Mon Sep 17 00:00:00 2001 From: Mohamed Hegazy Date: Wed, 8 Oct 2014 23:28:17 -0700 Subject: [PATCH] Use getRootSymbols for all union property needs --- src/compiler/checker.ts | 5 ----- src/compiler/types.ts | 2 -- src/services/services.ts | 8 ++++---- 3 files changed, 4 insertions(+), 11 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 7138cd9588a..808f7e3b849 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -93,7 +93,6 @@ module ts { getFullyQualifiedName: getFullyQualifiedName, getResolvedSignature: getResolvedSignature, getEnumMemberValue: getEnumMemberValue, - getUnionTypesOfUnionProperty: getUnionTypesOfUnionProperty }; var undefinedSymbol = createSymbol(SymbolFlags.Property | SymbolFlags.Transient, "undefined"); @@ -1751,10 +1750,6 @@ module ts { return links.type; } - function getUnionTypesOfUnionProperty(symbol: Symbol): Type[] { - return (symbol.flags & SymbolFlags.UnionProperty) ? getSymbolLinks(symbol).unionType.types : undefined; - } - function getTypeOfSymbol(symbol: Symbol): Type { if (symbol.flags & (SymbolFlags.Variable | SymbolFlags.Property)) { return getTypeOfVariableOrParameterOrProperty(symbol); diff --git a/src/compiler/types.ts b/src/compiler/types.ts index 0aa25e2efeb..e314466cf8c 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -657,8 +657,6 @@ module ts { getContextualType(node: Node): Type; getResolvedSignature(node: CallExpression, candidatesOutArray?: Signature[]): Signature; - getUnionTypesOfUnionProperty(symbol: Symbol): Type[]; - // Returns the constant value of this enum member, or 'undefined' if the enum member has a // computed value. getEnumMemberValue(node: EnumMember): number; diff --git a/src/services/services.ts b/src/services/services.ts index 68c402b51ce..8ae8ef36f36 100644 --- a/src/services/services.ts +++ b/src/services/services.ts @@ -2619,8 +2619,8 @@ module ts { var result: DefinitionInfo[] = []; if (symbol.flags & SymbolFlags.UnionProperty) { - forEach(typeInfoResolver.getUnionTypesOfUnionProperty(symbol), t => { - getDefinitionFromSymbol(typeInfoResolver.getPropertyOfType(t, symbol.name), node, result); + forEach(typeInfoResolver.getRootSymbols(symbol), s => { + getDefinitionFromSymbol(s, node, result); }); } else { @@ -3013,8 +3013,8 @@ module ts { // Handel union properties if (symbol.flags & SymbolFlags.UnionProperty) { declarations = []; - forEach(typeInfoResolver.getUnionTypesOfUnionProperty(symbol), t => { - declarations.push.apply(declarations, t.getProperty(symbol.name).declarations); + forEach(typeInfoResolver.getRootSymbols(symbol), s => { + declarations.push.apply(declarations, s.declarations); }); }