pub struct EntitlementWriteTransaction { /* private fields */ }Expand description
A top-level PostgreSQL transaction awaiting entitlement admission.
Create this transaction directly from a pool with Self::begin. It can
carry host preparatory writes, but deliberately has no commit operation.
Passing it to require_entitlement_for_update either rolls it back or
transforms it into an AdmittedEntitlementWriteTransaction.
Implementations§
Source§impl EntitlementWriteTransaction
impl EntitlementWriteTransaction
Sourcepub async fn begin(pool: &PgPool) -> Result<Self, Error>
pub async fn begin(pool: &PgPool) -> Result<Self, Error>
Starts a top-level transaction reserved for an entitlement-protected write.
Sourcepub fn connection(&mut self) -> &mut PgConnection
pub fn connection(&mut self) -> &mut PgConnection
Borrows the transaction connection for preparatory host database work.
Callers must finish any nested savepoint before returning this value to Syrup Rail. Leaking a savepoint would violate SQLx’s transaction lifecycle contract.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for EntitlementWriteTransaction
impl !UnwindSafe for EntitlementWriteTransaction
impl Freeze for EntitlementWriteTransaction
impl Send for EntitlementWriteTransaction
impl Sync for EntitlementWriteTransaction
impl Unpin for EntitlementWriteTransaction
impl UnsafeUnpin for EntitlementWriteTransaction
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more