pub struct MergeStmt {
pub label: String,
pub key_field: String,
pub key_value: Value,
pub ns: Option<Value>,
pub var: Option<String>,
pub on_create: Vec<SetClause>,
pub on_match: Vec<SetClause>,
pub returns: Option<Vec<RetItem>>,
}Expand description
MERGE (n:Label {id: 'x'}) [ON CREATE SET …] [ON MATCH SET …] [RETURN …]
Exactly one identifying property is allowed (the key). An optional ns
names the namespace the create arm writes into; any other extra property
is a named error. ON CREATE SET / ON MATCH SET apply inside the same
write batch as the insert-or-skip. returns, when Some, projects the
node after commit.
Fields§
§label: String§key_field: StringThe single property that identifies the node. Value must be a string.
key_value: Value§ns: Option<Value>Optional ns named in the MERGE pattern, distinct from the identifying
key. Absent = the create arm does not name a namespace.
var: Option<String>Optional bound variable for the MERGE node (for RETURN projection).
on_create: Vec<SetClause>ON CREATE SET assignments, applied only when the node is inserted.
on_match: Vec<SetClause>ON MATCH SET assignments, applied only when the node already exists.
returns: Option<Vec<RetItem>>Optional RETURN clause: project the node after commit.
Trait Implementations§
impl StructuralPartialEq for MergeStmt
Auto Trait Implementations§
impl Freeze for MergeStmt
impl RefUnwindSafe for MergeStmt
impl Send for MergeStmt
impl Sync for MergeStmt
impl Unpin for MergeStmt
impl UnsafeUnpin for MergeStmt
impl UnwindSafe for MergeStmt
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.