summaryrefslogtreecommitdiff
path: root/module/readdir.m
diff options
context:
space:
mode:
Diffstat (limited to 'module/readdir.m')
-rw-r--r--module/readdir.m19
1 files changed, 19 insertions, 0 deletions
diff --git a/module/readdir.m b/module/readdir.m
new file mode 100644
index 00000000..b4917688
--- /dev/null
+++ b/module/readdir.m
@@ -0,0 +1,19 @@
+Readdir: module
+{
+ PATH: con "/dis/lib/readdir.dis";
+
+ # sortkey is one of NAME, ATIME, MTIME, SIZE, or NONE
+ # possibly with DESCENDING or'd in
+
+ NAME, ATIME, MTIME, SIZE, NONE: con iota;
+ DESCENDING: con (1<<5);
+
+ init: fn(path: string, sortkey: int): (array of ref Sys->Dir, int);
+ readall: fn(fd: ref Sys->FD, sortkey: int): (array of ref Sys->Dir, int);
+ sortdir:fn(a: array of ref Sys->Dir, key: int): (array of ref Sys->Dir, int);
+
+ # COMPACT can be or'd into sortkey to preserve only the first
+ # (by depth) of a group of duplicate names in a union
+
+ COMPACT: con (1<<4);
+};