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 = "dragonfly",
9        all(target_family = "wasm", target_feature = "atomics"),
10        target_os = "hermit",
11    ) => {
12        mod futex;
13        pub use futex::Mutex;
14    }
15    target_os = "fuchsia" => {
16        mod fuchsia;
17        pub use fuchsia::Mutex;
18    }
19    any(
20        target_family = "unix",
21        target_os = "teeos",
22    ) => {
23        mod pthread;
24        pub use pthread::Mutex;
25    }
26    all(target_os = "windows", target_vendor = "win7") => {
27        mod windows7;
28        pub use windows7::{Mutex, raw};
29    }
30    all(target_vendor = "fortanix", target_env = "sgx") => {
31        mod sgx;
32        pub use sgx::Mutex;
33    }
34    target_os = "solid_asp3" => {
35        mod itron;
36        pub use itron::Mutex;
37    }
38    target_os = "xous" => {
39        mod xous;
40        pub use xous::Mutex;
41    }
42    _ => {
43        mod no_threads;
44        pub use no_threads::Mutex;
45    }
46}