Exemplo n.º 1
0
        public static string LuaToString(LuaState luaState, int index)
        {
            // FIXME use the same format string as lua i.e. LUA_NUMBER_FMT
            var t = LuaType(luaState, index);

            if (t == LuaTypes.Number)
            {
                return(string.Format("{0}", LuaToNumber(luaState, index)));
            }
            else if (t == LuaTypes.String)
            {
                uint strlen;
                // Changed 2013-05-18 by Dirk Weltz
                // Changed because binary chunks, which are also transfered as strings
                // get corrupted by conversion to strings because of the encoding.
                // So we use the ToString method with string length, so it could be checked,
                // if string is a binary chunk and if, could transfered to string without
                // encoding.
                return(LuaCore.LuaToLString(luaState, index, out strlen).ToString((int)strlen));
            }
            else if (t == LuaTypes.Nil)
            {
                return(null);            // treat lua nulls to as C# nulls
            }
            else
            {
                return("0"); // Because luaV_tostring does this
            }
        }
Exemplo n.º 2
0
        public static int LuaLDoFile(LuaState luaState, string fileName)
        {
            int result = LuaCore.LuaLLoadFile(luaState, fileName);

            if (result != 0)
            {
                return(result);
            }

            return(LuaCore.LuaPCall(luaState, 0, -1, 0));
        }
Exemplo n.º 3
0
        public static int LuaLDoString(LuaState luaState, string chunk)
        {
            int result = LuaLLoadString(luaState, chunk);

            if (result != 0)
            {
                return(result);
            }

            return(LuaPCall(luaState, 0, -1, 0));
        }
Exemplo n.º 4
0
        // -------------------------------------
        // Export more functions

        // Calculate object len on stack index.
        // - mouguangyi
        public static int LuaObjLen(LuaState luaState, int index)
        {
            return(LuaCore.LuaObjLen(luaState, index));
        }
Exemplo n.º 5
0
 public static bool LuaLGetMetafield(LuaState luaState, int stackPos, string field)
 {
     return(LuaCore.LuaLGetMetafield(luaState, stackPos, field) != 0);
 }
Exemplo n.º 6
0
 public static void LuaNewTable(LuaState luaState)
 {
     LuaCreateTable(luaState, 0, 0);
 }
Exemplo n.º 7
0
 public static void LuaLOpenLibs(LuaState luaState)
 {
     LuaCore.LuaLOpenLibs(luaState);
 }
Exemplo n.º 8
0
 public static void LuaPushCClosure(LuaState luaState, LuaNativeFunction function, int n)
 {
     LuaCore.LuaPushCClosure(luaState, function, n);
 }
Exemplo n.º 9
0
 public static void LuaLError(LuaState luaState, string message)
 {
     LuaCore.LuaLError(luaState, message);
 }
Exemplo n.º 10
0
 public static int LuaNetRawNetObj(LuaState luaState, int obj)
 {
     return(LuaCore.LuaNetRawNetObj(luaState, obj));
 }
Exemplo n.º 11
0
 public static string LuaTypeName(LuaState luaState, LuaTypes type)
 {
     return(LuaCore.LuaTypeName(luaState, (int)type).ToString());
 }
Exemplo n.º 12
0
 public static int LuaNetToNetObject(LuaState luaState, int index)
 {
     return(LuaCore.LuaNetToNetObject(luaState, index));
 }
Exemplo n.º 13
0
 public static void LuaNetNewUData(LuaState luaState, int val)
 {
     LuaCore.LuaNetNewUData(luaState, val);
 }
Exemplo n.º 14
0
 public static bool LuaNetCheckMetatable(LuaState luaState, int index)
 {
     return(LuaCore.LuaNetCheckMetatable(luaState, index));
 }
Exemplo n.º 15
0
 public static int LuaLLoadFile(LuaState luaState, string filename)
 {
     return(LuaCore.LuaLLoadFile(luaState, filename));
 }
Exemplo n.º 16
0
 public static int LuaLLoadBuffer(LuaState luaState, byte[] buff, string name)
 {
     return(LuaCore.LuaLLoadBuffer(luaState, buff, (uint)buff.Length, name));
 }
Exemplo n.º 17
0
 public static string LuaLTypeName(LuaState luaState, int stackPos)
 {
     return(LuaTypeName(luaState, LuaType(luaState, stackPos)));
 }
Exemplo n.º 18
0
 public static int LuaNetCheckUData(LuaState luaState, int ud, string tname)
 {
     return(LuaCore.LuaNetCheckUData(luaState, ud, tname));
 }
Exemplo n.º 19
0
 // Push byte[] as lstring
 // - mouguangyi
 public static void LuaPushLString(LuaState luaState, byte[] str, int size)
 {
     LuaCore.LuaPushLString(luaState, str, size);
 }
Exemplo n.º 20
0
 public static void LuaError(LuaState luaState)
 {
     LuaCore.LuaError(luaState);
 }
Exemplo n.º 21
0
        // Save native ansi string to C# byte array
        // - mouguangyi
        public static byte[] LuaToBytes(LuaState luaState, int index)
        {
            uint strlen;

            return(LuaCore.LuaToLString(luaState, index, out strlen).ToBytes((int)strlen));
        }
Exemplo n.º 22
0
 public static bool LuaCheckStack(LuaState luaState, int extra)
 {
     return(LuaCore.LuaCheckStack(luaState, extra) != 0);
 }
Exemplo n.º 23
0
 public static void LuaLWhere(LuaState luaState, int level)
 {
     LuaCore.LuaLWhere(luaState, level);
 }
Exemplo n.º 24
0
 public static int LuaNext(LuaState luaState, int index)
 {
     return(LuaCore.LuaNext(luaState, index));
 }
Exemplo n.º 25
0
 public static int LuaLLoadString(LuaState luaState, string chunk)
 {
     return(LuaCore.LuaLLoadString(luaState, chunk));
 }
Exemplo n.º 26
0
 public static void LuaLGetMetatable(LuaState luaState, string meta)
 {
     LuaGetField(luaState, (int)LuaIndexes.Registry, meta);
 }
Exemplo n.º 27
0
 public static void LuaCreateTable(LuaState luaState, int narr, int nrec)
 {
     LuaCore.LuaCreateTable(luaState, narr, nrec);
 }
Exemplo n.º 28
0
 public static void LuaNetPopGlobalTable(LuaState luaState)
 {
     LuaCore.LuaNetPopGlobalTable(luaState);
 }
Exemplo n.º 29
0
 public static void LuaPushLightUserData(LuaState luaState, LuaTag udata)
 {
     LuaCore.LuaPushLightUserData(luaState, udata.Tag);
 }
Exemplo n.º 30
0
 public static object LuaLCheckUData(LuaState luaState, int stackPos, string meta)
 {
     return(LuaCore.LuaLCheckUData(luaState, stackPos, meta));
 }