pub struct OutputReport<T, S> {
pub value: T,
pub report: RunReport<S>,
}Expand description
A typed turn’s answer, alongside everything a plain turn reports.
Composition rather than a second report type: a typed turn is an ordinary
turn with one extra thing to say, and a caller still needs the outcome, the
usage and the sink — a fan-out that charges runs against a shared budget
needs them most on the typed path. Keeping RunReport whole in here is
what stops the two from drifting into two slightly different reports.
Fields§
§value: TWhat the model committed through the terminal tool.
report: RunReport<S>Everything the same turn would have reported without a type on it.
Trait Implementations§
Auto Trait Implementations§
impl<T, S> !RefUnwindSafe for OutputReport<T, S>
impl<T, S> !UnwindSafe for OutputReport<T, S>
impl<T, S> Freeze for OutputReport<T, S>
impl<T, S> Send for OutputReport<T, S>
impl<T, S> Sync for OutputReport<T, S>
impl<T, S> Unpin for OutputReport<T, S>
impl<T, S> UnsafeUnpin for OutputReport<T, S>
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