pub enum GraphMutation {
PutNode(Node),
PutEdge(Edge),
DeleteEdge(EdgeId),
DetachDeleteNode(NodeId),
}Expand description
A single mutation that can be combined with others into an atomic
StorageEngine::apply_batch call. Backend-neutral: the enum only
names what to do to the graph, not how the backend persists it.
Lets callers commit a sequence of mutations as one atomic write —
useful for giving multi-write Cypher queries crash-atomic local
persistence.
Variants§
PutNode(Node)
PutEdge(Edge)
DeleteEdge(EdgeId)
Idempotent within a batch: missing edges are skipped silently so a log replay that re-applies a partially-committed batch is safe.
DetachDeleteNode(NodeId)
Idempotent within a batch: missing nodes contribute no operations.
Trait Implementations§
Source§impl Clone for GraphMutation
impl Clone for GraphMutation
Source§fn clone(&self) -> GraphMutation
fn clone(&self) -> GraphMutation
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 moreAuto Trait Implementations§
impl Freeze for GraphMutation
impl RefUnwindSafe for GraphMutation
impl Send for GraphMutation
impl Sync for GraphMutation
impl Unpin for GraphMutation
impl UnsafeUnpin for GraphMutation
impl UnwindSafe for GraphMutation
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