pub enum DriveOutcome {
Terminal(Vec<Line>),
AwaitingExternal(Vec<Line>),
}Expand description
Outcome of a single FlowInstance::drive call: either the drive
reached a terminal line, or it paused on a deferred external mid-drive.
Both variants carry every Line produced during this call — for
AwaitingExternal, that’s the (possibly empty) run of Line::Text
produced before the pause; for Terminal, the terminal line is always
the last element (see FlowInstance::drive).
Variants§
Terminal(Vec<Line>)
Reached a terminal line (Line::Done, Line::Choices, or
Line::End) — always the last element of the Vec.
AwaitingExternal(Vec<Line>)
Paused on a deferred external
(ExternalResult::Pending).
Resolve it (FlowInstance::resolve_external) and call
FlowInstance::drive again — with the same budget — to
resume.
Trait Implementations§
Source§impl Clone for DriveOutcome
impl Clone for DriveOutcome
Source§fn clone(&self) -> DriveOutcome
fn clone(&self) -> DriveOutcome
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 moreAuto Trait Implementations§
impl Freeze for DriveOutcome
impl RefUnwindSafe for DriveOutcome
impl Send for DriveOutcome
impl Sync for DriveOutcome
impl Unpin for DriveOutcome
impl UnsafeUnpin for DriveOutcome
impl UnwindSafe for DriveOutcome
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