pub struct OwnedSytx { /* private fields */ }
Expand description
Owned transation to use with StructsyTx
trait
Implementations§
source§impl OwnedSytx
impl OwnedSytx
sourcepub fn query<T: Persistent>(&mut self) -> StructsyQueryTx<'_, T>
pub fn query<T: Persistent>(&mut self) -> StructsyQueryTx<'_, T>
Query for a persistent struct considering in transaction changes.
Example
use structsy::{ Structsy, StructsyTx, StructsyError};
use structsy_derive::{queries, Persistent};
#[derive(Persistent)]
struct Basic {
name: String,
}
impl Basic {
fn new(name: &str) -> Basic {
Basic { name: name.to_string() }
}
}
#[queries(Basic)]
trait BasicQuery {
fn by_name(self, name: String) -> Self;
}
fn basic_query() -> Result<(), StructsyError> {
let structsy = Structsy::open("file.structsy")?;
structsy.define::<Basic>()?;
let mut tx = structsy.begin()?;
tx.insert(&Basic::new("aaa"))?;
let count = tx.query::<Basic>().by_name("aaa".to_string()).fetch().count();
assert_eq!(count, 1);
tx.commit()?;
Ok(())
}
pub fn into_iter<R: Fetch<T>, T>(&mut self, filter: R) -> StructsyIter<'_, T> ⓘ
Trait Implementations§
source§impl StructsyTx for OwnedSytx
impl StructsyTx for OwnedSytx
source§fn insert<T: Persistent>(&mut self, sct: &T) -> SRes<Ref<T>>
fn insert<T: Persistent>(&mut self, sct: &T) -> SRes<Ref<T>>
Persist a new struct instance. Read more
source§fn update<T: Persistent>(&mut self, sref: &Ref<T>, sct: &T) -> SRes<()>
fn update<T: Persistent>(&mut self, sref: &Ref<T>, sct: &T) -> SRes<()>
Update a persistent instance with a new value. Read more
source§fn delete<T: Persistent>(&mut self, sref: &Ref<T>) -> SRes<()>
fn delete<T: Persistent>(&mut self, sref: &Ref<T>) -> SRes<()>
Delete a persistent instance. Read more
impl Sytx for OwnedSytx
Auto Trait Implementations§
impl !RefUnwindSafe for OwnedSytx
impl Send for OwnedSytx
impl Sync for OwnedSytx
impl Unpin for OwnedSytx
impl !UnwindSafe for OwnedSytx
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