Files
TheDeclineOfWarriors/Packages/jp.hadashikick.vcontainer/Runtime/Internal/InstanceRegistrationBuilder.cs
T
2026-04-07 04:51:37 +07:00

23 lines
737 B
C#

using System.Runtime.CompilerServices;
namespace VContainer.Internal
{
sealed class InstanceRegistrationBuilder : RegistrationBuilder
{
readonly object implementationInstance;
public InstanceRegistrationBuilder(object implementationInstance)
: base(implementationInstance.GetType(), Lifetime.Singleton)
{
this.implementationInstance = implementationInstance;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override Registration Build()
{
var spawner = new ExistingInstanceProvider(implementationInstance);
return new Registration(ImplementationType, Lifetime, InterfaceTypes, spawner, Key);
}
}
}