1313 /// </summary>
1414 internal static class GetX
1515 {
16- /// <summary>
17- /// Check if <paramref name="invocation"/> is a call to Type.GetNestedType.
18- /// </summary>
19- internal static bool TryMatchGetNestedType ( InvocationExpressionSyntax invocation , SemanticModel semanticModel , CancellationToken cancellationToken , out ReflectedMember member , out Name name , out Flags flags )
20- {
21- return TryMatchGetX ( invocation , KnownSymbol . Type . GetNestedType , semanticModel , cancellationToken , out member , out name , out flags ) ;
22- }
23-
2416 internal static InvocationExpressionSyntax ? FindInvocation ( ExpressionSyntax candidate , SemanticModel semanticModel , CancellationToken cancellationToken )
2517 {
2618 return candidate switch
@@ -40,36 +32,5 @@ when semanticModel.TryGetSymbol(identifierName, cancellationToken, out ILocalSym
4032 _ => null ,
4133 } ;
4234 }
43-
44- /// <summary>
45- /// Handles GetField, GetEvent, GetMember, GetMethod...
46- /// </summary>
47- private static bool TryMatchGetX ( InvocationExpressionSyntax invocation , QualifiedMethod getXMethod , SemanticModel semanticModel , CancellationToken cancellationToken , out ReflectedMember member , out Name name , out Flags flags )
48- {
49- if ( invocation . TryGetTarget ( getXMethod , semanticModel , cancellationToken , out var getX ) )
50- {
51- if ( ReflectedMember . TryGetType ( invocation , semanticModel , cancellationToken , out var type , out var typeSource ) &&
52- Name . TryCreate ( invocation , getX , semanticModel , cancellationToken , out name ) &&
53- Flags . TryCreate ( invocation , getX , semanticModel , cancellationToken , out flags ) &&
54- ReflectedMember . TryCreate ( getX , invocation , type , typeSource , name , flags . Effective , Types . Any , semanticModel . Compilation , out member ) )
55- {
56- return true ;
57- }
58-
59- if ( getXMethod . Name != "GetNestedType" &&
60- Flags . TryCreate ( invocation , getX , semanticModel , cancellationToken , out flags ) &&
61- flags . AreInSufficient )
62- {
63- _ = Name . TryCreate ( invocation , getX , semanticModel , cancellationToken , out name ) ;
64- member = new ReflectedMember ( type , typeSource , null , getX , invocation , FilterMatch . InSufficientFlags ) ;
65- return true ;
66- }
67- }
68-
69- member = default ;
70- name = default ;
71- flags = default ;
72- return false ;
73- }
7435 }
7536}
0 commit comments