# Module type BatVect.RANDOMACCESS

    module type RANDOMACCESS = sig .. end

    type 'a t

    val empty : 'a t

    val get : 'a t -> int -> 'a

    val unsafe_get : 'a t -> int -> 'a

    val set : 'a t -> int -> 'a -> unit

    val unsafe_set : 'a t -> int -> 'a -> unit

    val append : 'a t ->
           'a t -> 'a t

    val concat : 'a t list -> 'a t

    val length : 'a t -> int

    val copy : 'a t -> 'a t

    val sub : 'a t -> int -> int -> 'a t

    val make : int -> 'a -> 'a t

    val iter : ('a -> unit) -> 'a t -> unit

    val map : ('a -> 'b) -> 'a t -> 'b t

    val fold_right : ('a -> 'b -> 'b) -> 'a t -> 'b -> 'b

    val enum : 'a t -> 'a BatEnum.t

    val backwards : 'a t -> 'a BatEnum.t

    val of_enum : 'a BatEnum.t -> 'a t

    val of_backwards : 'a BatEnum.t -> 'a t