From 7443474f1f00d2a9306079641dbb3c18df5e6445 Mon Sep 17 00:00:00 2001 From: Botahamec Date: Wed, 25 Sep 2024 20:59:09 -0400 Subject: Reorganize PoisonFlag methods --- src/poisonable/flag.rs | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) (limited to 'src/poisonable/flag.rs') diff --git a/src/poisonable/flag.rs b/src/poisonable/flag.rs index 99e7e4f..0775c71 100644 --- a/src/poisonable/flag.rs +++ b/src/poisonable/flag.rs @@ -1,35 +1,33 @@ -use std::sync::atomic::AtomicBool; -use std::sync::atomic::Ordering::Relaxed; +#[cfg(panic = "unwind")] +use std::sync::atomic::{AtomicBool, Ordering::Relaxed}; use super::PoisonFlag; +#[cfg(panic = "unwind")] impl PoisonFlag { - #[cfg(panic = "unwind")] pub const fn new() -> Self { Self(AtomicBool::new(false)) } - #[cfg(not(panic = "unwind"))] - pub const fn new() -> Self { - Self() - } - - #[cfg(panic = "unwind")] pub fn is_poisoned(&self) -> bool { self.0.load(Relaxed) } - #[cfg(not(panic = "unwind"))] - pub fn is_poisoned(&self) -> bool { - false - } - - #[cfg(panic = "unwind")] pub fn clear_poison(&self) { self.0.store(true, Relaxed) } +} + +#[cfg(not(panic = "unwind"))] +impl PoisonFlag { + pub const fn new() -> Self { + Self() + } + + pub fn is_poisoned(&self) -> bool { + false + } - #[cfg(not(panic = "unwind"))] pub fn clear_poison(&self) { () } -- cgit v1.2.3