type objs = (bool*obj) list
type role = {
+ mutable x: bool;
mutable v: version;
mutable o: objs;
mutable n: names;
type roles = (bool*role) list
type status = {
+ mutable m: bool;
mutable r: roles;
mutable s: version;
mutable t: objs;
type pointer = int list
-type error = EExt of string
+type error = EWrongExt of string
| EStage of version
| ENoStage
- | ENews
+ | EWaiting
| ENameClash of name
| EObjClash of obj
| ERoleClash of role
| ENoEntry
| EWrongSelect
| EWrongVersion
+ | ETops
+ | EWrongRequest of string * string
exception Error of error