[][src]Enum serenity::gateway::GatewayError

#[non_exhaustive]pub enum GatewayError {
    BuildingUrl,
    Closed(Option<CloseFrame<'static>>),
    ExpectedHello,
    HeartbeatFailed,
    InvalidAuthentication,
    InvalidHandshake,
    InvalidOpCode,
    InvalidShardData,
    NoAuthentication,
    NoSessionId,
    OverloadedShard,
    ReconnectFailure,
    InvalidGatewayIntents,
    DisallowedGatewayIntents,
}

An error that occurred while attempting to deal with the gateway.

Note that - from a user standpoint - there should be no situation in which you manually handle these.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
BuildingUrl

There was an error building a URL.

Closed(Option<CloseFrame<'static>>)

The connection closed, potentially uncleanly.

ExpectedHello

Expected a Hello during a handshake

HeartbeatFailed

When there was an error sending a heartbeat.

InvalidAuthentication

When invalid authentication (a bad token) was sent in the IDENTIFY.

InvalidHandshake

Expected a Ready or an InvalidateSession

InvalidOpCode

An indicator that an unknown opcode was received from the gateway.

InvalidShardData

When invalid sharding data was sent in the IDENTIFY.

Examples

Sending a shard ID of 5 when sharding with 3 total is considered invalid.

NoAuthentication

When no authentication was sent in the IDENTIFY.

NoSessionId

When a session Id was expected (for resuming), but was not present.

OverloadedShard

When a shard would have too many guilds assigned to it.

Examples

When sharding 5500 guilds on 2 shards, at least one of the shards will have over the maximum number of allowed guilds per shard.

This limit is currently 2500 guilds per shard.

ReconnectFailure

Failed to reconnect after a number of attempts.

InvalidGatewayIntents

When undocumented gateway intents are provided.

DisallowedGatewayIntents

When disallowed gatewax intents are provided.

If an connection has been established but priviliged gateway intents were provided without enabling them prior.

Trait Implementations

impl Clone for Error[src]

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

impl From<Error> for Error[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

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

impl<T> WithSubscriber for T[src]