summaryrefslogtreecommitdiff
path: root/module/inflate.m
diff options
context:
space:
mode:
authorCharles.Forsyth <devnull@localhost>2006-12-22 20:52:35 +0000
committerCharles.Forsyth <devnull@localhost>2006-12-22 20:52:35 +0000
commit46439007cf417cbd9ac8049bb4122c890097a0fa (patch)
tree6fdb25e5f3a2b6d5657eb23b35774b631d4d97e4 /module/inflate.m
parent37da2899f40661e3e9631e497da8dc59b971cbd0 (diff)
20060303-partial
Diffstat (limited to 'module/inflate.m')
-rw-r--r--module/inflate.m25
1 files changed, 25 insertions, 0 deletions
diff --git a/module/inflate.m b/module/inflate.m
new file mode 100644
index 00000000..c547ec16
--- /dev/null
+++ b/module/inflate.m
@@ -0,0 +1,25 @@
+Inflate: module
+{
+ PATH: con "/dis/lib/inflate.dis";
+
+ InflateBlock: con 16r8000;
+ InflateMask: con 16rf0000;
+
+ InflateEmptyIn,
+ InflateFlushOut,
+ InflateAck,
+ InflateDone,
+ InflateError: con iota + (1 << 16) + 1;
+
+ # conduit for data streaming between inflate and its producer/consumer
+ InflateIO: adt
+ {
+ ibuf: array of byte; # input buffer [InflateBlock]
+ obuf: array of byte; # output buffer [InflateBlock]
+ c: chan of int; # for inflate <-> server comm.
+ };
+
+ init: fn();
+ reset: fn(): ref InflateIO;
+ inflate: fn();
+};