Trait diesel::expression::AsExpression
[−]
[src]
pub trait AsExpression<T> {
type Expression: Expression<SqlType=T>;
fn as_expression(self) -> Self::Expression;
}Describes how a type can be represented as an expression for a given type.
These types couldn't just implement Expression
directly, as many things can be used as an expression of multiple types.
(String for example, can be used as either
VarChar or
Text).
This trait allows us to use primitives on the right hand side of various
expressions. For example name.eq("Sean")
Associated Types
type Expression: Expression<SqlType=T>
Required Methods
fn as_expression(self) -> Self::Expression
Implementors
impl<T: Expression> AsExpression<T::SqlType> for Timpl<T, ST> AsExpression<Nullable<ST>> for Option<T> where ST: NotNullimpl<'a, T, ST> AsExpression<Nullable<ST>> for &'a Option<T> where ST: NotNullimpl<'a> AsExpression<Bool> for boolimpl<'a, 'expr> AsExpression<Bool> for &'expr boolimpl<'a> AsExpression<Nullable<Bool>> for boolimpl<'a, 'expr> AsExpression<Nullable<Bool>> for &'expr boolimpl<'a> AsExpression<SmallInt> for i16impl<'a, 'expr> AsExpression<SmallInt> for &'expr i16impl<'a> AsExpression<Nullable<SmallInt>> for i16impl<'a, 'expr> AsExpression<Nullable<SmallInt>> for &'expr i16impl<'a> AsExpression<Integer> for i32impl<'a, 'expr> AsExpression<Integer> for &'expr i32impl<'a> AsExpression<Nullable<Integer>> for i32impl<'a, 'expr> AsExpression<Nullable<Integer>> for &'expr i32impl<'a> AsExpression<BigInt> for i64impl<'a, 'expr> AsExpression<BigInt> for &'expr i64impl<'a> AsExpression<Nullable<BigInt>> for i64impl<'a, 'expr> AsExpression<Nullable<BigInt>> for &'expr i64impl<'a> AsExpression<Float> for f32impl<'a, 'expr> AsExpression<Float> for &'expr f32impl<'a> AsExpression<Nullable<Float>> for f32impl<'a, 'expr> AsExpression<Nullable<Float>> for &'expr f32impl<'a> AsExpression<Double> for f64impl<'a, 'expr> AsExpression<Double> for &'expr f64impl<'a> AsExpression<Nullable<Double>> for f64impl<'a, 'expr> AsExpression<Nullable<Double>> for &'expr f64impl<'a> AsExpression<Text> for Stringimpl<'a, 'expr> AsExpression<Text> for &'expr Stringimpl<'a> AsExpression<Nullable<Text>> for Stringimpl<'a, 'expr> AsExpression<Nullable<Text>> for &'expr Stringimpl<'a> AsExpression<Binary> for Vec<u8>impl<'a, 'expr> AsExpression<Binary> for &'expr Vec<u8>impl<'a> AsExpression<Nullable<Binary>> for Vec<u8>impl<'a, 'expr> AsExpression<Nullable<Binary>> for &'expr Vec<u8>impl<'a> AsExpression<Text> for &'a strimpl<'a, 'expr> AsExpression<Text> for &'expr &'a strimpl<'a> AsExpression<Nullable<Text>> for &'a strimpl<'a, 'expr> AsExpression<Nullable<Text>> for &'expr &'a strimpl<'a> AsExpression<Binary> for &'a [u8]impl<'a, 'expr> AsExpression<Binary> for &'expr &'a [u8]impl<'a> AsExpression<Nullable<Binary>> for &'a [u8]impl<'a, 'expr> AsExpression<Nullable<Binary>> for &'expr &'a [u8]impl<'a> AsExpression<Date> for Stringimpl<'a, 'expr> AsExpression<Date> for &'expr Stringimpl<'a> AsExpression<Nullable<Date>> for Stringimpl<'a, 'expr> AsExpression<Nullable<Date>> for &'expr Stringimpl<'a> AsExpression<Date> for &'a strimpl<'a, 'expr> AsExpression<Date> for &'expr &'a strimpl<'a> AsExpression<Nullable<Date>> for &'a strimpl<'a, 'expr> AsExpression<Nullable<Date>> for &'expr &'a strimpl<'a> AsExpression<Time> for Stringimpl<'a, 'expr> AsExpression<Time> for &'expr Stringimpl<'a> AsExpression<Nullable<Time>> for Stringimpl<'a, 'expr> AsExpression<Nullable<Time>> for &'expr Stringimpl<'a> AsExpression<Time> for &'a strimpl<'a, 'expr> AsExpression<Time> for &'expr &'a strimpl<'a> AsExpression<Nullable<Time>> for &'a strimpl<'a, 'expr> AsExpression<Nullable<Time>> for &'expr &'a strimpl<'a> AsExpression<Timestamp> for Stringimpl<'a, 'expr> AsExpression<Timestamp> for &'expr Stringimpl<'a> AsExpression<Nullable<Timestamp>> for Stringimpl<'a, 'expr> AsExpression<Nullable<Timestamp>> for &'expr Stringimpl<'a> AsExpression<Timestamp> for &'a strimpl<'a, 'expr> AsExpression<Timestamp> for &'expr &'a strimpl<'a> AsExpression<Nullable<Timestamp>> for &'a strimpl<'a, 'expr> AsExpression<Nullable<Timestamp>> for &'expr &'a str