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 = ('-> unit) -> unit   type 'a klist = unit -> [ `Cons of 'a * 'CCVector.klist | `Nil ]   type 'a gen = unit -> 'a option   type 'a equal = '-> '-> bool   type 'a ord = '-> '-> int   type 'a printer = Format.formatter -> '-> 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, CCVector.rw) CCVector.t   val return : '-> ('a, 'mut) CCVector.t   val make : int -> '-> ('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, 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 -> '-> 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 -> 'CCVector.sequence -> unit   val append_list : ('a, CCVector.rw) CCVector.t -> 'a list -> unit   val append_gen : ('a, CCVector.rw) CCVector.t -> 'CCVector.gen -> unit   val equal : 'CCVector.equal -> ('a, 'b) CCVector.t CCVector.equal   val compare : '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:('-> '-> bool) -> '-> ('a, 'b) CCVector.t -> bool   val sort :     ('-> '-> int) -> ('a, 'b) CCVector.t -> ('a, 'mut) CCVector.t   val sort' : ('-> '-> int) -> ('a, CCVector.rw) CCVector.t -> unit   val uniq_sort : ('-> '-> int) -> ('a, CCVector.rw) CCVector.t -> unit   val iter : ('-> unit) -> ('a, 'b) CCVector.t -> unit   val iteri : (int -> '-> unit) -> ('a, 'b) CCVector.t -> unit   val map : ('-> 'b) -> ('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t   val filter : ('-> bool) -> ('a, 'b) CCVector.t -> ('a, 'mut) CCVector.t   val filter' : ('-> bool) -> ('a, CCVector.rw) CCVector.t -> unit   val fold : ('-> '-> 'b) -> '-> ('a, 'c) CCVector.t -> 'b   val exists : ('-> bool) -> ('a, 'b) CCVector.t -> bool   val for_all : ('-> bool) -> ('a, 'b) CCVector.t -> bool   val find : ('-> bool) -> ('a, 'b) CCVector.t -> 'a option   val find_exn : ('-> bool) -> ('a, 'b) CCVector.t -> 'a   val find_map : ('-> 'b option) -> ('a, 'c) CCVector.t -> 'b option   val filter_map :     ('-> 'b option) -> ('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t   val flat_map :     ('-> ('b, 'c) CCVector.t) ->     ('a, 'd) CCVector.t -> ('b, 'mut) CCVector.t   val flat_map_seq :     ('-> 'CCVector.sequence) ->     ('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t   val flat_map_list :     ('-> 'b list) -> ('a, 'c) CCVector.t -> ('b, 'mut) CCVector.t   val ( >>= ) :     ('a, 'c) CCVector.t ->     ('-> ('b, 'd) CCVector.t) -> ('b, 'mut) CCVector.t   val ( >|= ) : ('a, 'c) CCVector.t -> ('-> 'b) -> ('b, 'mut) CCVector.t   val get : ('a, 'b) CCVector.t -> int -> 'a   val set : ('a, CCVector.rw) CCVector.t -> int -> '-> 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_iter : ('-> 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 ->     'CCVector.sequence -> ('a, CCVector.rw) CCVector.t   val to_seq : ('a, 'b) CCVector.t -> 'CCVector.sequence   val to_seq_rev : ('a, 'b) CCVector.t -> 'CCVector.sequence   val slice : ('a, CCVector.rw) CCVector.t -> 'a array * int * int   val slice_seq : ('a, 'b) CCVector.t -> int -> int -> 'CCVector.sequence   val of_klist :     ?init:('a, CCVector.rw) CCVector.t ->     'CCVector.klist -> ('a, CCVector.rw) CCVector.t   val to_klist : ('a, 'b) CCVector.t -> 'CCVector.klist   val of_gen :     ?init:('a, CCVector.rw) CCVector.t ->     'CCVector.gen -> ('a, CCVector.rw) CCVector.t   val to_gen : ('a, 'b) CCVector.t -> 'CCVector.gen   val pp :     ?start:string ->     ?stop:string ->     ?sep:string ->     'CCVector.printer -> ('a, 'b) CCVector.t CCVector.printer end