[][src]Module diesel::helper_types

Provide helper types for concisely writing the return type of functions. As with iterators, it is unfortunately difficult to return a partially constructed query without exposing the exact implementation of the function. Without higher kinded types, these various DSLs can't be combined into a single trait for boxing purposes.

All types here are in the form <FirstType as DslName<OtherTypes>>::Output. So the return type of users.filter(first_name.eq("John")).order(last_name.asc()).limit(10) would be Limit<Order<FindBy<users, first_name, &str>, Asc<last_name>>>

Type Definitions

And

The return type of lhs.and(rhs)

AndNet

The return type of lsh.and(rhs)

ArrayContains

The return type of lhs.contains(rhs) for array expressions

AsExpr

The type of Item when converted to an expression with the same type as TargetExpr

AsExprOf

The type of Item when converted to an expression of Type

Asc

The return type of expr.asc()

AtTimeZone

The return type of expr.at_time_zone(tz)

Between

The return type of lhs.between(lower, upper)

Concat

The return type of lhs.concat(rhs)

ContainsNet

The return type of lsh.contains(rhs)

ContainsNetLoose

The return type of lsh.contains_or_eq(rhs)

Desc

The return type of expr.desc()

DifferenceNet

The return type of lsh.diff(rhs)

Distinct

Represents the return type of .distinct()

DistinctOn

Represents the return type of .distinct_on(expr)

Eq

The return type of lhs.eq(rhs)

EqAny

The return type of lhs.eq_any(rhs)

Escape

The return type of lhs.escape('x')

Filter

Represents the return type of .filter(predicate)

Find

Represents the return type of .find(pk)

FindBy

Represents the return type of .filter(lhs.eq(rhs))

ForKeyShare

Represents the return type of .for_key_share()

ForNoKeyUpdate

Represents the return type of .for_no_key_update()

ForShare

Represents the return type of .for_share()

ForUpdate

Represents the return type of .for_update()

GroupBy

Represents the return type of .group_by(expr)

Gt

The return type of lhs.gt(rhs)

GtEq

The return type of lhs.ge(rhs)

ILike

The return type of lhs.ilike(rhs)

InnerJoin

Represents the return type of .inner_join(rhs)

InnerJoinOn

Represents the return type of .inner_join(rhs.on(on))

IntoBoxed

Represents the return type of .into_boxed::<'a, DB>()

IsContainedBy

The return type of lhs.is_contained_by(rhs)

IsContainedByNet

The return type of lsh.is_contained_by(rhs)

IsContainedByNetLoose

The return type of lsh.is_contained_by_or_eq(rhs)

IsDistinctFrom

The return type of lhs.is_distinct_from(rhs)

IsNotDistinctFrom

The return type of lhs.is_not_distinct_from(rhs)

IsNotNull

The return type of expr.is_not_null()

IsNull

The return type of expr.is_null()

LeftJoin

Represents the return type of .left_join(rhs)

LeftJoinOn

Represents the return type of .left_join(rhs.on(on))

Like

The return type of lhs.like(rhs)

Limit

Represents the return type of .limit()

Lt

The return type of lhs.lt(rhs)

LtEq

The return type of lhs.le(rhs)

NeAny

The return type of lhs.ne_any(rhs)

NoWait

Represents the return type of .no_wait()

NotBetween

The return type of lhs.not_between(lower, upper)

NotEq

The return type of lhs.ne(rhs)

NotILike

The return type of lhs.not_ilike(rhs)

NotLike

The return type of lhs.not_like(rhs)

NotSimilarTo

The return type of lhs.not_similar_to(rhs)

Nullable

The return type of expr.nullable()

NullableSelect

Represents the return type of .nullable()

NullsFirst

The return type of expr.nulls_first()

NullsLast

The return type of expr.nulls_last()

Offset

Represents the return type of .offset()

Or

The return type of lhs.or(rhs)

OrFilter

Represents the return type of .or_filter(predicate)

OrNet

The return type of lsh.or(rhs)

Order

Represents the return type of .order(ordering)

OverlapsWith

The return type of lhs.overlaps_with(rhs)

OverlapsWithNet

The return type of lhs.overlaps_with(rhs)

RangeContains

The return type of lhs.contains(rhs) for range expressions

Select

Represents the return type of .select(selection)

SimilarTo

The return type of lhs.similar_to(rhs)

SingleValue

Represents the return type of .single_value()

SkipLocked

Represents the return type of .skip_locked()

SqlTypeOf

The SQL type of an expression

ThenOrderBy

Represents the return type of .then_order_by(ordering)

Update

Represents the return type of update(lhs).set(rhs)

avg

The return type of avg(expr)

max

The return type of max(expr)

min

The return type of min(expr)

not

The return type of not(expr)

sum

The return type of sum(expr)