actors: Switch over to using wrap-rmeta-slot for build-actions.
[8sync.git] / 8sync / rmeta-slot.scm
index 7a3fe32e00e71ebb806c8f2d4dab5d9a879addfd..6c4ef6d49b7d21d7a0265c900fb77112a2657765 100644 (file)
@@ -21,7 +21,8 @@
   #:use-module (srfi srfi-9)
   #:use-module (ice-9 match)
 
-  #:export (make-rmeta-slot
+  #:export (wrap-rmeta-slot
+            rmeta-slot-table rmeta-slot-cache
             maybe-build-rmeta-slot-cache!
             class-rmeta-ref))
 
@@ -40,8 +41,8 @@
 ;;;   ;; Define a class with a meta-slot
 ;;;   (define-class <kah-lassy> ()
 ;;;     (entries #:allocation #:each-subclass
-;;;              #:init-value
-;;;              (make-rmeta-slot
+;;;              #:init-thunk
+;;;              (wrap-rmeta-slot
 ;;;               `((foo . "bar")
 ;;;                 (baz . "basil")))))
 ;;;
@@ -52,8 +53,8 @@
 ;;;   ;; Define a subclass
 ;;;   (define-class <sub-lassy> (<kah-lassy>)
 ;;;     (entries #:allocation #:each-subclass
-;;;              #:init-value
-;;;              (make-rmeta-slot
+;;;              #:init-thunk
+;;;              (wrap-rmeta-slot
 ;;;               `((foo . "foo2")
 ;;;                 (peanut . "gallery")))))
 ;;;
 (define (make-rmeta-slot table)
   (%make-rmeta-slot table #f))
 
+(define (wrap-rmeta-slot table)
+  "In general, using wrap-rmeta-slot in combination with "
+  (lambda ()
+    (make-rmeta-slot table)))
+
 ;; Immutable and unique
 (define %the-nothing (cons '*the* '*nothing*))