blob: b66b8b0e82705c411e5ade221edfe862988b4084 [file] [log] [blame] [edit]
(* Things that should be in the OCaml library... *)
type void = |
module Fun :
sig
val id : 'a -> 'a
val curry : ('a * 'b -> 'c) -> ('a -> 'b -> 'c)
val uncurry : ('a -> 'b -> 'c) -> ('a * 'b -> 'c)
val repeat : int -> ('a -> unit) -> 'a -> unit
end
module List :
sig
val make : int -> 'a -> 'a list
val table : int -> (int -> 'a) -> 'a list
val take : int -> 'a list -> 'a list (* raises Failure *)
val drop : int -> 'a list -> 'a list (* raises Failure *)
val last : 'a list -> 'a (* raises Failure *)
val split_last : 'a list -> 'a list * 'a (* raises Failure *)
val index_of : 'a -> 'a list -> int option
val index_where : ('a -> bool) -> 'a list -> int option
val map_filter : ('a -> 'b option) -> 'a list -> 'b list
val concat_map : ('a -> 'b list) -> 'a list -> 'b list
val pairwise : ('a -> 'a -> 'b) -> 'a list -> 'b list
end
module List32 :
sig
val make : int32 -> 'a -> 'a list
val length : 'a list -> int32
val nth : 'a list -> int32 -> 'a (* raises Failure *)
val take : int32 -> 'a list -> 'a list (* raises Failure *)
val drop : int32 -> 'a list -> 'a list (* raises Failure *)
val mapi : (int32 -> 'a -> 'b) -> 'a list -> 'b list
end
module Array32 :
sig
val make : int32 -> 'a -> 'a array
val length : 'a array -> int32
val get : 'a array -> int32 -> 'a
val set : 'a array -> int32 -> 'a -> unit
val blit : 'a array -> int32 -> 'a array -> int32 -> int32 -> unit
end
module Bigarray :
sig
open Bigarray
module Array1_64 :
sig
val create : ('a, 'b) kind -> 'c layout -> int64 -> ('a, 'b, 'c) Array1.t
val dim : ('a, 'b, 'c) Array1.t -> int64
val get : ('a, 'b, 'c) Array1.t -> int64 -> 'a
val set : ('a, 'b, 'c) Array1.t -> int64 -> 'a -> unit
val sub : ('a, 'b, 'c) Array1.t -> int64 -> int64 -> ('a, 'b, 'c) Array1.t
end
end
module Option :
sig
val get : 'a option -> 'a -> 'a
val force : 'a option -> 'a (* raises Invalid_argument *)
val map : ('a -> 'b) -> 'a option -> 'b option
val app : ('a -> unit) -> 'a option -> unit
end
module Int :
sig
val log2 : int -> int
val is_power_of_two : int -> bool
end
module String :
sig
val implode : char list -> string
val explode : string -> char list
val split : string -> char -> string list
val breakup : string -> int -> string list
val find_from_opt : (char -> bool) -> string -> int -> int option
end