usecrate::patches::PatchLog;usecrate::ChangeHash;/// The result of a successful, and committed, transaction.
#[derive(Debug)]pubstructSuccess<O>{/// The result of the transaction.
pubresult: O,
/// The hash of the change, will be `None` if the transaction did not create any operations
pubhash:Option<ChangeHash>,
pubpatch_log: PatchLog,
}/// The result of a failed, and rolled back, transaction.
#[derive(Debug)]pubstructFailure<E>{/// The error returned from the transaction.
puberror: E,
/// The number of operations cancelled.
pubcancelled:usize,
}