-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Extensions: allow more CREFs #80114
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extensions: allow more CREFs #80114
Conversation
2595751
to
8ec786e
Compare
foreach (var nested in container.GetTypeMembers()) | ||
IEnumerable<NamedTypeSymbol> candidateTypes = containerOpt switch | ||
{ | ||
null => enumerateCandidateTypes(containerOpt, syntax, diagnostics), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we pass containerOpt
when we know at this point that it's always null
? #Resolved
{ | ||
CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); | ||
LookupResult result = LookupResult.GetInstance(); | ||
this.LookupSymbolsOrMembersInternal( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LookupResult result = LookupResult.GetInstance(); | ||
this.LookupSymbolsOrMembersInternal( | ||
result, | ||
container, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
foreach (var nested in container.GetTypeMembers()) | ||
IEnumerable<NamedTypeSymbol> candidateTypes = containerOpt switch | ||
{ | ||
null => enumerateCandidateTypes(containerOpt, syntax, diagnostics), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@@ -63,6 +63,7 @@ private MultiDictionary<string, TypeParameterSymbol> CreateTypeParameterMap() | |||
case SyntaxKind.IndexerMemberCref: | |||
case SyntaxKind.OperatorMemberCref: | |||
case SyntaxKind.ConversionOperatorMemberCref: | |||
case SyntaxKind.ExtensionMemberCref: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this change related to "Addresses part of #78967 ("We want unqualified CREF to work within the context of enclosing static type cref="extension(int).M"
")"? If not, consider adjusting PR description accordingly. #Closed
@@ -63,6 +63,7 @@ private MultiDictionary<string, TypeParameterSymbol> CreateTypeParameterMap() | |||
case SyntaxKind.IndexerMemberCref: | |||
case SyntaxKind.OperatorMemberCref: | |||
case SyntaxKind.ConversionOperatorMemberCref: | |||
case SyntaxKind.ExtensionMemberCref: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added Cref_66
Done with review pass (commit 1) #Closed |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM (commit 2)
Addresses part of #78967 ("We want unqualified CREF to work within the context of enclosing static type cref=
"extension(int).M"
")Relates to test plan #76130