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)

AndNetpostgres_backend

The return type of lsh.and(rhs) for network types

ArrayContainspostgres_backend

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

ArrayIndexpostgres_backend

The return type of lhs.index(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()

AtTimeZonepostgres_backend

The return type of expr.at_time_zone(tz)

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

The return type of lhs.concat(rhs)

ConcatBinarypostgres_backend

The return type of lhs.remove_by_path(rhs)

ConcatJsonbpostgres_backend

The return type of lsh.concat(rhs)

ContainsJsonbpostgres_backend

The return type of lsh.contains(rhs) for jsonb types

ContainsNetpostgres_backend

The return type of lhs.contains(rhs) for network types

ContainsNetLoosepostgres_backend

The return type of lhs.contains_or_eq(rhs)

The return type of expr.desc()

DifferenceNetpostgres_backend

The return type of lsh.diff(rhs)

Represents the return type of .distinct()

DistinctOnpostgres_backend

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)

HasAllKeysJsonbpostgres_backend

The return type of lsh.has_all_keys(rhs)

HasAnyKeyJsonbpostgres_backend

The return type of lsh.has_any_key(rhs)

HasKeyJsonbpostgres_backend

The return type of lsh.has_key(rhs)

Represents the return type of .having(predicate)

ILikepostgres_backend

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>()

Issqlite

The return type of lhs.is(rhs).

IsContainedBypostgres_backend

The return type of lhs.is_contained_by(rhs)

IsContainedByJsonbpostgres_backend

The return type of lsh.is_contained_by(rhs) for jsonb types

IsContainedByNetpostgres_backend

The return type of [lhs.is_contained_by(rhs)]((super::expression_methods::PgNetExpressionMethods::is_contained_by) for network types

IsContainedByNetLoosepostgres_backend

The return type of lhs.is_contained_by_or_eq(rhs)

IsDistinctFrompostgres_backend

The return type of lhs.is_distinct_from(rhs)

IsNotsqlite

The return type of lhs.is_not(rhs).

IsNotDistinctFrompostgres_backend

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)

LikeBinarypostgres_backend

The return type of lhs.remove_by_path(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)

NotILikepostgres_backend

The return type of lhs.not_ilike(rhs)

The return type of lhs.not_like(rhs)

NotLikeBinarypostgres_backend

The return type of lhs.remove_by_path(rhs)

NotSimilarTopostgres_backend

The return type of lhs.not_similar_to(rhs)

The return type of expr.nullable()

Represents the return type of .nullable()

NullsFirstpostgres_backend

The return type of expr.nulls_first()

NullsLastpostgres_backend

The return type of expr.nulls_last()

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)

OrNetpostgres_backend

The return type of lsh.or(rhs) for network types

Represents the return type of .order(ordering)

OverlapsWithpostgres_backend

The return type of lhs.overlaps_with(rhs)

OverlapsWithNetpostgres_backend

The return type of lhs.overlaps_with(rhs) for network types

RangeContainspostgres_backend

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

RemoveByPathFromJsonbpostgres_backend

The return type of lhs.remove_by_path(rhs)

RemoveFromJsonbpostgres_backend

The return type of lhs.remove(rhs)

RetrieveAsObjectJsonpostgres_backend

The return type of lhs.retrieve_as_object(rhs)

RetrieveAsTextJsonpostgres_backend

The return type of lhs.retrieve_as_text(rhs)

Represents the return type of .select(selection)

SimilarTopostgres_backend

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)