pub enum MutatePlan {
Insert {
target: QualifiedIdentifier,
columns: Vec<CoercibleField>,
body: Option<Bytes>,
on_conflict: Option<(PreferResolution, Vec<String>)>,
where_clauses: Vec<CoercibleLogicTree>,
returning: Vec<String>,
pk_cols: Vec<String>,
apply_defaults: bool,
},
Update {
target: QualifiedIdentifier,
columns: Vec<CoercibleField>,
body: Option<Bytes>,
where_clauses: Vec<CoercibleLogicTree>,
returning: Vec<String>,
apply_defaults: bool,
},
Delete {
target: QualifiedIdentifier,
where_clauses: Vec<CoercibleLogicTree>,
returning: Vec<String>,
},
}Expand description
A mutation plan.
Variants§
Insert
INSERT operation
Fields
§
target: QualifiedIdentifierTarget table
§
columns: Vec<CoercibleField>Columns to insert
§
on_conflict: Option<(PreferResolution, Vec<String>)>ON CONFLICT handling
§
where_clauses: Vec<CoercibleLogicTree>WHERE clause (for filtered inserts)
Update
UPDATE operation
Fields
§
target: QualifiedIdentifierTarget table
§
columns: Vec<CoercibleField>Columns to update
§
where_clauses: Vec<CoercibleLogicTree>WHERE clauses
Delete
DELETE operation
Implementations§
Source§impl MutatePlan
impl MutatePlan
Sourcepub fn from_request(
request: &ApiRequest,
table: &Table,
mutation: &Mutation,
) -> Result<Self>
pub fn from_request( request: &ApiRequest, table: &Table, mutation: &Mutation, ) -> Result<Self>
Create a mutation plan from an API request.
Sourcepub fn target(&self) -> &QualifiedIdentifier
pub fn target(&self) -> &QualifiedIdentifier
Get the target table.
Trait Implementations§
Source§impl Clone for MutatePlan
impl Clone for MutatePlan
Source§fn clone(&self) -> MutatePlan
fn clone(&self) -> MutatePlan
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MutatePlan
impl Debug for MutatePlan
Source§impl<'de> Deserialize<'de> for MutatePlan
impl<'de> Deserialize<'de> for MutatePlan
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl !Freeze for MutatePlan
impl RefUnwindSafe for MutatePlan
impl Send for MutatePlan
impl Sync for MutatePlan
impl Unpin for MutatePlan
impl UnwindSafe for MutatePlan
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more