cvsimport
[hcoop/zz_old/portal.git] / group.sig
CommitLineData
8d347a33 1signature GROUP =
2sig
3 type group = {id :int, name : string}
4 type membership = {usr : int, grp : int}
5
6 val addGroup : string -> int
7 val lookupGroup : int -> group
8 val modGroup : group -> unit
9 val deleteGroup : int -> unit
10 val listGroups : unit -> group list
11
12 val validGroupName : string -> bool
13 val groupNameToId : string -> int option
14
15 val userInGroupNum : int * int -> bool
16 val userInGroupName : int * string -> bool
17
18 val addToGroup : membership -> unit
19 val addToGroups : int * int list -> unit
20 val removeFromGroup : membership -> unit
21 val groupMembers : int -> Init.user list
22
23 val inGroupNum : int -> bool
24 val inGroupName : string -> bool
25
26 (* These raise Access if the check fails *)
27 val requireGroupNum : int -> unit
28 val requireGroupName : string -> unit
29end