0.9.9 - another generic fix

This commit is contained in:
Adam Hathcock
2024-09-03 09:57:22 +01:00
parent f5d6ce607a
commit 1341c0df6c
4 changed files with 10 additions and 15 deletions
@@ -379,4 +379,7 @@ internal class MethodsTestService : IMethodsTestService
[GenerateAutoInterface] [GenerateAutoInterface]
internal class MethodsTestServiceGeneric<T> : IMethodsTestServiceGeneric<T> internal class MethodsTestServiceGeneric<T> : IMethodsTestServiceGeneric<T>
where T : class { } where T : class
{
public T? ResolveInstance(string strongName) => throw new NotImplementedException();
}
@@ -230,15 +230,11 @@ public class AutoInterfaceGenerator : ISourceGenerator
continue; continue;
} }
GenerateInterfaceMemberDefinition(writer, implTypeSymbol, member); GenerateInterfaceMemberDefinition(writer, member);
} }
} }
private static void GenerateInterfaceMemberDefinition( private static void GenerateInterfaceMemberDefinition(TextWriter writer, ISymbol member)
TextWriter writer,
INamedTypeSymbol owner,
ISymbol member
)
{ {
switch (member) switch (member)
{ {
@@ -246,7 +242,7 @@ public class AutoInterfaceGenerator : ISourceGenerator
GeneratePropertyDefinition(writer, propertySymbol); GeneratePropertyDefinition(writer, propertySymbol);
break; break;
case IMethodSymbol methodSymbol: case IMethodSymbol methodSymbol:
GenerateMethodDefinition(writer, owner, methodSymbol); GenerateMethodDefinition(writer, methodSymbol);
break; break;
} }
} }
@@ -343,11 +339,7 @@ public class AutoInterfaceGenerator : ISourceGenerator
writer.WriteLine("}"); writer.WriteLine("}");
} }
private static void GenerateMethodDefinition( private static void GenerateMethodDefinition(TextWriter writer, IMethodSymbol methodSymbol)
TextWriter writer,
INamedTypeSymbol owner,
IMethodSymbol methodSymbol
)
{ {
if (methodSymbol.MethodKind != MethodKind.Ordinary || methodSymbol.IsStatic) if (methodSymbol.MethodKind != MethodKind.Ordinary || methodSymbol.IsStatic)
{ {
@@ -3,7 +3,7 @@
<TargetFramework>netstandard2.0</TargetFramework> <TargetFramework>netstandard2.0</TargetFramework>
<LangVersion>Latest</LangVersion> <LangVersion>Latest</LangVersion>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
<PackageVersion>0.9.8</PackageVersion> <PackageVersion>0.9.9</PackageVersion>
<developmentDependency>true</developmentDependency> <developmentDependency>true</developmentDependency>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild> <GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<IncludeBuildOutput>false</IncludeBuildOutput> <IncludeBuildOutput>false</IncludeBuildOutput>
@@ -12,7 +12,7 @@ internal static class SymbolExtensions
{ {
if (typeSymbol is ITypeParameterSymbol t) if (typeSymbol is ITypeParameterSymbol t)
{ {
return t.Name; return t.ToString();
} }
if (typeSymbol.SpecialType != SpecialType.None) if (typeSymbol.SpecialType != SpecialType.None)