std/sys/sync/rwlock/
mod.rs

1cfg_if::cfg_if! {
2    if #[cfg(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        target_os = "fuchsia",
10        all(target_family = "wasm", target_feature = "atomics"),
11        target_os = "hermit",
12    ))] {
13        mod futex;
14        pub use futex::RwLock;
15    } else if #[cfg(any(
16        target_family = "unix",
17        all(target_os = "windows", target_vendor = "win7"),
18        all(target_vendor = "fortanix", target_env = "sgx"),
19        target_os = "xous",
20    ))] {
21        mod queue;
22        pub use queue::RwLock;
23    } else if #[cfg(target_os = "solid_asp3")] {
24        mod solid;
25        pub use solid::RwLock;
26    } else if #[cfg(target_os = "teeos")] {
27        mod teeos;
28        pub use teeos::RwLock;
29    } else {
30        mod no_threads;
31        pub use no_threads::RwLock;
32    }
33}