sig
external raise : exn -> 'a = "%raise"
val invalid_arg : string -> 'a
val failwith : string -> 'a
val exit : int -> 'a
val at_exit : (unit -> unit) -> unit
external ( = ) : 'a -> 'a -> bool = "%equal"
external ( <> ) : 'a -> 'a -> bool = "%notequal"
external ( < ) : 'a -> 'a -> bool = "%lessthan"
external ( > ) : 'a -> 'a -> bool = "%greaterthan"
external ( <= ) : 'a -> 'a -> bool = "%lessequal"
external ( >= ) : 'a -> 'a -> bool = "%greaterequal"
external compare : 'a -> 'a -> int = "%compare"
val min : 'a -> 'a -> 'a
val max : 'a -> 'a -> 'a
external ( == ) : 'a -> 'a -> bool = "%eq"
external ( != ) : 'a -> 'a -> bool = "%noteq"
external not : bool -> bool = "%boolnot"
external ( && ) : bool -> bool -> bool = "%sequand"
external ( & ) : bool -> bool -> bool = "%sequand"
external ( || ) : bool -> bool -> bool = "%sequor"
external ( ~- ) : int -> int = "%negint"
external succ : int -> int = "%succint"
external pred : int -> int = "%predint"
external ( + ) : int -> int -> int = "%addint"
external ( - ) : int -> int -> int = "%subint"
external ( * ) : int -> int -> int = "%mulint"
external ( / ) : int -> int -> int = "%divint"
external ( mod ) : int -> int -> int = "%modint"
val abs : int -> int
val max_int : int
val min_int : int
external ( land ) : int -> int -> int = "%andint"
external ( lor ) : int -> int -> int = "%orint"
external ( lxor ) : int -> int -> int = "%xorint"
val lnot : int -> int
external ( lsl ) : int -> int -> int = "%lslint"
external ( lsr ) : int -> int -> int = "%lsrint"
external ( asr ) : int -> int -> int = "%asrint"
external ( ~-. ) : float -> float = "%negfloat"
external ( +. ) : float -> float -> float = "%addfloat"
external ( -. ) : float -> float -> float = "%subfloat"
external ( *. ) : float -> float -> float = "%mulfloat"
external ( /. ) : float -> float -> float = "%divfloat"
external ( ** ) : float -> float -> float = "caml_power_float" "pow"
"float"
external sqrt : float -> float = "caml_sqrt_float" "sqrt" "float"
external exp : float -> float = "caml_exp_float" "exp" "float"
external log : float -> float = "caml_log_float" "log" "float"
external log10 : float -> float = "caml_log10_float" "log10" "float"
external cos : float -> float = "caml_cos_float" "cos" "float"
external sin : float -> float = "caml_sin_float" "sin" "float"
external tan : float -> float = "caml_tan_float" "tan" "float"
external acos : float -> float = "caml_acos_float" "acos" "float"
external asin : float -> float = "caml_asin_float" "asin" "float"
external atan : float -> float = "caml_atan_float" "atan" "float"
external atan2 : float -> float -> float = "caml_atan2_float" "atan2"
"float"
external cosh : float -> float = "caml_cosh_float" "cosh" "float"
external sinh : float -> float = "caml_sinh_float" "sinh" "float"
external tanh : float -> float = "caml_tanh_float" "tanh" "float"
external ceil : float -> float = "caml_ceil_float" "ceil" "float"
external floor : float -> float = "caml_floor_float" "floor" "float"
external abs_float : float -> float = "%absfloat"
external mod_float : float -> float -> float = "caml_fmod_float" "fmod"
"float"
external frexp : float -> float * int = "caml_frexp_float"
external ldexp : float -> int -> float = "caml_ldexp_float"
external modf : float -> float * float = "caml_modf_float"
external float : int -> float = "%floatofint"
external float_of_int : int -> float = "%floatofint"
external truncate : float -> int = "%intoffloat"
external int_of_float : float -> int = "%intoffloat"
val infinity : float
val neg_infinity : float
val nan : float
val ( ^ ) : string -> string -> string
val uppercase : string -> string
val lowercase : string -> string
external int_of_char : char -> int = "%identity"
val char_of_int : int -> char
external ignore : 'a -> unit = "%ignore"
val string_of_char : char -> string
val string_of_bool : bool -> string
val bool_of_string : string -> bool
val string_of_int : int -> string
external int_of_string : string -> int = "caml_int_of_string"
val string_of_float : float -> string
external float_of_string : string -> float = "caml_float_of_string"
val dump : 'a -> string
val ( @ ) : 'a list -> 'a list -> 'a list
val stdin : Extlib.IO.input
val stdout : unit Extlib.IO.output
val stderr : unit Extlib.IO.output
val stdnull : unit Extlib.IO.output
val flush_all : unit -> unit
val print_bool : bool -> unit
val print_char : char -> unit
val print_string : string -> unit
val print_int : int -> unit
val print_float : float -> unit
val print_endline : string -> unit
val print_newline : unit -> unit
val print_guess : 'a -> unit
val print_all : Extlib.IO.input -> unit
val prerr_bool : bool -> unit
val prerr_char : char -> unit
val prerr_string : string -> unit
val prerr_int : int -> unit
val prerr_float : float -> unit
val prerr_endline : string -> unit
val prerr_newline : unit -> unit
val prerr_guess : 'a -> unit
val prerr_all : Extlib.IO.input -> unit
val read_line : unit -> string
val read_int : unit -> int
val read_float : unit -> float
val open_out :
?mode:Extlib.File.open_out_flag list ->
?perm:Extlib.File.permission -> string -> unit Extlib.IO.output
val open_out_bin : string -> unit Extlib.IO.output
val open_out_gen : open_flag list -> int -> string -> unit Extlib.IO.output
val flush : unit Extlib.IO.output -> unit
val output_char : unit Extlib.IO.output -> char -> unit
val output_string : unit Extlib.IO.output -> string -> unit
val output_rope : unit Extlib.IO.output -> Extlib.Rope.t -> unit
val output : unit Extlib.IO.output -> string -> int -> int -> unit
val output_byte : unit Extlib.IO.output -> int -> unit
val output_binary_int : unit Extlib.IO.output -> int -> unit
val output_value : unit Extlib.IO.output -> 'a -> unit
val close_out : unit Extlib.IO.output -> unit
val close_out_noerr : unit Extlib.IO.output -> unit
val open_in :
?mode:Extlib.File.open_in_flag list ->
?perm:Extlib.File.permission -> string -> Extlib.IO.input
val open_in_bin : string -> Extlib.IO.input
val open_in_gen : open_flag list -> int -> string -> Extlib.IO.input
val input_char : Extlib.IO.input -> char
val input_line : Extlib.IO.input -> string
val input : Extlib.IO.input -> string -> int -> int -> int
val really_input : Extlib.IO.input -> string -> int -> int -> unit
val input_byte : Extlib.IO.input -> int
val input_binary_int : Extlib.IO.input -> int
val input_value : Extlib.IO.input -> 'a
val close_in : Extlib.IO.input -> unit
val close_in_noerr : Extlib.IO.input -> unit
external ref : 'a -> 'a ref = "%makemutable"
external ( ! ) : 'a ref -> 'a = "%field0"
external ( := ) : 'a ref -> 'a -> unit = "%setfield0"
external incr : int ref -> unit = "%incr"
external decr : int ref -> unit = "%decr"
type ('a, 'b, 'c, 'd) format4 = ('a, 'b, 'c, 'c, 'c, 'd) format6
type ('a, 'b, 'c) format = ('a, 'b, 'c, 'c) format4
val string_of_format : ('a, 'b, 'c, 'd, 'e, 'f) format6 -> string
external format_of_string :
('a, 'b, 'c, 'd, 'e, 'f) format6 -> ('a, 'b, 'c, 'd, 'e, 'f) format6
= "%identity"
val ( ^^ ) :
('a, 'b, 'c, 'd, 'e, 'f) format6 ->
('f, 'b, 'c, 'e, 'g, 'h) format6 -> ('a, 'b, 'c, 'd, 'g, 'h) format6
external identity : 'a -> 'a = "%identity"
val undefined : ?message:string -> 'a -> 'b
val ( |> ) : 'a -> ('a -> 'b) -> 'b
val ( **> ) : ('a -> 'b) -> 'a -> 'b
val ( |- ) : ('a -> 'b) -> ('b -> 'c) -> 'a -> 'c
val ( -| ) : ('a -> 'b) -> ('c -> 'a) -> 'c -> 'b
val flip : ('a -> 'b -> 'c) -> 'b -> 'a -> 'c
val ( *** ) : ('a -> 'b) -> ('c -> 'd) -> 'a * 'c -> 'b * 'd
val ( &&& ) : ('a -> 'b) -> ('a -> 'c) -> 'a -> 'b * 'c
val first : ('a -> 'b) -> 'a * 'c -> 'b * 'c
val second : ('a -> 'b) -> 'c * 'a -> 'c * 'b
val curry : ('a * 'b -> 'c) -> 'a -> 'b -> 'c
val uncurry : ('a -> 'b -> 'c) -> 'a * 'b -> 'c
val const : 'a -> 'b -> 'a
val unique : unit -> int
val finally : (unit -> unit) -> ('a -> 'b) -> 'a -> 'b
val args : unit -> string Extlib.Enum.t
val invisible_args : int ref
val exe : string
val foreach : 'a Extlib.Enum.t -> ('a -> unit) -> unit
val iter : ('a -> unit) -> 'a Extlib.Enum.t -> unit
val map : ('a -> 'b) -> 'a Extlib.Enum.t -> 'b Extlib.Enum.t
val reduce : ('a -> 'a -> 'a) -> 'a Extlib.Enum.t -> 'a
val fold : ('a -> 'b -> 'a) -> 'a -> 'b Extlib.Enum.t -> 'a
val scanl : ('a -> 'b -> 'a) -> 'a -> 'b Extlib.Enum.t -> 'a Extlib.Enum.t
val ( /@ ) : 'a Extlib.Enum.t -> ('a -> 'b) -> 'b Extlib.Enum.t
val ( @/ ) : ('a -> 'b) -> 'a Extlib.Enum.t -> 'b Extlib.Enum.t
val exists : ('a -> bool) -> 'a Extlib.Enum.t -> bool
val for_all : ('a -> bool) -> 'a Extlib.Enum.t -> bool
val find : ('a -> bool) -> 'a Extlib.Enum.t -> 'a
val peek : 'a Extlib.Enum.t -> 'a option
val get : 'a Extlib.Enum.t -> 'a option
val push : 'a Extlib.Enum.t -> 'a -> unit
val junk : 'a Extlib.Enum.t -> unit
val filter : ('a -> bool) -> 'a Extlib.Enum.t -> 'a Extlib.Enum.t
val ( // ) : 'a Extlib.Enum.t -> ('a -> bool) -> 'a Extlib.Enum.t
val concat : 'a Extlib.Enum.t Extlib.Enum.t -> 'a Extlib.Enum.t
val ( -- ) : int -> int -> int Extlib.Enum.t
val ( --. ) : float * float -> float -> float Extlib.Enum.t
val ( --- ) : int -> int -> int Extlib.Enum.t
val ( --~ ) : char -> char -> char Extlib.Enum.t
val print :
?first:string ->
?last:string ->
?sep:string ->
('a Extlib.InnerIO.output -> 'b -> unit) ->
'a Extlib.InnerIO.output -> 'b Extlib.Enum.t -> unit
type printer_flags =
Extlib.ExtPervasives.Pervasives.printer_flags = {
pf_width : int option;
pf_padding_char : char;
pf_justify : [ `left | `right ];
pf_positive_prefix : char option;
}
val default_printer_flags : printer_flags
val printer_a :
((unit Extlib.IO.output -> 'a -> unit) -> 'a -> 'b, 'b)
Extlib.Print.directive
val printer_t :
((unit Extlib.IO.output -> unit) -> 'a, 'a) Extlib.Print.directive
val printer_B : (bool -> 'a, 'a) Extlib.Print.directive
val printer_c : (char -> 'a, 'a) Extlib.Print.directive
val printer_C : (char -> 'a, 'a) Extlib.Print.directive
val printer_s :
?flags:printer_flags -> (string -> 'a, 'a) Extlib.Print.directive
val printer_S :
?flags:printer_flags -> (string -> 'a, 'a) Extlib.Print.directive
val printer_d :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_i :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_int :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_u :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_uint :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_x :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_X :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_hex :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_HEX :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_o :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_oct :
?flags:printer_flags -> (int -> 'a, 'a) Extlib.Print.directive
val printer_ld :
?flags:printer_flags -> (int32 -> 'a, 'a) Extlib.Print.directive
val printer_li :
?flags:printer_flags -> (int32 -> 'a, 'a) Extlib.Print.directive
val printer_lu :
?flags:printer_flags -> (int32 -> 'a, 'a) Extlib.Print.directive
val printer_lx :
?flags:printer_flags -> (int32 -> 'a, 'a) Extlib.Print.directive
val printer_lX :
?flags:printer_flags -> (int32 -> 'a, 'a) Extlib.Print.directive
val printer_lo :
?flags:printer_flags -> (int32 -> 'a, 'a) Extlib.Print.directive
val printer_Ld :
?flags:printer_flags -> (int64 -> 'a, 'a) Extlib.Print.directive
val printer_Li :
?flags:printer_flags -> (int64 -> 'a, 'a) Extlib.Print.directive
val printer_Lu :
?flags:printer_flags -> (int64 -> 'a, 'a) Extlib.Print.directive
val printer_Lx :
?flags:printer_flags -> (int64 -> 'a, 'a) Extlib.Print.directive
val printer_LX :
?flags:printer_flags -> (int64 -> 'a, 'a) Extlib.Print.directive
val printer_Lo :
?flags:printer_flags -> (int64 -> 'a, 'a) Extlib.Print.directive
val printer_nd :
?flags:printer_flags -> (nativeint -> 'a, 'a) Extlib.Print.directive
val printer_ni :
?flags:printer_flags -> (nativeint -> 'a, 'a) Extlib.Print.directive
val printer_nu :
?flags:printer_flags -> (nativeint -> 'a, 'a) Extlib.Print.directive
val printer_nx :
?flags:printer_flags -> (nativeint -> 'a, 'a) Extlib.Print.directive
val printer_nX :
?flags:printer_flags -> (nativeint -> 'a, 'a) Extlib.Print.directive
val printer_no :
?flags:printer_flags -> (nativeint -> 'a, 'a) Extlib.Print.directive
val printer_f : (float -> 'a, 'a) Extlib.Print.directive
val printer_F : (float -> 'a, 'a) Extlib.Print.directive
val printer_format :
(('a, 'b) Extlib.Print.format -> 'a, 'b) Extlib.Print.directive
val printer_sc :
?flags:printer_flags ->
([> `Read ] Extlib.ExtString.String.Cap.t -> 'a, 'a)
Extlib.Print.directive
val printer_Sc :
?flags:printer_flags ->
([> `Read ] Extlib.ExtString.String.Cap.t -> 'a, 'a)
Extlib.Print.directive
val printer_rope : (Extlib.Rope.t -> 'a, 'a) Extlib.Print.directive
val printer_utf8 : (Extlib.ExtUTF8.UTF8.t -> 'a, 'a) Extlib.Print.directive
val printer_obj :
(< print : unit Extlib.IO.output -> unit; .. > -> 'a, 'a)
Extlib.Print.directive
val bool_printer : bool Extlib.Value_printer.t
val int_printer : int Extlib.Value_printer.t
val int32_printer : int32 Extlib.Value_printer.t
val int64_printer : int64 Extlib.Value_printer.t
val nativeint_printer : nativeint Extlib.Value_printer.t
val float_printer : float Extlib.Value_printer.t
val string_printer : string Extlib.Value_printer.t
val list_printer :
'a Extlib.Value_printer.t -> 'a list Extlib.Value_printer.t
val array_printer :
'a Extlib.Value_printer.t -> 'a array Extlib.Value_printer.t
val option_printer :
'a Extlib.Value_printer.t -> 'a option Extlib.Value_printer.t
val maybe_printer :
'a Extlib.Value_printer.t -> 'a option Extlib.Value_printer.t
val exn_printer : exn Extlib.Value_printer.t
type ('a, 'b) result = ('a, 'b) Extlib.Std.result = Ok of 'a | Bad of 'b
val sexp_of_result :
('a -> Sexplib.Sexp.t) ->
('b -> Sexplib.Sexp.t) -> ('a, 'b) result -> Sexplib.Sexp.t
val result_of_sexp :
(Sexplib.Sexp.t -> 'a) ->
(Sexplib.Sexp.t -> 'b) -> Sexplib.Sexp.t -> ('a, 'b) result
val lock : Extlib.Concurrent.lock ref
end