[−][src]Struct crates_io_api::SyncClient
A synchronous client for the crates.io API.
Implementations
impl SyncClient
[src]
pub fn new(
user_agent: &str,
rate_limit: Duration
) -> Result<Self, InvalidHeaderValue>
[src]
user_agent: &str,
rate_limit: Duration
) -> Result<Self, InvalidHeaderValue>
Instantiate a new client.
To respect the offical Crawler Policy, you must specify both a descriptive user agent and a rate limit interval.
At most one request will be executed in the specified duration. The guidelines suggest 1 per second or less.
Example user agent: "my_bot (my_bot.com/info)"
or "my_bot (help@my_bot.com)"
.
let client = crates_io_api::AsyncClient::new( "my_bot (help@my_bot.com)", std::time::Duration::from_millis(1000), )?;
pub fn summary(&self) -> Result<Summary, Error>
[src]
Retrieve a summary containing crates.io wide information.
pub fn get_crate(&self, name: &str) -> Result<CrateResponse, Error>
[src]
Retrieve information of a crate.
If you require detailed information, consider using full_crate.
pub fn crate_downloads(&self, name: &str) -> Result<Downloads, Error>
[src]
Retrieve download stats for a crate.
pub fn crate_owners(&self, name: &str) -> Result<Vec<User>, Error>
[src]
Retrieve the owners of a crate.
pub fn crate_reverse_dependencies(
&self,
name: &str
) -> Result<ReverseDependencies, Error>
[src]
&self,
name: &str
) -> Result<ReverseDependencies, Error>
Load all reverse dependencies of a crate.
Note: Since the reverse dependency endpoint requires pagination, this will result in multiple requests if the crate has more than 100 reverse dependencies.
pub fn crate_authors(&self, name: &str, version: &str) -> Result<Authors, Error>
[src]
Retrieve the authors for a crate version.
pub fn crate_dependencies(
&self,
name: &str,
version: &str
) -> Result<Vec<Dependency>, Error>
[src]
&self,
name: &str,
version: &str
) -> Result<Vec<Dependency>, Error>
Retrieve the dependencies of a crate version.
pub fn full_crate(
&self,
name: &str,
all_versions: bool
) -> Result<FullCrate, Error>
[src]
&self,
name: &str,
all_versions: bool
) -> Result<FullCrate, Error>
Retrieve all available information for a crate, including download stats, owners and reverse dependencies.
The all_versions
argument controls the retrieval of detailed version
information.
If false, only the data for the latest version will be fetched, if true,
detailed information for all versions will be available.
Note: Each version requires two extra requests.
pub fn crates(&self, spec: ListOptions) -> Result<CratesResponse, Error>
[src]
Retrieve a page of crates, optionally constrained by a query.
If you want to get all results without worrying about paging,
use [all_crates
].
Examples
Retrieve the first page of results for the query "api", with 100 items per page and sorted alphabetically.
client.crates(ListOptions{ sort: Sort::Alphabetical, per_page: 100, page: 1, query: Some("api".to_string()), })?;
pub fn all_crates(&self, query: Option<String>) -> Result<Vec<Crate>, Error>
[src]
Retrieve all crates, optionally constrained by a query.
Note: This method fetches all pages of the result. This can result in a lot queries (100 results per query).
Auto Trait Implementations
impl !RefUnwindSafe for SyncClient
impl Send for SyncClient
impl Sync for SyncClient
impl Unpin for SyncClient
impl !UnwindSafe for SyncClient
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,