pub struct IdempotencyBinding<'a> { /* private fields */ }Expand description
One-use local idempotency identity bound to one exact request fingerprint.
The binding does not claim that a provider accepts an idempotency header. It prevents this retry owner from applying one intent to different request bytes. Provider retry eligibility remains source-locked operation policy.
Implementations§
Source§impl<'a> IdempotencyBinding<'a>
impl<'a> IdempotencyBinding<'a>
Sourcepub const fn bind(
intent: IdempotencyIntent<'a>,
fingerprint: FingerprintRef<'a>,
) -> Self
pub const fn bind( intent: IdempotencyIntent<'a>, fingerprint: FingerprintRef<'a>, ) -> Self
Consumes a fresh intent and binds it to one request fingerprint.
Sourcepub const fn intent_len(&self) -> usize
pub const fn intent_len(&self) -> usize
Returns the bounded intent length without exposing entropy bytes.
Trait Implementations§
Auto Trait Implementations§
impl<'a> !UnwindSafe for IdempotencyBinding<'a>
impl<'a> Freeze for IdempotencyBinding<'a>
impl<'a> RefUnwindSafe for IdempotencyBinding<'a>
impl<'a> Send for IdempotencyBinding<'a>
impl<'a> Sync for IdempotencyBinding<'a>
impl<'a> Unpin for IdempotencyBinding<'a>
impl<'a> UnsafeUnpin for IdempotencyBinding<'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