sig
  type ('a, 'b) t
  val get_state : ('a, 'b) BatParserCo.Source.t -> 'BatParserCo.state
  val set_full_state :
    ('a, 'b) BatParserCo.Source.t ->
    '-> ('-> '-> 'c) -> ('a, 'c) BatParserCo.Source.t
  val of_enum :
    'BatEnum.t -> '-> ('-> '-> 'b) -> ('a, 'b) BatParserCo.Source.t
end