@@ -194,6 +194,15 @@ public override void VisitClassDeclaration(ClassDeclarationSyntax node)
194194
195195 switch ( kind )
196196 {
197+ case SyntaxKind . TypeParameterList :
198+ {
199+ SyntaxTriviaList _syntaxTrivias = asNode . GetTrailingTrivia ( ) ;
200+ for ( int _i = 0 ; _i < _syntaxTrivias . Count ; _i ++ )
201+ {
202+ VisitTrivia ( _syntaxTrivias [ _i ] ) ;
203+ }
204+ break ;
205+ }
197206 case SyntaxKind . BaseList :
198207 case SyntaxKind . FieldDeclaration :
199208 case SyntaxKind . ConstructorDeclaration :
@@ -1715,7 +1724,11 @@ where e.IsKind(SyntaxKind.IdentifierToken)
17151724
17161725 if ( iSymbol . ContainingNamespace . ToString ( ) . Contains ( _NameSpaceStr ) )
17171726 {
1718- JSSB . Append ( $ " { syntaxNode . ToString ( ) } ") ;
1727+ if ( syntaxNode . IsKind ( SyntaxKind . GenericName ) )
1728+ {
1729+ JSSB . Append ( $ " { ( syntaxNode as GenericNameSyntax ) . Identifier . ToString ( ) } ") ;
1730+ } else
1731+ JSSB . Append ( $ " { syntaxNode . ToString ( ) } ") ;
17191732 break ;
17201733 }
17211734
@@ -1778,6 +1791,46 @@ public override void VisitBaseExpression(BaseExpressionSyntax node)
17781791 }
17791792 }
17801793
1794+ public override void VisitTypeArgumentList ( TypeArgumentListSyntax node )
1795+ {
1796+ ChildSyntaxList nodesAndTokens = node . ChildNodesAndTokens ( ) ;
1797+
1798+ for ( int i = 0 ; i < nodesAndTokens . Count ; i ++ )
1799+ {
1800+ SyntaxNode ? asNode = nodesAndTokens [ i ] . AsNode ( ) ;
1801+
1802+ if ( asNode != null )
1803+ {
1804+ SyntaxKind kind = asNode . Kind ( ) ;
1805+
1806+ switch ( kind )
1807+ {
1808+ case SyntaxKind . PredefinedType :
1809+ case SyntaxKind . IdentifierName :
1810+ break ;
1811+ default :
1812+ SM . Log ( $ "asNode : { kind } ") ;
1813+ break ;
1814+ }
1815+ }
1816+ else
1817+ {
1818+ SyntaxToken asToken = nodesAndTokens [ i ] . AsToken ( ) ;
1819+ SyntaxKind kind = asToken . Kind ( ) ;
1820+
1821+ switch ( kind )
1822+ {
1823+ case SyntaxKind . GreaterThanToken :
1824+ case SyntaxKind . LessThanToken :
1825+ break ;
1826+ default :
1827+ SM . Log ( $ "asToken : { kind } ") ;
1828+ break ;
1829+ }
1830+ }
1831+ }
1832+ }
1833+
17811834 public override void VisitGenericName ( GenericNameSyntax node )
17821835 {
17831836 ChildSyntaxList nodesAndTokens = node . ChildNodesAndTokens ( ) ;
@@ -1794,6 +1847,7 @@ public override void VisitGenericName(GenericNameSyntax node)
17941847 {
17951848 case SyntaxKind . TypeArgumentList :
17961849 {
1850+ VisitTypeArgumentList ( asNode as TypeArgumentListSyntax ) ;
17971851 break ;
17981852 }
17991853 default :
@@ -1976,6 +2030,13 @@ public bool IdentifierToken(SyntaxNode node)
19762030 where e . IsKind ( SyntaxKind . IdentifierName )
19772031 select e ;
19782032
2033+ if ( ! _all . Any ( ) )
2034+ {
2035+ _all = from e in node . Parent . ChildNodes ( )
2036+ where e . IsKind ( SyntaxKind . GenericName )
2037+ select e ;
2038+ }
2039+
19792040 SymbolInfo _symbolInfo = CSTOJS . Model . GetSymbolInfo ( _all . First ( ) ) ;
19802041 ISymbol ? _iSymbol = null ;
19812042
@@ -2163,7 +2224,7 @@ where e.IsKind(SyntaxKind.IdentifierToken)
21632224 }
21642225 SM . Log ( "WARNING! Diagnostics ends ---" ) ;
21652226 }
2166- SM . Log ( $ "ERROR ! !-{ node } -! By reaching this means, a name did not convert to JS. CHECK FOR UPPERCASE CHARACTERS IN NAMES IN THE JS FILE!") ;
2227+ SM . Log ( $ "WARNING ! !-{ node } -! By reaching this means, a name did not convert to JS. CHECK FOR UPPERCASE CHARACTERS IN NAMES IN THE JS FILE!") ;
21672228
21682229 //base.VisitIdentifierName(node);
21692230 return false ;
0 commit comments