In Lua ich eine Funktion utils.debug()
und was ich möchte, ist, verwenden Sie es in meinem Lua-Code aufgerufen haben, wie folgt:Lua & C++ API bekommen die Ausführung von Informationen
function Foo:doSomething
if (/* something */) then
print("Success!")
else
utils.debug()
end
end
function Foo:doSomethingElse
if (/* something else */) then
print("Awesome!")
else
utils.debug()
end
end
Ich mag würde es überall verwenden mein Lua-Code, um mir beim Debuggen zu helfen. Als Ergebnis möchte ich meinen C++ Code wissen, wo im Lua-Code der utils.debug()
aufgerufen wurde. Ich sah in lua_Debug
und lua_getinfo
und sie scheinen ziemlich nahe, was ich will, aber ich bin fehlt ein Stück:
int MyLua::debug(lua_State* L)
{
lua_Debug ar;
lua_getstack(L, 1, &ar);
lua_getinfo(L, ??????, &ar);
// print out relevant info from 'ar'
// such as in what function it was called, line number, etc
}
Ist das, was die lua_Debug Struktur für oder gibt es eine andere Einrichtung oder Methode, die ich verwenden sollte mach das?
fyi lua hat eine Support-Mailingliste, die Sie auch ausprobieren können, wenn Sie hier keine Antwort von satistfactory erhalten. –
Ich bin nicht klar auf genau das, was Sie fragen. Fragen Sie, wie man 'lua_getinfo' benutzt? Weil das Handbuch [ziemlich gute Dokumentation darüber, was es tut] (http://www.lua.org/manual/5.1/manual.html#lua_getinfo). –