summaryrefslogtreecommitdiff
path: root/cli/util/sync/atomic_flag.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/util/sync/atomic_flag.rs')
-rw-r--r--cli/util/sync/atomic_flag.rs35
1 files changed, 0 insertions, 35 deletions
diff --git a/cli/util/sync/atomic_flag.rs b/cli/util/sync/atomic_flag.rs
deleted file mode 100644
index 75396dcf4..000000000
--- a/cli/util/sync/atomic_flag.rs
+++ /dev/null
@@ -1,35 +0,0 @@
-// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
-
-use std::sync::atomic::AtomicBool;
-use std::sync::atomic::Ordering;
-
-/// Simplifies the use of an atomic boolean as a flag.
-#[derive(Debug, Default)]
-pub struct AtomicFlag(AtomicBool);
-
-impl AtomicFlag {
- /// Raises the flag returning if the raise was successful.
- pub fn raise(&self) -> bool {
- !self.0.swap(true, Ordering::SeqCst)
- }
-
- /// Gets if the flag is raised.
- pub fn is_raised(&self) -> bool {
- self.0.load(Ordering::SeqCst)
- }
-}
-
-#[cfg(test)]
-mod test {
- use super::*;
-
- #[test]
- fn atomic_flag_raises() {
- let flag = AtomicFlag::default();
- assert!(!flag.is_raised()); // false by default
- assert!(flag.raise());
- assert!(flag.is_raised());
- assert!(!flag.raise());
- assert!(flag.is_raised());
- }
-}