src/: Yet more naming and export twiddles.
authorMark Wooding <mdw@distorted.org.uk>
Tue, 22 Sep 2015 10:27:11 +0000 (11:27 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Wed, 23 Sep 2015 09:00:34 +0000 (10:00 +0100)
  * Export `class-item', which names a pluggable parser invoked in
    parsing class definitions.

  * Export the accessors for `code-fragment-item' objects.

  * Rename the `message-*' generic methods to be `sod-message-*', for
    consistency with the existing accessors.  Specific targets are
    `message-combination', on aggregating messages, and
    `message-effective-method-class', part of the layout protocol, which
    is just inconsistent with `sod-message-method-class' in the
    metaobject construction protocol.

  * Also export `sod-message-kernel-function', which is used in
    aggregating messages.

  * Astonishingly, I'd not exported any of the `vtmsgs' symbols.

doc/layout.tex
src/class-layout-impl.lisp
src/class-layout-proto.lisp
src/method-aggregate.lisp
src/method-impl.lisp
src/method-proto.lisp
src/module-impl.lisp
src/module-parse.lisp

index c4f095a..688d693 100644 (file)
      \dhead{gf}{effective-method-class @<method> @> @<class>}}
 \end{describe*}
 
-\begin{describe}{gf}{message-effective-method-class @<message> @> @<class>}
+\begin{describe}{gf}
+    {sod-message-effective-method-class @<message> @> @<class>}
 \end{describe}
 
 \begin{describe}{gf}{primary-method-class @<message> @> @<class>}
index fb684b7..8f14e1e 100644 (file)
                                           :key #'sod-method-message
                                           :test-not #'eql))
                                (sod-class-precedence-list class))))
-    (make-instance (message-effective-method-class message)
+    (make-instance (sod-message-effective-method-class message)
                   :message message
                   :class class
                   :direct-methods direct-methods)))
index 684fb32..bf3bfa4 100644 (file)
 
 ;;; vtmsgs
 
+(export '(vtmsgs vtmsgs-class vtmsgs-subclass
+         vtmsgs-chain-head vtmsgs-chain-tail vtmsgs-entries))
 (defclass vtmsgs ()
   ((%class :initarg :class :type sod-class :reader vtmsgs-class)
    (subclass :initarg :subclass :type sod-class :reader vtmsgs-subclass)
index e9a889d..bd8fe8a 100644 (file)
 ;;;--------------------------------------------------------------------------
 ;;; Classes and protocol.
 
-(export '(aggregating-message message-combination))
+(export '(aggregating-message
+         sod-message-combination sod-message-kernel-function))
 (defclass aggregating-message (simple-message)
   ((combination :initarg :combination :type keyword
-               :reader message-combination)
-   (kernel-function :type function :reader message-kernel-function))
+               :reader sod-message-combination)
+   (kernel-function :type function :reader sod-message-kernel-function))
   (:documentation
    "Message class for aggregating method combinations.
 
   (with-slots (combination) message
     (check-aggregating-message-type message combination type)))
 
-(defmethod message-effective-method-class ((message aggregating-message))
+(defmethod sod-message-effective-method-class ((message aggregating-message))
   'aggregating-effective-method)
 
 (defmethod simple-method-body
     ((method aggregating-effective-method) codegen target)
   (let ((argument-names (effective-method-basic-argument-names method))
        (primary-methods (effective-method-primary-methods method)))
-    (funcall (message-kernel-function (effective-method-message method))
+    (funcall (sod-message-kernel-function (effective-method-message method))
             codegen target argument-names primary-methods)))
 
 (defmethod shared-initialize :before
index b9543fd..6f6caad 100644 (file)
 (defmethod primary-method-class ((message standard-message))
   'delegating-direct-method)
 
-(defmethod message-effective-method-class ((message standard-message))
+(defmethod sod-message-effective-method-class ((message standard-message))
   'standard-effective-method)
 
 (defmethod simple-method-body
index b4b788d..d176602 100644 (file)
@@ -47,8 +47,8 @@
    order.  (Either that or you have to add an overriding method to
    `compute-sod-effective-method'."))
 
-(export 'message-effective-method-class)
-(defgeneric message-effective-method-class (message)
+(export 'sod-message-effective-method-class)
+(defgeneric sod-message-effective-method-class (message)
   (:documentation
    "Return the effective method class for the given MESSAGE.
 
@@ -67,8 +67,8 @@
    "Return the effective method when a CLASS instance receives MESSAGE.
 
    The default method constructs an instance of the message's chosen
-   `message-effective-method-class', passing the MESSAGE, the CLASS and the
-   list of applicable methods as initargs to `make-instance'."))
+   `sod-message-effective-method-class', passing the MESSAGE, the CLASS and
+   the list of applicable methods as initargs to `make-instance'."))
 
 (export 'compute-effective-methods)
 (defgeneric compute-effective-methods (class)
index 08679ce..1e1f662 100644 (file)
 (defmethod make-load-form ((fragment c-fragment) &optional environment)
   (make-load-form-saving-slots fragment :environment environment))
 
-(export 'code-fragment-item)
+(export '(code-fragment-item code-fragment code-fragment-reason
+         code-fragment-name code-fragment-constraints))
 (defclass code-fragment-item ()
   ((fragment :initarg :fragment :type c-fragment :reader code-fragment)
    (reason :initarg :reason :type keyword :reader code-fragment-reason)
index 9cad3d4..4bf071c 100644 (file)
 ;;;--------------------------------------------------------------------------
 ;;; Class declarations.
 
+(export 'class-item)
+
 (defun parse-class-body (scanner pset name supers)
   ;; class-body ::= `{' class-item* `}'
   ;;