#![deny(missing_docs)]
#![cfg_attr(linux_raw, deny(unsafe_code))]
#![cfg_attr(linux_raw_inline_asm, feature(asm))]
#![cfg_attr(any(rustc_attrs, feature = "rustc-dep-of-std"), feature(rustc_attrs))]
#![cfg_attr(doc_cfg, feature(doc_cfg))]
#![cfg_attr(target_os = "wasi", feature(wasi_ext))]
#![cfg_attr(
all(linux_raw_inline_asm, target_arch = "x86"),
feature(naked_functions)
)]
#![cfg_attr(io_lifetimes_use_std, feature(io_safety))]
#![cfg_attr(not(feature = "std"), no_std)]
#![cfg_attr(feature = "rustc-dep-of-std", allow(incomplete_features))]
#![cfg_attr(feature = "rustc-dep-of-std", feature(specialization))]
#![cfg_attr(feature = "rustc-dep-of-std", feature(toowned_clone_into))]
#![cfg_attr(feature = "rustc-dep-of-std", feature(vec_into_raw_parts))]
#![cfg_attr(feature = "rustc-dep-of-std", feature(const_raw_ptr_deref))]
#![cfg_attr(feature = "rustc-dep-of-std", feature(slice_internals))]
#![cfg_attr(feature = "rustc-dep-of-std", feature(core_intrinsics))]
#[cfg(not(feature = "rustc-dep-of-std"))]
extern crate alloc;
#[cfg(feature = "rustc-dep-of-std")]
pub mod io_lifetimes {
use super::imp;
pub use imp::fd::{AsFd, BorrowedFd};
}
#[cfg(not(feature = "rustc-dep-of-std"))]
pub use io_lifetimes;
#[cfg(not(windows))]
#[macro_use]
pub(crate) mod zstr;
#[macro_use]
pub(crate) mod const_assert;
mod imp;
#[cfg(not(windows))]
pub mod ffi;
#[cfg(not(windows))]
pub mod fs;
pub mod io;
#[cfg(not(any(target_os = "redox", target_os = "wasi")))] pub mod net;
#[cfg(not(windows))]
pub mod path;
#[cfg(not(windows))]
pub mod process;
#[cfg(not(windows))]
pub mod rand;
#[cfg(not(windows))]
pub mod thread;
#[cfg(not(windows))]
pub mod time;
#[cfg(not(windows))]
#[cfg(linux_raw)]
#[doc(hidden)]
pub mod runtime;
#[inline]
#[allow(dead_code)]
const fn as_ptr<T>(t: &T) -> *const T {
t
}
#[inline]
#[allow(dead_code)]
fn as_mut_ptr<T>(t: &mut T) -> *mut T {
t
}