Module diesel::helper_types[][src]

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

The return type of lhs.and(rhs)

The return type of lsh.and(rhs)

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

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

The return type of expr.asc()

The return type of expr.assume_not_null()

The return type of expr.at_time_zone(tz)

Represents the return type of diesel::select(selection)

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

The return type of lhs.concat(rhs)

The return type of lsh.contains(rhs)

The return type of lsh.contains_or_eq(rhs)

The return type of expr.desc()

The return type of lsh.diff(rhs)

Represents the return type of .distinct()

Represents the return type of .distinct_on(expr)

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)

The return type of lhs.ilike(rhs)

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 lhs.is(rhs).

The return type of lhs.is_contained_by(rhs)

The return type of lsh.is_contained_by(rhs)

The return type of lsh.is_contained_by_or_eq(rhs)

The return type of lhs.is_distinct_from(rhs)

The return type of lhs.is_not(rhs).

The return type of lhs.is_not_distinct_from(rhs)

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.not_between(lower, upper)

The return type of lhs.ne(rhs)

The return type of lhs.not_ilike(rhs)

The return type of lhs.not_like(rhs)

The return type of lhs.not_similar_to(rhs)

The return type of expr.nullable()

Represents the return type of .nullable()

The return type of expr.nulls_first()

The return type of expr.nulls_last()

Represents the return type of .offset()

The return type of lhs.or(rhs)

Represents the return type of .or_filter(predicate)

The return type of lsh.or(rhs)

Represents the return type of .order(ordering)

The return type of lhs.overlaps_with(rhs)

The return type of lhs.overlaps_with(rhs)

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

Represents the return type of .select(selection)

The return type of lhs.similar_to(rhs)

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)