sig
  type token =
      Id of string
    | Key of string
    | Proof of string * string
    | Word
    | Eof
  type input
  val open_file : string -> Script.input
  val close : Script.input -> unit
  val skip : Script.input -> unit
  val token : Script.input -> Script.token
  val error :
    Script.input -> ('a, Format.formatter, unit, 'b) Pervasives.format4 -> 'a
  val key : Script.input -> string -> bool
  val eat : Script.input -> string -> unit
  val ident : Script.input -> string
  val idents : Script.input -> string list
  val filter : string -> string option
end