Skip to content

Commit 4de5fd4

Browse files
committed
Switched usage of ISymbol.ConstructedFrom to OriginalDefinition
1 parent bfd21a2 commit 4de5fd4

File tree

1 file changed

+3
-7
lines changed

1 file changed

+3
-7
lines changed

Microsoft.Toolkit.Mvvm.SourceGenerators/Messaging/IMessengerRegisterAllGenerator.cs

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,7 @@ from classDeclaration in syntaxTree.GetRoot().DescendantNodes().OfType<ClassDecl
4242
let classSymbol = semanticModel.GetDeclaredSymbol(classDeclaration)
4343
where
4444
classSymbol is { IsGenericType: false } &&
45-
classSymbol.AllInterfaces.Any(i =>
46-
i.IsGenericType &&
47-
SymbolEqualityComparer.Default.Equals(i.ConstructedFrom, iRecipientSymbol))
45+
classSymbol.AllInterfaces.Any(i => SymbolEqualityComparer.Default.Equals(i.OriginalDefinition, iRecipientSymbol))
4846
select classSymbol;
4947

5048
// Prepare the attributes to add to the first class declaration
@@ -171,8 +169,7 @@ private static IEnumerable<StatementSyntax> EnumerateRegistrationStatements(INam
171169
{
172170
foreach (var interfaceSymbol in classSymbol.AllInterfaces)
173171
{
174-
if (!interfaceSymbol.IsGenericType ||
175-
!SymbolEqualityComparer.Default.Equals(interfaceSymbol.ConstructedFrom, iRecipientSymbol))
172+
if (!SymbolEqualityComparer.Default.Equals(interfaceSymbol.OriginalDefinition, iRecipientSymbol))
176173
{
177174
continue;
178175
}
@@ -206,8 +203,7 @@ private static IEnumerable<StatementSyntax> EnumerateRegistrationStatementsWithT
206203
{
207204
foreach (var interfaceSymbol in classSymbol.AllInterfaces)
208205
{
209-
if (!interfaceSymbol.IsGenericType ||
210-
!SymbolEqualityComparer.Default.Equals(interfaceSymbol.ConstructedFrom, iRecipientSymbol))
206+
if (!SymbolEqualityComparer.Default.Equals(interfaceSymbol.OriginalDefinition, iRecipientSymbol))
211207
{
212208
continue;
213209
}

0 commit comments

Comments
 (0)