diff --git a/lua-di/DependencyInjectionModule.lua b/lua-di/DependencyInjectionModule.lua index c49cba1..1a7525b 100644 --- a/lua-di/DependencyInjectionModule.lua +++ b/lua-di/DependencyInjectionModule.lua @@ -55,7 +55,7 @@ local DependencyInjectionModule = function(configure) end if autoInjectEnabled then - local moduleName = argumentName:gsub("__", ".") + local moduleName = argumentName:gsub("___", "-"):gsub("__", ".") return self.getInstance(moduleName) end @@ -170,6 +170,11 @@ local DependencyInjectionModule = function(configure) return singletons[moduleName].instance end + if instance then + -- provider instance + return instance + end + local moduleHandle = dynamicRequire(moduleName) local moduleConstructor = getConstructor(moduleName, moduleHandle)