MCPcopy Create free account
hub / github.com/Tencent/UnLua / Call

Method Call

Plugins/UnLua/Source/UnLua/Public/UnLuaLegacy.h:761–781  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

759 */
760 template <typename... T>
761 FLuaRetValues FLuaTable::Call(const char* FuncName, T&&... Args) const
762 {
763 if (!FuncName)
764 {
765 return FLuaRetValues(Env, INDEX_NONE);
766 }
767
768 lua_State* L = Env->GetMainState();
769 lua_pushcfunction(L, ReportLuaCallError);
770
771 lua_pushstring(L, FuncName);
772 int32 Type = lua_gettable(L, Index);
773 if (Type != LUA_TFUNCTION)
774 {
775 UE_LOG(LogUnLua, Warning, TEXT("Function %s of table doesn't exist!"), UTF8_TO_TCHAR(FuncName));
776 lua_pop(L, 2);
777 return FLuaRetValues(Env, INDEX_NONE);
778 }
779
780 return CallFunctionInternal(Env, Forward<T>(Args)...);
781 }
782
783
784 /**

Callers 2

CallLuaByFLuaTableMethod · 0.80
BindClassMethod · 0.80

Calls 4

lua_pushstringFunction · 0.85
lua_gettableFunction · 0.85
lua_rawgetiFunction · 0.85
IsValidFunction · 0.70

Tested by

no test coverage detected