lua_tointeger() public static method

public static lua_tointeger ( IntPtr luaState, int index ) : int
luaState IntPtr
index int
return int
示例#1
0
        internal static int Equals(IntPtr L)
        {
            try
            {
                ToLua.CheckArgsCount(L, 2);

                T   arg0    = ToLua.CheckObject <T>(L, 1);
                int result0 = EnumToInt(arg0);
                int result1 = 0;

                if (TypeChecker.CheckTypes <T>(L, 2))
                {
                    T arg1 = ToLua.CheckObject <T>(L, 2);
                    result1 = EnumToInt(arg1);
                }
                else if (TypeChecker.CheckTypes <int>(L, 2))
                {
                    result1 = (int)LuaDLL.lua_tointeger(L, 1);
                }

                LuaDLL.lua_pushboolean(L, result0 == result1);
                return(1);
            }
            catch (Exception e)
            {
                return(LuaDLL.toluaL_exception(L, e));
            }
        }
示例#2
0
        public uint ToUInt32(IntPtr L, int stackPos)
        {
            long ret = LuaDLL.lua_tointeger(L, stackPos);

#if UNITY_5_3_OR_NEWER
            Debug.Assert(ret >= uint.MinValue && ret <= uint.MaxValue);
#endif
            return((uint)ret);
        }
示例#3
0
        public char ToChar(IntPtr L, int stackPos)
        {
            long ret = LuaDLL.lua_tointeger(L, stackPos);

#if UNITY_5_3_OR_NEWER
            Debug.Assert(ret >= char.MinValue && ret <= char.MaxValue);
#endif
            return((char)ret);
        }
示例#4
0
        public short ToInt16(IntPtr L, int stackPos)
        {
            long ret = LuaDLL.lua_tointeger(L, stackPos);

#if UNITY_5_3_OR_NEWER
            Debug.Assert(ret >= short.MinValue && ret <= short.MaxValue);
#endif
            return((short)ret);
        }
示例#5
0
        public byte ToByte(IntPtr L, int stackPos)
        {
            long ret = LuaDLL.lua_tointeger(L, stackPos);

#if UNITY_5_3_OR_NEWER
            Debug.Assert(ret >= byte.MinValue && ret <= byte.MaxValue);
#endif
            return((byte)ret);
        }
示例#6
0
        public static int luaL_checkinteger(IntPtr L, int stackPos)
        {
            int num = LuaDLL.lua_tointeger(L, stackPos);

            if (num == 0 && LuaDLL.lua_isnumber(L, stackPos) == 0)
            {
                LuaDLL.luaL_typerror(L, stackPos, "number", null);
                return(0);
            }
            return(num);
        }
示例#7
0
        public static char[] ToParamsChar(IntPtr L, int stackPos, int count)
        {
            char[] array = new char[count];
            int    i     = 0;

            while (i < count)
            {
                char c = (char)LuaDLL.lua_tointeger(L, stackPos);
                array[i++] = c;
                stackPos++;
            }
            return(array);
        }
示例#8
0
        public Nullable <uint> ToNullUInt32(IntPtr L, int stackPos)
        {
            if (LuaDLL.lua_type(L, stackPos) == LuaTypes.LUA_TNIL)
            {
                return(null);
            }

            long ret = LuaDLL.lua_tointeger(L, stackPos);

#if UNITY_5_3_OR_NEWER
            Debug.Assert(ret >= uint.MinValue && ret <= uint.MaxValue);
#endif
            return((uint)ret);
        }
示例#9
0
        public static char[] ToParamsChar(IntPtr L, int stackPos, int count)
        {
            char[] buffer = new char[count];
            int    pos    = 0;

            while (pos < count)
            {
                char c = (char)LuaDLL.lua_tointeger(L, stackPos);
                buffer[pos++] = c;
                ++stackPos;
            }

            return(buffer);
        }
示例#10
0
 static int CreatePrimitive(IntPtr L)
 {
     try
     {
         PrimitiveType type = (PrimitiveType)LuaDLL.lua_tointeger(L, 1);
         GameObject    go   = UnityEngine.GameObject.CreatePrimitive(type);
         LuaExtend.AddObject2Lua(L, go, null);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.wluaL_error(L, e));
     }
 }
示例#11
0
 internal static int IntToEnum(IntPtr L)
 {
     try
     {
         int arg0 = (int)LuaDLL.lua_tointeger(L, 1);
         T   o    = IntToEnumTransfer(arg0);
         ToLua.PushValue(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
示例#12
0
        public static char[] CheckParamsChar(IntPtr L, int stackPos, int count)
        {
            char[] array = new char[count];
            int    i     = 0;

            while (i < count)
            {
                if (LuaDLL.lua_isnumber(L, stackPos) == 0)
                {
                    LuaDLL.luaL_typerror(L, stackPos, "char", null);
                    return(null);
                }
                array[i] = (char)LuaDLL.lua_tointeger(L, stackPos);
                i++;
                stackPos++;
            }
            return(array);
        }
示例#13
0
        public static char[] CheckParamsChar(IntPtr L, int stackPos, int count)
        {
            char[] buffer = new char[count];
            int    pos    = 0;

            while (pos < count)
            {
                if (LuaDLL.lua_isnumber(L, stackPos) != 0)
                {
                    buffer[pos] = (char)LuaDLL.lua_tointeger(L, stackPos);
                }
                else
                {
                    LuaDLL.luaL_typerror(L, stackPos, "char");
                    return(null);
                }

                ++pos;
                ++stackPos;
            }

            return(buffer);
        }
示例#14
0
 public int LuaToInteger(int idx)
 {
     return(LuaDLL.lua_tointeger(L, idx));
 }