1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
use std::error::Error;
mod client;
mod github;
use client::{get_pull_request_response, API_URL};
use github::{from_responses, to_repository_summary};
pub use github::{Repository, PullRequest};
pub fn get_pull_requests_by_user(username: &str) -> Result<Vec<PullRequest>, Box<dyn Error>> {
let pull_request_response = get_pull_request_response(username, API_URL)?;
Ok(from_responses(pull_request_response.items))
}
pub fn get_grouped_pull_requests_by_user(username: &str) -> Result<Vec<Repository>, Box<dyn Error>> {
let pull_request_response = get_pull_request_response(username, API_URL)?;
let pull_requests = from_responses(pull_request_response.items);
Ok(to_repository_summary(pull_requests))
}