| 123456789101112131415161718192021 | using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace OpenSEMI.Core.Container{    public interface IContainer : IServiceProvider    {        void Register<TService, TImplementation>() where TImplementation : TService;        void Register<TService, TImplementation>(bool singleton) where TImplementation : TService;        void Register<TService>(Type implementation, bool singleton);        void Register<TService>(Type implementation, Action<TService> callback, bool singleton);        void Register(Type service, Type implementation, bool singleton);        void Register<TService>(TService instance);        T Resolve<T>();        bool IsRegistered<T>();    }}
 |