LuaInterface.LuaProperty.Set C# (CSharp) Method

Set() public method

public Set ( IntPtr L ) : int
L System.IntPtr
return int
        public int Set(IntPtr L)
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 4 && TypeChecker.CheckTypes(L, 2, kclass, typeof(object), typeof(object[])))
            {
                object arg0 = ToLua.ToVarObject(L, 2);
                object arg1 = ToLua.ToVarObject(L, 3);
                object[] arg2 = ToLua.CheckObjectArray(L, 4);
                arg1 = TypeChecker.ChangeType(arg1, property.PropertyType);
                property.SetValue(arg0, arg1, arg2);
                return 0;
            }
            else if (count == 7 && TypeChecker.CheckTypes(L, 2, kclass, typeof(object), typeof(uint), typeof(Binder), typeof(object[]), typeof(CultureInfo)))
            {
                object arg0 = ToLua.ToVarObject(L, 2);
                object arg1 = ToLua.ToVarObject(L, 3);
                BindingFlags arg2 = (BindingFlags)LuaDLL.lua_tonumber(L, 4);
                Binder arg3 = (Binder)ToLua.ToObject(L, 5);
                object[] arg4 = ToLua.CheckObjectArray(L, 6);
                CultureInfo arg5 = (CultureInfo)ToLua.ToObject(L, 7);
                arg1 = TypeChecker.ChangeType(arg1, property.PropertyType);
                property.SetValue(arg0, arg1, arg2, arg3, arg4, arg5);
                return 0;
            }
            else
            {
                return LuaDLL.luaL_throw(L, "invalid arguments to method: LuaInterface.LuaProperty.Set");
            }
        }

Usage Example

コード例 #1
0
 static int Set(IntPtr L)
 {
     try
     {
         LuaInterface.LuaProperty obj = (LuaInterface.LuaProperty)ToLua.CheckObject(L, 1, typeof(LuaInterface.LuaProperty));
         return(obj.Set(L));
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }