Quick StartTryGuideAPICommunityBlogGitHub

Standard Library

Below is the API for the OCaml standard library. It's directly copied over from the OCaml Manual, formatted to the Reason syntax and styled accordingly. The API docs are work-in-progress; we'll be polishing these gradually!

If you're targeting JavaScript, the API docs for BuckleScript includes all of below, plus JS-specific APIs.

Module Bigarray.Array1

module Array1: sig .. end
One-dimensional arrays. The Array1 structure provides operations similar to those of Bigarray.Genarray, but specialized to the case of one-dimensional arrays. (The Array2 and Array3 structures below provide operations specialized for two- and three-dimensional arrays.) Statically knowing the number of dimensions of the array allows faster operations, and more precise static type-checking.

type ('a, 'b, 'c) t 
The type of one-dimensional big arrays whose elements have OCaml type 'a, representation kind 'b, and memory layout 'c.
val create : ('a, 'b) Bigarray.kind ->       'c Bigarray.layout -> int -> ('a, 'b, 'c) t
Array1.create kind layout dim returns a new bigarray of one dimension, whose size is dim. kind and layout determine the array element kind and the array layout as described for Genarray.create.
val dim : ('a, 'b, 'c) t -> int
Return the size (dimension) of the given one-dimensional big array.
val kind : ('a, 'b, 'c) t -> ('a, 'b) Bigarray.kind
Return the kind of the given big array.
val layout : ('a, 'b, 'c) t -> 'c Bigarray.layout
Return the layout of the given big array.
val get : ('a, 'b, 'c) t -> int -> 'a
Array1.get a x, or alternatively a.{x}, returns the element of a at index x. x must be greater or equal than 0 and strictly less than Array1.dim a if a has C layout. If a has Fortran layout, x must be greater or equal than 1 and less or equal than Array1.dim a. Otherwise, Invalid_argument is raised.
val set : ('a, 'b, 'c) t -> int -> 'a -> unit
Array1.set a x v, also written a.{x} <- v, stores the value v at index x in a. x must be inside the bounds of a as described in Bigarray.Array1.get; otherwise, Invalid_argument is raised.
val sub : ('a, 'b, 'c) t ->       int -> int -> ('a, 'b, 'c) t
Extract a sub-array of the given one-dimensional big array. See Genarray.sub_left for more details.
val blit : ('a, 'b, 'c) t -> ('a, 'b, 'c) t -> unit
Copy the first big array to the second big array. See Genarray.blit for more details.
val fill : ('a, 'b, 'c) t -> 'a -> unit
Fill the given big array with the given value. See Genarray.fill for more details.
val of_array : ('a, 'b) Bigarray.kind ->       'c Bigarray.layout -> 'a array -> ('a, 'b, 'c) t
Build a one-dimensional big array initialized from the given array.
val map_file : Unix.file_descr ->       ?pos:int64 ->       ('a, 'b) Bigarray.kind ->       'c Bigarray.layout -> bool -> int -> ('a, 'b, 'c) t
Memory mapping of a file as a one-dimensional big array. See Bigarray.Genarray.map_file for more details.
val unsafe_get : ('a, 'b, 'c) t -> int -> 'a
Like Bigarray.Array1.get, but bounds checking is not always performed. Use with caution and only when the program logic guarantees that the access is within bounds.
val unsafe_set : ('a, 'b, 'c) t -> int -> 'a -> unit
Like Bigarray.Array1.set, but bounds checking is not always performed. Use with caution and only when the program logic guarantees that the access is within bounds.