1mod io_buf;
10pub use io_buf::{IoBuf, IoBufMut};
11
12mod io_vec_buf;
13pub use io_vec_buf::{IoVecBuf, IoVecBufMut, VecBuf};
14
15mod slice;
16pub use slice::{IoVecWrapper, IoVecWrapperMut, Slice, SliceMut};
17
18mod raw_buf;
19pub use raw_buf::{RawBuf, RawBufVectored};
20
21mod vec_wrapper;
22pub(crate) use vec_wrapper::{read_vec_meta, write_vec_meta, IoVecMeta};
23
24mod msg;
25pub use msg::{MsgBuf, MsgBufMut, MsgMeta};
26
27pub(crate) fn deref(buf: &impl IoBuf) -> &[u8] {
28 unsafe { std::slice::from_raw_parts(buf.read_ptr(), buf.bytes_init()) }
31}