depinject/depinject.go
func NewServiceContainer() ServiceContainer {
	return &dependencyInjector{
		registry:  make(map[reflect.Type]interface{}),
		instances: make(map[reflect.Type]reflect.Value),
		caching:   true,
	}
}
func NewServiceContainer() ServiceContainer {
	return &dependencyInjector{
		registry:  make(map[reflect.Type]interface{}),
		instances: make(map[reflect.Type]reflect.Value),
		caching:   true,
	}
}
// NewServiceContainer returns a new ServiceContainer