pub struct TrapHandler {
pub num_trapped: AtomicUsize,
pub in_trap: AtomicBool,
pub in_exit_trap: AtomicBool,
/* private fields */
}Expand description
Trap handler storage
Fields§
§num_trapped: AtomicUsizeNumber of trapped signals
in_trap: AtomicBoolCurrently in a trap?
in_exit_trap: AtomicBoolRunning exit trap?
Implementations§
Source§impl TrapHandler
impl TrapHandler
pub fn new() -> Self
Sourcepub fn set_trap(&self, sig: i32, action: TrapAction) -> Result<(), String>
pub fn set_trap(&self, sig: i32, action: TrapAction) -> Result<(), String>
Set a trap for a signal
Sourcepub fn unset_trap(&self, sig: i32)
pub fn unset_trap(&self, sig: i32)
Remove a trap
Sourcepub fn get_trap(&self, sig: i32) -> Option<TrapAction>
pub fn get_trap(&self, sig: i32) -> Option<TrapAction>
Get the trap action for a signal
Sourcepub fn is_trapped(&self, sig: i32) -> bool
pub fn is_trapped(&self, sig: i32) -> bool
Check if a signal is trapped
Sourcepub fn is_ignored(&self, sig: i32) -> bool
pub fn is_ignored(&self, sig: i32) -> bool
Check if a signal is ignored
Sourcepub fn list_traps(&self) -> Vec<(i32, TrapAction)>
pub fn list_traps(&self) -> Vec<(i32, TrapAction)>
List all traps
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for TrapHandler
impl RefUnwindSafe for TrapHandler
impl Send for TrapHandler
impl Sync for TrapHandler
impl Unpin for TrapHandler
impl UnsafeUnpin for TrapHandler
impl UnwindSafe for TrapHandler
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more