struct
  type string_to_raw_item = [
    | `empty_line of Pos.t
    | `incomplete_input of Pos.t * string list * string option
    | `malformed_partial_sequence of Pos.t * string
    | `sequence_is_too_long of Pos.t * string
  ]
  with sexp

  type t = [
    | string_to_raw_item
    | `unnamed_char_seq of char_seq
    | `unnamed_int_seq of int_seq
  ]
  with sexp
end