Ejemplo n.º 1
0
        public static int ClrFuncWrap(IntPtr l)
        {
            var         type = l.GetType(1);
            ILuaTypeHub sub  = LuaTypeHub.GetTypeHub(type);
            ILuaNative  nsub = sub as ILuaNative;

            if (nsub == null)
            {
                l.PushLuaObject(l.GetLua(1));
                return(1);
            }
            else
            {
                nsub.Wrap(l, 1);
                return(1);
            }
        }
Ejemplo n.º 2
0
 public static int ClrFuncUnwrap(IntPtr l)
 {
     if (l.istable(1))
     {
         l.pushlightuserdata(LuaConst.LRKEY_TYPE_TRANS); // #trans
         l.gettable(1);                                  // trans
         ILuaTrans trans = null;
         if (l.isuserdata(-1))
         {
             trans = l.GetLuaLightObject(-1) as ILuaTrans;
         }
         l.pop(1);
         ILuaNative nsub = trans as ILuaNative;
         if (nsub != null)
         {
             nsub.Unwrap(l, 1);
             return(1);
         }
     }
     l.PushLua(l.GetLua(1));
     return(1);
 }