diff --git a/DomainModeling.Generator/DomainModeling.Generator.csproj b/DomainModeling.Generator/DomainModeling.Generator.csproj index 612a86e..8c90020 100644 --- a/DomainModeling.Generator/DomainModeling.Generator.csproj +++ b/DomainModeling.Generator/DomainModeling.Generator.csproj @@ -22,11 +22,11 @@ - + runtime; build; native; contentfiles; analyzers; buildtransitive all - + diff --git a/DomainModeling.Generator/TypeSymbolExtensions.cs b/DomainModeling.Generator/TypeSymbolExtensions.cs index c0784df..ab255e8 100644 --- a/DomainModeling.Generator/TypeSymbolExtensions.cs +++ b/DomainModeling.Generator/TypeSymbolExtensions.cs @@ -10,10 +10,7 @@ internal static class TypeSymbolExtensions { private const string ComparisonsNamespace = "Architect.DomainModeling.Comparisons"; - private static IReadOnlyCollection ConversionOperatorNames { get; } = new[] - { - "op_Implicit", "op_Explicit", - }; + private static IReadOnlyCollection ConversionOperatorNames { get; } = ["op_Implicit", "op_Explicit",]; /// /// Returns whether the is of type . @@ -391,7 +388,7 @@ public static ITypeSymbol ExtractNonArrayElementType(this IArrayTypeSymbol array /// /// Returns whether the or a base type has an override of more specific than 's implementation. /// - public static bool HasEqualsOverride(this ITypeSymbol typeSymbol, bool falseForStructs = false) + public static bool HasEqualsOverride(this ITypeSymbol typeSymbol) { // Technically this could match an overridden "new" Equals defined by a base type, but that is a nonsense scenario var result = typeSymbol.GetMembers(nameof(Object.Equals)).OfType().Any(method => method.IsOverride && !method.IsStatic && @@ -623,7 +620,7 @@ public static string CreateComparisonExpression(this ITypeSymbol typeSymbol, str /// The name of the member/parameter/... to instantiate an instance for. May be used as the dummy string value if applicable. public static string CreateDummyInstantiationExpression(this ITypeSymbol typeSymbol, string symbolName) { - return typeSymbol.CreateDummyInstantiationExpression(symbolName, Array.Empty(), _ => null!); + return typeSymbol.CreateDummyInstantiationExpression(symbolName, [], _ => null!); } /// diff --git a/DomainModeling.Generator/TypeSyntaxExtensions.cs b/DomainModeling.Generator/TypeSyntaxExtensions.cs index b7a5c72..e284b81 100644 --- a/DomainModeling.Generator/TypeSyntaxExtensions.cs +++ b/DomainModeling.Generator/TypeSyntaxExtensions.cs @@ -1,50 +1,50 @@ -using Microsoft.CodeAnalysis.CSharp.Syntax; - -namespace Architect.DomainModeling.Generator; - -/// -/// Provides extensions on . -/// -internal static class TypeSyntaxExtensions +using Microsoft.CodeAnalysis.CSharp.Syntax; + +namespace Architect.DomainModeling.Generator; + +/// +/// Provides extensions on . +/// +internal static class TypeSyntaxExtensions { /// /// Returns whether the given has the given arity (type parameter count) and (unqualified) name. /// /// Pass null to accept any arity. - public static bool HasArityAndName(this TypeSyntax typeSyntax, int? arity, string unqualifiedName) + public static bool HasArityAndName(this TypeSyntax typeSyntax, int? arity, string unqualifiedName) { return TryGetArityAndUnqualifiedName(typeSyntax, out var actualArity, out var actualUnqualifiedName) && (arity is null || actualArity == arity) && - actualUnqualifiedName == unqualifiedName; + actualUnqualifiedName == unqualifiedName; } /// /// Returns whether the given has the given arity (type parameter count) and (unqualified) name suffix. /// /// Pass null to accept any arity. - public static bool HasArityAndNameSuffix(this TypeSyntax typeSyntax, int? arity, string unqualifiedName) + public static bool HasArityAndNameSuffix(this TypeSyntax typeSyntax, int? arity, string unqualifiedName) { return TryGetArityAndUnqualifiedName(typeSyntax, out var actualArity, out var actualUnqualifiedName) && (arity is null || actualArity == arity) && - actualUnqualifiedName.EndsWith(unqualifiedName); + actualUnqualifiedName.EndsWith(unqualifiedName); } private static bool TryGetArityAndUnqualifiedName(TypeSyntax typeSyntax, out int arity, out string unqualifiedName) - { - if (typeSyntax is SimpleNameSyntax simpleName) - { - arity = simpleName.Arity; - unqualifiedName = simpleName.Identifier.ValueText; - } - else if (typeSyntax is QualifiedNameSyntax qualifiedName) - { - arity = qualifiedName.Arity; - unqualifiedName = qualifiedName.Right.Identifier.ValueText; - } - else if (typeSyntax is AliasQualifiedNameSyntax aliasQualifiedName) - { - arity = aliasQualifiedName.Arity; - unqualifiedName = aliasQualifiedName.Name.Identifier.ValueText; + { + if (typeSyntax is SimpleNameSyntax simpleName) + { + arity = simpleName.Arity; + unqualifiedName = simpleName.Identifier.ValueText; + } + else if (typeSyntax is QualifiedNameSyntax qualifiedName) + { + arity = qualifiedName.Arity; + unqualifiedName = qualifiedName.Right.Identifier.ValueText; + } + else if (typeSyntax is AliasQualifiedNameSyntax aliasQualifiedName) + { + arity = aliasQualifiedName.Arity; + unqualifiedName = aliasQualifiedName.Name.Identifier.ValueText; } else { @@ -68,5 +68,5 @@ private static bool TryGetArityAndUnqualifiedName(TypeSyntax typeSyntax, out int AliasQualifiedNameSyntax aliasQualifiedName => aliasQualifiedName.Name.Identifier.ValueText, _ => null, }; - } -} + } +} diff --git a/DomainModeling.Tests/DomainModeling.Tests.csproj b/DomainModeling.Tests/DomainModeling.Tests.csproj index fc9e542..12ff044 100644 --- a/DomainModeling.Tests/DomainModeling.Tests.csproj +++ b/DomainModeling.Tests/DomainModeling.Tests.csproj @@ -22,11 +22,11 @@ - - - - - + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/DomainModeling/Configuration/IDomainEventConfigurator.cs b/DomainModeling/Configuration/IDomainEventConfigurator.cs index 3a64771..a54a783 100644 --- a/DomainModeling/Configuration/IDomainEventConfigurator.cs +++ b/DomainModeling/Configuration/IDomainEventConfigurator.cs @@ -18,6 +18,6 @@ void ConfigureDomainEvent< public readonly struct Args { - public bool HasDefaultConstructor { get; init; } + public readonly bool HasDefaultConstructor { get; init; } } } diff --git a/DomainModeling/DomainModeling.csproj b/DomainModeling/DomainModeling.csproj index 76bf847..ebf8110 100644 --- a/DomainModeling/DomainModeling.csproj +++ b/DomainModeling/DomainModeling.csproj @@ -17,7 +17,7 @@ - 3.0.2 + 3.0.3 A complete Domain-Driven Design (DDD) toolset for implementing domain models, including base types and source generators. @@ -25,6 +25,10 @@ https://github.com/TheArchitectDev/Architect.DomainModeling Release notes: +3.0.3: + +- Enhancement: Upgraded package versions. + 3.0.2: - Bug fix.