Skip to main content

Module helper_types

Module 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 Aliases§

Add
The return type of l + r
AggregateAll
Return type of AggregateExpressionMethods::aggregate_all
AggregateDistinct
Return type of AggregateExpressionMethods::aggregate_distinct
AggregateFilter
Return type of AggregateExpressionMethods::aggregate_filter
AggregateOrder
Return type of AggregateExpressionMethods::aggregate_order
AliasedFields
Maps F to Alias<S>
And
The return type of lhs.and(rhs)
AndNetpostgres_backend
The return type of lsh.and(rhs) for network types
ArrayContainsDeprecatedpostgres_backend
ArrayIndexDeprecatedpostgres_backend
AsExpr
The type of Item when converted to an expression with the same type as TargetExpr
AsExprOf
The type of Item when converted to an expression of Type
AsSelect
Represents the return type of .as_select()
Asc
The return type of expr.asc()
AssumeNotNull
The return type of expr.assume_not_null()
AtTimeZonepostgres_backend
The return type of expr.at_time_zone(tz)
Between
The return type of lhs.between(lower, upper)
Cast
The return type of expr.cast<ST>()
Collate
The return type of lhs.collate(collation)
Concat
The return type of lhs.concat(rhs)
ConcatArrayDeprecatedpostgres_backend
ConcatBinaryDeprecatedpostgres_backend
ConcatJsonbDeprecatedpostgres_backend
Containspostgres_backend
The return type of lhs.contains(rhs) for array expressions
ContainsJsonbDeprecatedpostgres_backend
ContainsNetpostgres_backend
The return type of lhs.contains(rhs) for network types
ContainsNetLoosepostgres_backend
The return type of lhs.contains_or_eq(rhs)
ContainsOrEqpostgres_backend
ContainsRangepostgres_backend
The return type of lhs.contains_range(rhs) for range expressions
Desc
The return type of expr.desc()
Diffpostgres_backend
Differencepostgres_backend
The return type of lhs.difference_range(rhs)
DifferenceNetpostgres_backend
The return type of lsh.diff(rhs)
DifferenceRangepostgres_backend
Distinct
Represents the return type of .distinct()
DistinctOnpostgres_backend
Represents the return type of .distinct_on(expr)
Div
The return type of l / r
DoNothing
Represents the return type of IncompleteOnConflict::do_nothing()
DoUpdate
Represents the return type of IncompleteOnConflict::do_update()
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)
ExceptAll
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
ForKeyShare
Represents the return type of .for_key_share()
ForNoKeyUpdate
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()
FrameBetween
Return type of FrameClauseDsl::frame_between
FrameBetweenWithExclusion
Return type of FrameClauseDsl::frame_between_with_exclusion
FrameBy
Return type of WindowExpressionMethods::frame_by
FrameStartWith
Return type of FrameClauseDsl::frame_start_with
FrameStartWithExclusion
Return type of FrameClauseDsl::frame_start_with_exclusion
Ge
GreaterThanpostgres_backend
GreaterThanRangepostgres_backend
The return type of lhs.range_is_contained_by(rhs)
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)
HasAllKeyspostgres_backend
HasAllKeysJsonbpostgres_backend
The return type of lsh.has_all_keys(rhs)
HasAnyKeypostgres_backend
HasAnyKeyJsonbpostgres_backend
The return type of lsh.has_any_key(rhs)
HasKeypostgres_backend
HasKeyJsonbpostgres_backend
The return type of lsh.has_key(rhs)
Having
Represents the return type of .having(predicate)
ILikepostgres_backend
The return type of lhs.ilike(rhs)
Ilikepostgres_backend
Indexpostgres_backend
The return type of lhs.index(rhs)
IndexNullablepostgres_backend
The return type of lhs.index_nullable(rhs)
InnerJoin
Represents the return type of .inner_join(rhs)
InnerJoinOn
Represents the return type of .inner_join(rhs.on(on))
InnerJoinQuerySource
A query source representing the inner join between two tables.
Intersect
Represents the return type of .intersect(rhs)
IntersectAll
Represents the return type of .intersect_all(rhs)
Intersectionpostgres_backend
The return type of lhs.intersection_range(rhs)
IntersectionRangepostgres_backend
IntoBoxed
Represents the return type of .into_boxed::<'a, DB>()
IntoSql
Represents the return type of .into_sql()
Is__sqlite-shared
The return type of lhs.is(rhs).
IsContainedBypostgres_backend
The return type of lhs.range_is_contained_by(rhs) and lhs.is_contained_by(rhs)
IsContainedByJsonbDeprecatedpostgres_backend
IsContainedByNetpostgres_backend
The return type of lhs.is_contained_by(rhs) for network types
IsContainedByNetLoosepostgres_backend
The return type of lhs.is_contained_by_or_eq(rhs)
IsContainedByOrEqpostgres_backend
IsContainedByRangepostgres_backend
The return type of lhs.is_contained_by_range(rhs)
IsDistinctFrompostgres_backend
The return type of lhs.is_distinct_from(rhs)
IsJsonpostgres_backend
The return type of expr.is_json()
IsJsonArraypostgres_backend
The return type of expr.is_json_array()
IsJsonObjectpostgres_backend
The return type of expr.is_json_object()
IsJsonScalarpostgres_backend
The return type of expr.is_json_scalar()
IsNot__sqlite-shared
The return type of lhs.is_not(rhs).
IsNotDistinctFrompostgres_backend
The return type of lhs.is_not_distinct_from(rhs)
IsNotJsonpostgres_backend
The return type of expr.is_not_json()
IsNotJsonArraypostgres_backend
The return type of expr.is_not_json_array()
IsNotJsonObjectpostgres_backend
The return type of expr.is_not_json_object()
IsNotJsonScalarpostgres_backend
The return type of expr.is_not_json_scalar()
IsNotNull
The return type of expr.is_not_null()
IsNull
The return type of expr.is_null()
Le
LeftJoin
Represents the return type of .left_join(rhs)
LeftJoinOn
Represents the return type of .left_join(rhs.on(on))
LeftJoinQuerySource
A query source representing the left outer join between two tables.
LesserThanpostgres_backend
LesserThanRangepostgres_backend
The return type of lhs.range_is_contained_by(rhs)
Like
The return type of lhs.like(rhs)
LikeBinaryDeprecatedpostgres_backend
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)
NotILikepostgres_backend
The return type of lhs.not_ilike(rhs)
NotIlikepostgres_backend
NotLike
The return type of lhs.not_like(rhs)
NotLikeBinaryDeprecatedpostgres_backend
NotSimilarTopostgres_backend
The return type of lhs.not_similar_to(rhs)
Nullable
The return type of expr.nullable()
NullableSelect
Represents the return type of .nullable()
NullsFirstpostgres_backend
The return type of expr.nulls_first()
NullsLastpostgres_backend
The return type of expr.nulls_last()
Offset
Represents the return type of .offset()
On
Represents the return type of rhs.on(on)
OnConflict
Represents the return type of InsertStatement::on_conflict()
OnConflictDoNothing
Represents the return type of InsertStatement::on_conflict_do_nothing
Or
The return type of lhs.or(rhs)
OrFilter
Represents the return type of .or_filter(predicate)
OrNetpostgres_backend
The return type of lsh.or(rhs) for network types
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
OverlapsWithpostgres_backend
The return type of lhs.overlaps_with(rhs) and lhs.overlaps_with(rhs)
OverlapsWithNetpostgres_backend
The return type of lhs.overlaps_with(rhs) for network types
PartitionBy
Return type of WindowExpressionMethods::partition_by
Preceding
Return type of FrameBoundDsl::preceding
RangeAdjacentpostgres_backend
The return type of lhs.range_adjacent(rhs)
RangeContainspostgres_backend
The return type of lhs.contains(rhs) for range expressions
RangeExtendsLeftTopostgres_backend
The return type of lhs.range_extends_left_to(rhs) for range expressions
RangeExtendsRightTopostgres_backend
The return type of lhs.range_extends_right_to(rhs) for range expressions
Removepostgres_backend
RemoveByPathpostgres_backend
RemoveByPathFromJsonbpostgres_backend
The return type of lhs.remove_by_path(rhs)
RemoveFromJsonbpostgres_backend
The return type of lhs.remove(rhs)
RetrieveAsObjectpostgres_backend
The return type of lhs.retrieve_as_object(rhs)
RetrieveAsObjectJsonpostgres_backend
RetrieveAsObjectSqlite__sqlite-shared
The return type of lhs.retrieve_as_object(rhs)
RetrieveAsTextpostgres_backend or __sqlite-shared
The return type of lhs.retrieve_as_text(rhs)
RetrieveAsTextJsonpostgres_backend
RetrieveByPathAsObjectpostgres_backend
RetrieveByPathAsObjectJsonpostgres_backend
The return type of lhs.retrieve_by_path_as_object(rhs)
RetrieveByPathAsTextpostgres_backend
RetrieveByPathAsTextJsonpostgres_backend
The return type of lhs.retrieve_by_path_as_text(rhs)
Returning
Represents the return type of InsertStatement::returning, UpdateStatement::returning and DeleteStatement::returning
Select
Represents the return type of .select(selection)
Set
Represents the return type of UpdateStatement::set() and IncompleteDoUpdate::set()
SimilarTopostgres_backend
The return type of lhs.similar_to(rhs)
SingleValue
Represents the return type of .single_value()
SkipLocked
Represents the return type of .skip_locked()
Slicepostgres_backend
The return type of lhs.slice(rhs1, rhs2)
SliceFrompostgres_backend
The return type of lhs.slice_from(rhs)
SliceFromNullablepostgres_backend
The return type of lhs.slice_from_nullable(rhs)
SliceNullablepostgres_backend
The return type of lhs.slice_nullable(rhs1, rhs2)
SliceTopostgres_backend
The return type of lhs.slice_to(rhs)
SliceToNullablepostgres_backend
The return type of lhs.slice_to_nullable(rhs)
SqlTypeOf
The SQL type of an expression
Sub
The return type of l - r
ThenOrderBy
Represents the return type of .then_order_by(ordering)
Union
Represents the return type of .union(rhs)
UnionAll
Represents the return type of .union_all(rhs)
UnionRangepostgres_backend
The return type of lhs.union_range(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(...)
WindowFilter
Return type of WindowExpressionMethods::window_filter
WindowOrder
Return type of WindowExpressionMethods::window_order
abbrevpostgres_backend
Return type of the abbrev() SQL function.
array_appendpostgres_backend
Return type of the array_append() SQL function.
array_catpostgres_backend
Return type of the array_cat() SQL function.
array_dimspostgres_backend
Return type of the array_dims() SQL function.
array_fillpostgres_backend
Return type of the array_fill() SQL function.
array_fill_with_lower_boundpostgres_backend
Return type of the array_fill_with_lower_bound() SQL function.
array_lengthpostgres_backend
Return type of the array_length() SQL function.
array_lowerpostgres_backend
Return type of the array_lower() SQL function.
array_ndimspostgres_backend
Return type of the array_ndims() SQL function.
array_positionpostgres_backend
Return type of the array_position() SQL function.
array_position_with_subscriptpostgres_backend
Return type of the array_position_with_subscript() SQL function.
array_positionspostgres_backend
Return type of the array_positions() SQL function.
array_prependpostgres_backend
Return type of the array_prepend() SQL function.
array_removepostgres_backend
Return type of the array_remove() SQL function.
array_replacepostgres_backend
Return type of the array_replace() SQL function.
array_samplepostgres_backend
Return type of the array_sample() SQL function.
array_shufflepostgres_backend
Return type of the array_shuffle() SQL function.
array_to_jsonpostgres_backend
Return type of the array_to_json() SQL function.
array_to_stringpostgres_backend
Return type of the array_to_string() SQL function.
array_to_string_with_null_stringpostgres_backend
Return type of the array_to_string_with_null_string() SQL function.
array_upperpostgres_backend
Return type of the array_upper() SQL function.
avg
The return type of avg(expr)
broadcastpostgres_backend
Return type of the broadcast() SQL function.
cardinalitypostgres_backend
Return type of the cardinality() SQL function.
case_when
The return type of case_when()
daterangepostgres_backend
Return type of the daterange() SQL function.
delete
Represents the return type of diesel::delete
exists
The return type of exists(expr)
familypostgres_backend
Return type of the family() SQL function.
first_value
The return type of first_value(expr)
hostpostgres_backend
Return type of the host() SQL function.
hostmaskpostgres_backend
Return type of the hostmask() SQL function.
inet_mergepostgres_backend
Return type of the inet_merge() SQL function.
inet_same_familypostgres_backend
Return type of the inet_same_family() SQL function.
insert_into
Represents the return type of diesel::insert_into
insert_or_ignore_into
Represents the return type of diesel::insert_or_ignore_into
int4rangepostgres_backend
Return type of the int4range() SQL function.
int8rangepostgres_backend
Return type of the int8range() SQL function.
isemptypostgres_backend
Return type of the isempty() SQL function.
json__sqlite-shared
Return type of the json() SQL function.
json_array_0__sqlite-shared
Return type of the json_array_0() SQL function.
json_array_1__sqlite-shared
Return type of the json_array_1() SQL function.
json_array_2__sqlite-shared
Return type of the json_array_2() SQL function.
json_array_lengthpostgres_backend
Return type of the json_array_length() SQL function.
json_array_length_with_path__sqlite-shared
Return type of the json_array_length_with_path() SQL function.
json_build_array_0postgres_backend
Return type of the json_build_array_0() SQL function.
json_build_array_1postgres_backend
Return type of the json_build_array_1() SQL function.
json_build_array_2postgres_backend
Return type of the json_build_array_2() SQL function.
json_error_position__sqlite-shared
Return type of the json_error_position() SQL function.
json_extract_double__sqlite-shared
Return type of the json_extract_double() SQL function.
json_extract_integer__sqlite-shared
Return type of the json_extract_integer() SQL function.
json_extract_json_1__sqlite-shared
Return type of the json_extract_json_1() SQL function.
json_extract_json_2__sqlite-shared
Return type of the json_extract_json_2() SQL function.
json_extract_path_1postgres_backend
Return type of the json_extract_path_1() SQL function.
json_extract_path_2postgres_backend
Return type of the json_extract_path_2() SQL function.
json_extract_path_text_1postgres_backend
Return type of the json_extract_path_text_1() SQL function.
json_extract_path_text_2postgres_backend
Return type of the json_extract_path_text_2() SQL function.
json_extract_string__sqlite-shared
Return type of the json_extract_string() SQL function.
json_group_array__sqlite-shared
Return type of the json_group_array() SQL function.
json_group_object__sqlite-shared
Return type of the json_group_object() SQL function.
json_objectpostgres_backend
Return type of the json_object() SQL function.
json_object_0__sqlite-shared
Return type of the json_object_0() SQL function.
json_object_1__sqlite-shared
Return type of the json_object_1() SQL function.
json_object_2__sqlite-shared
Return type of the json_object_2() SQL function.
json_object_with_keys_and_valuespostgres_backend
Return type of the json_object_with_keys_and_values() SQL function.
json_patch__sqlite-shared
Return type of the json_patch() SQL function.
json_populate_recordpostgres_backend
Return type of the json_populate_record() SQL function.
json_pretty__sqlite-shared
Return type of the json_pretty() SQL function.
json_pretty_with_indentation__sqlite-shared
Return type of the json_pretty_with_indentation() SQL function.
json_quote__sqlite-shared
Return type of the json_quote() SQL function.
json_remove_0__sqlite-shared
Return type of the json_remove_0() SQL function.
json_remove_1__sqlite-shared
Return type of the json_remove_1() SQL function.
json_remove_2__sqlite-shared
Return type of the json_remove_2() SQL function.
json_strip_nullspostgres_backend
Return type of the json_strip_nulls() SQL function.
json_type__sqlite-shared
Return type of the json_type() SQL function.
json_type_with_path__sqlite-shared
Return type of the json_type_with_path() SQL function.
json_typeofpostgres_backend
Return type of the json_typeof() SQL function.
json_valid__sqlite-shared
Return type of the json_valid() SQL function.
json_valid_with_flags__sqlite-shared
Return type of the json_valid_with_flags() SQL function.
jsonb__sqlite-shared
Return type of the jsonb() SQL function.
jsonb_array_0__sqlite-shared
Return type of the jsonb_array_0() SQL function.
jsonb_array_1__sqlite-shared
Return type of the jsonb_array_1() SQL function.
jsonb_array_2__sqlite-shared
Return type of the jsonb_array_2() SQL function.
jsonb_array_lengthpostgres_backend
Return type of the jsonb_array_length() SQL function.
jsonb_build_array_0postgres_backend
Return type of the jsonb_build_array_0() SQL function.
jsonb_build_array_1postgres_backend
Return type of the jsonb_build_array_1() SQL function.
jsonb_build_array_2postgres_backend
Return type of the jsonb_build_array_2() SQL function.
jsonb_extract_double__sqlite-shared
Return type of the jsonb_extract_double() SQL function.
jsonb_extract_integer__sqlite-shared
Return type of the jsonb_extract_integer() SQL function.
jsonb_extract_jsonb_1__sqlite-shared
Return type of the jsonb_extract_jsonb_1() SQL function.
jsonb_extract_jsonb_2__sqlite-shared
Return type of the jsonb_extract_jsonb_2() SQL function.
jsonb_extract_path_1postgres_backend
Return type of the jsonb_extract_path_1() SQL function.
jsonb_extract_path_2postgres_backend
Return type of the jsonb_extract_path_2() SQL function.
jsonb_extract_path_text_1postgres_backend
Return type of the jsonb_extract_path_text_1() SQL function.
jsonb_extract_path_text_2postgres_backend
Return type of the jsonb_extract_path_text_2() SQL function.
jsonb_extract_string__sqlite-shared
Return type of the jsonb_extract_string() SQL function.
jsonb_group_array__sqlite-shared
Return type of the jsonb_group_array() SQL function.
jsonb_group_object__sqlite-shared
Return type of the jsonb_group_object() SQL function.
jsonb_insertpostgres_backend
Return type of the jsonb_insert() SQL function.
jsonb_insert_with_insert_afterpostgres_backend
Return type of the jsonb_insert_with_insert_after() SQL function.
jsonb_objectpostgres_backend
Return type of the jsonb_object() SQL function.
jsonb_object_0__sqlite-shared
Return type of the jsonb_object_0() SQL function.
jsonb_object_1__sqlite-shared
Return type of the jsonb_object_1() SQL function.
jsonb_object_2__sqlite-shared
Return type of the jsonb_object_2() SQL function.
jsonb_object_with_keys_and_valuespostgres_backend
Return type of the jsonb_object_with_keys_and_values() SQL function.
jsonb_patch__sqlite-shared
Return type of the jsonb_patch() SQL function.
jsonb_populate_recordpostgres_backend
Return type of the jsonb_populate_record() SQL function.
jsonb_prettypostgres_backend
Return type of the jsonb_pretty() SQL function.
jsonb_remove_0__sqlite-shared
Return type of the jsonb_remove_0() SQL function.
jsonb_remove_1__sqlite-shared
Return type of the jsonb_remove_1() SQL function.
jsonb_remove_2__sqlite-shared
Return type of the jsonb_remove_2() SQL function.
jsonb_setpostgres_backend
Return type of the jsonb_set() SQL function.
jsonb_set_create_if_missingpostgres_backend
Return type of the jsonb_set_create_if_missing() SQL function.
jsonb_set_laxpostgres_backend
Return type of the jsonb_set_lax() SQL function.
jsonb_strip_nullspostgres_backend
Return type of the jsonb_strip_nulls() SQL function.
jsonb_typeofpostgres_backend
Return type of the jsonb_typeof() 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)
lowerpostgres_backend
Return type of the lower() SQL function.
lower_incpostgres_backend
Return type of the lower_inc() SQL function.
lower_infpostgres_backend
Return type of the lower_inf() SQL function.
masklenpostgres_backend
Return type of the masklen() SQL function.
max
The return type of max(expr)
min
The return type of min(expr)
multirange_mergepostgres_backend
Return type of the multirange_merge() SQL function.
netmaskpostgres_backend
Return type of the netmask() SQL function.
networkpostgres_backend
Return type of the network() SQL function.
not
The return type of not(expr)
nth_value
The return type of nth_value(expr, n)
numrangepostgres_backend
Return type of the numrange() SQL function.
range_mergepostgres_backend
Return type of the range_merge() SQL function.
replace_into
Represents the return type of diesel::replace_into
row_to_jsonpostgres_backend
Return type of the row_to_json() SQL function.
select
Represents the return type of diesel::select(selection)
set_masklenpostgres_backend
Return type of the set_masklen() SQL function.
sum
The return type of sum(expr)
to_jsonpostgres_backend
Return type of the to_json() SQL function.
to_jsonbpostgres_backend
Return type of the to_jsonb() SQL function.
trim_arraypostgres_backend
Return type of the trim_array() SQL function.
tsrangepostgres_backend
Return type of the tsrange() SQL function.
tstzrangepostgres_backend
Return type of the tstzrange() SQL function.
update
Represents the return type of diesel::update
upperpostgres_backend
Return type of the upper() SQL function.
upper_incpostgres_backend
Return type of the upper_inc() SQL function.
upper_infpostgres_backend
Return type of the upper_inf() SQL function.