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

pub enum GatewayError {
    BuildingUrl,
    Closed(Option<CloseFrame<'static>>),
    ExpectedHello,
    HeartbeatFailed,
    InvalidAuthentication,
    InvalidHandshake,
    InvalidOpCode,
    InvalidShardData,
    NoAuthentication,
    NoSessionId,
    OverloadedShard,
    ReconnectFailure,
    // some variants omitted
}

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

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.

Trait Implementations

impl From<Error> for Error[src]

impl Clone for Error[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

fn cause(&self) -> Option<&dyn Error>1.0.0[src]

Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

The lower-level cause of this error, if any. Read more

fn source(&self) -> Option<&(dyn Error + 'static)>1.30.0[src]

The lower-level source of this error, if any. Read more

Auto Trait Implementations

impl Send for Error

impl Unpin for Error

impl Sync for Error

impl UnwindSafe for Error

impl RefUnwindSafe for Error

Blanket Implementations

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

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

type Owned = T

The resulting type after obtaining ownership.

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

impl<T, U> Into<U> for T where
    U: From<T>, 
[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<T> BorrowMut<T> for T where
    T: ?Sized
[src]

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

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

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> Erased for T

impl<E> Fail for E where
    E: 'static + Error + Send + Sync

fn name(&self) -> Option<&str>

Returns the "name" of the error. Read more

fn cause(&self) -> Option<&(dyn Fail + 'static)>

Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more

fn backtrace(&self) -> Option<&Backtrace>

Returns a reference to the Backtrace carried by this failure, if it carries one. Read more

fn context<D>(self, context: D) -> Context<D> where
    D: Display + Send + Sync + 'static, 

Provides context for this failure. Read more

fn compat(self) -> Compat<Self>

Wraps this failure in a compatibility wrapper that implements std::error::Error. Read more

impl<T> AsFail for T where
    T: Fail, 

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

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

impl<T> DebugAny for T where
    T: Any + Debug
[src]

impl<T> CloneAny for T where
    T: Clone + Any
[src]

impl<T> UnsafeAny for T where
    T: Any