[][src]Struct async_imap::types::Capabilities

pub struct Capabilities(_);

From section 7.2.1 of RFC 3501.

A list of capabilities that the server supports. The capability list will include the atom "IMAP4rev1".

In addition, all servers implement the STARTTLS, LOGINDISABLED, and AUTH=PLAIN (described in IMAP-TLS) capabilities. See the Security Considerations section of the RFC for important information.

A capability name which begins with AUTH= indicates that the server supports that particular authentication mechanism.

The LOGINDISABLED capability indicates that the LOGIN command is disabled, and that the server will respond with a [super::Error::No] response to any attempt to use the LOGIN command even if the user name and password are valid. An IMAP client MUST NOT issue the LOGIN command if the server advertises the LOGINDISABLED capability.

Other capability names indicate that the server supports an extension, revision, or amendment to the IMAP4rev1 protocol. Capability names either begin with X or they are standard or standards-track RFC 3501 extensions, revisions, or amendments registered with IANA.

Client implementations SHOULD NOT require any capability name other than IMAP4rev1, and MUST ignore any unknown capability names.

Methods

impl Capabilities[src]

pub fn has(&self, cap: &Capability) -> bool[src]

Check if the server has the given capability.

pub fn has_str<S: AsRef<str>>(&self, cap: S) -> bool[src]

Check if the server has the given capability via str.

pub fn iter(&self) -> Iter<Capability>[src]

Iterate over all the server's capabilities

pub fn len(&self) -> usize[src]

Returns how many capabilities the server has.

pub fn is_empty(&self) -> bool[src]

Returns true if the server purports to have no capabilities.

Auto Trait Implementations

Blanket Implementations

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

impl<T> From<T> for 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> Borrow<T> for T where
    T: ?Sized
[src]

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

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