src/codegen-proto.lisp, doc/list-exports.lisp: Export `inst' readers.
authorMark Wooding <mdw@distorted.org.uk>
Sun, 30 Aug 2015 09:58:38 +0000 (10:58 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Sun, 13 Sep 2015 23:02:27 +0000 (00:02 +0100)
doc/list-exports.lisp
src/codegen-proto.lisp

index 710da87..fd02f00 100644 (file)
 
 (defmethod form-list-exports ((head (eql 'definst)) tail)
   (destructuring-bind (code (streamvar &key export) args &body body) tail
-    (declare (ignore streamvar args body))
+    (declare (ignore streamvar body))
     (and export
-        (list (symbolicate code '-inst)
-              (symbolicate 'make- code '-inst)))))
+        (list* (symbolicate code '-inst)
+               (symbolicate 'make- code '-inst)
+               (mapcar (lambda (arg)
+                         (symbolicate 'inst- arg))
+                       args)))))
 
 (defmethod form-list-exports ((head (eql 'define-tagged-type)) tail)
   (destructuring-bind (kind what) tail
index 571f0b0..7c8f65c 100644 (file)
                 (format stream "~@<~@{~S ~@_~S~^ ~_~}~:>"
                         ,@(mappend #'list keys args)))
               (progn ,@body))))
-       ,@(and export `((export '(,class-name ,constructor-name))))
+       ,@(and export `((export '(,class-name ,constructor-name
+                                ,@(mapcar (lambda (arg)
+                                            (symbolicate 'inst- arg))
+                                          args)))))
        ',code)))
 
 ;; Important instruction classes.