Module diesel::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 Definitions

Maps F to Alias<S>
The return type of lhs.and(rhs)
The type of Item when converted to an expression with the same type as TargetExpr
The type of Item when converted to an expression of Type
Represents the return type of .as_select()
The return type of expr.asc()
Represents the return type of diesel::select(selection)
The return type of lhs.concat(rhs)
The return type of expr.desc()
Represents the return type of .distinct()
The return type of lhs.eq(rhs)
The return type of lhs.eq_any(rhs)
The return type of lhs.escape('x')
Represents the return type of .except(rhs)
Represents the return type of .except_all(rhs)
Represents the return type of .filter(predicate)
Represents the return type of .find(pk)
Represents the return type of .filter(lhs.eq(rhs))
Represents the return type of .for_key_share()
Represents the return type of .for_no_key_update()
Represents the return type of .for_share()
Represents the return type of .for_update()
Represents the return type of .group_by(expr)
The return type of lhs.gt(rhs)
The return type of lhs.ge(rhs)
Represents the return type of .having(predicate)
Represents the return type of .inner_join(rhs)
Represents the return type of .inner_join(rhs.on(on))
A query source representing the inner join between two tables. For example, for the inner join between three tables that implement JoinTo: InnerJoinQuerySource<InnerJoinQuerySource<table1, table2>, table3> Which conveniently lets you omit the exact join condition.
Represents the return type of .intersect(rhs)
Represents the return type of .intersect_all(rhs)
Represents the return type of .into_boxed::<'a, DB>()
The return type of expr.is_not_null()
The return type of expr.is_null()
Represents the return type of .left_join(rhs)
Represents the return type of .left_join(rhs.on(on))
A query source representing the left outer join between two tables. For example, for the left join between three tables that implement JoinTo: LeftJoinQuerySource<LeftJoinQuerySource<table1, table2>, table3> Which conveniently lets you omit the exact join condition.
The return type of lhs.like(rhs)
Represents the return type of .limit()
The return type of lhs.lt(rhs)
The return type of lhs.le(rhs)
The return type of lhs.ne_all(rhs)
Represents the return type of .no_wait()
The return type of lhs.ne(rhs)
The return type of lhs.not_like(rhs)
The return type of expr.nullable()
Represents the return type of .nullable()
Represents the return type of .offset()
Represents the return type of rhs.on(on)
The return type of lhs.or(rhs)
Represents the return type of .or_filter(predicate)
Represents the return type of .order(ordering)
Represents the return type of .select(selection)
Represents the return type of .single_value()
Represents the return type of .skip_locked()
The SQL type of an expression
Represents the return type of .then_order_by(ordering)
Represents the return type of .union(rhs)
Represents the return type of .union_all(rhs)
Represents the return type of update(lhs).set(rhs)
The return type of avg(expr)
The return type of exists(expr)
The return type of max(expr)
The return type of min(expr)
The return type of not(expr)
The return type of sum(expr)