2626external caml_array_dup : 'a array -> (_ [@ bs.as 0 ]) -> 'a array =
2727 " slice" [@@ bs.send]
2828
29+ let (.! () ) = Caml_array_extern. unsafe_get
30+ let (.! () < - ) = Caml_array_extern. unsafe_set
31+
2932let caml_array_sub (x : 'a array ) (offset : int ) (len : int ) =
3033 let result = Caml_array_extern. new_uninitialized len in
3134 let j = {contents = 0 } and i = {contents = offset} in
3235 while j.contents < len do
33- Caml_array_extern. unsafe_set result j.contents ( Caml_array_extern. unsafe_get x i.contents);
36+ result. ! ( j.contents) < - x. ! ( i.contents);
3437 j.contents < - j.contents + 1 ;
3538 i.contents < - i.contents + 1 ;
3639 done ;
@@ -50,7 +53,7 @@ let rec fill arr i l =
5053 let k = {contents = i} in
5154 let j = {contents = 0 } in
5255 while j.contents < l do
53- Caml_array_extern. unsafe_set arr k.contents ( Caml_array_extern. unsafe_get x j.contents);
56+ arr. ! ( k.contents) < - x . ! ( j.contents);
5457 k.contents < - k.contents + 1 ;
5558 j.contents < - j.contents + 1 ;
5659 done ;
@@ -65,35 +68,35 @@ let caml_array_concat (l : 'a array list) : 'a array =
6568let caml_array_set xs index newval =
6669 if index < 0 || index > = Caml_array_extern. length xs
6770 then raise (Invalid_argument " index out of bounds" )
68- else Caml_array_extern. unsafe_set xs index newval
71+ else xs. ! ( index) < - newval
6972
7073let caml_array_get xs index =
7174 if index < 0 || index > = Caml_array_extern. length xs then
7275 raise (Invalid_argument " index out of bounds" )
73- else Caml_array_extern. unsafe_get xs index
76+ else xs. ! ( index)
7477
7578
7679let caml_make_vect len init =
7780 let b = Caml_array_extern. new_uninitialized len in
7881 for i = 0 to len - 1 do
79- Caml_array_extern. unsafe_set b i init
82+ b. ! (i) < - init
8083 done ;
8184 b
8285
8386let caml_make_float_vect len =
8487 let b = Caml_array_extern. new_uninitialized len in
8588 for i = 0 to len - 1 do
86- Caml_array_extern. unsafe_set b i 0.
89+ b. ! (i) < - 0.
8790 done ;
8891 b
8992
9093let caml_array_blit a1 i1 a2 i2 len =
9194 if i2 < = i1 then
9295 for j = 0 to len - 1 do
93- Caml_array_extern. unsafe_set a2 (j+ i2) ( Caml_array_extern. unsafe_get a1 (j+ i1) )
96+ a2. ! (j+ i2) < - a1. ! (j+ i1)
9497 done
9598 else
9699 for j = len - 1 downto 0 do
97- Caml_array_extern. unsafe_set a2 (j+ i2) ( Caml_array_extern. unsafe_get a1 (j+ i1) )
100+ a2 . ! (j+ i2) < - a1. ! (j+ i1)
98101 done
99102
0 commit comments