#[repr(u64)]pub enum DataStreamResetErrorCode {
InternalError = 0,
Cancelled = 1,
DeliveryTimeout = 2,
SessionClosed = 3,
UnknownObjectStatus = 4,
TooFarBehind = 5,
ExcessiveLoad = 9,
MalformedTrack = 18,
}Expand description
Data Stream Reset Error Codes (draft-17, Section 14.5.4).
The registry table is in Section 14.5.4; the per-code descriptions carried on the variants below are the ones given in Section 10.4.3 of the draft.
The table’s last row reserves 0x7f * N + 0x9D for greasing (Section 13).
Greasing code points are not a contiguous range and carry no semantics a
decoder can act on, so they get no variants and from_u64 rejects them like
any other unassigned value.
Variants§
InternalError = 0
INTERNAL_ERROR — An implementation specific error.
Cancelled = 1
CANCELLED — The subscriber or publisher cancelled the Request. For Subscriptions, PUBLISH_DONE (Section 9.13) will have a more detailed status code.
DeliveryTimeout = 2
DELIVERY_TIMEOUT — The DELIVERY TIMEOUT Section 9.3.3 was exceeded for this stream.
SessionClosed = 3
SESSION_CLOSED — The publisher session is being closed.
UnknownObjectStatus = 4
UNKNOWN_OBJECT_STATUS — In response to a FETCH, the publisher is unable to determine the Status of the next Object in the requested range.
TooFarBehind = 5
TOO_FAR_BEHIND — The corresponding subscription has exceeded the publisher’s resource limits and is being terminated (see Section 9.3.3).
ExcessiveLoad = 9
EXCESSIVE_LOAD — The publisher is overloaded and is resetting this stream.
MalformedTrack = 18
MALFORMED_TRACK — A relay publisher detected that the track was malformed (see Section 2.4.2).
Implementations§
Source§impl DataStreamResetErrorCode
impl DataStreamResetErrorCode
Sourcepub const ALL: &[DataStreamResetErrorCode]
pub const ALL: &[DataStreamResetErrorCode]
Every Data Stream Reset Error Code draft-17 assigns, in ascending wire order.
This is the set Self::from_u64 accepts, written out so that it can
be enumerated: nothing can iterate an enum’s variants, so a caller that
wants the registry has to be handed it. Writing it down is also what
lets a test state its claims about the registry itself rather than about
the range some sweep happens to reach — that this is the set from_u64
answers to, and that none of it lands in the range the draft reserves
for greasing.
Trait Implementations§
Source§impl Clone for DataStreamResetErrorCode
impl Clone for DataStreamResetErrorCode
Source§fn clone(&self) -> DataStreamResetErrorCode
fn clone(&self) -> DataStreamResetErrorCode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more