Skip to main content

std/sys/sync/mutex/
mod.rs

1cfg_select! {
2    any(
3        all(target_os = "windows", not(target_vendor = "win7")),
4        target_os = "linux",
5        target_os = "android",
6        target_os = "freebsd",
7        target_os = "openbsd",
8        target_os = "motor",
9        target_os = "dragonfly",
10        all(target_family = "wasm", target_feature = "atomics"),
11        target_os = "hermit",
12        all(target_os = "wasi", target_env = "p3"),
13    ) => {
14        mod futex;
15        pub use futex::Mutex;
16    }
17    target_os = "fuchsia" => {
18        mod fuchsia;
19        pub use fuchsia::Mutex;
20    }
21    any(
22        target_family = "unix",
23        target_os = "teeos",
24    ) => {
25        mod pthread;
26        pub use pthread::Mutex;
27    }
28    all(target_os = "windows", target_vendor = "win7") => {
29        mod windows7;
30        pub use windows7::{Mutex, raw};
31    }
32    all(target_vendor = "fortanix", target_env = "sgx") => {
33        mod sgx;
34        pub use sgx::Mutex;
35    }
36    target_os = "solid_asp3" => {
37        mod itron;
38        pub use itron::Mutex;
39    }
40    target_os = "xous" => {
41        mod xous;
42        pub use xous::Mutex;
43    }
44    _ => {
45        mod no_threads;
46        pub use no_threads::Mutex;
47    }
48}