summaryrefslogtreecommitdiff
path: root/module/watchvars.m
diff options
context:
space:
mode:
Diffstat (limited to 'module/watchvars.m')
-rw-r--r--module/watchvars.m13
1 files changed, 13 insertions, 0 deletions
diff --git a/module/watchvars.m b/module/watchvars.m
new file mode 100644
index 00000000..1b80e6be
--- /dev/null
+++ b/module/watchvars.m
@@ -0,0 +1,13 @@
+Watchvars: module {
+ PATH: con "/dis/lib/watchvars.dis";
+ Watchvar: adt[T] {
+ c: chan of (T, chan of T);
+
+ new: fn(v: T): Watchvar[T];
+ get: fn(e: self Watchvar[T]): T;
+ set: fn(e: self Watchvar[T], v: T);
+ wait: fn(e: self Watchvar[T]): T;
+ waitc: fn(e: self Watchvar[T]): (T, chan of T);
+ waited: fn(e: self Watchvar[T], ic: chan of T, v: T);
+ };
+};