@@ -2613,30 +2613,31 @@ module ts {
2613
2613
2614
2614
function getSymbolDisplayPartsofSymbol ( symbol : Symbol , sourceFile : SourceFile , enclosingDeclaration : Node , typeResolver : TypeChecker ) : SymbolDisplayPart [ ] {
2615
2615
var displayParts : SymbolDisplayPart [ ] = [ ] ;
2616
- if ( symbol . flags & SymbolFlags . Class ) {
2616
+ var symbolFlags = typeResolver . getTargetSymbol ( symbol ) . flags ;
2617
+ if ( symbolFlags & SymbolFlags . Class ) {
2617
2618
displayParts . push ( keywordPart ( SyntaxKind . ClassKeyword ) ) ;
2618
2619
displayParts . push ( spacePart ( ) ) ;
2619
2620
displayParts . push . apply ( displayParts , symbolToDisplayParts ( typeResolver , symbol , sourceFile ) ) ;
2620
2621
}
2621
- if ( symbol . flags & SymbolFlags . Interface ) {
2622
+ if ( symbolFlags & SymbolFlags . Interface ) {
2622
2623
addNewLineIfDisplayPartsExist ( ) ;
2623
2624
displayParts . push ( keywordPart ( SyntaxKind . InterfaceKeyword ) ) ;
2624
2625
displayParts . push ( spacePart ( ) ) ;
2625
2626
displayParts . push . apply ( displayParts , symbolToDisplayParts ( typeResolver , symbol , sourceFile ) ) ;
2626
2627
}
2627
- if ( symbol . flags & SymbolFlags . Enum ) {
2628
+ if ( symbolFlags & SymbolFlags . Enum ) {
2628
2629
addNewLineIfDisplayPartsExist ( ) ;
2629
2630
displayParts . push ( keywordPart ( SyntaxKind . EnumKeyword ) ) ;
2630
2631
displayParts . push ( spacePart ( ) ) ;
2631
2632
displayParts . push . apply ( displayParts , symbolToDisplayParts ( typeResolver , symbol , sourceFile ) ) ;
2632
2633
}
2633
- if ( symbol . flags & SymbolFlags . Module ) {
2634
+ if ( symbolFlags & SymbolFlags . Module ) {
2634
2635
addNewLineIfDisplayPartsExist ( ) ;
2635
2636
displayParts . push ( keywordPart ( SyntaxKind . ModuleKeyword ) ) ;
2636
2637
displayParts . push ( spacePart ( ) ) ;
2637
2638
displayParts . push . apply ( displayParts , symbolToDisplayParts ( typeResolver , symbol , sourceFile ) ) ;
2638
2639
}
2639
- if ( symbol . flags & SymbolFlags . TypeParameter ) {
2640
+ if ( symbolFlags & SymbolFlags . TypeParameter ) {
2640
2641
addNewLineIfDisplayPartsExist ( ) ;
2641
2642
displayParts . push ( punctuationPart ( SyntaxKind . OpenParenToken ) ) ;
2642
2643
displayParts . push ( textPart ( "type parameter" ) ) ;
@@ -2647,37 +2648,37 @@ module ts {
2647
2648
else {
2648
2649
//public static string FormatSymbolName(string name, string fullSymbolName, string kind, out bool useTypeName)
2649
2650
var text : string ;
2650
- if ( symbol . flags & SymbolFlags . Property ) {
2651
+ if ( symbolFlags & SymbolFlags . Property ) {
2651
2652
text = "property" ;
2652
2653
}
2653
- else if ( symbol . flags & SymbolFlags . EnumMember ) {
2654
+ else if ( symbolFlags & SymbolFlags . EnumMember ) {
2654
2655
text = "enum member" ;
2655
2656
}
2656
- else if ( symbol . flags & SymbolFlags . Function ) {
2657
+ else if ( symbolFlags & SymbolFlags . Function ) {
2657
2658
text = "function" ;
2658
2659
}
2659
- else if ( symbol . flags & SymbolFlags . Variable ) {
2660
+ else if ( symbolFlags & SymbolFlags . Variable ) {
2660
2661
if ( ts . forEach ( symbol . declarations , declaration => declaration . kind === SyntaxKind . Parameter ) ) {
2661
2662
text = "parameter" ;
2662
2663
}
2663
2664
else {
2664
2665
text = "var" ;
2665
2666
}
2666
2667
}
2667
- else if ( symbol . flags & SymbolFlags . Method ) {
2668
+ else if ( symbolFlags & SymbolFlags . Method ) {
2668
2669
text = "method" ;
2669
2670
}
2670
- else if ( symbol . flags & SymbolFlags . Constructor ) {
2671
+ else if ( symbolFlags & SymbolFlags . Constructor ) {
2671
2672
text = "constructor" ;
2672
2673
}
2673
- else if ( symbol . flags & SymbolFlags . GetAccessor ) {
2674
+ else if ( symbolFlags & SymbolFlags . GetAccessor ) {
2674
2675
text = "getter" ;
2675
2676
}
2676
- else if ( symbol . flags & SymbolFlags . SetAccessor ) {
2677
+ else if ( symbolFlags & SymbolFlags . SetAccessor ) {
2677
2678
text = "setter" ;
2678
2679
}
2679
2680
2680
- if ( text || symbol . flags & SymbolFlags . Signature ) {
2681
+ if ( text || symbolFlags & SymbolFlags . Signature ) {
2681
2682
addNewLineIfDisplayPartsExist ( ) ;
2682
2683
if ( text ) {
2683
2684
displayParts . push ( punctuationPart ( SyntaxKind . OpenParenToken ) ) ;
@@ -2689,23 +2690,23 @@ module ts {
2689
2690
}
2690
2691
2691
2692
var type = typeResolver . getTypeOfSymbol ( symbol ) ;
2692
- if ( symbol . flags & SymbolFlags . Property ||
2693
- symbol . flags & SymbolFlags . Variable ) {
2693
+ if ( symbolFlags & SymbolFlags . Property ||
2694
+ symbolFlags & SymbolFlags . Variable ) {
2694
2695
if ( type ) {
2695
2696
displayParts . push ( punctuationPart ( SyntaxKind . ColonToken ) ) ;
2696
2697
displayParts . push ( spacePart ( ) ) ;
2697
2698
displayParts . push . apply ( displayParts , typeToDisplayParts ( typeResolver , type , enclosingDeclaration , TypeFormatFlags . NoTruncation ) ) ;
2698
2699
}
2699
2700
}
2700
- else if ( symbol . flags & SymbolFlags . Function ||
2701
- symbol . flags & SymbolFlags . Method ||
2702
- symbol . flags & SymbolFlags . Signature ||
2703
- symbol . flags & SymbolFlags . Accessor ) {
2701
+ else if ( symbolFlags & SymbolFlags . Function ||
2702
+ symbolFlags & SymbolFlags . Method ||
2703
+ symbolFlags & SymbolFlags . Signature ||
2704
+ symbolFlags & SymbolFlags . Accessor ) {
2704
2705
if ( type ) {
2705
2706
displayParts . push . apply ( displayParts , typeToDisplayParts ( typeResolver , type , enclosingDeclaration , TypeFormatFlags . NoTruncation | TypeFormatFlags . NoArrowStyleTopLevelSignature ) ) ;
2706
2707
}
2707
2708
}
2708
- else if ( symbol . flags & SymbolFlags . EnumMember ) {
2709
+ else if ( symbolFlags & SymbolFlags . EnumMember ) {
2709
2710
var declaration = symbol . declarations [ 0 ] ;
2710
2711
if ( declaration . kind === SyntaxKind . EnumMember ) {
2711
2712
var constantValue = typeResolver . getEnumMemberValue ( < EnumMember > declaration ) ;
0 commit comments