1 (***********************************************************************)
5 (* Jacques Garrigue, Kyoto University RIMS *)
7 (* Copyright 2001 Institut National de Recherche en Informatique et *)
8 (* en Automatique. All rights reserved. This file is distributed *)
9 (* under the terms of the GNU Library General Public License, with *)
10 (* the special exception on linking described in file ../LICENSE. *)
12 (***********************************************************************)
16 (** Standard labeled libraries.
18 This meta-module provides labelized version of the {!Array},
19 {!List} and {!String} modules.
21 They only differ by their labels. Detailed interfaces can be found
22 in [arrayLabels.mli], [listLabels.mli] and [stringLabels.mli].
27 external length
: 'a array
-> int = "%array_length"
28 external get
: 'a array
-> int -> 'a
= "%array_safe_get"
29 external set
: 'a array
-> int -> 'a
-> unit = "%array_safe_set"
30 external make
: int -> 'a
-> 'a array
= "caml_make_vect"
31 external create
: int -> 'a
-> 'a array
= "caml_make_vect"
32 val init
: int -> f
:(int -> 'a
) -> 'a array
33 val make_matrix
: dimx
:int -> dimy
:int -> 'a
-> 'a array array
34 val create_matrix
: dimx
:int -> dimy
:int -> 'a
-> 'a array array
35 val append
: 'a array
-> 'a array
-> 'a array
36 val concat
: 'a array list
-> 'a array
37 val sub
: 'a array
-> pos
:int -> len
:int -> 'a array
38 val copy
: 'a array
-> 'a array
39 val fill
: 'a array
-> pos
:int -> len
:int -> 'a
-> unit
41 src
:'a array
-> src_pos
:int -> dst
:'a array
-> dst_pos
:int -> len
:int ->
43 val to_list
: 'a array
-> 'a list
44 val of_list
: 'a list
-> 'a array
45 val iter
: f
:('a
-> unit) -> 'a array
-> unit
46 val map
: f
:('a
-> 'b
) -> 'a array
-> 'b array
47 val iteri
: f
:(int -> 'a
-> unit) -> 'a array
-> unit
48 val mapi
: f
:(int -> 'a
-> 'b
) -> 'a array
-> 'b array
49 val fold_left
: f
:('a
-> 'b
-> 'a
) -> init
:'a
-> 'b array
-> 'a
50 val fold_right
: f
:('a
-> 'b
-> 'b
) -> 'a array
-> init
:'b
-> 'b
51 val sort
: cmp
:('a
-> 'a
-> int) -> 'a array
-> unit
52 val stable_sort
: cmp
:('a
-> 'a
-> int) -> 'a array
-> unit
53 val fast_sort
: cmp
:('a
-> 'a
-> int) -> 'a array
-> unit
54 external unsafe_get
: 'a array
-> int -> 'a
= "%array_unsafe_get"
55 external unsafe_set
: 'a array
-> int -> 'a
-> unit = "%array_unsafe_set"
60 val length
: 'a list
-> int
61 val hd
: 'a list
-> 'a
62 val tl
: 'a list
-> 'a list
63 val nth
: 'a list
-> int -> 'a
64 val rev
: 'a list
-> 'a list
65 val append
: 'a list
-> 'a list
-> 'a list
66 val rev_append
: 'a list
-> 'a list
-> 'a list
67 val concat
: 'a list list
-> 'a list
68 val flatten
: 'a list list
-> 'a list
69 val iter
: f
:('a
-> unit) -> 'a list
-> unit
70 val map
: f
:('a
-> 'b
) -> 'a list
-> 'b list
71 val rev_map
: f
:('a
-> 'b
) -> 'a list
-> 'b list
72 val fold_left
: f
:('a
-> 'b
-> 'a
) -> init
:'a
-> 'b list
-> 'a
73 val fold_right
: f
:('a
-> 'b
-> 'b
) -> 'a list
-> init
:'b
-> 'b
74 val iter2
: f
:('a
-> 'b
-> unit) -> 'a list
-> 'b list
-> unit
75 val map2
: f
:('a
-> 'b
-> 'c
) -> 'a list
-> 'b list
-> 'c list
76 val rev_map2
: f
:('a
-> 'b
-> 'c
) -> 'a list
-> 'b list
-> 'c list
78 f
:('a
-> 'b
-> 'c
-> 'a
) -> init
:'a
-> 'b list
-> 'c list
-> 'a
80 f
:('a
-> 'b
-> 'c
-> 'c
) -> 'a list
-> 'b list
-> init
:'c
-> 'c
81 val for_all
: f
:('a
-> bool) -> 'a list
-> bool
82 val exists
: f
:('a
-> bool) -> 'a list
-> bool
83 val for_all2
: f
:('a
-> 'b
-> bool) -> 'a list
-> 'b list
-> bool
84 val exists2
: f
:('a
-> 'b
-> bool) -> 'a list
-> 'b list
-> bool
85 val mem
: 'a
-> set
:'a list
-> bool
86 val memq
: 'a
-> set
:'a list
-> bool
87 val find
: f
:('a
-> bool) -> 'a list
-> 'a
88 val filter
: f
:('a
-> bool) -> 'a list
-> 'a list
89 val find_all
: f
:('a
-> bool) -> 'a list
-> 'a list
90 val partition
: f
:('a
-> bool) -> 'a list
-> 'a list
* 'a list
91 val assoc
: 'a
-> ('a
* 'b
) list
-> 'b
92 val assq
: 'a
-> ('a
* 'b
) list
-> 'b
93 val mem_assoc
: 'a
-> map
:('a
* 'b
) list
-> bool
94 val mem_assq
: 'a
-> map
:('a
* 'b
) list
-> bool
95 val remove_assoc
: 'a
-> ('a
* 'b
) list
-> ('a
* 'b
) list
96 val remove_assq
: 'a
-> ('a
* 'b
) list
-> ('a
* 'b
) list
97 val split
: ('a
* 'b
) list
-> 'a list
* 'b list
98 val combine
: 'a list
-> 'b list
-> ('a
* 'b
) list
99 val sort
: cmp
:('a
-> 'a
-> int) -> 'a list
-> 'a list
100 val stable_sort
: cmp
:('a
-> 'a
-> int) -> 'a list
-> 'a list
101 val fast_sort
: cmp
:('a
-> 'a
-> int) -> 'a list
-> 'a list
102 val merge
: cmp
:('a
-> 'a
-> int) -> 'a list
-> 'a list
-> 'a list
107 external length
: string -> int = "%string_length"
108 external get
: string -> int -> char
= "%string_safe_get"
109 external set
: string -> int -> char
-> unit = "%string_safe_set"
110 external create
: int -> string = "caml_create_string"
111 val make
: int -> char
-> string
112 val copy
: string -> string
113 val sub
: string -> pos
:int -> len
:int -> string
114 val fill
: string -> pos
:int -> len
:int -> char
-> unit
116 src
:string -> src_pos
:int -> dst
:string -> dst_pos
:int -> len
:int ->
118 val concat
: sep
:string -> string list
-> string
119 val iter
: f
:(char
-> unit) -> string -> unit
120 val escaped
: string -> string
121 val index
: string -> char
-> int
122 val rindex
: string -> char
-> int
123 val index_from
: string -> int -> char
-> int
124 val rindex_from
: string -> int -> char
-> int
125 val contains
: string -> char
-> bool
126 val contains_from
: string -> int -> char
-> bool
127 val rcontains_from
: string -> int -> char
-> bool
128 val uppercase
: string -> string
129 val lowercase
: string -> string
130 val capitalize
: string -> string
131 val uncapitalize
: string -> string
133 val compare
: t
-> t
-> int
134 external unsafe_get
: string -> int -> char
= "%string_unsafe_get"
135 external unsafe_set
: string -> int -> char
-> unit = "%string_unsafe_set"
136 external unsafe_blit
:
137 src
:string -> src_pos
:int -> dst
:string -> dst_pos
:int -> len
:int ->
138 unit = "caml_blit_string" "noalloc"
139 external unsafe_fill
: string -> pos
:int -> len
:int -> char
-> unit
140 = "caml_fill_string" "noalloc"