actors: Add note that maybe action dispatch error checks should be moved.
authorChristopher Allan Webber <cwebber@dustycloud.org>
Tue, 3 May 2016 15:31:56 +0000 (10:31 -0500)
committerChristopher Allan Webber <cwebber@dustycloud.org>
Tue, 3 May 2016 15:31:56 +0000 (10:31 -0500)
* 8sync/systems/actors.scm (simple-dispatcher): Add comment.

8sync/systems/actors.scm

index c33240f309cc181dcf030b905a43b989e4cec186..376531a1787029c2c398d9950a8c5352d5ed6376 100644 (file)
@@ -352,6 +352,8 @@ Which is like doing manually:
     (let* ((action (message-action message))
            (method (assoc-ref action-map action)))
       (if (not method)
+          ;; @@: There's every possibility this should be handled in
+          ;;  hive-process-message instead.
           (throw 'action-not-found
                  "No appropriate action handler found for actor"
                  #:action action
@@ -370,6 +372,12 @@ Which is like doing manually:
      (cons (quote action-name) handler))))
 
 (define-syntax-rule (build-actions action-item ...)
+  "Build a mapping of actions.  Same syntax as make-action-dispatch
+but this doesn't build the dispatcher for you (you probably want to
+pass it to simple-dispatcher).
+
+The advantage here is that since this simply builds an alist, you can
+compose it with other action maps."
   (list (%expand-action-item action-item) ...))
 
 (define-syntax make-action-dispatch