diff options
author | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-07-08 00:20:56 (GMT) |
---|---|---|
committer | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-07-08 00:20:56 (GMT) |
commit | dbd110e2b7eb08c65218a5f9d09ef12fdc62c04a (patch) | |
tree | 93444e4c106eeca34d928521bedbda8080410795 /contrib/src/LuaBridge/detail/dump.h | |
parent | d5e1f6397c52513018cd59972cf5ca8740de18eb (diff) | |
download | uscxml-dbd110e2b7eb08c65218a5f9d09ef12fdc62c04a.zip uscxml-dbd110e2b7eb08c65218a5f9d09ef12fdc62c04a.tar.gz uscxml-dbd110e2b7eb08c65218a5f9d09ef12fdc62c04a.tar.bz2 |
First signs of Lua Datamodel
Diffstat (limited to 'contrib/src/LuaBridge/detail/dump.h')
-rw-r--r-- | contrib/src/LuaBridge/detail/dump.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/contrib/src/LuaBridge/detail/dump.h b/contrib/src/LuaBridge/detail/dump.h new file mode 100644 index 0000000..c066803 --- /dev/null +++ b/contrib/src/LuaBridge/detail/dump.h @@ -0,0 +1,28 @@ +#include <sstream> +#include <string> + +std::string dumpLuaState(lua_State *L) { + std::stringstream ostr; + int i; + int top = lua_gettop(L); + ostr << "top=" << top << ":\n"; + for (i = 1; i <= top; ++i) { + int t = lua_type(L, i); + switch(t) { + case LUA_TSTRING: + ostr << " " << i << ": '" << lua_tostring(L, i) << "'\n"; + break; + case LUA_TBOOLEAN: + ostr << " " << i << ": " << + (lua_toboolean(L, i) ? "true" : "false") << "\n"; + break; + case LUA_TNUMBER: + ostr << " " << i << ": " << lua_tonumber(L, i) << "\n"; + break; + default: + ostr << " " << i << ": TYPE=" << lua_typename(L, t) << "\n"; + break; + } + } + return ostr.str(); +} |