blob: 501a0575010e5c4ffbda1265fb234814edd3e363 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
functor Make(M : sig
type key
con id :: Name
con parent :: Name
con cols :: {Type}
constraint [id] ~ [parent]
constraint [id, parent] ~ cols
val key_inj : sql_injectable key
val option_key_inj : sql_injectable (option key)
table tab : [id = key, parent = option key] ++ cols
end) : sig
con id = M.id
con parent = M.parent
val tree : ($([id = M.key, parent = option M.key] ++ M.cols) -> xbody)
-> option M.key
-> transaction xbody
end
|