NONE => false
| SOME values => SS.member (values, value)
+fun queryAll user =
+ case SM.find (!acl, user) of
+ NONE => []
+ | SOME classes => SM.foldri (fn (class, values, out) =>
+ (class, SS.foldr (op::) [] values) :: out)
+ [] classes
+
fun class {user, class} =
case SM.find (!acl, user) of
NONE => SS.empty