pub enum PayloadKind {
Earliest,
WaitForPending,
}Expand description
Determines how we should choose the payload to return.
Variants§
Earliest
Returns the next best available payload (the earliest available payload). This does not wait for a real for pending job to finish if there’s no best payload yet and is allowed to race various payload jobs (empty, pending best) against each other and returns whichever job finishes faster.
This should be used when it’s more important to return a valid payload as fast as possible.
For example, the engine API timeout for engine_getPayload is 1s and clients should rather
return an empty payload than indefinitely waiting for the pending payload job to finish and
risk missing the deadline.
WaitForPending
Only returns once we have at least one built payload.
Compared to PayloadKind::Earliest this does not race an empty payload job against the
already in progress one, and returns the best available built payload or awaits the job in
progress.
Trait Implementations§
Source§impl Clone for PayloadKind
impl Clone for PayloadKind
impl Copy for PayloadKind
Source§impl Debug for PayloadKind
impl Debug for PayloadKind
Source§impl Default for PayloadKind
impl Default for PayloadKind
impl Eq for PayloadKind
Source§impl PartialEq for PayloadKind
impl PartialEq for PayloadKind
impl StructuralPartialEq for PayloadKind
Auto Trait Implementations§
impl Freeze for PayloadKind
impl RefUnwindSafe for PayloadKind
impl Send for PayloadKind
impl Sync for PayloadKind
impl Unpin for PayloadKind
impl UnsafeUnpin for PayloadKind
impl UnwindSafe for PayloadKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreimpl<T> MaybeDebug for Twhere
T: Debug,
§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 1 byte
Size for each variant:
Earliest: 0 bytesWaitForPending: 0 bytes