type 'buf t = private {
buf : 'buf; | Buffer holding the I/O-vector |
pos : int; | Position of I/O-vector in buffer |
len : int; | Length of I/O-vector in buffer |
}
Representation of I/O-vectors. NOTE: DO NOT CHANGE THE MEMORY LAYOUT OF THIS TYPE!!! All C-functions in our bindings that handle I/O-vectors depend on it.
include Ppx_sexp_conv_lib.Sexpable.S1 with type 'buf t := 'buf t
val t_of_sexp : (Sexplib0.Sexp.t -> 'a) -> Sexplib0.Sexp.t -> 'buf t
val sexp_of_t : ('a -> Sexplib0.Sexp.t) -> 'buf t -> Sexplib0.Sexp.t
type bigstring = (char, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
val string_kind : string kind
val of_string : ?pos:int -> ?len:int -> string -> string t
of_string ?pos ?len str
- returns
an I/O-vector designated by position
pos
and lengthlen
in stringstr
.
- raises Invalid_argument
if designated substring out of bounds.
- parameter pos
default = 0
- parameter len
default =
String.length str - pos
of_bigstring ?pos ?len bstr
- returns
an I/O-vector designated by position
pos
and lengthlen
in bigstringbstr
.
- raises Invalid_argument
if designated substring out of bounds.
- parameter pos
default = 0
- parameter len
default =
String.length str - pos
drop iovec n
drops n
characters from iovec
.
- returns
resulting I/O-vector.
- raises Failure
if
n
is greater than length ofiovec
.
val max_iovecs : int Core_kernel.Lazy.t