sig
type slice_finish_t = EndOfList | EndingOffset of int | Position of int
type slice_t = int * Slice.slice_finish_t
val slice_end : int
val slice_of_pair : int * int -> Slice.slice_t
val string_slice : string -> Slice.slice_t -> string
val list_slice : 'a list -> Slice.slice_t -> 'a list
val array_slice : 'a array -> Slice.slice_t -> 'a array
val generic_slice :
('a -> int -> int -> 'a) -> ('a -> int) -> 'a -> Slice.slice_t -> 'a
end