Migrated engine to using dlmalloc through eng::
This commit is contained in:
@@ -55,11 +55,11 @@ lua_Number LuaStack::cknumber(LuaSlot s) const {
|
||||
return lua_tonumber(L_, s);
|
||||
}
|
||||
|
||||
std::string LuaStack::ckstring(LuaSlot s) const {
|
||||
eng::string LuaStack::ckstring(LuaSlot s) const {
|
||||
luaL_checktype(L_, s, LUA_TSTRING);
|
||||
size_t len;
|
||||
const char *str = lua_tolstring(L_, s, &len);
|
||||
return std::string(str, len);
|
||||
return eng::string(str, len);
|
||||
}
|
||||
|
||||
lua_State *LuaStack::ckthread(LuaSlot s) const {
|
||||
@@ -154,7 +154,7 @@ lua_State *LuaStack::newthread(LuaSlot target) const {
|
||||
return result;
|
||||
}
|
||||
|
||||
bool LuaStack::validclassname(const std::string &cname) {
|
||||
bool LuaStack::validclassname(const eng::string &cname) {
|
||||
if (cname.empty()) return false;
|
||||
if (cname == "_G") return false;
|
||||
return true;
|
||||
@@ -165,8 +165,8 @@ bool LuaStack::validclassname(LuaSlot slot) const {
|
||||
return validclassname(ckstring(slot));
|
||||
}
|
||||
|
||||
std::string LuaStack::classname(LuaSlot tab) const {
|
||||
std::string result;
|
||||
eng::string LuaStack::classname(LuaSlot tab) const {
|
||||
eng::string result;
|
||||
if (istable(tab)) {
|
||||
lua_pushstring(L_, "__class");
|
||||
lua_rawget(L_, tab);
|
||||
@@ -177,7 +177,7 @@ std::string LuaStack::classname(LuaSlot tab) const {
|
||||
if (lua_rawequal(L_, -1, tab)) {
|
||||
size_t len;
|
||||
const char *s = lua_tolstring(L_, -3, &len);
|
||||
result = std::string(s, len);
|
||||
result = eng::string(s, len);
|
||||
if (!validclassname(result)) {
|
||||
result = "";
|
||||
}
|
||||
@@ -190,7 +190,7 @@ std::string LuaStack::classname(LuaSlot tab) const {
|
||||
return result;
|
||||
}
|
||||
|
||||
std::string LuaStack::getclass(LuaSlot classtab, LuaSlot classname) const {
|
||||
eng::string LuaStack::getclass(LuaSlot classtab, LuaSlot classname) const {
|
||||
lua_checkstack(L_, 20);
|
||||
LuaVar globtab, cname;
|
||||
LuaStack LS(L_, globtab, cname);
|
||||
@@ -198,19 +198,19 @@ std::string LuaStack::getclass(LuaSlot classtab, LuaSlot classname) const {
|
||||
|
||||
if (LS.isstring(classname)) {
|
||||
if (!validclassname(LS.ckstring(classname))) {
|
||||
std::string err = "invalid class name: " + LS.ckstring(classname);
|
||||
eng::string err = "invalid class name: " + LS.ckstring(classname);
|
||||
LS.result();
|
||||
return err;
|
||||
}
|
||||
LS.rawget(classtab, globtab, classname);
|
||||
if (!LS.istable(classtab)) {
|
||||
std::string err = "not a class: " + LS.ckstring(classname);
|
||||
eng::string err = "not a class: " + LS.ckstring(classname);
|
||||
LS.result();
|
||||
return err;
|
||||
}
|
||||
LS.rawget(cname, classtab, "__class");
|
||||
if (!LS.rawequal(cname, classname)) {
|
||||
std::string err = "not a valid class: " + LS.ckstring(classname);
|
||||
eng::string err = "not a valid class: " + LS.ckstring(classname);
|
||||
LS.result();
|
||||
return err;
|
||||
}
|
||||
@@ -219,42 +219,42 @@ std::string LuaStack::getclass(LuaSlot classtab, LuaSlot classname) const {
|
||||
} else if (LS.istable(classname)) {
|
||||
LS.rawget(cname, classname, "__class");
|
||||
if (!LS.isstring(cname)) {
|
||||
std::string err = "table is not a class.";
|
||||
eng::string err = "table is not a class.";
|
||||
LS.result();
|
||||
return err;
|
||||
}
|
||||
if (!validclassname(LS.ckstring(cname))) {
|
||||
std::string err = "invalid class name: " + LS.ckstring(cname);
|
||||
eng::string err = "invalid class name: " + LS.ckstring(cname);
|
||||
LS.result();
|
||||
return err;
|
||||
}
|
||||
LS.rawget(classtab, globtab, cname);
|
||||
if (!LS.rawequal(classtab, classname)) {
|
||||
std::string err = "not a valid class: " + LS.ckstring(cname);
|
||||
eng::string err = "not a valid class: " + LS.ckstring(cname);
|
||||
LS.result();
|
||||
return err;
|
||||
}
|
||||
LS.result();
|
||||
return "";
|
||||
} else {
|
||||
std::string err = "getclass expects a string or a classtab";
|
||||
eng::string err = "getclass expects a string or a classtab";
|
||||
LS.result();
|
||||
return err;
|
||||
}
|
||||
}
|
||||
|
||||
std::string LuaStack::getclass(LuaSlot tab, const char *name) const {
|
||||
eng::string LuaStack::getclass(LuaSlot tab, const char *name) const {
|
||||
push_any_value(name);
|
||||
LuaSpecial classname(lua_gettop(L_));
|
||||
std::string err = getclass(tab, classname);
|
||||
eng::string err = getclass(tab, classname);
|
||||
lua_pop(L_, 1);
|
||||
return err;
|
||||
}
|
||||
|
||||
std::string LuaStack::getclass(LuaSlot tab, const std::string &name) const {
|
||||
eng::string LuaStack::getclass(LuaSlot tab, const eng::string &name) const {
|
||||
push_any_value(name);
|
||||
LuaSpecial classname(lua_gettop(L_));
|
||||
std::string err = getclass(tab, classname);
|
||||
eng::string err = getclass(tab, classname);
|
||||
lua_pop(L_, 1);
|
||||
return err;
|
||||
}
|
||||
@@ -295,7 +295,7 @@ void LuaStack::makeclass(LuaSlot tab, const char *name) const {
|
||||
lua_pop(L_, 1);
|
||||
}
|
||||
|
||||
void LuaStack::makeclass(LuaSlot tab, const std::string &name) const {
|
||||
void LuaStack::makeclass(LuaSlot tab, const eng::string &name) const {
|
||||
push_any_value(name);
|
||||
LuaSpecial classname(lua_gettop(L_));
|
||||
makeclass(tab, classname);
|
||||
|
||||
Reference in New Issue
Block a user