Skip to main content

IndexRefreshHandle

Struct IndexRefreshHandle 

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

What: Represent one caller-supplied background official-index refresh.

Inputs:

Output:

  • A handle that can cancel pending async work and explicitly await its result/error delivery.

Details:

  • This handle owns no global index and performs no system mutation.
  • Cancellation aborts the async task; cooperative futures such as caller HTTP requests are dropped promptly, while caller code still owns any external resource semantics.

Implementations§

Source§

impl IndexRefreshHandle

Source

pub fn cancel(&self)

What: Request cancellation of a pending background refresh.

Inputs: None.

Output:

  • Requests task abortion; Self::wait reports a structured cancelled error if the task did not complete first.

Details:

  • Cancellation is idempotent and does not block the calling thread.
  • It is meaningful for async futures; callers should not wrap a non-cancellable spawn_blocking operation in this API and expect it to stop after it has started.
Source

pub fn is_finished(&self) -> bool

What: Check whether the refresh task has completed.

Inputs: None.

Output:

  • true after successful, failed, panicked, or cancelled completion.

Details:

  • This is an observation only; use Self::wait for explicit result or error delivery.
Source

pub async fn wait(self) -> Result<OfficialIndex>

What: Await the background refresh result and deliver task failures explicitly.

Inputs:

  • self: Consumes the handle and awaits the owned task.

Output:

  • Refreshed OfficialIndex or the refresh/task/cancellation error.

Details:

  • A cancelled task maps to an actionable parse error instead of silently returning an empty index. Panics and runtime failures also remain visible to the caller.
§Errors

Returns the caller future’s error or a descriptive task failure mapped to ArchToolkitError::Parse.

Trait Implementations§

Source§

impl Debug for IndexRefreshHandle

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> 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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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