#[non_exhaustive]pub enum BeforeMutationOutcome {
Proceed,
ProceedWith {
arguments: Value,
},
Abort {
reason: String,
},
}Expand description
What the engine does next with the write.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Proceed
Run the write with the arguments it already had.
ProceedWith
Run the write with these arguments instead. They replace the whole argument view the engine binds from, so an implementation that rewrites one key must return the other keys too.
Abort
Do not run the write. reason is folded into a
FraiseQLError::Validation and reaches the client verbatim — it is the
rule’s own message, not engine text.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BeforeMutationOutcome
impl RefUnwindSafe for BeforeMutationOutcome
impl Send for BeforeMutationOutcome
impl Sync for BeforeMutationOutcome
impl Unpin for BeforeMutationOutcome
impl UnsafeUnpin for BeforeMutationOutcome
impl UnwindSafe for BeforeMutationOutcome
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