pub struct FencingToken {
pub token: u64,
pub issued_by: String,
pub issued_at: u64,
pub signature: Option<Vec<u8>>,
}Expand description
Fencing token for split-brain prevention
Fields§
§token: u64Token value (monotonically increasing)
issued_by: StringNode ID that generated this token
issued_at: u64Unix timestamp when issued
signature: Option<Vec<u8>>Signature over (token, issued_by, issued_at) - optional for now
Implementations§
Source§impl FencingToken
impl FencingToken
Sourcepub fn supersedes(&self, other: &FencingToken) -> bool
pub fn supersedes(&self, other: &FencingToken) -> bool
Check if this token supersedes another
Trait Implementations§
Source§impl Clone for FencingToken
impl Clone for FencingToken
Source§fn clone(&self) -> FencingToken
fn clone(&self) -> FencingToken
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FencingToken
impl Debug for FencingToken
Source§impl<'de> Deserialize<'de> for FencingToken
impl<'de> Deserialize<'de> for FencingToken
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for FencingToken
impl RefUnwindSafe for FencingToken
impl Send for FencingToken
impl Sync for FencingToken
impl Unpin for FencingToken
impl UnwindSafe for FencingToken
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