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