pub struct PlanContext<'a> {
pub input: &'a NormalizedInput,
pub step_seq: WireU64,
pub previous_head: Option<&'a Digest>,
pub config: &'a ResolvedOperationConfig,
pub resolving: Option<&'a KernelEffect>,
}Expand description
What the planner is given. Everything it needs to decide, and nothing that would let it depend
on the host’s wall clock or on a default that may drift between binaries: config is the
configuration this operation froze in its genesis record.
Fields§
§input: &'a NormalizedInput§step_seq: WireU64§previous_head: Option<&'a Digest>§config: &'a ResolvedOperationConfig§resolving: Option<&'a KernelEffect>The pending effect a ResolveEffect input answers — the very effect this kernel published,
already checked against §15.3 (still pending, kind matches the outcome, not a conflicting
duplicate). None for every other input class.
The planner needs it because a failure outcome carries no kind: §7.9’s cross-effect
HostEffectFailure is deliberately kind-agnostic, so the one policy decision DEC-5 allows
has to be looked up from what the kernel asked for, never from what the host echoed back.
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for PlanContext<'a>
impl<'a> RefUnwindSafe for PlanContext<'a>
impl<'a> Send for PlanContext<'a>
impl<'a> Sync for PlanContext<'a>
impl<'a> Unpin for PlanContext<'a>
impl<'a> UnsafeUnpin for PlanContext<'a>
impl<'a> UnwindSafe for PlanContext<'a>
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