#[non_exhaustive]pub enum DataError {
Index(IndexError),
SubscriptionsEmpty,
UnsupportedSubKind(SubKind),
InitialSnapshotMissing(SubscriptionId),
InitialSnapshotInvalid(String),
Socket(String),
Unsupported {
exchange: ExchangeId,
sub_kind: SubKind,
},
SubscriberRequired {
exchange: ExchangeId,
},
FeatureDisabled {
exchange: ExchangeId,
feature: String,
},
UnsupportedInterval {
exchange: ExchangeId,
interval: CandleInterval,
},
InvalidSequence {
prev_last_update_id: u64,
first_update_id: u64,
},
}Expand description
All errors generated in rustrade-data.
§Non-exhaustive
Variants are added as integrations land, and two of the existing ones (Databento, Lse —
not linked: each is behind its own feature, and this block is not) appear only under that
feature, so the variant set a downstream match sees already depends on the feature selection
it built
with. A wildcard arm is required either way; #[non_exhaustive] makes that a compile-time
contract rather than something a consumer discovers when a feature flag or a release moves.
Matches within this crate stay exhaustively checked.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Index(IndexError)
SubscriptionsEmpty
UnsupportedSubKind(SubKind)
InitialSnapshotMissing(SubscriptionId)
InitialSnapshotInvalid(String)
Socket(String)
Unsupported
SubscriberRequired
A dynamic subscription names a venue whose subscriber must be built by the caller — usually
because it carries credentials — and none was supplied. See
DynamicSubscribers.
Fields
exchange: ExchangeIdFeatureDisabled
The venue serves the subscription, but this build was compiled without the cargo feature that carries its integration.
UnsupportedInterval
InvalidSequence
Implementations§
Source§impl DataError
impl DataError
Sourcepub fn is_terminal(&self) -> bool
pub fn is_terminal(&self) -> bool
Determine if an error requires a MarketStream to re-initialise.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for DataError
impl<'de> Deserialize<'de> for DataError
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for DataError
Source§impl Error for DataError
impl Error for DataError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<IndexError> for DataError
impl From<IndexError> for DataError
Source§fn from(source: IndexError) -> Self
fn from(source: IndexError) -> Self
Source§impl From<SocketError> for DataError
impl From<SocketError> for DataError
Source§fn from(value: SocketError) -> Self
fn from(value: SocketError) -> Self
Source§impl Ord for DataError
impl Ord for DataError
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialOrd for DataError
impl PartialOrd for DataError
impl StructuralPartialEq for DataError
Auto Trait Implementations§
impl Freeze for DataError
impl RefUnwindSafe for DataError
impl Send for DataError
impl Sync for DataError
impl Unpin for DataError
impl UnsafeUnpin for DataError
impl UnwindSafe for DataError
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<Instrument> DynamicAlpacaInstrument for Instrument
impl<Instrument> DynamicHyperliquidInstrument for Instrument
impl<Instrument> DynamicLseInstrument for Instrument
impl<Instrument> DynamicMassiveInstrument for Instrument
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> 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 moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.