`sig
type t = Stdlib.in_channel
type open_flag =
Stdlib.open_flag =
Open_rdonly
| Open_wronly
| Open_append
| Open_creat
| Open_trunc
| Open_excl
| Open_binary
| Open_text
| Open_nonblock
val stdin : In_channel.t
val open_bin : string -> In_channel.t
val open_text : string -> In_channel.t
val open_gen : In_channel.open_flag list -> int -> string -> In_channel.t
val with_open_bin : string -> (In_channel.t -> 'a) -> 'a
val with_open_text : string -> (In_channel.t -> 'a) -> 'a
val with_open_gen :
In_channel.open_flag list -> int -> string -> (In_channel.t -> 'a) -> 'a
val close : In_channel.t -> unit
val close_noerr : In_channel.t -> unit
val input_char : In_channel.t -> char option
val input_byte : In_channel.t -> int option
val input_line : In_channel.t -> string option
val really_input_string : In_channel.t -> int -> string option
val input_all : In_channel.t -> string
val input_lines : In_channel.t -> string list
val input : In_channel.t -> bytes -> int -> int -> int
val input_bigarray :
In_channel.t ->
('a, Stdlib.Bigarray.int8_unsigned_elt, Stdlib.Bigarray.c_layout)
Stdlib.Bigarray.Array1.t -> int -> int -> int
val really_input : In_channel.t -> bytes -> int -> int -> unit option
val really_input_bigarray :
In_channel.t ->
('a, Stdlib.Bigarray.int8_unsigned_elt, Stdlib.Bigarray.c_layout)
Stdlib.Bigarray.Array1.t -> int -> int -> unit option
val fold_lines : ('acc -> string -> 'acc) -> 'acc -> In_channel.t -> 'acc
val seek : In_channel.t -> int64 -> unit
val pos : In_channel.t -> int64
val length : In_channel.t -> int64
val set_binary_mode : In_channel.t -> bool -> unit
val is_binary_mode : In_channel.t -> bool
val isatty : In_channel.t -> bool
end`