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§
- Add
- The return type of
l + r
- Aggregate
All - Return type of
AggregateExpressionMethods::aggregate_all
- Aggregate
Distinct - Return type of
AggregateExpressionMethods::aggregate_distinct
- Aggregate
Filter - Return type of
AggregateExpressionMethods::aggregate_filter
- Aggregate
Order - Return type of
AggregateExpressionMethods::aggregate_order
- Aliased
Fields - Maps
F
toAlias<S>
- And
- The return type of
lhs.and(rhs)
- AsExpr
- The type of
Item
when converted to an expression with the same type asTargetExpr
- AsExpr
Of - The type of
Item
when converted to an expression ofType
- AsSelect
- Represents the return type of
.as_select()
- Asc
- The return type of
expr.asc()
- Assume
NotNull - The return type of
expr.assume_not_null()
- Between
- The return type of
lhs.between(lower, upper)
- Cast
- The return type of
expr.cast<ST>()
- Concat
- The return type of
lhs.concat(rhs)
- Desc
- The return type of
expr.desc()
- Distinct
- Represents the return type of
.distinct()
- Div
- The return type of
l / r
- 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')
- Except
- Represents the return type of
.except(rhs)
- Except
All - Represents the return type of
.except_all(rhs)
- Field
- The return type of
alias.field(field)
- Fields
- The return type of
alias.fields(fields)
- 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))
- Following
- Return type of
FrameBoundDsl::following
- ForKey
Share - Represents the return type of
.for_key_share()
- ForNo
KeyUpdate - 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()
- Frame
Between - Return type of
FrameClauseDsl::frame_between
- Frame
Between With Exclusion - Return type of
FrameClauseDsl::frame_between_with_exclusion
- FrameBy
- Return type of
WindowExpressionMethods::frame_by
- Frame
Start With - Return type of
FrameClauseDsl::frame_start_with
- Frame
Start With Exclusion - Return type of
FrameClauseDsl::frame_start_with_exclusion
- Ge
- 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)
- Having
- Represents the return type of
.having(predicate)
- Inner
Join - Represents the return type of
.inner_join(rhs)
- Inner
Join On - Represents the return type of
.inner_join(rhs.on(on))
- Inner
Join Query Source - A query source representing the inner join between two tables.
- Intersect
- Represents the return type of
.intersect(rhs)
- Intersect
All - Represents the return type of
.intersect_all(rhs)
- Into
Boxed - Represents the return type of
.into_boxed::<'a, DB>()
- IntoSql
- Represents the return type of
.into_sql()
- Is
- The return type of
lhs.is(rhs)
. - IsNot
- The return type of
lhs.is_not(rhs)
. - IsNot
Null - The return type of
expr.is_not_null()
- IsNull
- The return type of
expr.is_null()
- Le
- Left
Join - Represents the return type of
.left_join(rhs)
- Left
Join On - Represents the return type of
.left_join(rhs.on(on))
- Left
Join Query Source - A query source representing the left outer join between two tables.
- 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)
- Mul
- The return type of
l * r
- Ne
- NeAll
- NeAny
- The return type of
lhs.ne_all(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)
- NotLike
- The return type of
lhs.not_like(rhs)
- Nullable
- The return type of
expr.nullable()
- Nullable
Select - Represents the return type of
.nullable()
- Offset
- Represents the return type of
.offset()
- On
- Represents the return type of
rhs.on(on)
- 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)
- OrderBy
- Represents the return type of
.order_by(ordering)
- Otherwise
- The return type of
case_when(...).otherwise(...)
- Over
- Return type of
WindowExpressionMethods::over
- Partition
By - Return type of
WindowExpressionMethods::partition_by
- Preceding
- Return type of
FrameBoundDsl::preceding
- Returning
- Represents the return type of
InsertStatement::returning
,UpdateStatement::returning
andDeleteStatement::returning
- Select
- Represents the return type of
.select(selection)
- Set
- Represents the return type of
UpdateStatement::set()
- Single
Value - Represents the return type of
.single_value()
- Skip
Locked - Represents the return type of
.skip_locked()
- SqlType
Of - The SQL type of an expression
- Sub
- The return type of
l - r
- Then
Order By - Represents the return type of
.then_order_by(ordering)
- Union
- Represents the return type of
.union(rhs)
- Union
All - Represents the return type of
.union_all(rhs)
- Update
- Represents the return type of
update(lhs).set(rhs)
- Values
- Represents the return type of
IncompleteInsertStatement::values()
- When
- The return type of
case_when(...).when(...)
- Window
Filter - Return type of
WindowExpressionMethods::window_filter
- Window
Order - Return type of
WindowExpressionMethods::window_order
- avg
- The return type of
avg(expr)
- case_
when - The return type of
case_when()
- delete
- Represents the return type of
diesel::delete
- exists
- The return type of
exists(expr)
- first_
value - The return type of
first_value(expr)
- insert_
into - Represents the return type of
diesel::insert_into
- insert_
or_ ignore_ into - Represents the return type of
diesel::insert_or_ignore_into
- json
- Return type of the
json()
SQL function. - json_
array_ 0 - Return type of the
json_array_0()
SQL function. - json_
array_ 1 - Return type of the
json_array_1()
SQL function. - json_
array_ 2 - Return type of the
json_array_2()
SQL function. - json_
array_ length - Return type of the
json_array_length()
SQL function. - json_
array_ length_ with_ path - Return type of the
json_array_length_with_path()
SQL function. - json_
error_ position - Return type of the
json_error_position()
SQL function. - json_
group_ array - Return type of the
json_group_array()
SQL function. - json_
group_ object - Return type of the
json_group_object()
SQL function. - json_
patch - Return type of the
json_patch()
SQL function. - json_
pretty - Return type of the
json_pretty()
SQL function. - json_
pretty_ with_ indentation - Return type of the
json_pretty_with_indentation()
SQL function. - json_
quote - Return type of the
json_quote()
SQL function. - json_
remove_ 0 - Return type of the
json_remove_0()
SQL function. - json_
remove_ 1 - Return type of the
json_remove_1()
SQL function. - json_
remove_ 2 - Return type of the
json_remove_2()
SQL function. - json_
type - Return type of the
json_type()
SQL function. - json_
type_ with_ path - Return type of the
json_type_with_path()
SQL function. - json_
valid - Return type of the
json_valid()
SQL function. - jsonb
- Return type of the
jsonb()
SQL function. - jsonb_
array_ 0 - Return type of the
jsonb_array_0()
SQL function. - jsonb_
array_ 1 - Return type of the
jsonb_array_1()
SQL function. - jsonb_
array_ 2 - Return type of the
jsonb_array_2()
SQL function. - jsonb_
group_ array - Return type of the
jsonb_group_array()
SQL function. - jsonb_
group_ object - Return type of the
jsonb_group_object()
SQL function. - jsonb_
patch - Return type of the
jsonb_patch()
SQL function. - jsonb_
remove_ 0 - Return type of the
jsonb_remove_0()
SQL function. - jsonb_
remove_ 1 - Return type of the
jsonb_remove_1()
SQL function. - jsonb_
remove_ 2 - Return type of the
jsonb_remove_2()
SQL function. - lag
- The return type of
lag(expr)
- lag_
with_ offset - The return type of
lag_with_offset(expr, offset)
- lag_
with_ offset_ and_ default - The return type of
lag_with_offset_and_default(expr, offset)
- last_
value - The return type of
last_value(expr)
- lead
- The return type of
lead(expr)
- lead_
with_ offset - The return type of
lead_with_offset(expr, offset)
- lead_
with_ offset_ and_ default - The return type of
lead_with_offset_and_default(expr, offset)
- max
- The return type of
max(expr)
- min
- The return type of
min(expr)
- not
- The return type of
not(expr)
- nth_
value - The return type of
nth_value(expr, n)
- replace_
into - Represents the return type of
diesel::replace_into
- select
- Represents the return type of
diesel::select(selection)
- sum
- The return type of
sum(expr)
- update
- Represents the return type of
diesel::update