src/Pure/General/pretty.ML
changeset 27350 c8adf88960ad
parent 27347 31f98eaa198d
child 27351 6b120fb45278
equal deleted inserted replaced
27349:80273a002e37 27350:c8adf88960ad
   320   in fmt (prune prt) Buffer.empty end;
   320   in fmt (prune prt) Buffer.empty end;
   321 
   321 
   322 (*ML toplevel pretty printing*)
   322 (*ML toplevel pretty printing*)
   323 fun pprint prt (put_str, begin_blk, put_brk, put_fbrk, end_blk) =
   323 fun pprint prt (put_str, begin_blk, put_brk, put_fbrk, end_blk) =
   324   let
   324   let
   325     fun pp (Block (m, prts, ind, _)) =
   325     fun pp (Block (_, prts, ind, _)) = (begin_blk ind; pp_lst prts; end_blk ())
   326           let val (bg, en) = Markup.output m
       
   327           in put_str bg; begin_blk ind; pp_lst prts; end_blk (); put_str en end
       
   328       | pp (String (s, _)) = put_str s
   326       | pp (String (s, _)) = put_str s
   329       | pp (Break (false, wd)) = put_brk wd
   327       | pp (Break (false, wd)) = put_brk wd
   330       | pp (Break (true, _)) = put_fbrk ()
   328       | pp (Break (true, _)) = put_fbrk ()
   331     and pp_lst [] = ()
   329     and pp_lst [] = ()
   332       | pp_lst (prt :: prts) = (pp prt; pp_lst prts);
   330       | pp_lst (prt :: prts) = (pp prt; pp_lst prts);