pub struct GraphStateMachine { /* private fields */ }Expand description
Graph state machine that applies Raft-replicated operations
Implementations§
Source§impl GraphStateMachine
impl GraphStateMachine
Sourcepub fn new(persistence: Arc<PersistenceManager>) -> Self
pub fn new(persistence: Arc<PersistenceManager>) -> Self
Create a new graph state machine
Sourcepub async fn set_last_applied(&self, index: u64)
pub async fn set_last_applied(&self, index: u64)
Update last applied log index
Sourcepub async fn get_last_applied(&self) -> u64
pub async fn get_last_applied(&self) -> u64
Get last applied log index
Sourcepub async fn create_snapshot(&self) -> Vec<u8> ⓘ
pub async fn create_snapshot(&self) -> Vec<u8> ⓘ
Create a snapshot of the current state
Sourcepub async fn install_snapshot(&self, _snapshot: Vec<u8>)
pub async fn install_snapshot(&self, _snapshot: Vec<u8>)
Install a snapshot
Auto Trait Implementations§
impl Freeze for GraphStateMachine
impl !RefUnwindSafe for GraphStateMachine
impl Send for GraphStateMachine
impl Sync for GraphStateMachine
impl Unpin for GraphStateMachine
impl UnsafeUnpin for GraphStateMachine
impl !UnwindSafe for GraphStateMachine
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> 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