Skip to main content

Indirect

Trait Indirect 

Source
pub trait Indirect: Sized {
    // Required method
    fn indirect(self, indirect: bool) -> Self;
}
Expand description

Builders that carry the SQLite session-extension indirect-change flag.

Implemented for Insert, Update, ChangeDelete, and PatchDelete.

The flag distinguishes direct application writes (false) from changes produced by triggers or foreign-key cascades (true). SQLite’s session extension writes it as a single byte after each operation’s op-code so consumers can filter on it when applying changesets. Defaults to false on construction.

See the SQLite session-extension docs.

Required Methods§

Source

fn indirect(self, indirect: bool) -> Self

Mark this operation as indirect (trigger-induced or cascading).

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<T, F: Format<S, B>, S, B> Indirect for Update<T, F, S, B>

Source§

impl<T: DynTable, S, B> Indirect for Insert<T, S, B>

Source§

impl<T: DynTable, S: AsRef<str>, B: AsRef<[u8]>> Indirect for ChangeDelete<T, S, B>

Source§

impl<T: DynTable, S: AsRef<str>, B: AsRef<[u8]>> Indirect for PatchDelete<T, S, B>