pub enum HugeCommit {
Nothing,
Unchanged,
Changed {
cell: StateCellId,
old: Bit4,
new: Bit4,
delta: Option<ChangeDelta>,
},
Full {
cell: StateCellId,
value: FourStateValue,
revalidate: bool,
},
}Expand description
What huge_commit decided; the caller (sched::kernel_adapter, which
owns the scheduler hooks this crate layer cannot name) carries it out.
Variants§
Nothing
Nothing was dirty.
Unchanged
The window’s words were stored and nothing changed.
Changed
The window’s words were stored and the value changed; old/new are
bit 0 before and after (the only bit an edge event looks at).
Fields
§
cell: StateCellId§
delta: Option<ChangeDelta>The window’s old and new plane words, when wants_delta asked
for them (a process waits on a select of this signal).
Full
The window could not be committed on its own (a forced cell or a
change log): commit value (the whole signal) through
SchedulerOps::commit_blocking_write, then call
huge_commit_full_done.
Auto Trait Implementations§
impl Freeze for HugeCommit
impl RefUnwindSafe for HugeCommit
impl Send for HugeCommit
impl Sync for HugeCommit
impl Unpin for HugeCommit
impl UnsafeUnpin for HugeCommit
impl UnwindSafe for HugeCommit
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