Import Upstream version 20180207
[hcoop/debian/mlton.git] / basis-library / libs / basis-1997 / arrays-and-vectors / vector.sig
CommitLineData
7f918cf1
CE
1signature VECTOR_1997 =
2 sig
3 eqtype 'a vector
4 val maxLen: int
5 val fromList: 'a list -> 'a vector
6 val tabulate: (int * (int -> 'a)) -> 'a vector
7 val length: 'a vector -> int
8 val sub: ('a vector * int) -> 'a
9 val extract: ('a vector * int * int option) -> 'a vector
10 val concat: 'a vector list -> 'a vector
11 val mapi: ((int * 'a) -> 'b) -> ('a vector * int * int option) -> 'b vector
12 val map: ('a -> 'b) -> 'a vector -> 'b vector
13 val appi: ((int * 'a) -> unit) -> ('a vector * int * int option) -> unit
14 val app: ('a -> unit) -> 'a vector -> unit
15 val foldli: ((int * 'a * 'b) -> 'b) -> 'b -> ('a vector * int * int option) -> 'b
16 val foldri: ((int * 'a * 'b) -> 'b) -> 'b -> ('a vector * int * int option) -> 'b
17 val foldl: (('a * 'b) -> 'b) -> 'b -> 'a vector -> 'b
18 val foldr: (('a * 'b) -> 'b) -> 'b -> 'a vector -> 'b
19 end