(define-g-boxed-opaque name g-type-name &key alloc)
g_boxed_copy
and freeable with g_boxed_free
function.
Defines a opaque boxed structure. A class named name is defined as a subclass of g-boxed-opaque
class. Instances of this class contain pointers to corresponding structures. An :after
method for initialize-instance
generic function is defined that speciales on class name. This method either accepts a :pointer
initarg or evaluates alloc form if :pointer
is not specified; the resulting pointer is saved in instance; finalizer is registered to free the pointer when the garbage collectors deletes this object.
Example:
(defcfun gtk-tree-path-new :pointer) (define-g-boxed-opaque tree-path "GtkTreePath" :alloc (gtk-tree-path-new))