Struct Storage

Source
pub struct Storage<'a> { /* private fields */ }

Implementations§

Source§

impl<'a> Storage<'a>

Source

pub fn load( config: &'a Config, name: &str, path: PathBuf, ) -> Result<Storage<'a>, LoadStorageError>

Loads the storage for the given stoage path. Note that the passed path has to be the base path of the storage, not the storage file itself.

Source

pub fn next_id(&self) -> u64

Returns the next id that would be used for a node. Does not automatically increase it, see use_id.

Source

pub fn use_id(&mut self)

Uses the current next_id, i.e. increases the id counter.

Source

pub fn path(&self) -> &PathBuf

Returns the path of this storage

Source

pub fn nodes_path(&self) -> PathBuf

Returns the nodes path

Source

pub fn config(&self) -> &Config

Returns the associated config

Source

pub fn name(&self) -> &str

Returns the name of this storage

Source

pub fn nodes(&self) -> Vec<Node<'_, '_>>

Returns a list of all nodes in this storage.

Source

pub fn next_node(&self) -> Node<'_, '_>

Trait Implementations§

Source§

impl<'a> Drop for Storage<'a>

RAII drop implementation to save the storages state.

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for Storage<'a>

§

impl<'a> RefUnwindSafe for Storage<'a>

§

impl<'a> Send for Storage<'a>

§

impl<'a> Sync for Storage<'a>

§

impl<'a> Unpin for Storage<'a>

§

impl<'a> UnwindSafe for Storage<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.