Listing permissions
[hcoop/domtool2.git] / src / acl.sml
index d0b41fe..0adfb4b 100644 (file)
@@ -37,6 +37,13 @@ fun query {user, class, value} =
            NONE => false
          | SOME values => SS.member (values, value)
 
            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
 fun class {user, class} =
     case SM.find (!acl, user) of
        NONE => SS.empty