pub trait LockingDsl<Lock> {
    type Output;

    // Required method
    fn with_lock(self, lock: Lock) -> Self::Output;
Expand description

Methods related to locking select statements

This trait should not be relied on directly by most apps. Its behavior is provided by QueryDsl. However, you may need a where clause on this trait to call for_update from generic code.

Required Associated Types§


type Output

The type returned by set_lock. See dsl::ForUpdate and friends for convenient access to this type.

Required Methods§


fn with_lock(self, lock: Lock) -> Self::Output

See the trait level documentation



impl<F, S, W, O, LOf, Lock> LockingDsl<Lock> for SelectStatement<F, S, NoDistinctClause, W, O, LOf>


type Output = SelectStatement<F, S, NoDistinctClause, W, O, LOf, NoGroupByClause, NoHavingClause, LockingClause<Lock>>


impl<S, Lock> LockingDsl<Lock> for Alias<S>where Self: QuerySource + AsQuery<Query = SelectStatement<FromClause<Self>>>, <Self as QuerySource>::DefaultSelection: Expression<SqlType = <Self as AsQuery>::SqlType> + ValidGrouping<()>, <Self as AsQuery>::SqlType: TypedExpressionType,


impl<T, Lock> LockingDsl<Lock> for Twhere T: Table + AsQuery<Query = SelectStatement<FromClause<T>>>, T::DefaultSelection: Expression<SqlType = T::SqlType> + ValidGrouping<()>, T::SqlType: TypedExpressionType,