[][src]Struct serenity::builder::EditProfile

pub struct EditProfile(pub HashMap<&'static str, Value>);

A builder to edit the current user's settings, to be used in conjunction with CurrentUser::edit.

Methods

impl EditProfile[src]

pub fn avatar(&mut self, avatar: Option<&str>) -> &mut Self[src]

Sets the avatar of the current user. None can be passed to remove an avatar.

A base64-encoded string is accepted as the avatar content.

Examples

A utility method - utils::read_image - is provided to read an image from a file and return its contents in base64-encoded form:


        use serenity::utils;

        // assuming a `context` has been bound

        let base64 = utils::read_image("./my_image.jpg")
        .expect("Failed to read image");

        let _ = context.cache.write().user.edit(&context, |p|
            p.avatar(Some(&base64)));

pub fn email(&mut self, email: &str) -> &mut Self[src]

Modifies the current user's email address.

Note that when modifying the email address, the current password must also be provided.

No validation is performed on this by the library.

Note: This can only be used by user accounts.

pub fn new_password(&mut self, new_password: &str) -> &mut Self[src]

Modifies the current user's password.

Note that when modifying the password, the current password must also be provided.

pub fn password(&mut self, password: &str) -> &mut Self[src]

Used for providing the current password as verification when modifying the password or modifying the associated email address.

pub fn username<S: ToString>(&mut self, username: S) -> &mut Self[src]

Modifies the current user's username.

When modifying the username, if another user has the same new username and current discriminator, a new unique discriminator will be assigned. If there are no available discriminators with the requested username, an error will occur.

Trait Implementations

impl Clone for EditProfile[src]

impl Debug for EditProfile[src]

impl Default for EditProfile[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> CloneAny for T where
    T: Clone + Any
[src]

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

impl<T> From<T> 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, 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> UnsafeAny for T where
    T: Any

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