Legend:
Library
Module
Module type
Parameter
Class
Class type
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 = ('a, 'b, 'c)Stdlib.Bigarray.Array1.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)kind->'clayout->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 change_layout : ('a, 'b, 'c)t->'dlayout->('a, 'b, 'd)t
Array1.change_layout a layout returns a bigarray with the specified layout, sharing the data with a (and hence having the same dimension as a). No copying of elements is involved: the new array and the original array share the same storage space.
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.
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;
raisesInvalid_argument
otherwise.
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 slice : ('a, 'b, 'c)t->int ->('a, 'b, 'c)Array0.t
Extract a scalar (zero-dimensional slice) of the given one-dimensional big array. The integer parameter is the index of the scalar to extract. See Bigarray.Genarray.slice_left and Bigarray.Genarray.slice_right for more details.
Array1.enum e returns an enumeration on the elements of e. Contrarily to the multi-dimensional case, order of elements is specified: elements are in sequential order, from smaller to larger indices.
Array1.of_enum kind layout enum returns a new one-dimensional big array of kind kind and layout layout, with elements taken from the enumeration enum in order.
since 2.1
val map :
('a->'b)->('b, 'c)Stdlib.Bigarray.kind->('a, 'd, 'e)t->('b, 'c, 'e)t
Array1.map f a applies function f to all the elements of a, and builds a Bigarray.Array1.t with the results returned by f.
val mapi :
(int ->'a->'b)->('b, 'c)Stdlib.Bigarray.kind->('a, 'd, 'e)t->('b, 'c, 'e)t
Same as Bigarray.Array1.map, but the function is applied to the index of the element as the first argument, and the element itself as the second argument.
modify f a changes each element x in a to f x in-place.
val modifyi : (int ->'a->'a)->('a, 'b, 'c)t-> unit
Same as Bigarray.Array1.modify, but the function is applied to the index of the element as the first argument, and the element itself as the second argument.
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.
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.