Module helper_types

Source
Expand description

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 Aliases§

And
The return type of lhs.and(rhs)
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()
Between
The return type of lhs.between(lower, upper)
Desc
The return type of expr.desc()
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()
Gt
The return type of lhs.gt(rhs)
GtEq
The return type of lhs.ge(rhs)
InnerJoin
Represents the return type of .inner_join(rhs)
IntoBoxed
Represents the return type of .into_boxed::<'a, DB>()
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)
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()
NotDeprecated
The return type of not(expr)
NotBetween
The return type of lhs.not_between(lower, upper)
NotEq
The return type of lhs.ne(rhs)
NotLike
The return type of lhs.not_like(rhs)
Nullable
The return type of expr.nullable()
NullableSelect
Represents the return type of .nullable()
Offset
Represents the return type of .offset()
Or
The return type of lhs.or(rhs)
OrFilter
Represents the return type of .or_filter(predicate)
Order
Represents the return type of .order(ordering)
Select
Represents the return type of .select(selection)
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)