pub enum PacemakerError {
UpdateViewError(UpdateViewError),
ExtendViewError(ExtendViewError),
BlockTreeError(BlockTreeError),
}
Expand description
The pacemaker can fail in two fundamental ways:
- In updating the view, which involves creating
ViewInfo
for the new view. - In extending its current view, which involves setting a new deadline in its ViewInfo.
Both of these failures correspond to violations of key invariants of the protocol. Hence, this error is irrecoverable and on seeing it, the caller should panic.
Variants§
Trait Implementations§
source§impl Debug for PacemakerError
impl Debug for PacemakerError
source§impl From<BlockTreeError> for PacemakerError
impl From<BlockTreeError> for PacemakerError
source§fn from(value: BlockTreeError) -> Self
fn from(value: BlockTreeError) -> Self
Converts to this type from the input type.
source§impl From<ExtendViewError> for PacemakerError
impl From<ExtendViewError> for PacemakerError
source§fn from(value: ExtendViewError) -> Self
fn from(value: ExtendViewError) -> Self
Converts to this type from the input type.
source§impl From<UpdateViewError> for PacemakerError
impl From<UpdateViewError> for PacemakerError
source§fn from(value: UpdateViewError) -> Self
fn from(value: UpdateViewError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for PacemakerError
impl !RefUnwindSafe for PacemakerError
impl Send for PacemakerError
impl Sync for PacemakerError
impl Unpin for PacemakerError
impl !UnwindSafe for PacemakerError
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