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§
- Maps
F
toAlias<S>
- The return type of
lhs.and(rhs)
- AndNet
postgres_backend
The return type oflsh.and(rhs)
for network types - Array
Contains Deprecated postgres_backend
- Array
Index Deprecated postgres_backend
- The type of
Item
when converted to an expression with the same type asTargetExpr
- The type of
Item
when converted to an expression ofType
- Represents the return type of
.as_select()
- The return type of
expr.asc()
- The return type of
expr.assume_not_null()
- AtTime
Zone postgres_backend
The return type ofexpr.at_time_zone(tz)
- The return type of
lhs.between(lower, upper)
- The return type of
lhs.concat(rhs)
- Concat
Array Deprecated postgres_backend
- Concat
Binary Deprecated postgres_backend
- Concat
Jsonb Deprecated postgres_backend
- Contains
postgres_backend
The return type oflhs.contains(rhs)
for array expressions - Contains
Jsonb Deprecated postgres_backend
- Contains
Net postgres_backend
The return type oflhs.contains(rhs)
for network types - Contains
NetLoose postgres_backend
The return type oflhs.contains_or_eq(rhs)
- Contains
OrEq postgres_backend
- Contains
Range postgres_backend
The return type oflhs.contains_range(rhs)
for range expressions - The return type of
expr.desc()
- Diff
postgres_backend
- Difference
postgres_backend
The return type oflhs.difference_range(rhs)
- Difference
Net postgres_backend
The return type oflsh.diff(rhs)
- Difference
Range postgres_backend
- Represents the return type of
.distinct()
- Distinct
On postgres_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)
- The return type of
alias.field(field)
- The return type of
alias.fields(fields)
- 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()
- Greater
Than postgres_backend
- Greater
Than Range postgres_backend
The return type oflhs.range_is_contained_by(rhs)
- Represents the return type of
.group_by(expr)
- The return type of
lhs.gt(rhs)
- The return type of
lhs.ge(rhs)
- HasAll
Keys postgres_backend
- HasAll
Keys Jsonb postgres_backend
The return type oflsh.has_all_keys(rhs)
- HasAny
Key postgres_backend
- HasAny
KeyJsonb postgres_backend
The return type oflsh.has_any_key(rhs)
- HasKey
postgres_backend
- HasKey
Jsonb postgres_backend
The return type oflsh.has_key(rhs)
- Represents the return type of
.having(predicate)
- ILike
postgres_backend
The return type oflhs.ilike(rhs)
- Ilike
postgres_backend
- Index
postgres_backend
The return type oflhs.index(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.
- Represents the return type of
.intersect(rhs)
- Represents the return type of
.intersect_all(rhs)
- Intersection
postgres_backend
The return type oflhs.intersection_range(rhs)
- Intersection
Range postgres_backend
- Represents the return type of
.into_boxed::<'a, DB>()
- Represents the return type of
.into_sql()
- Is
sqlite
The return type oflhs.is(rhs)
. - IsContained
By postgres_backend
The return type oflhs.range_is_contained_by(rhs)
andlhs.is_contained_by(rhs)
- IsContained
ByJsonb Deprecated postgres_backend
- IsContained
ByNet postgres_backend
The return type of [lhs.is_contained_by(rhs)
]((super::expression_methods::PgNetExpressionMethods::is_contained_by) for network types - IsContained
ByNet Loose postgres_backend
The return type oflhs.is_contained_by_or_eq(rhs)
- IsContained
ByOr Eq postgres_backend
- IsContained
ByRange postgres_backend
The return type oflhs.is_contained_by_range(rhs)
- IsDistinct
From postgres_backend
The return type oflhs.is_distinct_from(rhs)
- IsJson
postgres_backend
The return type ofexpr.is_json()
- IsJson
Array postgres_backend
The return type ofexpr.is_json_array()
- IsJson
Object postgres_backend
The return type ofexpr.is_json_object()
- IsJson
Scalar postgres_backend
The return type ofexpr.is_json_scalar()
- IsNot
sqlite
The return type oflhs.is_not(rhs)
. - IsNot
Distinct From postgres_backend
The return type oflhs.is_not_distinct_from(rhs)
- IsNot
Json postgres_backend
The return type ofexpr.is_not_json()
- IsNot
Json Array postgres_backend
The return type ofexpr.is_not_json_array()
- IsNot
Json Object postgres_backend
The return type ofexpr.is_not_json_object()
- IsNot
Json Scalar postgres_backend
The return type ofexpr.is_not_json_scalar()
- 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.
- Lesser
Than postgres_backend
- Lesser
Than Range postgres_backend
The return type oflhs.range_is_contained_by(rhs)
- The return type of
lhs.like(rhs)
- Like
Binary Deprecated postgres_backend
- 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)
- NotI
Like postgres_backend
The return type oflhs.not_ilike(rhs)
- NotIlike
postgres_backend
- The return type of
lhs.not_like(rhs)
- NotLike
Binary Deprecated postgres_backend
- NotSimilar
To postgres_backend
The return type oflhs.not_similar_to(rhs)
- The return type of
expr.nullable()
- Represents the return type of
.nullable()
- Nulls
First postgres_backend
The return type ofexpr.nulls_first()
- Nulls
Last postgres_backend
The return type ofexpr.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)
- OrNet
postgres_backend
The return type oflsh.or(rhs)
for network types - Represents the return type of
.order(ordering)
- Represents the return type of
.order_by(ordering)
- The return type of
case_when(...).otherwise(...)
- Overlaps
With postgres_backend
The return type oflhs.overlaps_with(rhs)
andlhs.overlaps_with(rhs)
- Overlaps
With Net postgres_backend
The return type oflhs.overlaps_with(rhs)
for network types - Range
Adjacent postgres_backend
The return type oflhs.range_adjacent(rhs)
- Range
Contains postgres_backend
The return type oflhs.contains(rhs)
for range expressions - Range
Extends Left To postgres_backend
The return type oflhs.range_extends_left_to(rhs)
for range expressions - Range
Extends Right To postgres_backend
The return type oflhs.range_extends_right_to(rhs)
for range expressions - Remove
postgres_backend
- Remove
ByPath postgres_backend
- Remove
ByPath From Jsonb postgres_backend
The return type oflhs.remove_by_path(rhs)
- Remove
From Jsonb postgres_backend
The return type oflhs.remove(rhs)
- Retrieve
AsObject postgres_backend
- Retrieve
AsObject Json postgres_backend
The return type oflhs.retrieve_as_object(rhs)
- Retrieve
AsText postgres_backend
- Retrieve
AsText Json postgres_backend
The return type oflhs.retrieve_as_text(rhs)
- Retrieve
ByPath AsObject postgres_backend
- Retrieve
ByPath AsObject Json postgres_backend
The return type oflhs.retrieve_by_path_as_object(rhs)
- Retrieve
ByPath AsText postgres_backend
- Retrieve
ByPath AsText Json postgres_backend
The return type oflhs.retrieve_by_path_as_text(rhs)
- Represents the return type of
InsertStatement::returning
,UpdateStatement::returning
andDeleteStatement::returning
- Represents the return type of
.select(selection)
- Represents the return type of
UpdateStatement::set()
- Similar
To postgres_backend
The return type oflhs.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)
- Union
Range postgres_backend
The return type oflhs.union_range(rhs)
- Represents the return type of
update(lhs).set(rhs)
- Represents the return type of
IncompleteInsertStatement::values()
- The return type of
case_when(...).when(...)
- array_
append postgres_backend
Return type ofarray_append(array, element)
- array_
cat postgres_backend
Return type ofarray_cat(array_a, array_b)
- array_
dims postgres_backend
Return type ofarray_dims(array)
- array_
fill postgres_backend
Return type ofarray_fill(value,array)
- array_
fill_ with_ lower_ bound postgres_backend
Return type ofarray_fill_with_lower_bound(value,array,array)
- array_
length postgres_backend
Return type ofarray_length(array, dimension)
- array_
lower postgres_backend
Return type ofarray_lower(array, bound)
- array_
ndims postgres_backend
Return type ofarray_ndims(array)
- array_
position postgres_backend
Return type ofarray_position(array,element)
- array_
position_ with_ subscript postgres_backend
Return type ofarray_position_with_subscript(array,element,subscript)
- array_
positions postgres_backend
Return type ofarray_positions(array,element)
- array_
prepend postgres_backend
Return type ofarray_prepend(element, array)
- array_
remove postgres_backend
Return type ofarray_remove(array, element)
- array_
replace postgres_backend
Return type ofarray_replace(array, element, replace_with)
- array_
sample postgres_backend
Return type ofarray_sample(array,n)
- array_
shuffle postgres_backend
Return type ofarray_shuffle(array)
- array_
to_ json postgres_backend
Return type ofarray_to_json(array)
- array_
to_ string postgres_backend
Return type ofarray_to_string(arr, delim)
- array_
to_ string_ with_ null_ string postgres_backend
Return type ofarray_to_string_with_null_string(arr, delim, null_str)
- array_
upper postgres_backend
Return type ofarray_upper(array, bound)
- The return type of
avg(expr)
- cardinality
postgres_backend
Return type ofcardinality(array)
- The return type of
case_when()
- Represents the return type of
diesel::delete
- The return type of
exists(expr)
- Represents the return type of
diesel::insert_into
- Represents the return type of
diesel::insert_or_ignore_into
- isempty
postgres_backend
Return type ofisempty(range)
- json
sqlite
Return type ofjson(json)
- json_
array_ length postgres_backend
Return type ofjson_array_length(json)
- json_
object postgres_backend
Return type ofjson_object(text_array)
- json_
object_ with_ keys_ and_ values postgres_backend
Return type ofjson_object_with_keys_and_values(text_array, text_array)
- json_
populate_ record postgres_backend
Return type ofjson_populate_record(base, json)
- json_
pretty sqlite
Return type ofjson_pretty(json)
- Return type of
json_pretty(json, indent)
- json_
strip_ nulls postgres_backend
Return type ofjson_strip_nulls(json)
- json_
typeof postgres_backend
Return type ofjson_typeof(json)
- jsonb
sqlite
Return type ofjsonb(json)
- jsonb_
array_ length postgres_backend
Return type ofjsonb_array_length(jsonb)
- jsonb_
object postgres_backend
Return type ofjsonb_object(text_array)
- jsonb_
object_ with_ keys_ and_ values postgres_backend
Return type ofjsonb_object_with_keys_and_values(text_array, text_array)
- jsonb_
populate_ record postgres_backend
Return type ofjsonb_populate_record(base, json)
- jsonb_
pretty postgres_backend
Return type ofjsonb_pretty(jsonb)
- jsonb_
set postgres_backend
Return type ofjsonb_set(base, path, new_value)
- jsonb_
set_ create_ if_ missing postgres_backend
- jsonb_
set_ lax postgres_backend
- jsonb_
strip_ nulls postgres_backend
Return type ofjsonb_strip_nulls(jsonb)
- jsonb_
typeof postgres_backend
Return type ofjsonb_typeof(jsonb)
- lower
postgres_backend
Return type oflower(range)
- lower_
inc postgres_backend
Return type oflower_inc(range)
- lower_
inf postgres_backend
Return type oflower_inf(range)
- The return type of
max(expr)
- The return type of
min(expr)
- multirange_
merge postgres_backend
Return type ofmultirange_merge(multirange)
- The return type of
not(expr)
- range_
merge postgres_backend
Return type ofrange_merge(range_a, range_b)
- Represents the return type of
diesel::replace_into
- row_
to_ json postgres_backend
Return type ofrow_to_json(record)
- Represents the return type of
diesel::select(selection)
- The return type of
sum(expr)
- to_json
postgres_backend
Return type ofto_json(element)
- to_
jsonb postgres_backend
Return type ofto_jsonb(element)
- trim_
array postgres_backend
Return type oftrim_array(array)
- Represents the return type of
diesel::update
- upper
postgres_backend
Return type ofupper(range)
- upper_
inc postgres_backend
Return type ofupper_inc(range)
- upper_
inf postgres_backend
Return type ofupper_inf(range)