Commit | Line | Data |
---|---|---|
d6223be9 AC |
1 | signature CONTACT = |
2 | sig | |
3 | type kind = {id :int, name : string, makeUrl : (string * string) option} | |
4 | ||
5 | val addKind : string * (string * string) option -> int | |
6 | val lookupKind : int -> kind | |
7 | val modKind : kind -> unit | |
8 | val deleteKind : int -> unit | |
9 | val listKinds : unit -> kind list | |
ee587f7f AC |
10 | |
11 | datatype priv = | |
12 | PUBLIC | |
13 | | MEMBERS | |
14 | | ADMINS | |
15 | val privToInt : priv -> int | |
16 | val privFromInt : int -> priv | |
17 | ||
18 | type contact = {id :int, usr : int, knd : int, v : string, priv : priv} | |
19 | ||
20 | val addContact : int * int * string * priv -> int | |
21 | val lookupContact : int -> contact | |
22 | val modContact : contact -> unit | |
23 | val deleteContact : int -> unit | |
24 | val listUserContacts : int * priv -> (kind * contact) list | |
6e8dc436 | 25 | val listContactsByKind : int * priv -> (string * contact) list |
ee587f7f AC |
26 | |
27 | val format : kind * contact -> string | |
d6223be9 | 28 | end |