aboutsummaryrefslogtreecommitdiff
path: root/guile/starlet/clock.scm
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2021-10-24 17:47:53 +0200
committerThomas White <taw@physics.org>2021-10-24 18:42:43 +0200
commit8fea8080106328e2b1c0980814bed5583c4a4716 (patch)
tree282026c52bd4154872c3739964468536dc3d5295 /guile/starlet/clock.scm
parentb5d397eac92e84047be0a6bf676b1d533271010c (diff)
Allow clocks to be created in stopped state, add 'set-clock-expiration-time!'
Diffstat (limited to 'guile/starlet/clock.scm')
-rw-r--r--guile/starlet/clock.scm13
1 files changed, 10 insertions, 3 deletions
diff --git a/guile/starlet/clock.scm b/guile/starlet/clock.scm
index 6c11936..22aba7d 100644
--- a/guile/starlet/clock.scm
+++ b/guile/starlet/clock.scm
@@ -28,6 +28,8 @@
reverse-clock!
clock-expired?
+ set-clock-expiration-time!
+
<starlet-delayed-clock>
make-delayed-clock
@@ -63,13 +65,15 @@
(stopped
#:init-value #f
+ #:init-keyword #:stopped
#:getter clock-stopped?
#:setter set-clock-stopped!)
(expiration-time
#:init-value #f
#:init-keyword #:expiration-time
- #:getter expiration-time)
+ #:getter expiration-time
+ #:setter set-clock-expiration-time!)
(reversed
#:init-value #f
@@ -78,9 +82,12 @@
(define* (make-clock
- #:key (expiration-time #f))
+ #:key
+ (expiration-time #f)
+ (stopped #f))
(make <starlet-clock>
- #:expiration-time expiration-time))
+ #:expiration-time expiration-time
+ #:stopped stopped))
(define (clock-expired? clock)