pub struct EssenceOp {
pub kind: EssenceOpKind,
pub scope: Option<EssenceScope>,
pub section: Option<EssenceSection>,
pub id: Option<Ulid>,
pub text: Option<String>,
pub refs: Option<Vec<String>>,
}Expand description
One essence op inside a CommitBatch (Phase 12.7c). Validation
(missing/extra fields per kind) runs up front in
crate::Mnemo::commit_deltas — a single bad op aborts the
whole batch before any write lands.
Fields§
§kind: EssenceOpKindWhich op to apply.
scope: Option<EssenceScope>Scope — required for EssenceOpKind::Add and
EssenceOpKind::AppendTimeline.
section: Option<EssenceSection>Section — required for EssenceOpKind::Add.
id: Option<Ulid>Target record id — required for EssenceOpKind::Update,
EssenceOpKind::Resolve, EssenceOpKind::Remove.
text: Option<String>Content text — required for EssenceOpKind::Add,
EssenceOpKind::AppendTimeline, EssenceOpKind::Update.
refs: Option<Vec<String>>Optional refs for ops that carry text.
Trait Implementations§
Auto Trait Implementations§
impl Forget for EssenceOp
impl Freeze for EssenceOp
impl RefUnwindSafe for EssenceOp
impl Send for EssenceOp
impl Sync for EssenceOp
impl Unpin for EssenceOp
impl UnsafeUnpin for EssenceOp
impl UnwindSafe for EssenceOp
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