Skip to main content

Receipts

Struct Receipts 

Source
pub struct Receipts { /* private fields */ }

Implementations§

Source§

impl Receipts

Source

pub async fn cached_execution( &self, key: &str, ) -> Result<Option<Execution>, String>

The key’s latest record; a hit updates its last use.

Source

pub async fn published_execution( &self, execution_id: &str, ) -> Result<Option<Execution>, String>

The saved execution eligible for publication; speculative Runs hold publication until blocked work has been withdrawn. Mirrors never publish again.

Source

pub async fn claim_execution( &self, execution: &Execution, keyed: bool, waiting_for: Option<&ExecutionId>, allow_start: bool, capacity: Option<Capacity>, ) -> Result<Claim, String>

Claim an execution for its request. A keyed claim (a key, not forced) first reuses the key’s latest record or waits for its live execution with the same profile. Starting needs allow_start and, on a backend with a machine-wide limit, a free slot: the slots the backend’s RUNNING executions hold are counted and this execution inserted RUNNING in one write transaction. Mutex tags are also checked and held in that transaction, including for unkeyed and forced executions. An unkeyed or forced execution without a limit or mutex tags is saved when it completes.

Source

pub async fn reuse_execution(&self, request: &Request) -> Result<(), String>

Source

pub async fn complete_execution( &self, execution: &Execution, request: &Request, ) -> Result<(), String>

Source

pub async fn mirror_execution( &self, execution: &Execution, ) -> Result<Option<Execution>, String>

Add a remote result to its key’s history as a self-contained execution when it completed after the key’s latest local record, which it then replaces as the one reused; None when the local record is as new. The mirrored record settles a local Human wait for the key.

Source§

impl Receipts

Source

pub async fn close(self) -> Result<(), String>

Close the shared SQLite connection before releasing its state files. Any cloned receipts also become closed; call this only after all operations on them finish.

Source

pub async fn open(state: &Path, repo: &Path) -> Result<Self, String>

Source

pub async fn state_id(&self) -> Result<StateId, String>

This state’s stable id (read_state_id).

Source

pub async fn create_run( &self, run: &Run, requests: &[Request], ) -> Result<(), String>

Source

pub async fn save_request(&self, request: &Request) -> Result<(), String>

Source

pub async fn save_run(&self, run: &Run) -> Result<(), String>

Source

pub async fn finish( &self, run: &Run, requests: &[Request], ) -> Result<(), String>

Trait Implementations§

Source§

impl Clone for Receipts

Source§

fn clone(&self) -> Self

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

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
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> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
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> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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> WasmCompatSend for T
where T: Send,

Source§

impl<T> WasmCompatSync for T
where T: Sync,

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