sig
  type token = Id of string | Key of string | Proof of 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