diff --git a/include/Nazara/Lua/LuaInstance.hpp b/include/Nazara/Lua/LuaInstance.hpp index 974cb9579..34a09d11a 100644 --- a/include/Nazara/Lua/LuaInstance.hpp +++ b/include/Nazara/Lua/LuaInstance.hpp @@ -123,6 +123,7 @@ namespace Nz void Pop(unsigned int n = 1U) const; template int Push(T arg) const; + template int Push(T firstArg, T2 secondArg, Args... args) const; void PushBoolean(bool value) const; void PushCFunction(LuaCFunction func, unsigned int upvalueCount = 0) const; template void PushField(const char* name, T&& arg, int tableIndex = -2) const; diff --git a/include/Nazara/Lua/LuaInstance.inl b/include/Nazara/Lua/LuaInstance.inl index e2b2c991f..c1eb48c34 100644 --- a/include/Nazara/Lua/LuaInstance.inl +++ b/include/Nazara/Lua/LuaInstance.inl @@ -606,6 +606,16 @@ namespace Nz return LuaImplReplyVal(*this, std::move(arg), TypeTag()); } + template + int LuaInstance::Push(T firstArg, T2 secondArg, Args... args) const + { + int valCount = 0; + valCount += Push(std::move(firstArg)); + valCount += Push(secondArg, std::forward(args)...); + + return valCount; + } + template void LuaInstance::PushField(const char* name, T&& arg, int tableIndex) const {