val query : acl -> bool
(* Is this permission granted? *)
+ val queryAll : string -> (string * string list) list
+ (* What are all of a user's permissions, by class? *)
+
+ val users : unit -> string list
+ (* Which users have been granted privileges? *)
+
+ val whoHas : {class : string, value : string} -> string list
+ (* Which users have a permission? *)
+
val class : {user : string, class : string} -> DataStructures.StringSet.set
(* For what objects does the user have the permission? *)
val revoke : acl -> unit
(* Grant/ungrant the user the permission. *)
+ val revokeFromAll : {class : string, value : string} -> unit
+
+ val rmuser : string -> unit
+ (* Remove all of a user's privileges. *)
+
val read : string -> unit
val write : string -> unit
(* Read/write saved ACL state from/to a file *)
+ val queryDomain : {user : string, domain : string} -> bool
+ (* Like a call to [query] for class 'domain', but considers subdomains, too *)
end