Пример #1
0
        public static object ToVarObject(IntPtr L, int stackPos)
        {
            switch (LuaDLL.lua_type(L, stackPos))
            {
            case LuaTypes.LUA_TNIL:
                return(null);

            case LuaTypes.LUA_TBOOLEAN:
                return(LuaDLL.lua_toboolean(L, stackPos));

            case LuaTypes.LUA_TLIGHTUSERDATA:
                return(LuaDLL.lua_touserdata(L, stackPos));

            case LuaTypes.LUA_TNUMBER:
                return(LuaDLL.lua_tonumber(L, stackPos));

            case LuaTypes.LUA_TSTRING:
                return(LuaDLL.lua_tostring(L, stackPos));

            case LuaTypes.LUA_TTABLE:
                return(ToLua.ToVarTable(L, stackPos));

            case LuaTypes.LUA_TFUNCTION:
                return(ToLua.ToLuaFunction(L, stackPos));

            case LuaTypes.LUA_TUSERDATA:
                return(ToLua.ToObject(L, stackPos));

            case LuaTypes.LUA_TTHREAD:
                return(ToLua.ToLuaThread(L, stackPos));

            default:
                return(null);
            }
        }