1#![allow(missing_debug_implementations)]
24
25pub mod common;
26
27cfg_if::cfg_if! {
28    if #[cfg(unix)] {
29        mod unix;
30        pub use self::unix::*;
31    } else if #[cfg(windows)] {
32        mod windows;
33        pub use self::windows::*;
34    } else if #[cfg(target_os = "solid_asp3")] {
35        mod solid;
36        pub use self::solid::*;
37    } else if #[cfg(target_os = "hermit")] {
38        mod hermit;
39        pub use self::hermit::*;
40    } else if #[cfg(all(target_os = "wasi", target_env = "p2"))] {
41        mod wasip2;
42        pub use self::wasip2::*;
43    } else if #[cfg(target_os = "wasi")] {
44        mod wasi;
45        pub use self::wasi::*;
46    } else if #[cfg(target_family = "wasm")] {
47        mod wasm;
48        pub use self::wasm::*;
49    } else if #[cfg(target_os = "xous")] {
50        mod xous;
51        pub use self::xous::*;
52    } else if #[cfg(target_os = "uefi")] {
53        mod uefi;
54        pub use self::uefi::*;
55    } else if #[cfg(all(target_vendor = "fortanix", target_env = "sgx"))] {
56        mod sgx;
57        pub use self::sgx::*;
58    } else if #[cfg(target_os = "teeos")] {
59        mod teeos;
60        pub use self::teeos::*;
61    } else if #[cfg(target_os = "zkvm")] {
62        mod zkvm;
63        pub use self::zkvm::*;
64    } else {
65        mod unsupported;
66        pub use self::unsupported::*;
67    }
68}
69
70cfg_if::cfg_if! {
71    if #[cfg(target_os = "fuchsia")] {
73        pub const FULL_BACKTRACE_DEFAULT: bool = true;
74    } else {
75        pub const FULL_BACKTRACE_DEFAULT: bool = false;
76    }
77}
78
79#[cfg(not(target_os = "uefi"))]
80pub type RawOsError = i32;