Struct taskchampion::WorkingSet

source ·
pub struct WorkingSet { /* private fields */ }
Expand description

A WorkingSet represents a snapshot of the working set from a replica.

A replica’s working set is a mapping from small integers to task uuids for all pending tasks. The small integers are meant to be stable, easily-typed identifiers for users to interact with important tasks.

IMPORTANT: the content of the working set may change at any time that a DB transaction is not in progress, and the data in this type will not be updated automatically. It is up to the caller to decide how long to keep this value, and how much to trust the accuracy of its contents. In practice, the answers are usually “a few milliseconds” and treating unexpected results as non-fatal.

Implementations§

source§

impl WorkingSet

source

pub fn len(&self) -> usize

Get the “length” of the working set: the total number of uuids in the set.

source

pub fn largest_index(&self) -> usize

Get the largest index in the working set, or zero if the set is empty.

source

pub fn is_empty(&self) -> bool

True if the length is zero

source

pub fn by_index(&self, index: usize) -> Option<Uuid>

Get the uuid with the given index, if any exists.

source

pub fn by_uuid(&self, uuid: Uuid) -> Option<usize>

Get the index for the given uuid, if any

source

pub fn iter(&self) -> impl Iterator<Item = (usize, Uuid)> + '_

Iterate over pairs (index, uuid), in order by index.

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> 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> Same for T

§

type Output = T

Should always be Self
source§

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

§

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>,

§

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