type bigstring = Bigstring.t
module Blit : sig .. end
type ('src, 'dst) t = ('src, 'dst) Blit.blito
val string_string : (string, string) t
val bigstring_string : (bigstring, string) t
val string_bigstring : (string, bigstring) t
val bigstring_bigstring : (bigstring, bigstring) t
module type Base = sig .. end
type t
val create : int -> t
val length : t -> int
val blit : (t, t) Blit.t
val blit_to_string : (t, string) Blit.t
val blit_to_bigstring : (t, bigstring) Blit.t
val blit_from_string : (string, t) Blit.t
val blit_from_bigstring : (bigstring, t) Blit.t
val of_bigstring : bigstring -> t
val of_string : string -> t
module type S = Substring_intf.S
module F : 
functor (Base : Base) -> S with type base = Base.t