Importing the libobject source files (object.h, object.c) would provide many benefits. One drawback of using the libobject api is that custom types need to first be created in the libobject tree, pushed to master, then recompiled and installed.
libobject does provide a IS_POINTER type allowing an api user to wrap an arbitrary pointer type via newPointer. This is cool for some cases, but it mostly sucks for this language implementation because I have to do many casts to void * to install the property onto a hash table for example, then you have to also cast it back to your own type when you would get it out of the hash table.
Importing the libobject source files (object.h, object.c) would provide many benefits. One drawback of using the libobject api is that custom types need to first be created in the libobject tree, pushed to master, then recompiled and installed.
libobject does provide a
IS_POINTERtype allowing an api user to wrap an arbitrary pointer type vianewPointer. This is cool for some cases, but it mostly sucks for this language implementation because I have to do many casts tovoid *to install the property onto a hash table for example, then you have to also cast it back to your own type when you would get it out of the hash table.