Enum egg_mode::list::ListID

source ·
pub enum ListID {
    Slug(UserIDCow<'static, str>),
    ID(u64),
}
Expand description

Convenience enum to refer to a list via its owner and name or via numeric ID.

Any API call that needs to reference a specific list has a set of parameters that collectively refer to it. Not only do lists have a unique numeric ID that refers to them, they have a “slug” that stands in as the list’s unique name. This slug is only unique when taken in combination with the user that created it, though, so this leads to the raw API call having parameters that refer to the user by screen name or ID, or the list as a whole by this pair of slug parameters or the single ID parameter. egg-mode wraps this pattern with this ListID enum.

Because the slug is formed from two variables instead of one, this enum foregoes the many From implementations that UserID has and instead opts for two creation functions. If you have a user/name combo, use ListID::from_slug when looking for the list. If you have the list’s ID instead, then you can use ListID::from_id.

Example

use egg_mode::list::ListID;

//The following two ListIDs refer to the same list:
let slug = ListID::from_slug("Twitter", "support");
let id = ListID::from_id(99924643);

Variants§

§

Slug(UserIDCow<'static, str>)

Referring via the list’s owner and its “slug” or name.

§

ID(u64)

Referring via the list’s numeric ID.

Implementations§

source§

impl ListID

source

pub fn from_slug<T: Into<UserID>>(
    owner: T,
    list_name: impl Into<Cow<'static, str>>
) -> ListID

Make a new ListID by supplying its owner and name.

source

pub fn from_id(list_id: u64) -> ListID

Make a new ListID by supplying its numeric ID.

Trait Implementations§

source§

impl Clone for ListID

source§

fn clone(&self) -> ListID

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ListID

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere
    T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere
    T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere
    T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere
    U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere
    T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for Twhere
    U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

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

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
    S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more