(let* ((initializer-fn-ptr (foreign-symbol-pointer (gobject-class-g-type-initializer class)))
(type (when initializer-fn-ptr
(foreign-funcall-pointer initializer-fn-ptr nil
(let* ((initializer-fn-ptr (foreign-symbol-pointer (gobject-class-g-type-initializer class)))
(type (when initializer-fn-ptr
(foreign-funcall-pointer initializer-fn-ptr nil
(if (null initializer-fn-ptr)
(warn "Type initializer for class '~A' (GType '~A') is invalid: foreign symbol '~A'"
(gobject-class-direct-g-type-name class) (class-name class) (gobject-class-g-type-initializer class))
(progn
(if (null initializer-fn-ptr)
(warn "Type initializer for class '~A' (GType '~A') is invalid: foreign symbol '~A'"
(gobject-class-direct-g-type-name class) (class-name class) (gobject-class-g-type-initializer class))
(progn
(warn "Declared GType name '~A' for class '~A' is invalid ('~A' returned 0)"
(gobject-class-direct-g-type-name class) (class-name class)
(gobject-class-g-type-initializer class)))
(warn "Declared GType name '~A' for class '~A' is invalid ('~A' returned 0)"
(gobject-class-direct-g-type-name class) (class-name class)
(gobject-class-g-type-initializer class)))
(warn "Declared GType name '~A' for class '~A' does not match actual GType name '~A'"
(gobject-class-direct-g-type-name class)
(class-name class)
(warn "Declared GType name '~A' for class '~A' does not match actual GType name '~A'"
(gobject-class-direct-g-type-name class)
(class-name class)
(warn "Declared GType name '~A' for class '~A' is invalid (g_type_name returned 0)"
(gobject-class-direct-g-type-name class) (class-name class)))))
(warn "Declared GType name '~A' for class '~A' is invalid (g_type_name returned 0)"
(gobject-class-direct-g-type-name class) (class-name class)))))
(defmethod reinitialize-instance :around ((class gobject-class) &rest initargs &key (direct-superclasses nil d-s-p) &allow-other-keys)
(declare (ignore direct-superclasses))
(if d-s-p
(defmethod reinitialize-instance :around ((class gobject-class) &rest initargs &key (direct-superclasses nil d-s-p) &allow-other-keys)
(declare (ignore direct-superclasses))
(if d-s-p
(defmethod initialize-instance :after ((object gobject-class) &key &allow-other-keys)
(when (gobject-class-direct-g-type-name object)
(defmethod initialize-instance :after ((object gobject-class) &key &allow-other-keys)
(when (gobject-class-direct-g-type-name object)
(at-init (object) (initialize-gobject-class-g-type object))))
(defmethod finalize-inheritance :after ((class gobject-class))
(at-init (object) (initialize-gobject-class-g-type object))))
(defmethod finalize-inheritance :after ((class gobject-class))
(setf (gobject-class-g-type-name class)
(or (gobject-class-direct-g-type-name class)
(let ((gobject-superclass (iter (for superclass in (class-direct-superclasses class))
(setf (gobject-class-g-type-name class)
(or (gobject-class-direct-g-type-name class)
(let ((gobject-superclass (iter (for superclass in (class-direct-superclasses class))
(defmethod make-instance ((class gobject-class) &rest initargs &key pointer)
(log-for :subclass "(make-instance ~A ~{~A~^ ~})~%" class initargs)
(defmethod make-instance ((class gobject-class) &rest initargs &key pointer)
(log-for :subclass "(make-instance ~A ~{~A~^ ~})~%" class initargs)