Skip to main content

PostgresInsertValue

Enum PostgresInsertValue 

Source
pub enum PostgresInsertValue<'a, V: SQLParam, T> {
    Omit,
    Null,
    Value(ValueWrapper<'a, V, T>),
}
Expand description

Represents a value for INSERT operations that can be omitted, null, or a SQL expression

Variants§

§

Omit

Omit this column from the INSERT (use database default)

§

Null

Explicitly insert NULL

§

Value(ValueWrapper<'a, V, T>)

Insert a SQL expression (value, placeholder, etc.)

Implementations§

Source§

impl<'a, T> PostgresInsertValue<'a, PostgresValue<'a>, T>

Source

pub fn into_owned( self, ) -> PostgresInsertValue<'static, PostgresValue<'static>, T>

Converts this InsertValue to an owned version with ’static lifetime.

The whole SQL fragment is kept: placeholders stay unbound and expressions keep their shape, with every bound value detached from its borrow.

Trait Implementations§

Source§

impl<'a, V: Clone + SQLParam, T: Clone> Clone for PostgresInsertValue<'a, V, T>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a, V: Debug + SQLParam, T: Debug> Debug for PostgresInsertValue<'a, V, T>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'a, V: SQLParam, T> Default for PostgresInsertValue<'a, V, T>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'a> From<&str> for PostgresInsertValue<'a, PostgresValue<'a>, String>

Source§

fn from(value: &str) -> Self

Converts to this type from the input type.
Source§

impl<'a, T> From<Option<T>> for PostgresInsertValue<'a, PostgresValue<'a>, T>
where T: ToSQL<'a, PostgresValue<'a>>,

Source§

fn from(value: Option<T>) -> Self

Converts to this type from the input type.
Source§

impl<'a, T> From<Placeholder> for PostgresInsertValue<'a, PostgresValue<'a>, T>

Source§

fn from(placeholder: Placeholder) -> Self

Converts to this type from the input type.
Source§

impl<'a, T> From<T> for PostgresInsertValue<'a, PostgresValue<'a>, T>
where T: TryInto<PostgresValue<'a>>,

Converts any value that converts to a PostgresValue (enums, ArrayString, ArrayVec, …).

§Panics

Panics when the value fails to convert (a JSON payload that fails to serialize, for example), rather than storing NULL in its place.

Source§

fn from(value: T) -> Self

Converts to this type from the input type.
Source§

impl<'a, M: DataType, N: Nullability, T> From<TypedPlaceholder<M, N>> for PostgresInsertValue<'a, PostgresValue<'a>, T>

Source§

fn from(typed: TypedPlaceholder<M, N>) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<'a, V, T> Freeze for PostgresInsertValue<'a, V, T>
where ValueWrapper<'a, V, T>: Freeze,

§

impl<'a, V, T> RefUnwindSafe for PostgresInsertValue<'a, V, T>
where ValueWrapper<'a, V, T>: RefUnwindSafe,

§

impl<'a, V, T> Send for PostgresInsertValue<'a, V, T>
where ValueWrapper<'a, V, T>: Send,

§

impl<'a, V, T> Sync for PostgresInsertValue<'a, V, T>
where ValueWrapper<'a, V, T>: Sync,

§

impl<'a, V, T> Unpin for PostgresInsertValue<'a, V, T>
where ValueWrapper<'a, V, T>: Unpin,

§

impl<'a, V, T> UnsafeUnpin for PostgresInsertValue<'a, V, T>
where ValueWrapper<'a, V, T>: UnsafeUnpin,

§

impl<'a, V, T> UnwindSafe for PostgresInsertValue<'a, V, T>
where ValueWrapper<'a, V, T>: UnwindSafe,

Blanket Implementations§

Source§

impl<T> AliasExt for T

Source§

fn alias(self, name: &'static str) -> AliasedExpr<Self>

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<Mk> MarkerAggValidFor<()> for Mk

Source§

impl<Scope> ScopeSatisfies<Nil, ()> for Scope

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> TypeEq<T> for T