X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fextlib%2FgraphvizPp.ml;h=46432883744ad7c68406be2d040dbe40134f25ce;hb=b367de0252e88d6b0476648d5ceac7e4aeffca27;hp=ed5bbdc54c69c1d1557a43635d72bd4c2a4f1ca3;hpb=7daf77fac7dc562c3b0a363c7bf4f84d39de4280;p=helm.git diff --git a/helm/software/components/extlib/graphvizPp.ml b/helm/software/components/extlib/graphvizPp.ml index ed5bbdc54..464328837 100644 --- a/helm/software/components/extlib/graphvizPp.ml +++ b/helm/software/components/extlib/graphvizPp.ml @@ -49,10 +49,16 @@ module Dot = struct let attribute fmt (k, v) = fprintf fmt "@[%s=@,\"%s\",@]" k v let attributes attrs fmt = List.iter (attribute fmt) attrs + let quote_string quote s = if quote then "\"" ^s ^ "\"" else s let node name ~quote ?(attrs = []) fmt = - let quote_string = if quote then "\"" else "" in - fprintf fmt "@[%s%s%s@ [" quote_string name quote_string; + fprintf fmt "@[%s@ [" (quote_string quote name); + attributes attrs fmt; + fprintf fmt "];@]@," + + let edge ~quote name1 name2 ?(attrs = []) fmt = + fprintf fmt "@[%s ->@ %s@ [" + (quote_string quote name1) (quote_string quote name2); attributes attrs fmt; fprintf fmt "];@]@," @@ -68,10 +74,7 @@ module Dot = | None -> ()) let node = node ~quote:true - let edge name1 name2 ?(attrs = []) fmt = - fprintf fmt "@[%s ->@ %s@ [" name1 name2; - attributes attrs fmt; - fprintf fmt "];@]@," + let edge = edge ~quote:true let raw s fmt = pp_print_string fmt s let trailer fmt = fprintf fmt "@,}@]%!" end