pub struct HackerNewsClient { /* private fields */ }Expand description
Client for Hacker News API
Implementations§
Source§impl HackerNewsClient
impl HackerNewsClient
Sourcepub fn new() -> Result<Self>
pub fn new() -> Result<Self>
Create a new Hacker News client
No authentication required. API is generous with rate limits.
Sourcepub async fn get_top_stories(&self, limit: usize) -> Result<Vec<DataRecord>>
pub async fn get_top_stories(&self, limit: usize) -> Result<Vec<DataRecord>>
Sourcepub async fn get_new_stories(&self, limit: usize) -> Result<Vec<DataRecord>>
pub async fn get_new_stories(&self, limit: usize) -> Result<Vec<DataRecord>>
Sourcepub async fn get_best_stories(&self, limit: usize) -> Result<Vec<DataRecord>>
pub async fn get_best_stories(&self, limit: usize) -> Result<Vec<DataRecord>>
Sourcepub async fn get_item(&self, id: i64) -> Result<DataRecord>
pub async fn get_item(&self, id: i64) -> Result<DataRecord>
Trait Implementations§
Source§impl DataSource for HackerNewsClient
impl DataSource for HackerNewsClient
Source§fn fetch_batch<'life0, 'async_trait>(
&'life0 self,
_cursor: Option<String>,
batch_size: usize,
) -> Pin<Box<dyn Future<Output = Result<(Vec<DataRecord>, Option<String>)>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fetch_batch<'life0, 'async_trait>(
&'life0 self,
_cursor: Option<String>,
batch_size: usize,
) -> Pin<Box<dyn Future<Output = Result<(Vec<DataRecord>, Option<String>)>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Fetch a batch of records starting from cursor
Auto Trait Implementations§
impl Freeze for HackerNewsClient
impl !RefUnwindSafe for HackerNewsClient
impl Send for HackerNewsClient
impl Sync for HackerNewsClient
impl Unpin for HackerNewsClient
impl !UnwindSafe for HackerNewsClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more