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); } }
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); }