[][src]Struct serenity::voice::Manager

pub struct Manager { /* fields omitted */ }

A manager is a struct responsible for managing Handlers which belong to a single Shard. This is a fairly complex key-value store, with a bit of extra utility for easily joining a "target".

The "target" used by the Manager is determined based on the guild_id and channel_id provided. If a guild_id is not provided to methods that optionally require it, then the target is a group or 1-on-1 call with a user. The channel_id is then used as the target.

If a guild_id is provided, then the target is the guild, as a user can not be connected to two channels within one guild simultaneously.

Methods

impl Manager
[src]

Retrieves an immutable handler for the given target, if one exists.

Retrieves a mutable handler for the given target, if one exists.

Connects to a target by retrieving its relevant Handler and connecting, or creating the handler if required.

This can also switch to the given channel, if a handler already exists for the target and the current connected channel is not equal to the given channel.

In the case of channel targets, the same channel is used to connect to.

In the case of guilds, the provided channel is used to connect to. The channel must be in the provided guild. This is not checked by the library, and will result in an error. If there is already a connected handler for the guild, and the provided channel is different from the channel that the connection is already connected to, then the handler will switch the connection to the provided channel.

If you only need to retrieve the handler for a target, then use get.

Retrieves the handler for the given target and leaves the associated voice channel, if connected.

This will not drop the handler, and will preserve it and its settings.

This is a wrapper around getting a handler and calling leave on it.

Retrieves the Handler for the given target and leaves the associated voice channel, if connected.

The handler is then dropped, removing settings for the target.

Trait Implementations

impl Clone for Manager
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Debug for Manager
[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl Send for Manager

impl !Sync for Manager

Blanket Implementations

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

Performs the conversion.

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

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T> From for T
[src]

Performs the conversion.

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

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

Immutably borrows from an owned value. Read more

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

Mutably borrows from an owned value. Read more

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

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

🔬 This is a nightly-only experimental API. (get_type_id)

this method will likely be replaced by an associated static

Gets the TypeId of self. Read more

impl<T> Erased for T

impl<T> Typeable for T where
    T: Any

Get the TypeId of this object.

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