module Array0:sig
..end
Zero-dimensional arrays. The Array0
structure provides operations
similar to those of Bigarray.Genarray
, but specialized to the case
of zero-dimensional arrays that only contain a single scalar value.
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 zero-dimensional Bigarrays whose elements have
OCaml type 'a
, representation kind 'b
, and memory layout 'c
.
val create : ('a, 'b) Bigarray.kind ->
'c Bigarray.layout -> ('a, 'b, 'c) t
Array0.create kind layout
returns a new Bigarray of zero dimension.
kind
and layout
determine the array element kind and the array
layout as described for Bigarray.Genarray.create
.
val kind : ('a, 'b, 'c) t -> ('a, 'b) Bigarray.kind
Return the kind of the given Bigarray.
val layout : ('a, 'b, 'c) t -> 'c Bigarray.layout
Return the layout of the given Bigarray.
val change_layout : ('a, 'b, 'c) t ->
'd Bigarray.layout -> ('a, 'b, 'd) t
Array0.change_layout a layout
returns a Bigarray with the
specified layout
, sharing the data with a
. No copying of elements
is involved: the new array and the original array share the same
storage space.
val size_in_bytes : ('a, 'b, 'c) t -> int
size_in_bytes a
is a
's Bigarray.kind_size_in_bytes
.
val get : ('a, 'b, 'c) t -> 'a
Array0.get a
returns the only element in a
.
val set : ('a, 'b, 'c) t -> 'a -> unit
Array0.set a x v
stores the value v
in a
.
val blit : ('a, 'b, 'c) t -> ('a, 'b, 'c) t -> unit
Copy the first Bigarray to the second Bigarray.
See Bigarray.Genarray.blit
for more details.
val fill : ('a, 'b, 'c) t -> 'a -> unit
Fill the given Bigarray with the given value.
See Bigarray.Genarray.fill
for more details.
val of_value : ('a, 'b) Bigarray.kind ->
'c Bigarray.layout -> 'a -> ('a, 'b, 'c) t
Build a zero-dimensional Bigarray initialized from the given value.