pub enum Store {
Mentat(ModelStore),
Pg(PgModelStore),
}Expand description
A model store: Mentat file or Postgres model.
Variants§
Implementations§
Source§impl Store
impl Store
Sourcepub fn open(target: &str) -> Result<Self>
pub fn open(target: &str) -> Result<Self>
Open target: a postgres:// / postgresql:// URL with ?model=
opens that Postgres model; anything else is a Mentat file path (""
is in-memory).
pub fn load_model(&mut self) -> Result<Model>
pub fn load_partial(&mut self, measure_ids: &[MeasureId]) -> Result<Model>
pub fn save_model(&mut self, model: &Model) -> Result<()>
pub fn reload_model(&mut self) -> Result<Model>
pub fn tx_high_water(&mut self) -> Result<i64>
pub fn loaded_tx(&self) -> Option<i64>
pub fn set_loaded_tx(&mut self, tx: Option<i64>)
Sourcepub fn save_token(&self) -> SaveToken
pub fn save_token(&self) -> SaveToken
Everything a later handle needs to save safely over what this one loaded or saved: the optimistic-concurrency token and (Postgres) the snapshot a save diffs against, so it writes only what changed. Callers that reopen the store per save carry this across handles.
Sourcepub fn set_save_token(&mut self, token: &SaveToken)
pub fn set_save_token(&mut self, token: &SaveToken)
Adopt a token from Store::save_token before saving.
Auto Trait Implementations§
impl !Freeze for Store
impl !RefUnwindSafe for Store
impl !Sync for Store
impl !UnwindSafe for Store
impl Send for Store
impl Unpin for Store
impl UnsafeUnpin for Store
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> 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