sig
  type 'a or_error = [ `Error of string | `Ok of 'a ]
  type t = [ `Atom of string | `List of CConvPSexp.t list ]
  val output : CConvPSexp.t CConv.Encode.output
  val source : CConvPSexp.t CConv.Decode.source
  val encode : 'src CConv.Encode.encoder -> 'src -> CConvPSexp.t
  val decode_exn : 'into CConv.Decode.decoder -> CConvPSexp.t -> 'into
  val decode :
    'into CConv.Decode.decoder -> CConvPSexp.t -> 'into CConvPSexp.or_error
end