1#![cfg_attr(docsrs, feature(doc_cfg))]
8#![cfg_attr(feature = "allocator_api", feature(allocator_api))]
9#![cfg_attr(feature = "read_buf", feature(read_buf, core_io_borrowed_buf))]
10#![cfg_attr(feature = "try_trait_v2", feature(try_trait_v2, try_trait_v2_residual))]
11#![allow(stable_features)]
12#![allow(unused_features)]
13#![warn(missing_docs)]
14#![deny(rustdoc::broken_intra_doc_links)]
15#![doc(
16 html_logo_url = "https://github.com/compio-rs/compio-logo/raw/refs/heads/master/generated/colored-bold.svg"
17)]
18#![doc(
19 html_favicon_url = "https://github.com/compio-rs/compio-logo/raw/refs/heads/master/generated/colored-bold.svg"
20)]
21
22#[cfg(feature = "arrayvec")]
23pub use arrayvec;
24#[cfg(feature = "bumpalo")]
25pub use bumpalo;
26#[cfg(feature = "bytes")]
27pub use bytes;
28#[cfg(feature = "memmap2")]
29pub use memmap2;
30#[cfg(feature = "smallvec")]
31pub use smallvec;
32
33mod io;
34pub use io::*;
35
36mod io_buf;
37pub use io_buf::*;
38
39mod io_vec_buf;
40pub use io_vec_buf::*;
41
42mod buf_result;
43pub use buf_result::*;
44
45mod slice;
46pub use slice::*;
47
48mod uninit;
49pub use uninit::*;
50
51pub trait IntoInner {
53 type Inner;
55
56 fn into_inner(self) -> Self::Inner;
58}
59
60#[cfg(not(feature = "allocator_api"))]
61#[macro_export]
62#[doc(hidden)]
63macro_rules! t_alloc {
64 ($b:tt, $t:ty, $a:ident) => {
65 $b<$t>
66 };
67}
68
69#[cfg(feature = "allocator_api")]
70#[macro_export]
71#[doc(hidden)]
72macro_rules! t_alloc {
73 ($b:tt, $t:ty, $a:ident) => {
74 $b<$t, $a>
75 };
76}