pub struct relation;

Trait Implementations§

source§

impl AppearsInFromClause<Only<table>> for relation

§

type Count = Once

How many times does Self appear in QS?
source§

impl Clone for relation

source§

fn clone(&self) -> relation

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Column for relation

§

type Table = table

The table which this column belongs to
source§

const NAME: &'static str = _

The name of this column
source§

impl Debug for relation

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for relation

source§

fn default() -> relation

Returns the “default value” for a type. Read more
source§

impl Expression for relation

§

type SqlType = RelationType

The type that this expression represents in SQL
source§

impl<DB> QueryFragment<DB, NotSpecialized> for relationwhere DB: Backend, StaticQueryFragmentInstance<table>: QueryFragment<DB>,

source§

fn walk_ast<'b>( &'b self, __diesel_internal_out: AstPass<'_, 'b, DB> ) -> QueryResult<()>

Walk over this QueryFragment for all passes. Read more
source§

fn to_sql( &self, out: &mut <DB as Backend>::QueryBuilder, backend: &DB ) -> Result<(), Error>

Converts this QueryFragment to its SQL representation. Read more
source§

fn collect_binds<'b>( &'b self, out: &mut <DB as HasBindCollector<'b>>::BindCollector, metadata_lookup: &mut <DB as TypeMetadata>::MetadataLookup, backend: &'b DB ) -> Result<(), Error>

Serializes all bind parameters in this query. Read more
source§

fn is_safe_to_cache_prepared(&self, backend: &DB) -> Result<bool, Error>

Is this query safe to store in the prepared statement cache? Read more
source§

fn is_noop(&self, backend: &DB) -> Result<bool, Error>

Does walking this AST have any effect?
source§

impl QueryId for relation

§

type QueryId = relation

A type which uniquely represents Self in a SQL query. Read more
source§

const HAS_STATIC_QUERY_ID: bool = true

Can the SQL generated by Self be uniquely identified by its type? Read more
source§

fn query_id() -> Option<TypeId>

Returns the type id of Self::QueryId if Self::HAS_STATIC_QUERY_ID. Returns None otherwise. Read more
source§

impl ValidGrouping<()> for relation

§

type IsAggregate = No

Is this expression aggregate? Read more
source§

impl<__GB> ValidGrouping<__GB> for relationwhere __GB: IsContainedInGroupBy<relation, Output = Yes>,

§

type IsAggregate = Yes

Is this expression aggregate? Read more
source§

impl<QS> AppearsOnTable<QS> for relationwhere QS: AppearsInFromClause<table, Count = Once>,

source§

impl Copy for relation

source§

impl SelectableExpression<Only<table>> for relation

source§

impl SelectableExpression<table> for relation

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T, ST> AsExpression<ST> for Twhere T: Expression<SqlType = ST>, ST: SqlType + TypedExpressionType,

§

type Expression = T

The expression being returned
source§

fn as_expression(self) -> T

Perform the conversion
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<Conn, DB, T> ExecuteDsl<Conn, DB> for Twhere Conn: AsyncConnection<Backend = DB>, DB: Backend, T: QueryFragment<DB, NotSpecialized> + QueryId + Send,

source§

