pub enum IdleContinuation {
CallProvider,
Await,
}Expand description
What a provider turn does when the kernel’s own adjudication left nothing for a host to run.
Spec adjudication §5k: a batch of pure control-plane calls (skill, update_plan) publishes no
effect, so without this the operation would have nothing outstanding and stall.
Variants§
CallProvider
§5k · nothing is outstanding, so the kernel continues the turn the only way a turn continues: it calls the provider again.
Await
The adjudication already published kernel-owned work (a memory effect, a spawn round). The turn resumes when that work resolves; issuing a provider call now would race it.
Trait Implementations§
Source§impl Clone for IdleContinuation
impl Clone for IdleContinuation
Source§fn clone(&self) -> IdleContinuation
fn clone(&self) -> IdleContinuation
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for IdleContinuation
Source§impl Debug for IdleContinuation
impl Debug for IdleContinuation
Source§impl Default for IdleContinuation
impl Default for IdleContinuation
Source§fn default() -> IdleContinuation
fn default() -> IdleContinuation
Returns the “default value” for a type. Read more
impl Eq for IdleContinuation
Source§impl PartialEq for IdleContinuation
impl PartialEq for IdleContinuation
impl StructuralPartialEq for IdleContinuation
Auto Trait Implementations§
impl Freeze for IdleContinuation
impl RefUnwindSafe for IdleContinuation
impl Send for IdleContinuation
impl Sync for IdleContinuation
impl Unpin for IdleContinuation
impl UnsafeUnpin for IdleContinuation
impl UnwindSafe for IdleContinuation
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