[DEV] remote _userpointer()

This commit is contained in:
Edouard DUPIN 2018-07-03 22:07:59 +02:00
parent a374a839ce
commit e23132b712
3 changed files with 4 additions and 5 deletions

View File

@ -149,7 +149,6 @@ namespace rabbit {
#define is_delegable(t) (sq_type(t)&SQOBJECT_DELEGABLE)
#define raw_type(obj) _RAW_TYPE((obj)._type)
#define _userpointer(obj) ((obj)._unVal.pUserPointer)
#define _thread(obj) ((obj)._unVal.pThread)
#define _funcproto(obj) ((obj)._unVal.pFunctionProto)
#define _class(obj) ((obj)._unVal.pClass)

View File

@ -255,7 +255,7 @@ bool rabbit::VirtualMachine::objCmp(const rabbit::ObjectPtr &o1,const rabbit::Ob
}
//continues through (no break needed)
default:
_RET_SUCCEED( _userpointer(o1) < _userpointer(o2)?-1:1 );
_RET_SUCCEED( o1.getUserPointer() < o2.getUserPointer()?-1:1 );
}
assert(0);
//if(type(res)!=rabbit::OT_INTEGER) { raise_Compareerror(o1,o2); return false; }
@ -1796,7 +1796,7 @@ void rabbit::VirtualMachine::dumpstack(int64_t stackbase,bool dumpall)
case rabbit::OT_USERDATA: printf("USERDATA %p[%p]",_userdataval(obj),obj.toUserData()->_delegate);break;
case rabbit::OT_GENERATOR: printf("GENERATOR %p",obj.toGenerator());break;
case rabbit::OT_THREAD: printf("THREAD [%p]",_thread(obj));break;
case rabbit::OT_USERPOINTER: printf("USERPOINTER %p",_userpointer(obj));break;
case rabbit::OT_USERPOINTER: printf("USERPOINTER %p",obj.getUserPointer());break;
case rabbit::OT_CLASS: printf("CLASS %p",_class(obj));break;
case rabbit::OT_INSTANCE: printf("INSTANCE %p",_instance(obj));break;
case rabbit::OT_WEAKREF: printf("WEAKERF %p",_weakref(obj));break;

View File

@ -229,7 +229,7 @@ rabbit::Bool rabbit::sq_objtobool(const rabbit::Object *o)
rabbit::UserPointer rabbit::sq_objtouserpointer(const rabbit::Object *o)
{
if(sq_isuserpointer(*o)) {
return _userpointer(*o);
return o->getUserPointer();
}
return 0;
}
@ -804,7 +804,7 @@ rabbit::Result rabbit::sq_getuserpointer(rabbit::VirtualMachine* v, int64_t idx,
{
rabbit::ObjectPtr *o = NULL;
_GETSAFE_OBJ(v, idx, rabbit::OT_USERPOINTER,o);
(*p) = _userpointer(*o);
(*p) = o->getUserPointer();
return SQ_OK;
}