#![cfg_attr(docsrs, feature(doc_cfg))]
#![cfg_attr(feature = "allocator_api", feature(allocator_api))]
#![cfg_attr(feature = "read_buf", feature(read_buf, core_io_borrowed_buf))]
#![cfg_attr(feature = "try_trait_v2", feature(try_trait_v2, try_trait_v2_residual))]
#![warn(missing_docs)]
#![deny(rustdoc::broken_intra_doc_links)]
#![doc(
html_logo_url = "https://github.com/compio-rs/compio-logo/raw/refs/heads/master/generated/colored-bold.svg"
)]
#![doc(
html_favicon_url = "https://github.com/compio-rs/compio-logo/raw/refs/heads/master/generated/colored-bold.svg"
)]
#[cfg(feature = "arrayvec")]
pub use arrayvec;
#[cfg(feature = "bumpalo")]
pub use bumpalo;
#[cfg(feature = "bytes")]
pub use bytes;
mod io;
pub use io::*;
mod io_buf;
pub use io_buf::*;
mod io_vec_buf;
pub use io_vec_buf::*;
mod buf_result;
pub use buf_result::*;
mod slice;
pub use slice::*;
mod uninit;
pub use uninit::*;
pub trait IntoInner {
type Inner;
fn into_inner(self) -> Self::Inner;
}
#[cfg(not(feature = "allocator_api"))]
#[macro_export]
#[doc(hidden)]
macro_rules! t_alloc {
($b:tt, $t:ty, $a:ident) => {
$b<$t>
};
}
#[cfg(feature = "allocator_api")]
#[macro_export]
#[doc(hidden)]
macro_rules! t_alloc {
($b:tt, $t:ty, $a:ident) => {
$b<$t, $a>
};
}