X-Git-Url: https://git.distorted.org.uk/~mdw/clg/blobdiff_plain/0d07716fe78436ae6c9c324cabdd401c25e336af..97b1710cc8ba09c9d5ccdd595fc0a35edaf48d88:/tools/autoexport.lisp diff --git a/tools/autoexport.lisp b/tools/autoexport.lisp index b4e479c..f6464a4 100644 --- a/tools/autoexport.lisp +++ b/tools/autoexport.lisp @@ -82,14 +82,11 @@ (declare (ignore rest)) name) -(defexport defclass (class superclasses &optional slotdefs &rest options) - (declare (ignore superclasses options)) +(defun export-defclass-form (class slotdefs) (cons class - (apply - #'nconc - (map - 'list + (apply #'nconc + (map 'list #'(lambda (slotdef) (if (symbolp slotdef) (list slotdef) @@ -98,10 +95,22 @@ (delete nil (list name reader (export-fname writer) accessor))))) slotdefs)))) +(defexport defclass (class superclasses &optional slotdefs &rest options) + (declare (ignore superclasses options)) + (export-defclass-form class slotdefs)) + +(defexport define-condition (class superclasses &optional slotdefs &rest options) + (declare (ignore superclasses options)) + (export-defclass-form class slotdefs)) + (defexport defgeneric (fname &rest args) (declare (ignore args)) (export-fname fname)) +(defexport defmethod (name &rest rest) + (declare (ignore rest)) + name) + (defexport progn (&rest body) (apply #'nconc (map 'list #'list-autoexported-symbols body)))