* emacs-lisp/eieio.el (eieio-defclass-autoload): Autoload.
+2009-09-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs-lisp/autoload.el (make-autoload): Handle defclass form.
+
+ * emacs-lisp/eieio.el (eieio-defclass-autoload): Autoload.
+
2009-09-05 Chong Yidong <cyd@stupidchicken.com>
* emacs-lisp/autoload.el (generated-autoload-load-name): New var.
(eq (car-safe (car body)) 'interactive))
(if macrop (list 'quote 'macro) nil))))
+ ;; For defclass forms, use `eieio-defclass-autoload'.
+ ((eq car 'defclass)
+ (let ((name (nth 1 form))
+ (superclasses (nth 2 form))
+ (doc (nth 4 form)))
+ (list 'eieio-defclass-autoload (list 'quote name)
+ (list 'quote superclasses) file doc)))
+
;; Convert defcustom to less space-consuming data.
((eq car 'defcustom)
(let ((varname (car-safe (cdr-safe form)))
(defvar eieio-defclass-autoload-map (make-vector 7 nil)
"Symbol map of superclasses we find in autoloads.")
+;;;###autoload
(defun eieio-defclass-autoload (cname superclasses filename doc)
"Create autoload symbols for the EIEIO class CNAME.
SUPERCLASSES are the superclasses that CNAME inherites from.