aboutsummaryrefslogtreecommitdiff
path: root/src/macros/cfg.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/macros/cfg.rs')
-rw-r--r--src/macros/cfg.rs250
1 files changed, 95 insertions, 155 deletions
diff --git a/src/macros/cfg.rs b/src/macros/cfg.rs
index 4b77544..2792911 100644
--- a/src/macros/cfg.rs
+++ b/src/macros/cfg.rs
@@ -1,97 +1,30 @@
#![allow(unused_macros)]
-macro_rules! cfg_resource_drivers {
- ($($item:item)*) => {
- $(
- #[cfg(any(feature = "io-driver", feature = "time"))]
- $item
- )*
- }
-}
-
-macro_rules! cfg_blocking {
- ($($item:item)*) => {
- $(
- #[cfg(feature = "blocking")]
- #[cfg_attr(docsrs, doc(cfg(feature = "blocking")))]
- $item
- )*
- }
-}
-
-/// Enables blocking API internals
-macro_rules! cfg_blocking_impl {
- ($($item:item)*) => {
- $(
- #[cfg(any(
- feature = "blocking",
- feature = "fs",
- feature = "dns",
- feature = "io-std",
- feature = "rt-threaded",
- ))]
- $item
- )*
- }
-}
-
-/// Enables blocking API internals
-macro_rules! cfg_blocking_impl_or_task {
- ($($item:item)*) => {
- $(
- #[cfg(any(
- feature = "blocking",
- feature = "fs",
- feature = "dns",
- feature = "io-std",
- feature = "rt-threaded",
- feature = "task",
- ))]
- $item
- )*
- }
-}
-
/// Enables enter::block_on
macro_rules! cfg_block_on {
($($item:item)*) => {
$(
#[cfg(any(
- feature = "blocking",
feature = "fs",
- feature = "dns",
+ feature = "net",
feature = "io-std",
- feature = "rt-core",
+ feature = "rt",
))]
$item
)*
}
}
-/// Enables blocking API internals
-macro_rules! cfg_not_blocking_impl {
- ($($item:item)*) => {
- $(
- #[cfg(not(any(
- feature = "blocking",
- feature = "fs",
- feature = "dns",
- feature = "io-std",
- feature = "rt-threaded",
- )))]
- $item
- )*
- }
-}
-
/// Enables internal `AtomicWaker` impl
macro_rules! cfg_atomic_waker_impl {
($($item:item)*) => {
$(
#[cfg(any(
- feature = "io-driver",
+ feature = "net",
+ feature = "process",
+ feature = "rt",
+ feature = "signal",
feature = "time",
- all(feature = "rt-core", feature = "rt-util")
))]
#[cfg(not(loom))]
$item
@@ -99,16 +32,6 @@ macro_rules! cfg_atomic_waker_impl {
}
}
-macro_rules! cfg_dns {
- ($($item:item)*) => {
- $(
- #[cfg(feature = "dns")]
- #[cfg_attr(docsrs, doc(cfg(feature = "dns")))]
- $item
- )*
- }
-}
-
macro_rules! cfg_fs {
($($item:item)*) => {
$(
@@ -128,8 +51,16 @@ macro_rules! cfg_io_blocking {
macro_rules! cfg_io_driver {
($($item:item)*) => {
$(
- #[cfg(feature = "io-driver")]
- #[cfg_attr(docsrs, doc(cfg(feature = "io-driver")))]
+ #[cfg(any(
+ feature = "net",
+ feature = "process",
+ all(unix, feature = "signal"),
+ ))]
+ #[cfg_attr(docsrs, doc(cfg(any(
+ feature = "net",
+ feature = "process",
+ all(unix, feature = "signal"),
+ ))))]
$item
)*
}
@@ -138,7 +69,20 @@ macro_rules! cfg_io_driver {
macro_rules! cfg_not_io_driver {
($($item:item)*) => {
$(
- #[cfg(not(feature = "io-driver"))]
+ #[cfg(not(any(
+ feature = "net",
+ feature = "process",
+ all(unix, feature = "signal"),
+ )))]
+ $item
+ )*
+ }
+}
+
+macro_rules! cfg_io_readiness {
+ ($($item:item)*) => {
+ $(
+ #[cfg(feature = "net")]
$item
)*
}
@@ -193,115 +137,142 @@ macro_rules! cfg_macros {
}
}
-macro_rules! cfg_process {
+macro_rules! cfg_net {
($($item:item)*) => {
$(
- #[cfg(feature = "process")]
- #[cfg_attr(docsrs, doc(cfg(feature = "process")))]
- #[cfg(not(loom))]
+ #[cfg(feature = "net")]
+ #[cfg_attr(docsrs, doc(cfg(feature = "net")))]
$item
)*
}
}
-macro_rules! cfg_signal {
+macro_rules! cfg_net_unix {
($($item:item)*) => {
$(
- #[cfg(feature = "signal")]
- #[cfg_attr(docsrs, doc(cfg(feature = "signal")))]
- #[cfg(not(loom))]
+ #[cfg(all(unix, feature = "net"))]
+ #[cfg_attr(docsrs, doc(cfg(feature = "net")))]
$item
)*
}
}
-macro_rules! cfg_stream {
+macro_rules! cfg_process {
($($item:item)*) => {
$(
- #[cfg(feature = "stream")]
- #[cfg_attr(docsrs, doc(cfg(feature = "stream")))]
+ #[cfg(feature = "process")]
+ #[cfg_attr(docsrs, doc(cfg(feature = "process")))]
+ #[cfg(not(loom))]
$item
)*
}
}
-macro_rules! cfg_sync {
+macro_rules! cfg_process_driver {
+ ($($item:item)*) => {
+ #[cfg(unix)]
+ #[cfg(not(loom))]
+ cfg_process! { $($item)* }
+ }
+}
+
+macro_rules! cfg_not_process_driver {
($($item:item)*) => {
$(
- #[cfg(feature = "sync")]
- #[cfg_attr(docsrs, doc(cfg(feature = "sync")))]
+ #[cfg(not(all(unix, not(loom), feature = "process")))]
$item
)*
}
}
-macro_rules! cfg_not_sync {
+macro_rules! cfg_signal {
($($item:item)*) => {
- $( #[cfg(not(feature = "sync"))] $item )*
+ $(
+ #[cfg(feature = "signal")]
+ #[cfg_attr(docsrs, doc(cfg(feature = "signal")))]
+ #[cfg(not(loom))]
+ $item
+ )*
}
}
-macro_rules! cfg_rt_core {
+macro_rules! cfg_signal_internal {
($($item:item)*) => {
$(
- #[cfg(feature = "rt-core")]
+ #[cfg(any(feature = "signal", all(unix, feature = "process")))]
+ #[cfg(not(loom))]
$item
)*
}
}
-macro_rules! doc_rt_core {
+macro_rules! cfg_not_signal_internal {
($($item:item)*) => {
$(
- #[cfg(feature = "rt-core")]
- #[cfg_attr(docsrs, doc(cfg(feature = "rt-core")))]
+ #[cfg(any(loom, not(unix), not(any(feature = "signal", all(unix, feature = "process")))))]
$item
)*
}
}
-macro_rules! cfg_not_rt_core {
+macro_rules! cfg_stream {
($($item:item)*) => {
- $( #[cfg(not(feature = "rt-core"))] $item )*
+ $(
+ #[cfg(feature = "stream")]
+ #[cfg_attr(docsrs, doc(cfg(feature = "stream")))]
+ $item
+ )*
}
}
-macro_rules! cfg_rt_threaded {
+macro_rules! cfg_sync {
($($item:item)*) => {
$(
- #[cfg(feature = "rt-threaded")]
- #[cfg_attr(docsrs, doc(cfg(feature = "rt-threaded")))]
+ #[cfg(feature = "sync")]
+ #[cfg_attr(docsrs, doc(cfg(feature = "sync")))]
$item
)*
}
}
-macro_rules! cfg_rt_util {
+macro_rules! cfg_not_sync {
+ ($($item:item)*) => {
+ $( #[cfg(not(feature = "sync"))] $item )*
+ }
+}
+
+macro_rules! cfg_rt {
($($item:item)*) => {
$(
- #[cfg(feature = "rt-util")]
- #[cfg_attr(docsrs, doc(cfg(feature = "rt-util")))]
+ #[cfg(feature = "rt")]
+ #[cfg_attr(docsrs, doc(cfg(feature = "rt")))]
$item
)*
}
}
-macro_rules! cfg_not_rt_threaded {
+macro_rules! cfg_not_rt {
($($item:item)*) => {
- $( #[cfg(not(feature = "rt-threaded"))] $item )*
+ $( #[cfg(not(feature = "rt"))] $item )*
}
}
-macro_rules! cfg_tcp {
+macro_rules! cfg_rt_multi_thread {
($($item:item)*) => {
$(
- #[cfg(feature = "tcp")]
- #[cfg_attr(docsrs, doc(cfg(feature = "tcp")))]
+ #[cfg(feature = "rt-multi-thread")]
+ #[cfg_attr(docsrs, doc(cfg(feature = "rt-multi-thread")))]
$item
)*
}
}
+macro_rules! cfg_not_rt_multi_thread {
+ ($($item:item)*) => {
+ $( #[cfg(not(feature = "rt-multi-thread"))] $item )*
+ }
+}
+
macro_rules! cfg_test_util {
($($item:item)*) => {
$(
@@ -334,36 +305,6 @@ macro_rules! cfg_not_time {
}
}
-macro_rules! cfg_udp {
- ($($item:item)*) => {
- $(
- #[cfg(feature = "udp")]
- #[cfg_attr(docsrs, doc(cfg(feature = "udp")))]
- $item
- )*
- }
-}
-
-macro_rules! cfg_uds {
- ($($item:item)*) => {
- $(
- #[cfg(all(unix, feature = "uds"))]
- #[cfg_attr(docsrs, doc(cfg(feature = "uds")))]
- $item
- )*
- }
-}
-
-macro_rules! cfg_unstable {
- ($($item:item)*) => {
- $(
- #[cfg(tokio_unstable)]
- #[cfg_attr(docsrs, doc(cfg(tokio_unstable)))]
- $item
- )*
- }
-}
-
macro_rules! cfg_trace {
($($item:item)*) => {
$(
@@ -387,16 +328,15 @@ macro_rules! cfg_coop {
($($item:item)*) => {
$(
#[cfg(any(
- feature = "blocking",
- feature = "dns",
feature = "fs",
- feature = "io-driver",
feature = "io-std",
+ feature = "net",
feature = "process",
- feature = "rt-core",
+ feature = "rt",
+ feature = "signal",
feature = "sync",
feature = "stream",
- feature = "time"
+ feature = "time",
))]
$item
)*