diff options
Diffstat (limited to 'module/cfg.m')
| -rw-r--r-- | module/cfg.m | 25 |
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); +}; |
