Stashbox by Peter Csajtai

<PackageReference Include="Stashbox" Version="3.1.0-preview-534" />

 IServiceRegistration

public interface IServiceRegistration
Represents a service registration.
bool HasCondition { get; }

True if the registration contains any condition, otherwise false.

bool HasScopeName { get; }

True if the registration is restricted to a named scope.

The implementation type.

The TypeInfo of the implementation type.

bool IsDecorator { get; }

True if the registration is a decorator.

True if the registration can used by an unnamed resolution request.

The object builder used to create the instantiation expression for this registration.

The registration context.

int RegistrationId { get; }

The registration number.

object RegistrationName { get; }

The registration id.

bool ShouldHandleDisposal { get; }

True if the registration contains a disposable service which should be tracked.

bool CanInjectIntoNamedScope(IEnumerable<object> scopeNames)

Checks that the registration can be injected into a named scope.

IServiceRegistration Clone(Type implementationType, IObjectBuilder objectBuilder)

Clones the registration with new underlying type.

Expression GetExpression(IContainerContext containerContext, ResolutionContext resolutionContext, Type resolveType)

Creates an expression for creating the resolved instance.

Checks whether the registration can be used for a current resolution.

void Replaces(IServiceRegistration serviceRegistration)

Indicates that the current registration replaces another one, it copies the necessary information from the original.