sig
  type ('a, 'b) t =
      Input_closed
    | Input_closed_in_the_middle_of_data of ('a, 'b) Core.Std.Unpack_buffer.t
    | Output_closed of 'Core.Std.Queue.t *
        ('a, 'b) Core.Std.Unpack_buffer.t
    | Unpack_error of Core.Std.Error.t
  val to_error : ('a, 'b) Unpack_sequence.Result.t -> Core.Std.Error.t
  val sexp_of_t :
    ('-> Sexplib.Sexp.t) ->
    ('-> Sexplib.Sexp.t) ->
    ('a, 'b) Unpack_sequence.Result.t -> Sexplib.Sexp.t
end