Enum SettingsDocument
pub enum SettingsDocument {
Session,
Profile(PathBuf),
}Expand description
Which settings document a host gives its apps.
Variants§
Session
The person’s session settings: the source the host installed
(settings_store::install_source), else the local profile.
Profile(PathBuf)
The settings of a profile of the host’s own, by its root directory: a test or capture profile.
Implementations§
§impl SettingsDocument
impl SettingsDocument
pub fn config_root(&self) -> Option<PathBuf>
pub fn config_root(&self) -> Option<PathBuf>
The configuration directory of the profile this document belongs to:
the person’s config root for the session document, else the
profile’s own root. Per-profile stores beside the settings
(accounts, their credentials and sync health) live here, so a test,
capture or --data-dir profile never reads or writes the person’s.
pub fn update_section(
&self,
name: &str,
values: Map<String, Value>,
) -> Result<(), Error>
pub fn update_section( &self, name: &str, values: Map<String, Value>, ) -> Result<(), Error>
Merge values into section name, keeping every other section and
key.
§Errors
When there is no document to write or the write fails.
pub fn update_section_by(
&self,
name: &str,
values: Map<String, Value>,
origin: Option<&ChangeOrigin>,
) -> Result<(), Error>
pub fn update_section_by( &self, name: &str, values: Map<String, Value>, origin: Option<&ChangeOrigin>, ) -> Result<(), Error>
Self::update_section, recording who and what made the change
with every key it changes.
§Errors
pub fn revision(&self) -> SettingsRevision
pub fn revision(&self) -> SettingsRevision
The document’s current version.
pub fn edit_document(
&self,
name: &str,
origin: &ChangeOrigin,
edit: impl FnOnce(&mut AutoCommit) -> Result<(), String>,
) -> Result<(), Error>
pub fn edit_document( &self, name: &str, origin: &ChangeOrigin, edit: impl FnOnce(&mut AutoCommit) -> Result<(), String>, ) -> Result<(), Error>
Change the document holding section name itself through edit,
as one change made by origin: what a change reading the document’s
history makes (a section’s undo). See settings_store::Store::edit_document.
§Errors
edit refused, the write failed, or this process holds only the
values of the settings (an app’s channel to the session’s), not the
document.
Trait Implementations§
§impl Clone for SettingsDocument
impl Clone for SettingsDocument
§fn clone(&self) -> SettingsDocument
fn clone(&self) -> SettingsDocument
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for SettingsDocument
impl Debug for SettingsDocument
§impl Default for SettingsDocument
impl Default for SettingsDocument
§fn default() -> SettingsDocument
fn default() -> SettingsDocument
§impl Ord for SettingsDocument
impl Ord for SettingsDocument
§fn cmp(&self, other: &SettingsDocument) -> Ordering
fn cmp(&self, other: &SettingsDocument) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
§impl PartialEq for SettingsDocument
impl PartialEq for SettingsDocument
§fn eq(&self, other: &SettingsDocument) -> bool
fn eq(&self, other: &SettingsDocument) -> bool
self and other values to be equal, and is used by ==.§impl PartialOrd for SettingsDocument
impl PartialOrd for SettingsDocument
impl Eq for SettingsDocument
impl StructuralPartialEq for SettingsDocument
Auto Trait Implementations§
impl Freeze for SettingsDocument
impl RefUnwindSafe for SettingsDocument
impl Send for SettingsDocument
impl Sync for SettingsDocument
impl Unpin for SettingsDocument
impl UnsafeUnpin for SettingsDocument
impl UnwindSafe for SettingsDocument
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
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>
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