functor (M : Definition->
  sig
    val feed :
      (char, Extlib.CharParser.position) Extlib.ParserCo.Source.t ->
      (Extlib.ExtGenlex.Genlex.token, Extlib.CharParser.position)
      Extlib.ParserCo.Source.t
    val start : (char, unit, Extlib.CharParser.position) Extlib.ParserCo.t
    val ident : (char, string, Extlib.CharParser.position) Extlib.ParserCo.t
    val kwd : (char, string, Extlib.CharParser.position) Extlib.ParserCo.t
    val identifier :
      string -> (char, unit, Extlib.CharParser.position) Extlib.ParserCo.t
    val keyword :
      string -> (char, unit, Extlib.CharParser.position) Extlib.ParserCo.t
    val char_literal :
      (char, char, Extlib.CharParser.position) Extlib.ParserCo.t
    val string_literal :
      (char, string, Extlib.CharParser.position) Extlib.ParserCo.t
    val integer : (char, int, Extlib.CharParser.position) Extlib.ParserCo.t
    val float : (char, float, Extlib.CharParser.position) Extlib.ParserCo.t
    val number :
      (char, [ `Float of float | `Integer of int ],
       Extlib.CharParser.position)
      Extlib.ParserCo.t
    val char :
      char -> (char, char, Extlib.CharParser.position) Extlib.ParserCo.t
    val string :
      string -> (char, string, Extlib.CharParser.position) Extlib.ParserCo.t
    val line_comment :
      (char, unit, Extlib.CharParser.position) Extlib.ParserCo.t
    val multiline_comment :
      (char, unit, Extlib.CharParser.position) Extlib.ParserCo.t
    val comment : (char, unit, Extlib.CharParser.position) Extlib.ParserCo.t
    val whitespaces :
      (char, unit, Extlib.CharParser.position) Extlib.ParserCo.t
  end