Enum CFUserCommand

Source
pub enum CFUserCommand {
    BlogEntries {
        handle: String,
    },
    Friends {
        only_online: Option<bool>,
    },
    Info {
        handles: Vec<String>,
    },
    RatedList {
        active_only: Option<bool>,
    },
    Rating {
        handle: String,
    },
    Status {
        handle: String,
        from: Option<i64>,
        count: Option<i64>,
    },
}
Expand description

Wrapper enum for all API methods of form user.<method>.

More details for the user command can be found here.

Variants§

§

BlogEntries

Struct for sending user.blogEntries requests to the Codeforces API.

Returns a list with all of a specified user’s blog entries.

If correctly parsed, the response object will be of type responses::CFResult::CFBlogEntryVec.

More details for the user.blogEntries command can be found here.

§Examples

let x = CFUserCommand::BlogEntries {
    handle: "thud".to_string(),
};

match x.get(api_key, api_secret) {
    Ok(CFResult::CFBlogEntryVec(v)) => {
        // your code here
    },
    _ => {
        panic!("API request failed");
    }
}

Fields

§handle: String

Codeforces handle of the user for which to fetch blog entries.

§

Friends

Struct for sending user.friends requests to the Codeforces API.

Returns authorized user’s friends (ie. the friends of the user who owns the API keys in use).

If correctly parsed, the response object will be of type responses::CFResult::CFFriends.

More details for the user.friends command can be found here.

§Examples

let x = CFUserCommand::Friends {
    only_online: None,
};

match x.get(api_key, api_secret) {
    Ok(CFResult::CFFriends(v)) => {
        // your code here
    },
    _ => {
        panic!("API request failed");
    }
}

Fields

§only_online: Option<bool>

If Some(true), then only online friends are returned. Otherwise all friends are returned.

§

Info

Struct for sending user.info requests to the Codeforces API.

Returns information about one or several users.

If correctly parsed, the response object will be of type responses::CFResult::CFUserVec.

More details for the user.info command can be found here.

§Examples

let x = CFUserCommand::Info {
    handles: vec!["thud".to_string()],
};

match x.get(api_key, api_secret) {
    Ok(CFResult::CFUserVec(v)) => {
        // your code here
    },
    _ => {
        panic!("API request failed");
    }
}

Fields

§handles: Vec<String>

Vec of handles for which to get info for. Codeforces will return an error if this is empty.

§

RatedList

Struct for sending user.ratedList requests to the Codeforces API.

Returns the list of users who have participated in at least one rated contest.

If correctly parsed, the response object will be of type responses::CFResult::CFUserVec.

More details for the user.ratedList command can be found here.

§Examples

let x = CFUserCommand::RatedList {
    active_only: Some(true),
};

match x.get(api_key, api_secret) {
    Ok(CFResult::CFUserVec(v)) => {
        // your code here
    },
    _ => {
        panic!("API request failed");
    }
}

Fields

§active_only: Option<bool>

If Some(true), then only users who have participated in a rated contest during the last month are returned.

§

Rating

Struct for sending user.rating requests to the Codeforces API.

Returns the rating history of a specified user.

If correctly parsed, the response object will be of type responses::CFResult::CFRatingChangeVec.

More details for the user.rating command can be found here.

§Examples

let x = CFUserCommand::Rating {
    handle: "thud".to_string(),
};

match x.get(api_key, api_secret) {
    Ok(CFResult::CFRatingChangeVec(v)) => {
        // your code here
    },
    _ => {
        panic!("API request failed");
    }
}

Fields

§handle: String

Codeforces handle of user for which to fetch rating changes for.

§

Status

Struct for sending user.status requests to the Codeforces API.

Returns the submissions of a specified user.

If correctly parsed, the response object will be of type responses::CFResult::CFSubmissionVec.

More details for the user.status command can be found here.

§Examples

let x = CFUserCommand::Status {
    handle: "thud".to_string(),
    from: Some(1),
    count: Some(3),
};

match x.get(api_key, api_secret) {
    Ok(CFResult::CFSubmissionVec(v)) => {
        // your code here
    },
    _ => {
        panic!("API request failed");
    }
}

Fields

§handle: String

Codeforces handle of user for which to fetch submissions.

§from: Option<i64>

Optional 1-based index of the first submission to return (most recent first).

§count: Option<i64>

Optional number of submissions to return.

Trait Implementations§

Source§

impl CFAPIRequestable for CFUserCommand

Source§

fn query_params(&self) -> Vec<(&'static str, String)>

Method which returns a Vec of pairs (key, val) which will be mapped onto URL query parameters. Used internally and not much use for most people.
Source§

fn method_name(&self) -> &'static str

Method which returns a str slice of the method name (eg. “user.info”). Used internally and not much use for most people.
Source§

fn get(&self, api_key: &str, api_secret: &str) -> Result<CFResult, Error>

Fetch response from Codeforces servers. Read more
Source§

fn get_raw(&self, api_key: &str, api_secret: &str) -> Result<String, Error>

Fetch raw JSON response from Codeforces servers. Read more
Source§

impl Clone for CFUserCommand

Source§

fn clone(&self) -> CFUserCommand

Returns a duplicate 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 CFUserCommand

Source§

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

Formats the value using the given formatter. Read more
Source§

impl PartialEq for CFUserCommand

Source§

fn eq(&self, other: &CFUserCommand) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for CFUserCommand

Source§

impl StructuralPartialEq for CFUserCommand

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

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 T
where U: From<T>,

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 for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

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 T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

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

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

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

Source§

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
Source§

impl<T> ErasedDestructor for T
where T: 'static,