The Expert module is for building efficient out-of-module Iobuf abstractions.
val buf : (_, _) Core__Iobuf.t ‑> Core__.Import.Bigstring.tThese accessors will not allocate, and are mainly here to assist in building low-cost syscall wrappers.
One must be careful to avoid writing out of the limits (between lo_min and
hi_max) of the buf. Doing so would violate the invariants of the parent
Iobuf.
val hi_max : (_, _) Core__Iobuf.t ‑> intval hi : (_, _) Core__Iobuf.t ‑> intval lo : (_, _) Core__Iobuf.t ‑> intval lo_min : (_, _) Core__Iobuf.t ‑> intval reinitialize_of_bigstring : (_, _) Core__Iobuf.t ‑> pos:int ‑> len:int ‑> Core__.Import.Bigstring.t ‑> unitreinitialize_of_bigstring t bigstring reinitializes t with backing bigstring,
and the window and limits specified starting at pos and of length len.
val set_bounds_and_buffer : src:('data, _) Core__Iobuf.t ‑> dst:('data, Core__Iobuf.seek) Core__Iobuf.t ‑> unitThese versions of set_bounds_and_buffer allow ~src to be read-only. ~dst will
be writable through ~src aliases even though the type does not reflect this!
val set_bounds_and_buffer_sub : pos:int ‑> len:int ‑> src:('data, _) Core__Iobuf.t ‑> dst:('data, Core__Iobuf.seek) Core__Iobuf.t ‑> unit