Parallel_arrays.ArraySourcelength t returns the number of elements in t.
include sig ... endget t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
val extract__bits64 :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableextract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_extract__bits64 :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableunsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
extract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
val extract__bits32 :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableextract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_extract__bits32 :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableunsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
extract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
val extract__word :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableextract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_extract__word :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableunsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
extract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
val extract__float64 :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableextract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_extract__float64 :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableunsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
extract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
val extract__float32 :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableextract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_extract__float32 :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableunsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
extract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
val extract :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableextract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_extract :
'a t ->
Base.int ->
('a -> 'b @ portable contended) @ local once portable ->
'b @ portable contended @@ portableunsafe_extract t i f applies f with the element unsafely read from index i.
get t i reads the element at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_get t i unsafely reads the element at index i.
extract t i f applies f with the element read from index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_extract t i f applies f with the element unsafely read from index i.
set t i a stores the element a at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_set t i a unsafely stores the element a at index i.
val insert__bits64 :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableinsert t i f stores f () at index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_insert__bits64 :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableunsafe_insert t i f unsafely stores f () at index i.
set t i a stores the element a at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_set t i a unsafely stores the element a at index i.
val insert__bits32 :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableinsert t i f stores f () at index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_insert__bits32 :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableunsafe_insert t i f unsafely stores f () at index i.
set t i a stores the element a at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_set t i a unsafely stores the element a at index i.
val insert__word :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableinsert t i f stores f () at index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_insert__word :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableunsafe_insert t i f unsafely stores f () at index i.
set t i a stores the element a at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_set t i a unsafely stores the element a at index i.
val insert__float64 :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableinsert t i f stores f () at index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_insert__float64 :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableunsafe_insert t i f unsafely stores f () at index i.
set t i a stores the element a at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_set t i a unsafely stores the element a at index i.
val insert__float32 :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableinsert t i f stores f () at index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_insert__float32 :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableunsafe_insert t i f unsafely stores f () at index i.
set t i a stores the element a at index i. Raises Invalid_arg if i is not in the range [0..length t).
unsafe_set t i a unsafely stores the element a at index i.
val insert :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableinsert t i f stores f () at index i. Raises Invalid_arg if i is not in the range [0..length t).
val unsafe_insert :
'a t ->
Base.int ->
(Base.unit -> 'a) @ local once portable ->
Base.unit @@ portableunsafe_insert t i f unsafely stores f () at index i.
val init__bits64 :
Parallel_kernel.t @ local ->
'a init ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
'a t) @ local @@ portableinit parallel n ~f initializes an array with the result of f applied to the integers 0..n-1.
If t is array or iarray, f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val init__bits32 :
Parallel_kernel.t @ local ->
'a init ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
'a t) @ local @@ portableinit parallel n ~f initializes an array with the result of f applied to the integers 0..n-1.
If t is array or iarray, f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val init__word :
Parallel_kernel.t @ local ->
'a init ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
'a t) @ local @@ portableinit parallel n ~f initializes an array with the result of f applied to the integers 0..n-1.
If t is array or iarray, f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val init__float64 :
Parallel_kernel.t @ local ->
'a init ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
'a t) @ local @@ portableinit parallel n ~f initializes an array with the result of f applied to the integers 0..n-1.
If t is array or iarray, f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val init__float32 :
Parallel_kernel.t @ local ->
'a init ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
'a t) @ local @@ portableinit parallel n ~f initializes an array with the result of f applied to the integers 0..n-1.
If t is array or iarray, f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val init :
Parallel_kernel.t @ local ->
'a init ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
'a t) @ local @@ portableinit parallel n ~f initializes an array with the result of f applied to the integers 0..n-1.
If t is array or iarray, f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits64__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits64__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits64__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits64__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits64__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits64__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits64__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits64__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits64__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits64__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits64__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits64__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits32__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits32__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits32__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits32__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits32__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits32__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits32__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits32__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits32__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits32__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__bits32__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__bits32__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__word__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__word__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__word__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__word__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__word__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__word__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__word__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__word__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__word__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__word__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__word__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__word__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float64__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float64__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float64__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float64__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float64__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float64__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float64__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float64__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float64__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float64__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float64__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float64__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float32__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float32__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float32__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float32__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float32__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float32__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float32__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float32__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float32__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float32__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__float32__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__float32__value_or_null :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__value_or_null__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__value_or_null__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__value_or_null__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__value_or_null__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__value_or_null__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__value_or_null__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__value_or_null__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__value_or_null__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map__value_or_null__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi__value_or_null__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val map :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'b) @ shareable ->
'b t) @ local @@ portablemap parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val mapi :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'b) @ local) @ shareable ->
'b t) @ local @@ portablemapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
map parallel t ~f initializes an array with the result of f applied to each element of t.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index.
f is not allowed to return boxed floats, as this would break the float array optimization. Prefer float# t.
val fold__bits64 :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local -> 'acc -> ('a @ shared -> 'acc) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefold parallel t ~init ~f ~combine folds combine over the result of map parallel t ~f. combine must be associative and combine init x must equal x.
val foldi__bits64 :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local ->
Base.int ->
('acc ->
('a @ shared ->
'acc) @ local) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefoldi parallel t ~init ~f ~combine folds combine over the result of mapi parallel t ~f. combine must be associative and combine init x must equal x.
val iter__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.unit) @ shareable ->
Base.unit) @ local @@ portableiter parallel t ~f applies f to each element of t.
val iteri__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.unit) @ local) @ shareable ->
Base.unit) @ local @@ portableiteri parallel t ~f applies f to each element of t and its index.
val find__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits64) @ local @@ portablefind parallel t ~f returns the first element of t for which f returns true, if it exists.
val findi__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits64) @ local @@ portablefindi parallel t ~f returns the first element of t for which f returns true, if it exists.
val reduce__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits64) @ local @@ portablereduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
val min_elt__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits64) @ local @@ portablemin_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
val max_elt__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits64) @ local @@ portablemax_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
iter parallel t ~f applies f to each element of t.
iteri parallel t ~f applies f to each element of t and its index.
find parallel t ~f returns the first element of t for which f returns true, if it exists.
findi parallel t ~f returns the first element of t for which f returns true, if it exists.
reduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
min_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
max_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
val fold__bits32 :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local -> 'acc -> ('a @ shared -> 'acc) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefold parallel t ~init ~f ~combine folds combine over the result of map parallel t ~f. combine must be associative and combine init x must equal x.
val foldi__bits32 :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local ->
Base.int ->
('acc ->
('a @ shared ->
'acc) @ local) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefoldi parallel t ~init ~f ~combine folds combine over the result of mapi parallel t ~f. combine must be associative and combine init x must equal x.
val iter__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.unit) @ shareable ->
Base.unit) @ local @@ portableiter parallel t ~f applies f to each element of t.
val iteri__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.unit) @ local) @ shareable ->
Base.unit) @ local @@ portableiteri parallel t ~f applies f to each element of t and its index.
val find__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits32) @ local @@ portablefind parallel t ~f returns the first element of t for which f returns true, if it exists.
val findi__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits32) @ local @@ portablefindi parallel t ~f returns the first element of t for which f returns true, if it exists.
val reduce__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits32) @ local @@ portablereduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
val min_elt__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits32) @ local @@ portablemin_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
val max_elt__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__bits32) @ local @@ portablemax_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
iter parallel t ~f applies f to each element of t.
iteri parallel t ~f applies f to each element of t and its index.
find parallel t ~f returns the first element of t for which f returns true, if it exists.
findi parallel t ~f returns the first element of t for which f returns true, if it exists.
reduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
min_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
max_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
val fold__word :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local -> 'acc -> ('a @ shared -> 'acc) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefold parallel t ~init ~f ~combine folds combine over the result of map parallel t ~f. combine must be associative and combine init x must equal x.
val foldi__word :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local ->
Base.int ->
('acc ->
('a @ shared ->
'acc) @ local) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefoldi parallel t ~init ~f ~combine folds combine over the result of mapi parallel t ~f. combine must be associative and combine init x must equal x.
val iter__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.unit) @ shareable ->
Base.unit) @ local @@ portableiter parallel t ~f applies f to each element of t.
val iteri__word :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.unit) @ local) @ shareable ->
Base.unit) @ local @@ portableiteri parallel t ~f applies f to each element of t and its index.
val find__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a Unboxed_datatypes.Option_u.t__word) @ local @@ portablefind parallel t ~f returns the first element of t for which f returns true, if it exists.
val findi__word :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__word) @ local @@ portablefindi parallel t ~f returns the first element of t for which f returns true, if it exists.
val reduce__word :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__word) @ local @@ portablereduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
val min_elt__word :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__word) @ local @@ portablemin_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
val max_elt__word :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__word) @ local @@ portablemax_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
iter parallel t ~f applies f to each element of t.
iteri parallel t ~f applies f to each element of t and its index.
find parallel t ~f returns the first element of t for which f returns true, if it exists.
findi parallel t ~f returns the first element of t for which f returns true, if it exists.
reduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
min_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
max_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
val fold__float64 :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local -> 'acc -> ('a @ shared -> 'acc) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefold parallel t ~init ~f ~combine folds combine over the result of map parallel t ~f. combine must be associative and combine init x must equal x.
val foldi__float64 :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local ->
Base.int ->
('acc ->
('a @ shared ->
'acc) @ local) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefoldi parallel t ~init ~f ~combine folds combine over the result of mapi parallel t ~f. combine must be associative and combine init x must equal x.
val iter__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.unit) @ shareable ->
Base.unit) @ local @@ portableiter parallel t ~f applies f to each element of t.
val iteri__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.unit) @ local) @ shareable ->
Base.unit) @ local @@ portableiteri parallel t ~f applies f to each element of t and its index.
val find__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float64) @ local @@ portablefind parallel t ~f returns the first element of t for which f returns true, if it exists.
val findi__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float64) @ local @@ portablefindi parallel t ~f returns the first element of t for which f returns true, if it exists.
val reduce__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float64) @ local @@ portablereduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
val min_elt__float64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float64) @ local @@ portablemin_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
val max_elt__float64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float64) @ local @@ portablemax_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
iter parallel t ~f applies f to each element of t.
iteri parallel t ~f applies f to each element of t and its index.
find parallel t ~f returns the first element of t for which f returns true, if it exists.
findi parallel t ~f returns the first element of t for which f returns true, if it exists.
reduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
min_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
max_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
val fold__float32 :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local -> 'acc -> ('a @ shared -> 'acc) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefold parallel t ~init ~f ~combine folds combine over the result of map parallel t ~f. combine must be associative and combine init x must equal x.
val foldi__float32 :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local ->
Base.int ->
('acc ->
('a @ shared ->
'acc) @ local) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefoldi parallel t ~init ~f ~combine folds combine over the result of mapi parallel t ~f. combine must be associative and combine init x must equal x.
val iter__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.unit) @ shareable ->
Base.unit) @ local @@ portableiter parallel t ~f applies f to each element of t.
val iteri__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.unit) @ local) @ shareable ->
Base.unit) @ local @@ portableiteri parallel t ~f applies f to each element of t and its index.
val find__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float32) @ local @@ portablefind parallel t ~f returns the first element of t for which f returns true, if it exists.
val findi__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float32) @ local @@ portablefindi parallel t ~f returns the first element of t for which f returns true, if it exists.
val reduce__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float32) @ local @@ portablereduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
val min_elt__float32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float32) @ local @@ portablemin_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
val max_elt__float32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t__float32) @ local @@ portablemax_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
iter parallel t ~f applies f to each element of t.
iteri parallel t ~f applies f to each element of t and its index.
find parallel t ~f returns the first element of t for which f returns true, if it exists.
findi parallel t ~f returns the first element of t for which f returns true, if it exists.
reduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
min_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
max_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
val fold :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local -> 'acc -> ('a @ shared -> 'acc) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefold parallel t ~init ~f ~combine folds combine over the result of map parallel t ~f. combine must be associative and combine init x must equal x.
val foldi :
Parallel_kernel.t @ local ->
'a t @ shared ->
(init:(Base.unit -> 'acc) @ portable ->
(f:
(Parallel_kernel.t @ local ->
Base.int ->
('acc ->
('a @ shared ->
'acc) @ local) @ local) @ shareable ->
(combine:
(Parallel_kernel.t @ local -> 'acc -> ('acc -> 'acc) @ local) @ shareable ->
'acc) @ local) @ local) @ local @@ portablefoldi parallel t ~init ~f ~combine folds combine over the result of mapi parallel t ~f. combine must be associative and combine init x must equal x.
val iter :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.unit) @ shareable ->
Base.unit) @ local @@ portableiter parallel t ~f applies f to each element of t.
val iteri :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.unit) @ local) @ shareable ->
Base.unit) @ local @@ portableiteri parallel t ~f applies f to each element of t and its index.
val find :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a Unboxed_datatypes.Option_u.t) @ local @@ portablefind parallel t ~f returns the first element of t for which f returns true, if it exists.
val findi :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t) @ local @@ portablefindi parallel t ~f returns the first element of t for which f returns true, if it exists.
val reduce :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a Unboxed_datatypes.Option_u.t) @ local @@ portablereduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
val min_elt :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t) @ local @@ portablemin_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
val max_elt :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a Unboxed_datatypes.Option_u.t) @ local @@ portablemax_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
iter parallel t ~f applies f to each element of t.
iteri parallel t ~f applies f to each element of t and its index.
find parallel t ~f returns the first element of t for which f returns true, if it exists.
findi parallel t ~f returns the first element of t for which f returns true, if it exists.
reduce parallel t ~f folds f over the elements of t. f must be associative. If t is empty, reduce returns None.
min_elt parallel t ~compare is the minimum element of t according to compare. If t is empty, returns None.
max_elt parallel t ~compare is the maximum element of t according to compare. If t is empty, returns None.
val sort__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablesort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
val stable_sort__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablestable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
sort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
stable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
val sort__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablesort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
val stable_sort__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablestable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
sort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
stable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
val sort__word :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablesort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
val stable_sort__word :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablestable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
sort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
stable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
val sort__float64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablesort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
val stable_sort__float64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablestable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
sort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
stable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
val sort__float32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablesort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
val stable_sort__float32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablestable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
sort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
stable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
val sort :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablesort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
val stable_sort :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
'a t) @ local @@ portablestable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
sort parallel t ~compare initializes an array with the contents of t unstably sorted with respect to compare.
stable_sort parallel t ~compare initializes an array with the contents of t stably sorted with respect to compare.
val scan__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
#('a t * 'a)) @ local) @ local @@ portablescan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
val scan_inclusive__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a t) @ local) @ local @@ portablescan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
scan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
scan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
val scan__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
#('a t * 'a)) @ local) @ local @@ portablescan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
val scan_inclusive__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a t) @ local) @ local @@ portablescan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
scan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
scan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
val scan__word :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
#('a t * 'a)) @ local) @ local @@ portablescan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
val scan_inclusive__word :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a t) @ local) @ local @@ portablescan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
scan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
scan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
val scan__float64 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
#('a t * 'a)) @ local) @ local @@ portablescan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
val scan_inclusive__float64 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a t) @ local) @ local @@ portablescan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
scan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
scan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
val scan__float32 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
#('a t * 'a)) @ local) @ local @@ portablescan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
val scan_inclusive__float32 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a t) @ local) @ local @@ portablescan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
scan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
scan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
val scan :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
#('a t * 'a)) @ local) @ local @@ portablescan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
val scan_inclusive :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a t) @ local) @ local @@ portablescan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
scan parallel t ~init ~f initialises an array containing the exclusive prefix sums of t with respect to f. The first element is init and the full reduction of t is returned separately. f must be associative and f init x must equal x.
scan_inclusive parallel t ~init ~f initialises an array containing the inclusive prefix sums of t with respect to f. The first element is the first element of t. f must be associative and f init x must equal x.
val filter__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a t) @ local @@ portablefilter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
val filteri__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a t) @ local @@ portablefilteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
filter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
filteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
val filter__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a t) @ local @@ portablefilter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
val filteri__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a t) @ local @@ portablefilteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
filter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
filteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
val filter__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a t) @ local @@ portablefilter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
val filteri__word :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a t) @ local @@ portablefilteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
filter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
filteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
val filter__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a t) @ local @@ portablefilter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
val filteri__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a t) @ local @@ portablefilteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
filter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
filteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
val filter__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a t) @ local @@ portablefilter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
val filteri__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a t) @ local @@ portablefilteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
filter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
filteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
val filter :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> Base.bool) @ shareable ->
'a t) @ local @@ portablefilter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
val filteri :
Parallel_kernel.t @ local ->
'a t ->
(f:
(Parallel_kernel.t @ local -> Base.int -> ('a -> Base.bool) @ local) @ shareable ->
'a t) @ local @@ portablefilteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
filter parallel t ~f initialises an array containing the elements of t that satisfy the predicate f.
filteri parallel t ~f initialises an array containing the elements of t that, alongside their index, satisfy the predicate f.
val map_inplace__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'a) @ shareable ->
Base.unit) @ local @@ portablemap_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements.
val mapi_inplace__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'a) @ local) @ shareable ->
Base.unit) @ local @@ portablemapi_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements and their indices.
val init_inplace__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
Base.unit) @ local @@ portableinit_inplace parallel t ~f overwrites an array with the result of f applied to each array index. This can be much faster than using mapi_inplace since it does not need to read the array.
val sort_inplace__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablesort_inplace parallel t ~compare unstably sorts t with respect to compare.
val stable_sort_inplace__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablestable_sort_inplace parallel t ~compare stably sorts t with respect to compare.
val scan_inplace__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a) @ local) @ local @@ portablescan_inplace parallel t ~init ~f overwrites t to contain the its exclusive prefix sums with respect to f. The first element becomes init and the full reduction of t is returned. f must be associative and f init x must equal x.
val scan_inclusive_inplace__bits64 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
Base.unit) @ local) @ local @@ portablescan_inclusive_inplace parallel t ~init ~f overwrites t to contain its inclusive prefix sums with respect to f. The first element is unchanged. f must be associative and f init x must equal x.
val map_inplace__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'a) @ shareable ->
Base.unit) @ local @@ portablemap_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements.
val mapi_inplace__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'a) @ local) @ shareable ->
Base.unit) @ local @@ portablemapi_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements and their indices.
val init_inplace__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
Base.unit) @ local @@ portableinit_inplace parallel t ~f overwrites an array with the result of f applied to each array index. This can be much faster than using mapi_inplace since it does not need to read the array.
val sort_inplace__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablesort_inplace parallel t ~compare unstably sorts t with respect to compare.
val stable_sort_inplace__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablestable_sort_inplace parallel t ~compare stably sorts t with respect to compare.
val scan_inplace__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a) @ local) @ local @@ portablescan_inplace parallel t ~init ~f overwrites t to contain the its exclusive prefix sums with respect to f. The first element becomes init and the full reduction of t is returned. f must be associative and f init x must equal x.
val scan_inclusive_inplace__bits32 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
Base.unit) @ local) @ local @@ portablescan_inclusive_inplace parallel t ~init ~f overwrites t to contain its inclusive prefix sums with respect to f. The first element is unchanged. f must be associative and f init x must equal x.
val map_inplace__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'a) @ shareable ->
Base.unit) @ local @@ portablemap_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements.
val mapi_inplace__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'a) @ local) @ shareable ->
Base.unit) @ local @@ portablemapi_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements and their indices.
val init_inplace__word :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
Base.unit) @ local @@ portableinit_inplace parallel t ~f overwrites an array with the result of f applied to each array index. This can be much faster than using mapi_inplace since it does not need to read the array.
val sort_inplace__word :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablesort_inplace parallel t ~compare unstably sorts t with respect to compare.
val stable_sort_inplace__word :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablestable_sort_inplace parallel t ~compare stably sorts t with respect to compare.
val scan_inplace__word :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a) @ local) @ local @@ portablescan_inplace parallel t ~init ~f overwrites t to contain the its exclusive prefix sums with respect to f. The first element becomes init and the full reduction of t is returned. f must be associative and f init x must equal x.
val scan_inclusive_inplace__word :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
Base.unit) @ local) @ local @@ portablescan_inclusive_inplace parallel t ~init ~f overwrites t to contain its inclusive prefix sums with respect to f. The first element is unchanged. f must be associative and f init x must equal x.
val map_inplace__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'a) @ shareable ->
Base.unit) @ local @@ portablemap_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements.
val mapi_inplace__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'a) @ local) @ shareable ->
Base.unit) @ local @@ portablemapi_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements and their indices.
val init_inplace__float64 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
Base.unit) @ local @@ portableinit_inplace parallel t ~f overwrites an array with the result of f applied to each array index. This can be much faster than using mapi_inplace since it does not need to read the array.
val sort_inplace__float64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablesort_inplace parallel t ~compare unstably sorts t with respect to compare.
val stable_sort_inplace__float64 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablestable_sort_inplace parallel t ~compare stably sorts t with respect to compare.
val scan_inplace__float64 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a) @ local) @ local @@ portablescan_inplace parallel t ~init ~f overwrites t to contain the its exclusive prefix sums with respect to f. The first element becomes init and the full reduction of t is returned. f must be associative and f init x must equal x.
val scan_inclusive_inplace__float64 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
Base.unit) @ local) @ local @@ portablescan_inclusive_inplace parallel t ~init ~f overwrites t to contain its inclusive prefix sums with respect to f. The first element is unchanged. f must be associative and f init x must equal x.
val map_inplace__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'a) @ shareable ->
Base.unit) @ local @@ portablemap_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements.
val mapi_inplace__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'a) @ local) @ shareable ->
Base.unit) @ local @@ portablemapi_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements and their indices.
val init_inplace__float32 :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
Base.unit) @ local @@ portableinit_inplace parallel t ~f overwrites an array with the result of f applied to each array index. This can be much faster than using mapi_inplace since it does not need to read the array.
val sort_inplace__float32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablesort_inplace parallel t ~compare unstably sorts t with respect to compare.
val stable_sort_inplace__float32 :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablestable_sort_inplace parallel t ~compare stably sorts t with respect to compare.
val scan_inplace__float32 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a) @ local) @ local @@ portablescan_inplace parallel t ~init ~f overwrites t to contain the its exclusive prefix sums with respect to f. The first element becomes init and the full reduction of t is returned. f must be associative and f init x must equal x.
val scan_inclusive_inplace__float32 :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
Base.unit) @ local) @ local @@ portablescan_inclusive_inplace parallel t ~init ~f overwrites t to contain its inclusive prefix sums with respect to f. The first element is unchanged. f must be associative and f init x must equal x.
val map_inplace :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> 'a -> 'a) @ shareable ->
Base.unit) @ local @@ portablemap_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements.
val mapi_inplace :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> ('a -> 'a) @ local) @ shareable ->
Base.unit) @ local @@ portablemapi_inplace parallel t ~f overwrites an array with the result of f applied to each of its elements and their indices.
val init_inplace :
Parallel_kernel.t @ local ->
'a t ->
(f:(Parallel_kernel.t @ local -> Base.int -> 'a) @ shareable ->
Base.unit) @ local @@ portableinit_inplace parallel t ~f overwrites an array with the result of f applied to each array index. This can be much faster than using mapi_inplace since it does not need to read the array.
val sort_inplace :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablesort_inplace parallel t ~compare unstably sorts t with respect to compare.
val stable_sort_inplace :
Parallel_kernel.t @ local ->
'a t ->
(compare:
(Parallel_kernel.t @ local ->
'a @ local shared ->
'a @ local shared ->
Base.int) @ shareable ->
Base.unit) @ local @@ portablestable_sort_inplace parallel t ~compare stably sorts t with respect to compare.
val scan_inplace :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
'a) @ local) @ local @@ portablescan_inplace parallel t ~init ~f overwrites t to contain the its exclusive prefix sums with respect to f. The first element becomes init and the full reduction of t is returned. f must be associative and f init x must equal x.
val scan_inclusive_inplace :
Parallel_kernel.t @ local ->
'a t ->
(init:'a ->
(f:
(Parallel_kernel.t @ local -> 'a @ shared -> ('a @ shared -> 'a) @ local) @ shareable ->
Base.unit) @ local) @ local @@ portablescan_inclusive_inplace parallel t ~init ~f overwrites t to contain its inclusive prefix sums with respect to f. The first element is unchanged. f must be associative and f init x must equal x.
val filter_map :
('a : value_or_null mod portable separable) ('b : value mod non_float portable).
Parallel_kernel.t @ local ->
'a t ->
f:(Parallel_kernel.t @ local -> 'a -> 'b Base.or_null) @ shareable ->
'b t @@ portablefilter_map parallel t ~f initializes an array with the results of f applied to each element of t, filtering out Nulls.
val filter_mapi :
('a : value_or_null mod portable separable) ('b : value mod non_float portable).
Parallel_kernel.t @ local ->
'a t ->
f:
(Parallel_kernel.t @ local -> Base.int -> 'a -> 'b Base.or_null) @ shareable ->
'b t @@ portablefilter_mapi parallel t ~f initializes an array with the result of f applied to each element of t and its index, filtering out Nulls.