-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
AttributedDI/src/AttributedDI.SourceGenerator/InterfacesGeneration/GeneratedInterfaceInfo.cs
Lines 16 to 25 in 1d8bda6
| internal sealed record GeneratedInterfaceInfo( | |
| string InterfaceName, | |
| string InterfaceNamespace, | |
| string Accessibility, | |
| ImmutableArray<string> MemberSignatures, | |
| string ClassName, | |
| string ClassNamespace, | |
| string ClassTypeParameters, | |
| int TypeParameterCount, | |
| string TypeParameterConstraints); |
The order of members can change which will cause recompilation.
Lines 89 to 92 in 1d8bda6
| var interfaces = symbol.AllInterfaces | |
| .Where(static iface => !WellKnownInterfacesRegistry.IsWellKnownInterface(iface)) | |
| .Distinct(SymbolEqualityComparer.Default) | |
| .ToList(); |
The order of interfaces is unstable, can cause recompilation if it changes.
AttributedDI/src/AttributedDI.SourceGenerator/InterfacesGeneration/InterfaceGenerationPipeline.cs
Line 99 in 1d8bda6
| foreach (var member in typeSymbol.GetMembers()) |
The order of members is unstable, therefore generated interface might change and cause unnecessary recompilation.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels