Stashbox by Peter Csajtai

<PackageReference Include="Stashbox" Version="5.2.0" />

 FluentCompositor<TService, TImplementation>

class FluentCompositor<TService, TImplementation> : FluentServiceConfigurator<TService, TImplementation, FluentCompositor<TService, TImplementation>> where TImplementation : TService
using System; using System.Runtime.CompilerServices; namespace Stashbox.Registration.Fluent { [System.Runtime.CompilerServices.NullableContext(1)] [System.Runtime.CompilerServices.Nullable(new byte[] { 0, 1, 1, 1, 1, 1 })] internal class FluentCompositor<TService, TImplementation> : FluentServiceConfigurator<TService, TImplementation, FluentCompositor<TService, TImplementation>> where TService : class where TImplementation : class, TService { internal FluentCompositor(Type serviceType, Type implementationType, RegistrationContext registrationContext) : base(serviceType, implementationType, registrationContext) { } } }