pub(crate) enum ConditionExpression {
Condition(Condition),
Expr(Expr),
}
Expand description
An internal representation of conditions. May be refactored away in the future if we can get our head around it.
It used to be in the public interface of Condition::add
and Condition::add_option
,
in order to accept anything resembling a condition or an expression.
Nowadays, we achieve that with traits.
Variants§
Trait Implementations§
Source§impl Clone for ConditionExpression
impl Clone for ConditionExpression
Source§fn clone(&self) -> ConditionExpression
fn clone(&self) -> ConditionExpression
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ConditionExpression
impl Debug for ConditionExpression
Source§impl From<Condition> for ConditionExpression
impl From<Condition> for ConditionExpression
Source§impl From<ConditionExpression> for Condition
impl From<ConditionExpression> for Condition
Source§fn from(ce: ConditionExpression) -> Self
fn from(ce: ConditionExpression) -> Self
Converts to this type from the input type.
Source§impl From<ConditionExpression> for Expr
impl From<ConditionExpression> for Expr
Source§fn from(ce: ConditionExpression) -> Self
fn from(ce: ConditionExpression) -> Self
Converts to this type from the input type.
Source§impl From<Expr> for ConditionExpression
impl From<Expr> for ConditionExpression
Source§impl PartialEq for ConditionExpression
impl PartialEq for ConditionExpression
impl StructuralPartialEq for ConditionExpression
Auto Trait Implementations§
impl Freeze for ConditionExpression
impl RefUnwindSafe for ConditionExpression
impl Send for ConditionExpression
impl Sync for ConditionExpression
impl Unpin for ConditionExpression
impl UnwindSafe for ConditionExpression
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> ExprTrait for T
impl<T> ExprTrait for T
Source§fn as_enum<N>(self, type_name: N) -> Exprwhere
N: IntoIden,
fn as_enum<N>(self, type_name: N) -> Exprwhere
N: IntoIden,
Express a
AS enum
expression. Read moreSource§fn cast_as<N>(self, type_name: N) -> Exprwhere
N: IntoIden,
fn cast_as<N>(self, type_name: N) -> Exprwhere
N: IntoIden,
Express a
CAST AS
expression. Read moreSource§fn equals<C>(self, col: C) -> Exprwhere
C: IntoColumnRef,
fn equals<C>(self, col: C) -> Exprwhere
C: IntoColumnRef,
Express a equal expression between two table columns,
you will mainly use this to relate identical value between two table columns. Read more
Source§fn in_subquery(self, sel: SelectStatement) -> Expr
fn in_subquery(self, sel: SelectStatement) -> Expr
Express a
IN
sub-query expression. Read moreSource§fn in_tuples<V, I>(self, v: I) -> Exprwhere
V: IntoValueTuple,
I: IntoIterator<Item = V>,
fn in_tuples<V, I>(self, v: I) -> Exprwhere
V: IntoValueTuple,
I: IntoIterator<Item = V>,
Express a
IN
sub expression. Read moreSource§fn is_not_null(self) -> Expr
fn is_not_null(self) -> Expr
Express a
IS NOT NULL
expression. Read moreSource§fn left_shift<R>(self, right: R) -> Expr
fn left_shift<R>(self, right: R) -> Expr
Express a bitwise left shift. Read more
Source§fn not_between<A, B>(self, a: A, b: B) -> Expr
fn not_between<A, B>(self, a: A, b: B) -> Expr
Express a
NOT BETWEEN
expression. Read moreSource§fn not_equals<C>(self, col: C) -> Exprwhere
C: IntoColumnRef,
fn not_equals<C>(self, col: C) -> Exprwhere
C: IntoColumnRef,
Express a not equal expression between two table columns,
you will mainly use this to relate identical value between two table columns. Read more
Source§fn not_in_subquery(self, sel: SelectStatement) -> Expr
fn not_in_subquery(self, sel: SelectStatement) -> Expr
Express a
NOT IN
sub-query expression. Read moreSource§fn not_like<L>(self, like: L) -> Exprwhere
L: IntoLikeExpr,
fn not_like<L>(self, like: L) -> Exprwhere
L: IntoLikeExpr,
Express a
NOT LIKE
expression. Read moreSource§fn right_shift<R>(self, right: R) -> Expr
fn right_shift<R>(self, right: R) -> Expr
Express a bitwise right shift. Read more