use endpoint_sec_sys::es_event_signal_t;
use crate::Process;
#[doc(alias = "es_event_signal_t")]
pub struct EventSignal<'a> {
pub(crate) raw: &'a es_event_signal_t,
pub(crate) version: u32,
}
impl<'a> EventSignal<'a> {
#[inline(always)]
pub fn sig(&self) -> i32 {
self.raw.sig
}
#[inline(always)]
pub fn target(&self) -> Process<'_> {
Process::new(unsafe { self.raw.target() }, self.version)
}
}
unsafe impl Send for EventSignal<'_> {}
impl_debug_eq_hash_with_functions!(EventSignal<'a> with version; sig, target);