Skip to main content

std/sys/args/
mod.rs

1//! Platform-dependent command line arguments abstraction.
2
3#![forbid(unsafe_op_in_unsafe_fn)]
4
5#[cfg(any(
6    all(target_family = "unix", not(any(target_os = "espidf", target_os = "vita"))),
7    target_family = "windows",
8    target_os = "hermit",
9    target_os = "motor",
10    target_os = "uefi",
11    target_os = "wasi",
12    target_os = "xous",
13))]
14mod common;
15
16cfg_select! {
17    any(
18        all(
19            target_family = "unix",
20            not(any(
21                all(target_family = "wasm", target_os = "linux"),
22                target_os = "espidf",
23                target_os = "vita"
24            ))
25        ),
26        target_os = "hermit",
27    ) => {
28        mod unix;
29        pub use unix::*;
30    }
31    target_family = "windows" => {
32        mod windows;
33        pub use windows::*;
34    }
35    all(target_vendor = "fortanix", target_env = "sgx") => {
36        mod sgx;
37        pub use sgx::*;
38    }
39    target_os = "motor" => {
40        mod motor;
41        pub use motor::*;
42    }
43    target_os = "uefi" => {
44        mod uefi;
45        pub use uefi::*;
46    }
47    all(target_os = "wasi", target_env = "p1") => {
48        mod wasip1;
49        pub use wasip1::*;
50    }
51    all(target_os = "wasi", any(target_env = "p2", target_env = "p3")) => {
52        mod wasi;
53        pub use wasi::*;
54    }
55    all(target_family = "wasm", target_os = "linux") => {
56        mod wali;
57        pub use wali::*;
58    }
59    target_os = "xous" => {
60        mod xous;
61        pub use xous::*;
62    }
63    target_os = "zkvm" => {
64        mod zkvm;
65        pub use zkvm::*;
66    }
67    _ => {
68        mod unsupported;
69        pub use unsupported::*;
70    }
71}