Add docs for luaopen_base

This commit is contained in:
2021-12-17 14:04:34 -05:00
parent 9b956f00e7
commit 0a1480d85c
5 changed files with 27 additions and 35 deletions

View File

@@ -360,31 +360,6 @@ int LuaStack::rawlen(LuaSlot obj) const {
return lua_rawlen(L_, obj.index());
}
std::string LuaStack::get_function_name(LuaSlot fn) {
LuaVar globals, key, val, skey, sval;
LuaStack LS(L_, globals, key, val, skey, sval);
LS.getglobaltable(globals);
LS.set(key, LuaNil);
while (LS.next(globals, key, val)) {
if (LS.isstring(key) && !LS.rawequal(globals, val)) {
if (LS.rawequal(val, fn)) {
return LS.ckstring(key);
}
if (LS.istable(val)) {
LS.set(skey, LuaNil);
while (LS.next(val, skey, sval)) {
if (LS.isstring(skey) && LS.rawequal(sval, fn)) {
std::string n1 = LS.ckstring(key);
std::string n2 = LS.ckstring(skey);
return n1 + "." + n2;
}
}
}
}
}
return "";
}
int LuaStack::gettabletype(LuaSlot tab) const {
uint16_t bits = lua_getflagbits(L_, tab.index());
return LUA_TT_GENERAL + (bits & 0x000F);