summaryrefslogtreecommitdiff
path: root/stdlib/array.ml
diff options
context:
space:
mode:
authorDamien Doligez <damien.doligez@inria.fr>2017-08-31 15:25:15 +0200
committerDamien Doligez <damien.doligez@gmail.com>2017-09-15 18:24:36 +0200
commitf086eda9c075eda0d2fcd74183c019c4515a6c28 (patch)
tree84985a120cf715ccb40e170d8db2bea1f528218d /stdlib/array.ml
parentcd3dbe79be441c35b063f440316088559400b480 (diff)
downloadocaml-f086eda9c075eda0d2fcd74183c019c4515a6c28.tar.gz
add -no-flat-float-array configure option
Diffstat (limited to 'stdlib/array.ml')
-rw-r--r--stdlib/array.ml10
1 files changed, 10 insertions, 0 deletions
diff --git a/stdlib/array.ml b/stdlib/array.ml
index a4270f278a..9b54587847 100644
--- a/stdlib/array.ml
+++ b/stdlib/array.ml
@@ -30,6 +30,16 @@ external unsafe_blit :
external create_float: int -> float array = "caml_make_float_vect"
let make_float = create_float
+module Floatarray = struct
+ external create : int -> floatarray = "caml_floatarray_create"
+ external length : floatarray -> int = "%floatarray_length"
+ external get : floatarray -> int -> float = "%floatarray_safe_get"
+ external set : floatarray -> int -> float -> unit = "%floatarray_safe_set"
+ external unsafe_get : floatarray -> int -> float = "%floatarray_unsafe_get"
+ external unsafe_set : floatarray -> int -> float -> unit
+ = "%floatarray_unsafe_set"
+end
+
let init l f =
if l = 0 then [||] else
if l < 0 then invalid_arg "Array.init"