`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`