sig
  val input_lines : Pervasives.in_channel -> string BatEnum.t
  val input_chars : Pervasives.in_channel -> char BatEnum.t
  val input_list : Pervasives.in_channel -> string list
  val input_all : Pervasives.in_channel -> string
  val print_bool : bool -> unit
  val prerr_bool : bool -> unit
  val input_file : ?bin:bool -> string -> string
  val output_file : filename:string -> text:string -> unit
  val string_of_char : char -> string
  external identity : '-> 'a = "%identity"
  val unique : unit -> int
  val dump : '-> string
  val print : '-> unit
  val finally : (unit -> unit) -> ('-> 'b) -> '-> 'b
  val args : unit -> string BatEnum.t
  val invisible_args : int Pervasives.ref
  val exe : string
  val ( |> ) : '-> ('-> 'b) -> 'b
  val ( <| ) : ('-> 'b) -> '-> 'b
  val ( |- ) : ('-> 'b) -> ('-> 'c) -> '-> 'c
  val ( -| ) : ('-> 'b) -> ('-> 'a) -> '-> 'b
  val flip : ('-> '-> 'c) -> '-> '-> 'c
  val ( *** ) : ('-> 'b) -> ('-> 'd) -> 'a * '-> 'b * 'd
  val ( &&& ) : ('-> 'b) -> ('-> 'c) -> '-> 'b * 'c
  val first : ('-> 'b * 'c) -> '-> 'b
  val second : ('-> 'b * 'c) -> '-> 'c
  val curry : ('a * '-> 'c) -> '-> '-> 'c
  val uncurry : ('-> '-> 'c) -> 'a * '-> 'c
  val const : '-> '-> 'a
  type ('a, 'b) result = Ok of '| Bad of 'b
  val ignore_ok : ('a, exn) BatStd.result -> unit
  val ok : ('a, exn) BatStd.result -> 'a
  val wrap : ('-> 'b) -> '-> ('b, exn) BatStd.result
end