pub struct Column<'a> {
pub name: Cow<'a, str>,
/* private fields */
}Expand description
A column definition.
Fields§
§name: Cow<'a, str>Implementations§
source§impl<'a> Column<'a>
impl<'a> Column<'a>
sourcepub fn default<V>(self, value: V) -> Selfwhere
V: Into<DefaultValue<'a>>,
pub fn default<V>(self, value: V) -> Selfwhere V: Into<DefaultValue<'a>>,
Sets the default value for the column.
sourcepub fn type_family(self, type_family: TypeFamily) -> Self
pub fn type_family(self, type_family: TypeFamily) -> Self
Sets a type family, used mainly for SQL Server OUTPUT hack.
sourcepub fn set_is_enum(self, is_enum: bool) -> Self
pub fn set_is_enum(self, is_enum: bool) -> Self
Sets whether the column points to an enum type.
sourcepub fn set_is_list(self, is_list: bool) -> Self
pub fn set_is_list(self, is_list: bool) -> Self
Sets whether the column points to an scalar list.
sourcepub fn set_is_selected(self, is_selected: bool) -> Self
pub fn set_is_selected(self, is_selected: bool) -> Self
Sets whether the column is selected.
On Postgres, this defines whether an enum column should be casted to TEXT when rendered.
Since enums are user-defined custom types, tokio-postgres fires an additional query
when selecting columns of type enum to know which custom type the column refers to.
Casting the enum column to TEXT avoid this roundtrip since TEXT is a builtin type.
We don’t want to cast every single enum columns to text though, as this would prevent indexes from being used, so we use this additional field to granularly pick which columns we cast.
sourcepub fn default_autogen(&self) -> bool
pub fn default_autogen(&self) -> bool
True when the default value is set and automatically generated in the database.
pub fn native_column_type<T: Into<NativeColumnType<'a>>>( self, native_type: Option<T> ) -> Column<'a>
Trait Implementations§
source§impl<'a> From<Column<'a>> for Expression<'a>
impl<'a> From<Column<'a>> for Expression<'a>
source§impl<'a> Groupable<'a> for Column<'a>
impl<'a> Groupable<'a> for Column<'a>
source§fn group(self) -> GroupByDefinition<'a>
fn group(self) -> GroupByDefinition<'a>
selfsource§impl<'a> IntoGroupByDefinition<'a> for Column<'a>
impl<'a> IntoGroupByDefinition<'a> for Column<'a>
fn into_group_by_definition(self) -> GroupByDefinition<'a>
source§impl<'a> IntoOrderDefinition<'a> for Column<'a>
impl<'a> IntoOrderDefinition<'a> for Column<'a>
fn into_order_definition(self) -> OrderDefinition<'a>
source§impl<'a> Orderable<'a> for Column<'a>
impl<'a> Orderable<'a> for Column<'a>
source§fn ascend(self) -> OrderDefinition<'a>
fn ascend(self) -> OrderDefinition<'a>
ASCsource§fn descend(self) -> OrderDefinition<'a>
fn descend(self) -> OrderDefinition<'a>
DESCsource§fn ascend_nulls_first(self) -> OrderDefinition<'a>
fn ascend_nulls_first(self) -> OrderDefinition<'a>
ASC NULLS FIRSTsource§fn ascend_nulls_last(self) -> OrderDefinition<'a>
fn ascend_nulls_last(self) -> OrderDefinition<'a>
ASC NULLS LASTsource§fn descend_nulls_first(self) -> OrderDefinition<'a>
fn descend_nulls_first(self) -> OrderDefinition<'a>
DESC NULLS FIRSTsource§fn descend_nulls_last(self) -> OrderDefinition<'a>
fn descend_nulls_last(self) -> OrderDefinition<'a>
ASC NULLS LASTAuto Trait Implementations§
impl<'a> RefUnwindSafe for Column<'a>
impl<'a> Send for Column<'a>
impl<'a> Sync for Column<'a>
impl<'a> Unpin for Column<'a>
impl<'a> UnwindSafe for Column<'a>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<'a, U> Comparable<'a> for Uwhere
U: Into<Column<'a>>,
impl<'a, U> Comparable<'a> for Uwhere U: Into<Column<'a>>,
source§fn equals<T>(self, comparison: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn equals<T>(self, comparison: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn not_equals<T>(self, comparison: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn not_equals<T>(self, comparison: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn less_than<T>(self, comparison: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn less_than<T>(self, comparison: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn less_than_or_equals<T>(self, comparison: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn less_than_or_equals<T>(self, comparison: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn greater_than<T>(self, comparison: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn greater_than<T>(self, comparison: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn greater_than_or_equals<T>(self, comparison: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn greater_than_or_equals<T>(self, comparison: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn in_selection<T>(self, selection: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn in_selection<T>(self, selection: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn not_in_selection<T>(self, selection: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn not_in_selection<T>(self, selection: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn like<T>(self, pattern: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn like<T>(self, pattern: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn not_like<T>(self, pattern: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn not_like<T>(self, pattern: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn is_not_null(self) -> Compare<'a>
fn is_not_null(self) -> Compare<'a>
NULL. Read moresource§fn between<T, V>(self, left: T, right: V) -> Compare<'a>where
T: Into<Expression<'a>>,
V: Into<Expression<'a>>,
fn between<T, V>(self, left: T, right: V) -> Compare<'a>where T: Into<Expression<'a>>, V: Into<Expression<'a>>,
source§fn not_between<T, V>(self, left: T, right: V) -> Compare<'a>where
T: Into<Expression<'a>>,
V: Into<Expression<'a>>,
fn not_between<T, V>(self, left: T, right: V) -> Compare<'a>where T: Into<Expression<'a>>, V: Into<Expression<'a>>,
source§fn compare_raw<T, V>(self, raw_comparator: T, right: V) -> Compare<'a>where
T: Into<Cow<'a, str>>,
V: Into<Expression<'a>>,
fn compare_raw<T, V>(self, raw_comparator: T, right: V) -> Compare<'a>where T: Into<Cow<'a, str>>, V: Into<Expression<'a>>,
source§fn json_array_contains<T>(self, item: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn json_array_contains<T>(self, item: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn json_array_not_contains<T>(self, item: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn json_array_not_contains<T>(self, item: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn json_array_begins_with<T>(self, item: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn json_array_begins_with<T>(self, item: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn json_array_not_begins_with<T>(self, item: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn json_array_not_begins_with<T>(self, item: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn json_array_ends_into<T>(self, item: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn json_array_ends_into<T>(self, item: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn json_array_not_ends_into<T>(self, item: T) -> Compare<'a>where
T: Into<Expression<'a>>,
fn json_array_not_ends_into<T>(self, item: T) -> Compare<'a>where T: Into<Expression<'a>>,
source§fn json_type_equals<T>(self, json_type: T) -> Compare<'a>where
T: Into<JsonType<'a>>,
fn json_type_equals<T>(self, json_type: T) -> Compare<'a>where T: Into<JsonType<'a>>,
source§fn json_type_not_equals<T>(self, json_type: T) -> Compare<'a>where
T: Into<JsonType<'a>>,
fn json_type_not_equals<T>(self, json_type: T) -> Compare<'a>where T: Into<JsonType<'a>>,
source§fn matches<T>(self, query: T) -> Compare<'a>where
T: Into<Cow<'a, str>>,
fn matches<T>(self, query: T) -> Compare<'a>where T: Into<Cow<'a, str>>,
text_search() function Read moresource§impl<'a, T> Conjunctive<'a> for Twhere
T: Into<Expression<'a>>,
impl<'a, T> Conjunctive<'a> for Twhere T: Into<Expression<'a>>,
source§fn and<E>(self, other: E) -> ConditionTree<'a>where
E: Into<Expression<'a>>,
fn and<E>(self, other: E) -> ConditionTree<'a>where E: Into<Expression<'a>>,
source§fn or<E>(self, other: E) -> ConditionTree<'a>where
E: Into<Expression<'a>>,
fn or<E>(self, other: E) -> ConditionTree<'a>where E: Into<Expression<'a>>,
source§fn not(self) -> ConditionTree<'a>
fn not(self) -> ConditionTree<'a>
source§impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
source§impl<T> FmtForward for T
impl<T> FmtForward for T
source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,
self to use its Binary implementation when Debug-formatted.source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,
self to use its Display implementation when
Debug-formatted.source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where Self: Octal,
self to use its Octal implementation when Debug-formatted.source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere T: ?Sized,
source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere Self: Sized,
source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere R: 'a,
self and passes that borrow into the pipe function. Read moresource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere R: 'a,
self and passes that borrow into the pipe function. Read moresource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere Self: Borrow<B>, B: 'a + ?Sized, R: 'a,
source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R ) -> Rwhere Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,
source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere Self: AsRef<U>, U: 'a + ?Sized, R: 'a,
self, then passes self.as_ref() into the pipe function.source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere Self: AsMut<U>, U: 'a + ?Sized, R: 'a,
self, then passes self.as_mut() into the pipe
function.source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> Tap for T
impl<T> Tap for T
source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
Borrow<B> of a value. Read moresource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
BorrowMut<B> of a value. Read moresource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
AsRef<R> view of a value. Read moresource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
AsMut<R> view of a value. Read moresource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere Self: Deref<Target = T>, T: ?Sized,
Deref::Target of a value. Read moresource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere Self: DerefMut<Target = T> + Deref, T: ?Sized,
Deref::Target of a value. Read moresource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
.tap_borrow() only in debug builds, and is erased in release
builds.source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
.tap_borrow_mut() only in debug builds, and is erased in release
builds.source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
.tap_ref() only in debug builds, and is erased in release
builds.source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
.tap_ref_mut() only in debug builds, and is erased in release
builds.