mirror of
https://github.com/c-cube/iter.git
synced 2025-12-06 11:15:32 -05:00
better pretty printing of S-exprs
This commit is contained in:
parent
8ee07ed6a2
commit
8c8b09c94a
1 changed files with 4 additions and 2 deletions
6
sexpr.ml
6
sexpr.ml
|
|
@ -95,13 +95,15 @@ let pp_token formatter token = match token with
|
||||||
(** Print a sequence of Sexpr tokens on the given formatter *)
|
(** Print a sequence of Sexpr tokens on the given formatter *)
|
||||||
let pp_tokens formatter tokens =
|
let pp_tokens formatter tokens =
|
||||||
let first = ref true in
|
let first = ref true in
|
||||||
|
let last = ref false in
|
||||||
Sequence.iter
|
Sequence.iter
|
||||||
(fun token ->
|
(fun token ->
|
||||||
(match token with
|
(match token with
|
||||||
| `Open -> (if not !first then Format.fprintf formatter " "); first := true
|
| `Open -> (if not !first then Format.fprintf formatter " "); first := true
|
||||||
| `Close -> first := false
|
| `Close -> first := false; last := true
|
||||||
| _ -> if !first then first := false else Format.fprintf formatter " ");
|
| _ -> if !first then first := false else Format.fprintf formatter " ");
|
||||||
pp_token formatter token)
|
pp_token formatter token;
|
||||||
|
if !last then (Format.pp_print_break formatter 0 0; last := false))
|
||||||
tokens
|
tokens
|
||||||
|
|
||||||
(** Pretty-print the S-expr. If [indent] is true, the S-expression
|
(** Pretty-print the S-expr. If [indent] is true, the S-expression
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue