From 171efdbac46291a9250cb29b30f80a379c3cb645 Mon Sep 17 00:00:00 2001 From: Ian Johnson Date: Sun, 6 Sep 2026 09:13:58 -0400 Subject: [PATCH] Move CSharpAuthor from 2.0.0-preview1004 to 2.0.0 The API snapshot changes because CSharpAuthor's source is compiled into the analyzer. 2.0.0 adds nullable annotations on CompareTo and Equals, and adds ConversionOperatorDefinition, ConversionOperatorKind, and ClassDefinition.AddConversionOperator. Co-Authored-By: Claude Opus 5 (1M context) --- ...endencyModules.SourceGenerator.Impl.csproj | 2 +- .../DependencyModules.SourceGenerator.csproj | 2 +- ...icApiTests.SourceGeneratorApi.verified.txt | 29 ++++++++++++++----- 3 files changed, 23 insertions(+), 10 deletions(-) diff --git a/src/DependencyModules.SourceGenerator.Impl/DependencyModules.SourceGenerator.Impl.csproj b/src/DependencyModules.SourceGenerator.Impl/DependencyModules.SourceGenerator.Impl.csproj index 6a89108..68b25b7 100644 --- a/src/DependencyModules.SourceGenerator.Impl/DependencyModules.SourceGenerator.Impl.csproj +++ b/src/DependencyModules.SourceGenerator.Impl/DependencyModules.SourceGenerator.Impl.csproj @@ -65,7 +65,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive - + all build diff --git a/src/DependencyModules.SourceGenerator/DependencyModules.SourceGenerator.csproj b/src/DependencyModules.SourceGenerator/DependencyModules.SourceGenerator.csproj index 846614b..a4456dd 100644 --- a/src/DependencyModules.SourceGenerator/DependencyModules.SourceGenerator.csproj +++ b/src/DependencyModules.SourceGenerator/DependencyModules.SourceGenerator.csproj @@ -39,7 +39,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive - + all build diff --git a/tests/DependencyModules.Tests/Snapshots/PublicApiTests.SourceGeneratorApi.verified.txt b/tests/DependencyModules.Tests/Snapshots/PublicApiTests.SourceGeneratorApi.verified.txt index 821df65..53f3481 100644 --- a/tests/DependencyModules.Tests/Snapshots/PublicApiTests.SourceGeneratorApi.verified.txt +++ b/tests/DependencyModules.Tests/Snapshots/PublicApiTests.SourceGeneratorApi.verified.txt @@ -35,8 +35,8 @@ namespace CSharpAuthor public System.Collections.Generic.IReadOnlyList TypeArguments { get; } public CSharpAuthor.TypeDefinitionEnum TypeDefinitionEnum { get; } public string WrittenName { get; } - public int CompareTo(CSharpAuthor.ITypeDefinition other) { } - public override bool Equals(object obj) { } + public int CompareTo(CSharpAuthor.ITypeDefinition? other) { } + public override bool Equals(object? obj) { } public override int GetHashCode() { } public CSharpAuthor.ITypeDefinition MakeArray() { } public CSharpAuthor.ITypeDefinition MakeArray(int rank) { } @@ -125,8 +125,8 @@ namespace CSharpAuthor public System.Collections.Generic.IReadOnlyList NullableAnnotations { get; } public abstract System.Collections.Generic.IReadOnlyList TypeArguments { get; } public CSharpAuthor.TypeDefinitionEnum TypeDefinitionEnum { get; } - protected int BaseCompareTo(CSharpAuthor.ITypeDefinition other) { } - public abstract int CompareTo(CSharpAuthor.ITypeDefinition other); + protected int BaseCompareTo(CSharpAuthor.ITypeDefinition? other) { } + public abstract int CompareTo(CSharpAuthor.ITypeDefinition? other); public override bool Equals(object? obj) { } public override int GetHashCode() { } public CSharpAuthor.ITypeDefinition MakeArray() { } @@ -184,6 +184,7 @@ namespace CSharpAuthor public void AddComponent(CSharpAuthor.IOutputComponent outputComponent) { } public CSharpAuthor.ConstraintDefinition AddConstraint(string typeParameter) { } public CSharpAuthor.ConstructorDefinition AddConstructor(CSharpAuthor.IOutputComponent? baseComponent = null) { } + public CSharpAuthor.ConversionOperatorDefinition AddConversionOperator(CSharpAuthor.ConversionOperatorKind kind, CSharpAuthor.ITypeDefinition targetType, CSharpAuthor.ITypeDefinition sourceType, string parameterName = "value") { } public CSharpAuthor.EnumDefinition AddEnum(string name) { } public CSharpAuthor.EventDefinition AddEvent(CSharpAuthor.ITypeDefinition handlerType, string name) { } public CSharpAuthor.EventDefinition AddEvent(System.Type handlerType, string name) { } @@ -294,6 +295,18 @@ namespace CSharpAuthor protected override void WriteEndOfMethodSignature(CSharpAuthor.IOutputContext outputContext) { } protected override void WriteReturnType(CSharpAuthor.IOutputContext outputContext) { } } + public class ConversionOperatorDefinition : CSharpAuthor.MethodDefinition + { + public ConversionOperatorDefinition(CSharpAuthor.ConversionOperatorKind kind, CSharpAuthor.ITypeDefinition targetType) { } + public CSharpAuthor.ConversionOperatorKind Kind { get; } + public CSharpAuthor.ITypeDefinition TargetType { get; } + protected override void WriteMethodSignature(CSharpAuthor.IOutputContext outputContext) { } + } + public enum ConversionOperatorKind + { + Implicit = 0, + Explicit = 1, + } public class DeclarationStatement : CSharpAuthor.BaseOutputComponent { public DeclarationStatement(CSharpAuthor.ITypeDefinition typeDefinition, CSharpAuthor.IOutputComponent outputComponent) { } @@ -374,7 +387,7 @@ namespace CSharpAuthor public GenericTypeDefinition(CSharpAuthor.TypeDefinitionEnum classType, string ns, string name, System.Collections.Generic.IReadOnlyList closingTypes, System.Collections.Generic.IReadOnlyList? arrayRanks, bool isNullable = false, CSharpAuthor.ITypeDefinition? containingType = null) { } public override System.Collections.Generic.IEnumerable KnownNamespaces { get; } public override System.Collections.Generic.IReadOnlyList TypeArguments { get; } - public override int CompareTo(CSharpAuthor.ITypeDefinition other) { } + public override int CompareTo(CSharpAuthor.ITypeDefinition? other) { } public override CSharpAuthor.ITypeDefinition MakeArray(int rank) { } public override CSharpAuthor.ITypeDefinition MakeNullable(bool nullable = true) { } public CSharpAuthor.ITypeDefinition MakeOpenType() { } @@ -868,7 +881,7 @@ namespace CSharpAuthor public TypeDefinition(CSharpAuthor.TypeDefinitionEnum typeDefinitionEnum, string ns, string name, System.Collections.Generic.IReadOnlyList? arrayRanks, bool isNullable = false, CSharpAuthor.ITypeDefinition? containingType = null) { } public override System.Collections.Generic.IEnumerable KnownNamespaces { get; } public override System.Collections.Generic.IReadOnlyList TypeArguments { get; } - public override int CompareTo(CSharpAuthor.ITypeDefinition other) { } + public override int CompareTo(CSharpAuthor.ITypeDefinition? other) { } public override CSharpAuthor.ITypeDefinition MakeArray(int rank) { } public override CSharpAuthor.ITypeDefinition MakeNullable(bool nullable = true) { } public override string ToString() { } @@ -921,8 +934,8 @@ namespace CSharpAuthor public System.Collections.Generic.IReadOnlyList NullableAnnotations { get; } public System.Collections.Generic.IReadOnlyList TypeArguments { get; } public CSharpAuthor.TypeDefinitionEnum TypeDefinitionEnum { get; } - public int CompareTo(CSharpAuthor.ITypeDefinition other) { } - public override bool Equals(object obj) { } + public int CompareTo(CSharpAuthor.ITypeDefinition? other) { } + public override bool Equals(object? obj) { } public override int GetHashCode() { } public CSharpAuthor.ITypeDefinition MakeArray() { } public CSharpAuthor.ITypeDefinition MakeArray(int rank) { }