summaryrefslogtreecommitdiff
path: root/module/cfg.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/cfg.m
parent37da2899f40661e3e9631e497da8dc59b971cbd0 (diff)
20060303-partial
Diffstat (limited to 'module/cfg.m')
-rw-r--r--module/cfg.m25
1 files changed, 25 insertions, 0 deletions
diff --git a/module/cfg.m b/module/cfg.m
new file mode 100644
index 00000000..ddc490b8
--- /dev/null
+++ b/module/cfg.m
@@ -0,0 +1,25 @@
+Cfg : module {
+ PATH : con "/dis/lib/cfg.dis";
+
+ Attr : adt {
+ name : string;
+ value : string;
+ };
+
+ Tuple : adt {
+ lnum : int;
+ attrs : list of Attr;
+ lookup: fn (t : self ref Tuple, name : string) : string;
+ };
+
+ Record : adt {
+ tuples : list of ref Tuple;
+ lookup : fn (r : self ref Record, name : string) : (string, ref Tuple);
+ };
+
+ init : fn (path : string) : string;
+ reset: fn();
+ lookup : fn (name : string) : list of (string, ref Record);
+ getkeys : fn () : list of string;
+ parseline: fn(s: string, lno: int): (ref Tuple, string);
+};