sig
  type in_channel
  type scanbuf = Scanf.Scanning.in_channel
  val stdin : Scanf.Scanning.in_channel
  type file_name = string
  val open_in : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
  val open_in_bin : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
  val close_in : Scanf.Scanning.in_channel -> unit
  val from_file : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
  val from_file_bin : string -> Scanf.Scanning.in_channel
  val from_string : string -> Scanf.Scanning.in_channel
  val from_function : (unit -> char) -> Scanf.Scanning.in_channel
  val from_channel : Stdlib.in_channel -> Scanf.Scanning.in_channel
  val end_of_input : Scanf.Scanning.in_channel -> bool
  val beginning_of_input : Scanf.Scanning.in_channel -> bool
  val name_of_input : Scanf.Scanning.in_channel -> string
  val stdib : Scanf.Scanning.in_channel
end