pub struct FindUnique<'a, M: 'static, PK: 'static> { /* private fields */ }Implementations§
Source§impl<'a, M: 'static, PK: 'static> FindUnique<'a, M, PK>
impl<'a, M: 'static, PK: 'static> FindUnique<'a, M, PK>
Sourcepub fn for_update(self) -> Self
pub fn for_update(self) -> Self
Emit SELECT ... FOR UPDATE. See FindMany::for_update for
the tx-pairing caveat.
Sourcepub fn as_detail(self) -> Self
pub fn as_detail(self) -> Self
Evaluate against the schema’s detail policy slice (the
default for find_unique). A no-op when called explicitly,
kept for API symmetry with Self::as_list.
Sourcepub fn as_list(self) -> Self
pub fn as_list(self) -> Self
Evaluate against the schema’s read/list policy slice
instead of detail. Use when the call site needs list-style
permission semantics on a unique-key lookup.
pub fn preview_sql(&self) -> String
pub fn preview_scoped_sql(&self, ctx: &CoolContext) -> String
pub async fn run(self, ctx: &CoolContext) -> Result<Option<M>, CoolError>
pub async fn run_in_tx<'tx>( self, tx: &mut Transaction<'tx, Postgres>, ctx: &CoolContext, ) -> Result<Option<M>, CoolError>
Source§impl<'a, M: 'static, PK: 'static> FindUnique<'a, M, PK>
impl<'a, M: 'static, PK: 'static> FindUnique<'a, M, PK>
Sourcepub fn select<I, C>(self, columns: I) -> ProjectedFindUnique<'a, M, PK>where
I: IntoIterator<Item = C>,
C: IntoColumnName,
pub fn select<I, C>(self, columns: I) -> ProjectedFindUnique<'a, M, PK>where
I: IntoIterator<Item = C>,
C: IntoColumnName,
Restrict the SELECT to the named columns. Resolves to
Option<Projection<M>> rather than Option<M>; non-selected
fields on the inner M hold Default::default().
Trait Implementations§
Auto Trait Implementations§
impl<'a, M, PK> Freeze for FindUnique<'a, M, PK>where
PK: Freeze,
impl<'a, M, PK> !RefUnwindSafe for FindUnique<'a, M, PK>
impl<'a, M, PK> Send for FindUnique<'a, M, PK>where
PK: Send,
impl<'a, M, PK> Sync for FindUnique<'a, M, PK>where
PK: Sync,
impl<'a, M, PK> Unpin for FindUnique<'a, M, PK>where
PK: Unpin,
impl<'a, M, PK> UnsafeUnpin for FindUnique<'a, M, PK>where
PK: UnsafeUnpin,
impl<'a, M, PK> !UnwindSafe for FindUnique<'a, M, PK>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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