fn execute<'query, 'conn>( query: T, conn: &'conn mut Conn ) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>where T: 'query,

Execute this command
source§

impl<Conn, DB, T> ExecuteDsl<Conn, DB> for Twhere Conn: Connection<Backend = DB>, DB: Backend, T: QueryFragment<DB, NotSpecialized> + QueryId,

source§

fn execute(query: T, conn: &mut Conn) -> Result<usize, Error>

Execute this command
source§

impl<T> ExpressionMethods for Twhere T: Expression, <T as Expression>::SqlType: SingleValue,

source§

fn eq<T>( self, other: T ) -> Grouped<Eq<Self, <T as AsExpression<Self::SqlType>>::Expression>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>,

Creates a SQL = expression. Read more
source§

fn ne<T>( self, other: T ) -> Grouped<NotEq<Self, <T as AsExpression<Self::SqlType>>::Expression>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>,

Creates a SQL != expression. Read more
source§

fn eq_any<T>( self, values: T ) -> Grouped<In<Self, <T as AsInExpression<Self::SqlType>>::InExpression>>where Self::SqlType: SqlType, T: AsInExpression<Self::SqlType>,

Creates a SQL IN statement. Read more
source§

fn ne_all<T>( self, values: T ) -> Grouped<NotIn<Self, <T as AsInExpression<Self::SqlType>>::InExpression>>where Self::SqlType: SqlType, T: AsInExpression<Self::SqlType>,

Creates a SQL NOT IN statement. Read more
source§

fn is_null(self) -> Grouped<IsNull<Self>>

Creates a SQL IS NULL expression. Read more
source§

fn is_not_null(self) -> Grouped<IsNotNull<Self>>

Creates a SQL IS NOT NULL expression. Read more
source§

fn gt<T>( self, other: T ) -> Grouped<Gt<Self, <T as AsExpression<Self::SqlType>>::Expression>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>,

Creates a SQL > expression. Read more
source§

fn ge<T>( self, other: T ) -> Grouped<GtEq<Self, <T as AsExpression<Self::SqlType>>::Expression>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>,

Creates a SQL >= expression. Read more
source§

fn lt<T>( self, other: T ) -> Grouped<Lt<Self, <T as AsExpression<Self::SqlType>>::Expression>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>,

Creates a SQL < expression. Read more
source§

fn le<T>( self, other: T ) -> Grouped<LtEq<Self, <T as AsExpression<Self::SqlType>>::Expression>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>,

Creates a SQL <= expression. Read more
source§

fn between<T, U>( self, lower: T, upper: U ) -> Grouped<Between<Self, And<<T as AsExpression<Self::SqlType>>::Expression, <U as AsExpression<Self::SqlType>>::Expression>>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>, U: AsExpression<Self::SqlType>,

Creates a SQL BETWEEN expression using the given lower and upper bounds. Read more
source§

fn not_between<T, U>( self, lower: T, upper: U ) -> Grouped<NotBetween<Self, And<<T as AsExpression<Self::SqlType>>::Expression, <U as AsExpression<Self::SqlType>>::Expression>>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>, U: AsExpression<Self::SqlType>,

Creates a SQL NOT BETWEEN expression using the given lower and upper bounds. Read more
source§

fn desc(self) -> Desc<Self>

Creates a SQL DESC expression, representing this expression in descending order. Read more
source§

fn asc(self) -> Asc<Self>

Creates a SQL ASC expression, representing this expression in ascending order. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoSql for T

source§

fn into_sql<T>(self) -> Self::Expressionwhere Self: AsExpression<T> + Sized, T: SqlType + TypedExpressionType,

Convert self to an expression for Diesel’s query builder. Read more
source§

fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expressionwhere &'a Self: AsExpression<T>, T: SqlType + TypedExpressionType,

Convert &self to an expression for Diesel’s query builder. Read more
source§

impl<T> NullableExpressionMethods for Twhere T: Expression,

source§

fn nullable(self) -> Nullable<Self>

Converts this potentially non-null expression into one which is treated as nullable. This method has no impact on the generated SQL, and is only used to allow certain comparisons that would otherwise fail to compile. Read more
source§

fn assume_not_null(self) -> AssumeNotNull<Self>

Converts this potentially nullable expression into one which will be assumed to be not-null. This method has no impact on the generated SQL, however it will enable you to attempt deserialization of the returned value in a non-Option. Read more
source§

impl<T> Paginate for T

source§

fn paginate(self, page: Option<i32>) -> PaginatedQuery<T>

Return a paginated version of a query for a specific page number.
source§

impl<T> PgExpressionMethods for Twhere T: Expression,

source§

fn is_not_distinct_from<T>( self, other: T ) -> Grouped<IsNotDistinctFrom<Self, <T as AsExpression<Self::SqlType>>::Expression>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>,

Creates a PostgreSQL IS NOT DISTINCT FROM expression. Read more
source§

fn is_distinct_from<T>( self, other: T ) -> Grouped<IsDistinctFrom<Self, <T as AsExpression<Self::SqlType>>::Expression>>where Self::SqlType: SqlType, T: AsExpression<Self::SqlType>,

Creates a PostgreSQL IS DISTINCT FROM expression. Read more
source§

impl<T> PgTrgmExpressionMethods for Twhere T: Expression,

source§

fn fuzzy<U>(self, right: U) -> PgTrgmFuzzy<Self, U::Expression>where Self::SqlType: SqlType, U: AsExpression<Self::SqlType>,

Fuzzy search. Uses the pg_trgm % operator. Read more
source§

impl<T, Conn> RunQueryDsl<Conn> for T

source§

fn execute<'query, 'conn>( self, conn: &'conn mut Conn ) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>where Conn: AsyncConnection + Send, Self: ExecuteDsl<Conn, <Conn as AsyncConnection>::Backend> + 'query,

Executes the given command, returning the number of rows affected. Read more
source§

fn load<'query, U, 'conn>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U, Global>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U, Global>>>where U: Send, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,

Executes the given query, returning a Vec with the returned rows. Read more
source§

fn load_stream<'conn, 'query, U>( self, conn: &'conn mut Conn ) -> Self::LoadFuture<'conn>where Conn: AsyncConnection, U: 'conn, Self: LoadQuery<'query, Conn, U> + 'query,

Executes the given query, returning a Stream with the returned rows. Read more
source§

fn get_result<'query, 'conn, U>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<Self::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>, Global>>)) -> Result<U, Error>>, fn(_: Self::Stream<'conn>) -> Map<StreamFuture<Pin<Box<Self::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>, Global>>)) -> Result<U, Error>>>where U: Send + 'conn, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,

Runs the command, and returns the affected row. Read more
source§

fn get_results<'query, U, 'conn>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U, Global>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U, Global>>>where U: Send, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,

Runs the command, returning an Vec with the affected rows. Read more
source§

fn first<'query, 'conn, U>( self, conn: &'conn mut Conn ) -> AndThen<<Self::Output as LoadQuery<'query, Conn, U>>::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>)) -> Result<U, Error>>, fn(_: <Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>) -> Map<StreamFuture<Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>)) -> Result<U, Error>>>where U: Send + 'conn, Conn: AsyncConnection, Self: LimitDsl, Self::Output: LoadQuery<'query, Conn, U> + Send + 'query,

Attempts to load a single record. Read more
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> NonAggregate for Twhere T: ValidGrouping<()>, <T as ValidGrouping<()>>::IsAggregate: MixedAggregates<No, Output = No>,