pub struct BatchDecisions<O, R, A> {
pub results: Vec<Result<AuthorizationDecision<O>, AuthorizationError<R, A>>>,
}Expand description
Ordered results retaining decisions and per-item failures, including denials.
Persistence is sequential and per item, not atomic across this batch. Dropping the future cancels remaining work; earlier writes may already be durable and the in-flight write may be uncertain. No background tasks survive.
Fields§
§results: Vec<Result<AuthorizationDecision<O>, AuthorizationError<R, A>>>One result per input position. Successful denials retain their audit record.
Implementations§
Source§impl<O, R, A> BatchDecisions<O, R, A>
impl<O, R, A> BatchDecisions<O, R, A>
Sourcepub fn into_strict(self) -> Result<Vec<AuthorizationDecision<O>>, Self>
pub fn into_strict(self) -> Result<Vec<AuthorizationDecision<O>>, Self>
Returns all decisions only if every item completed required persistence.
§Errors
Returns the entire batch, preserving all item evidence, if any failed. This controls response handling; it does not roll back previous writes.
Trait Implementations§
Auto Trait Implementations§
impl<O, R, A> !RefUnwindSafe for BatchDecisions<O, R, A>
impl<O, R, A> !UnwindSafe for BatchDecisions<O, R, A>
impl<O, R, A> Freeze for BatchDecisions<O, R, A>
impl<O, R, A> Send for BatchDecisions<O, R, A>
impl<O, R, A> Sync for BatchDecisions<O, R, A>
impl<O, R, A> Unpin for BatchDecisions<O, R, A>
impl<O, R, A> UnsafeUnpin for BatchDecisions<O, R, 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