X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=tagSet.ml;h=ba3f431c3cb6e88a5457c2a250b8759406e2408d;hb=90c98aee27a7e4a85c45b5488e5505649f5a265c;hp=74784cfb8c38ae309fe37b9646cd96b72a84fe3c;hpb=09870a49122b3d7048422818dbb0a038513b4d14;p=SXSI%2Fxpathcomp.git diff --git a/tagSet.ml b/tagSet.ml index 74784cf..ba3f431 100644 --- a/tagSet.ml +++ b/tagSet.ml @@ -15,3 +15,18 @@ let attribute = singleton Tag.attribute let star = diff any (cup pcdata attribute) let node = neg attribute +let print ppf t = + let print_set s = + Format.fprintf ppf "{"; + Ptset.Int.iter + (fun t -> Format.fprintf ppf "'%s' " (Tag.to_string t)) + s; + Format.fprintf ppf "}" + in + if is_finite t then + if is_empty t then + Format.fprintf ppf "∅" else print_set (positive t) + else + Format.fprintf ppf "Σ"; + if not (is_any t) then + (Format.fprintf ppf "\\" ; print_set (negative t))