std/sys/
mod.rs

1#![allow(unsafe_op_in_unsafe_fn)]
2
3mod alloc;
4mod configure_builtins;
5mod helpers;
6mod pal;
7mod personality;
8
9pub mod args;
10pub mod backtrace;
11pub mod cmath;
12pub mod env;
13pub mod env_consts;
14pub mod exit_guard;
15pub mod fd;
16pub mod fs;
17pub mod io;
18pub mod net;
19pub mod os_str;
20pub mod path;
21pub mod pipe;
22pub mod platform_version;
23pub mod process;
24pub mod random;
25pub mod stdio;
26pub mod sync;
27pub mod thread;
28pub mod thread_local;
29
30// FIXME(117276): remove this, move feature implementations into individual
31//                submodules.
32pub use pal::*;
33
34/// A trait for viewing representations from std types.
35#[cfg_attr(not(target_os = "linux"), allow(unused))]
36pub(crate) trait AsInner<Inner: ?Sized> {
37    fn as_inner(&self) -> &Inner;
38}
39
40/// A trait for viewing representations from std types.
41#[cfg_attr(not(target_os = "linux"), allow(unused))]
42pub(crate) trait AsInnerMut<Inner: ?Sized> {
43    fn as_inner_mut(&mut self) -> &mut Inner;
44}
45
46/// A trait for extracting representations from std types.
47pub(crate) trait IntoInner<Inner> {
48    fn into_inner(self) -> Inner;
49}
50
51/// A trait for creating std types from internal representations.
52pub(crate) trait FromInner<Inner> {
53    fn from_inner(inner: Inner) -> Self;
54}