X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=src%2Fasta.ml;h=942133c9162e1c2e99abf3736368aeef52151c95;hb=5e6e859cd104ffdaa08bca3f1edeaa6f21edccf8;hp=2f4083638686b4fbe38c52b8c869c7f752581900;hpb=7f20d23e406e81e6e7271d2621cb868d9fe63aae;p=tatoo.git diff --git a/src/asta.ml b/src/asta.ml index 2f40836..942133c 100644 --- a/src/asta.ml +++ b/src/asta.ml @@ -114,24 +114,27 @@ let top_states ast = StateSet.elements ast.top let print fmt asta = let print_box fmt flag = let pp = Format.fprintf fmt in - Format.fprintf fmt "@[# Query states: %a@ @]" + pp "@[# Query states: %a@ @]" StateSet.print asta.quer; - Format.fprintf fmt "@[# Recognizing states: %a@ @]" + pp "@[# Recognizing states: %a@ @]" StateSet.print asta.reco; - Format.fprintf fmt "@[# Selecting states: %a@ @]" + pp "@[# Selecting states: %a@ @]" StateSet.print asta.selec; - Format.fprintf fmt "@[# Bottom states: %a@ @]" + pp "@[# Bottom states: %a@ @]" StateSet.print asta.bottom; - Format.fprintf fmt "@[# Tom states: %a@ @]" + pp "@[# Tom states: %a@ @]" StateSet.print asta.top; let print_list_tr fmt z= - SetT.iter (fun x -> Format.fprintf fmt "| %a@ " Transition.print x) z in + if SetT.is_empty z + then Format.fprintf fmt "ø" + else + SetT.iter (fun x -> Format.fprintf fmt "| %a@ " Transition.print x) z in let print_box_list fmt trans = Format.fprintf fmt " @[%a @]" print_list_tr trans in Format.fprintf fmt "@[# Queries transitions:@ %a@ @]" print_box_list asta.trans_q; Format.fprintf fmt "@[# Recognizing transitions:@ %a@ @]" print_box_list asta.trans_r in - Format.fprintf fmt "@[ ##### ASTA #####@. %a@ @]@ " print_box 0 + Format.fprintf fmt "@[ ##### ASTA #####@. %a@ @]" print_box 0 let to_file out asta = ()