pocketpy/src/objects/object.c
2024-06-29 18:34:38 +08:00

17 lines
429 B
C

#include "pocketpy/objects/object.h"
#include "pocketpy/pocketpy.h"
#include <assert.h>
void* PyObject__value(PyObject* self){
return (char*)self + PK_OBJ_HEADER_SIZE(self->slots);
}
pk_NameDict* PyObject__dict(PyObject* self){
assert(self->slots == -1);
return (pk_NameDict*)((char*)self + 8);
}
py_TValue* PyObject__slots(PyObject* self){
assert(self->slots >= 0);
return (py_TValue*)((char*)self + 8);
}