Skip to main content

Session

Struct Session 

Source
pub struct Session { /* private fields */ }
Expand description

An open or recoverable session on disk.

Implementations§

Source§

impl Session

Source

pub fn dir(&self) -> &Path

The session’s own directory.

Source

pub fn record(&self) -> &Record

What this session remembers.

Source

pub fn payload_dir(&self) -> PathBuf

The directory the payload sits in, and the one to watch. Concept 6.1 reads anything else appearing here as the target application’s work.

Source

pub fn payload_path(&self) -> PathBuf

The payload itself.

Source

pub fn note_write_back(&mut self) -> Result<()>

Count a write-back, and write that down before returning.

Persisted rather than held, because the number is only worth anything to a session that crashed, and a count kept in memory is a count lost by the event it exists to describe.

§Errors

Where the record cannot be rewritten.

Source

pub fn note_agreement(&mut self, crc: u32) -> Result<()>

Write down that the container’s payload is this, and that it is what this session’s payload came from or was last put into.

Called at the two moments the two sides are made to agree: the extraction, and the commit of a write-back. Nowhere else — a value recorded at any other moment would be recording an agreement that was never established, which is the one way Record::agreed could tell a lie rather than simply not know.

§Errors

Where the record cannot be rewritten.

Source

pub fn remove(self) -> Result<()>

Remove the session and everything in it.

§Errors

Where the directory cannot be removed.

Trait Implementations§

Source§

impl Clone for Session

Source§

fn clone(&self) -> Session

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Session

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more