sig
type ro = [ `RO ]
type rw = [ `RW ]
type ('a, 'mut) t
type 'a vector = ('a, CCVector.rw) CCVector.t
type 'a ro_vector = ('a, CCVector.ro) CCVector.t
type 'a sequence = ('a -> unit) -> unit
type 'a klist = unit -> [ `Cons of 'a * 'a CCVector.klist | `Nil ]
type 'a gen = unit -> 'a option
type 'a equal = 'a -> 'a -> bool
type 'a ord = 'a -> 'a -> int
type 'a printer = Buffer.t -> 'a -> unit
type 'a formatter = Format.formatter -> 'a -> unit
val freeze : ('a, 'b) CCVector.t -> ('a, CCVector.ro) CCVector.t
val freeze_copy : ('a, 'b) CCVector.t -> ('a, CCVector.ro) CCVector.t
val create : unit -> ('a, CCVector.rw) CCVector.t
val create_with : ?capacity:int -> 'a -> ('a, CCVector.rw) CCVector.t
val return : 'a -> ('a, 'mut) CCVector.t
val make : int -> 'a -> ('a, 'mut) CCVector.t
val init : int -> (int -> 'a) -> ('a, 'mut) CCVector.t
val clear : ('a, CCVector.rw) CCVector.t -> unit
val ensure_with : init:'a -> ('a, CCVector.rw) CCVector.t -> int -> unit
val ensure : ('a, CCVector.rw) CCVector.t -> int -> unit
val is_empty : ('a, 'b) CCVector.t -> bool
val push : ('a, CCVector.rw) CCVector.t -> 'a -> unit
val append : ('a, CCVector.rw) CCVector.t -> ('a, 'b) CCVector.t -> unit
val append_array : ('a, CCVector.rw) CCVector.t -> 'a array -> unit
val append_seq :
('a, CCVector.rw) CCVector.t -> 'a CCVector.sequence -> unit
val append_list : ('a, CCVector.rw) CCVector.t -> 'a list -> unit
val append_gen : ('a, CCVector.rw) CCVector.t -> 'a CCVector.gen -> unit
val equal : 'a CCVector.equal -> ('a, 'b) CCVector.t CCVector.equal
val compare : 'a CCVector.ord -> ('a, 'b) CCVector.t CCVector.ord
exception Empty
val pop : ('a, CCVector.rw) CCVector.t -> 'a option
val pop_exn : ('a, CCVector.rw) CCVector.t -> 'a
val top : ('a, 'b) CCVector.t -> 'a option
val top_exn : ('a, 'b) CCVector.t -> 'a
val copy : ('a, 'b) CCVector.t -> ('a, 'mut) CCVector.t
val shrink : ('a, CCVector.rw) CCVector.t -> int -> unit
val member : ?eq:('a -> 'a -> bool) -> 'a -> ('a, 'b) CCVector.t -> bool
val sort :
('a -> 'a -> int) -> ('a, 'b) CCVector.t -> ('a, 'mut) CCVector.t
val sort' : ('a -> 'a -> int) -> ('a, CCVector.rw) CCVector.t -> unit
val uniq_sort : ('a -> 'a -> int) -> ('a, CCVector.rw) CCVector.t -> unit
val iter : ('a -> unit) -> ('a, 'b) CCVector.t -> unit
val iteri : (int -> 'a -> unit) -> ('a, 'b) CCVector.t -> unit
val map : ('a -> 'b) -> ('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t
val filter : ('a -> bool) -> ('a, 'b) CCVector.t -> ('a, 'mut) CCVector.t
val filter' : ('a -> bool) -> ('a, CCVector.rw) CCVector.t -> unit
val fold : ('b -> 'a -> 'b) -> 'b -> ('a, 'c) CCVector.t -> 'b
val exists : ('a -> bool) -> ('a, 'b) CCVector.t -> bool
val for_all : ('a -> bool) -> ('a, 'b) CCVector.t -> bool
val find : ('a -> bool) -> ('a, 'b) CCVector.t -> 'a option
val find_exn : ('a -> bool) -> ('a, 'b) CCVector.t -> 'a
val find_map : ('a -> 'b option) -> ('a, 'c) CCVector.t -> 'b option
val filter_map :
('a -> 'b option) -> ('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t
val flat_map :
('a -> ('b, 'c) CCVector.t) ->
('a, 'd) CCVector.t -> ('b, 'mut) CCVector.t
val flat_map_seq :
('a -> 'b CCVector.sequence) ->
('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t
val flat_map_list :
('a -> 'b list) -> ('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t
val flat_map' :
('a -> 'b CCVector.sequence) ->
('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t
val ( >>= ) :
('a, 'c) CCVector.t ->
('a -> ('b, 'd) CCVector.t) -> ('b, 'mut) CCVector.t
val ( >|= ) : ('a, 'c) CCVector.t -> ('a -> 'b) -> ('b, 'mut) CCVector.t
val get : ('a, 'b) CCVector.t -> int -> 'a
val set : ('a, CCVector.rw) CCVector.t -> int -> 'a -> unit
val remove : ('a, CCVector.rw) CCVector.t -> int -> unit
val rev : ('a, 'b) CCVector.t -> ('a, 'mut) CCVector.t
val rev_in_place : ('a, CCVector.rw) CCVector.t -> unit
val rev' : ('a, CCVector.rw) CCVector.t -> unit
val rev_iter : ('a -> unit) -> ('a, 'b) CCVector.t -> unit
val size : ('a, 'b) CCVector.t -> int
val length : ('a, 'b) CCVector.t -> int
val capacity : ('a, 'b) CCVector.t -> int
val unsafe_get_array : ('a, CCVector.rw) CCVector.t -> 'a array
val ( -- ) : int -> int -> (int, 'mut) CCVector.t
val ( --^ ) : int -> int -> (int, 'mut) CCVector.t
val of_array : 'a array -> ('a, 'mut) CCVector.t
val of_list : 'a list -> ('a, 'mut) CCVector.t
val to_array : ('a, 'b) CCVector.t -> 'a array
val to_list : ('a, 'b) CCVector.t -> 'a list
val of_seq :
?init:('a, CCVector.rw) CCVector.t ->
'a CCVector.sequence -> ('a, CCVector.rw) CCVector.t
val to_seq : ('a, 'b) CCVector.t -> 'a CCVector.sequence
val to_seq_rev : ('a, 'b) CCVector.t -> 'a CCVector.sequence
val slice : ('a, CCVector.rw) CCVector.t -> 'a array * int * int
val slice_seq : ('a, 'b) CCVector.t -> int -> int -> 'a CCVector.sequence
val of_klist :
?init:('a, CCVector.rw) CCVector.t ->
'a CCVector.klist -> ('a, CCVector.rw) CCVector.t
val to_klist : ('a, 'b) CCVector.t -> 'a CCVector.klist
val of_gen :
?init:('a, CCVector.rw) CCVector.t ->
'a CCVector.gen -> ('a, CCVector.rw) CCVector.t
val to_gen : ('a, 'b) CCVector.t -> 'a CCVector.gen
val pp :
?start:string ->
?stop:string ->
?sep:string ->
'a CCVector.printer -> ('a, 'b) CCVector.t CCVector.printer
val print :
?start:string ->
?stop:string ->
?sep:string ->
'a CCVector.formatter -> ('a, 'b) CCVector.t CCVector.formatter
end