pub trait OutcomeTrait {
type Error;
type Obligation;
// Required methods
fn new() -> Self;
fn record_completed(&mut self, outcome: &Self::Obligation);
fn record_error(&mut self, error: Self::Error);
}
Expand description
This trait allows us to have two different Outcome types:
- the normal one that does as little as possible
- one for tests that does some additional work and checking