#![deny(missing_docs)]
#![cfg_attr(can_vector, feature(can_vector))]
#![cfg_attr(write_all_vectored, feature(write_all_vectored))]
mod arrays;
mod borrow_streamer;
mod files;
#[cfg(feature = "io-streams")]
mod owned_streamer;
#[cfg(not(windows))]
mod rustix;
mod slice;
#[cfg(windows)]
mod windows;
pub use arrays::{Array, ArrayEditor, ArrayReader, ArrayWriter, EditAt, Metadata, ReadAt, WriteAt};
pub use system_interface::fs::Advice;
pub mod filelike {
pub use crate::files::{advise, copy_from, set_len};
#[cfg(all(not(windows), feature = "io-streams"))]
pub use crate::rustix::read_via_stream_at;
#[cfg(not(windows))]
pub use crate::rustix::{
is_read_vectored_at, is_write_vectored_at, metadata, read_at, read_exact_at,
read_exact_vectored_at, read_vectored_at, write_all_at, write_all_vectored_at, write_at,
write_vectored_at,
};
#[cfg(all(windows, feature = "io-streams"))]
pub use crate::windows::read_via_stream_at;
#[cfg(windows)]
pub use crate::windows::{
is_read_vectored_at, is_write_vectored_at, metadata, read_at, read_exact_at,
read_exact_vectored_at, read_vectored_at, write_all_at, write_all_vectored_at, write_at,
write_vectored_at,
};
}