let parse_error_to_string =
let pos () a = Pos.to_string a in function
| `malformed_meta (p, s) -> sprintf "malformed_meta (%a, %S)" pos p s
| `malformed_row (p, err, s) ->
sprintf "malformed_row (%s, %a, %S)"
(parse_row_error_to_string err) pos p s
| `malformed_header (p, s) -> sprintf "malformed_header (%a, %s)" pos p s
| _ -> sprintf "unknown_error"