depinject/depinject.go
func (di *dependencyInjector) Create(avar interface{}) interface{} {
	varType := reflect.TypeOf(avar)

	if di.caching {
		return di.cachedCreateFromType(varType).Interface()
	} else {
		return di.CreateFromType(varType).Interface()
	}
}
func (di *dependencyInjector) Create(avar interface{}) interface{} {
	varType := reflect.TypeOf(avar)

	if di.caching {
		return di.cachedCreateFromType(varType).Interface()
	} else {
		return di.CreateFromType(varType).Interface()
	}
}
// Create creates an instance of the type of the given parameter