X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Furimanager%2FuriManager.ml;h=a4d2604851bf11a85077be94542efc729060075a;hb=3605d724ae0b95e17e668b6e140c35ab19568bb2;hp=00cf4faa7a4775409eabdcb4d8610c9278a73329;hpb=cfff4940f12cd8f82c745e84403317b9eee964e7;p=helm.git diff --git a/helm/ocaml/urimanager/uriManager.ml b/helm/ocaml/urimanager/uriManager.ml index 00cf4faa7..a4d260485 100644 --- a/helm/ocaml/urimanager/uriManager.ml +++ b/helm/ocaml/urimanager/uriManager.ml @@ -36,6 +36,7 @@ let eq uri1 uri2 = uri1 == uri2 ;; + let string_of_uri uri = match uri.(Array.length uri - 1) with | "" -> @@ -43,6 +44,8 @@ let string_of_uri uri = | _ -> String.concat "#" [ uri.(Array.length uri - 3); uri.(Array.length uri - 1) ] + + let name_of_uri uri = uri.(Array.length uri - 2);; let buri_of_uri uri = uri.(Array.length uri - 4);; let depth_of_uri uri = Array.length uri - 3;; @@ -179,3 +182,16 @@ let string_of_uriref (uri, fi) = | [t] -> str ^ xp t ^ ")" | t :: c :: _ -> str ^ xp t ^ "/" ^ string_of_int c ^ ")" +let compare u1 u2 = + let su1 = string_of_uri u1 in + let su2 = string_of_uri u2 in + Pervasives.compare su1 su2 + +module OrderedUri = +struct + type t = uri + let compare = compare (* the one above, not Pervasives.compare *) +end + +module UriSet = Set.Make (OrderedUri) +