jinxapi_github/v1_1_4/request/
pulls_delete_pending_review.rs

1//! Delete a pending review for a pull request
2//! 
3//! [API method documentation](https://docs.github.com/rest/reference/pulls#delete-a-pending-review-for-a-pull-request)
4
5
6fn url_string(
7    base_url: &str,
8    p_owner: &str,
9    p_repo: &str,
10    p_pull_number: i64,
11    p_review_id: i64,
12) -> Result<String, crate::v1_1_4::ApiError> {
13    let trimmed = if base_url.is_empty() {
14        "https://api.github.com"
15    } else {
16        base_url.trim_end_matches('/')
17    };
18    let mut url = String::with_capacity(trimmed.len() + 44);
19    url.push_str(trimmed);
20    url.push_str("/repos/");
21    ::querylizer::Simple::extend(&mut url, &p_owner, false, &::querylizer::encode_path)?;
22    url.push('/');
23    ::querylizer::Simple::extend(&mut url, &p_repo, false, &::querylizer::encode_path)?;
24    url.push_str("/pulls/");
25    ::querylizer::Simple::extend(&mut url, &p_pull_number, false, &::querylizer::encode_path)?;
26    url.push_str("/reviews/");
27    ::querylizer::Simple::extend(&mut url, &p_review_id, false, &::querylizer::encode_path)?;
28    Ok(url)
29}
30
31#[cfg(feature = "hyper")]
32pub fn http_builder(
33    base_url: &str,
34    p_owner: &str,
35    p_repo: &str,
36    p_pull_number: i64,
37    p_review_id: i64,
38    h_user_agent: &str,
39    h_accept: ::std::option::Option<&str>,
40) -> Result<::http::request::Builder, crate::v1_1_4::ApiError> {
41    let url = url_string(
42        base_url,
43        p_owner,
44        p_repo,
45        p_pull_number,
46        p_review_id,
47    )?;
48    let mut builder = ::http::request::Request::delete(url);
49    builder = builder.header(
50        "User-Agent",
51        &::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?
52    );
53    if let Some(value) = &h_accept {
54        builder = builder.header(
55            "Accept",
56            &::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?
57        );
58    }
59    Ok(builder)
60}
61
62#[cfg(feature = "hyper")]
63#[inline]
64pub fn hyper_request(
65    builder: ::http::request::Builder,
66) -> Result<::http::request::Request<::hyper::Body>, crate::v1_1_4::ApiError> {
67    Ok(builder.body(::hyper::Body::empty())?)
68}
69
70#[cfg(feature = "reqwest")]
71pub fn reqwest_builder(
72    base_url: &str,
73    p_owner: &str,
74    p_repo: &str,
75    p_pull_number: i64,
76    p_review_id: i64,
77    h_user_agent: &str,
78    h_accept: ::std::option::Option<&str>,
79) -> Result<::reqwest::Request, crate::v1_1_4::ApiError> {
80    let url = url_string(
81        base_url,
82        p_owner,
83        p_repo,
84        p_pull_number,
85        p_review_id,
86    )?;
87    let reqwest_url = ::reqwest::Url::parse(&url)?;
88    let mut request = ::reqwest::Request::new(::reqwest::Method::DELETE, reqwest_url);
89    let headers = request.headers_mut();
90    headers.append(
91        "User-Agent",
92        ::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?.try_into()?
93    );
94    if let Some(value) = &h_accept {
95        headers.append(
96            "Accept",
97            ::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?.try_into()?
98        );
99    }
100    Ok(request)
101}
102
103#[cfg(feature = "reqwest")]
104#[inline(always)]
105pub fn reqwest_request(
106    builder: ::reqwest::Request,
107) -> Result<::reqwest::Request, crate::v1_1_4::ApiError>
108{
109    Ok(builder)
110}
111
112#[cfg(feature = "reqwest-blocking")]
113pub fn reqwest_blocking_builder(
114    base_url: &str,
115    p_owner: &str,
116    p_repo: &str,
117    p_pull_number: i64,
118    p_review_id: i64,
119    h_user_agent: &str,
120    h_accept: ::std::option::Option<&str>,
121) -> Result<::reqwest::blocking::Request, crate::v1_1_4::ApiError> {
122    let url = url_string(
123        base_url,
124        p_owner,
125        p_repo,
126        p_pull_number,
127        p_review_id,
128    )?;
129    let reqwest_url = ::reqwest::Url::parse(&url)?;
130    let mut request = ::reqwest::blocking::Request::new(::reqwest::Method::DELETE, reqwest_url);
131    let headers = request.headers_mut();
132    headers.append(
133        "User-Agent",
134        ::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?.try_into()?
135    );
136    if let Some(value) = &h_accept {
137        headers.append(
138            "Accept",
139            ::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?.try_into()?
140        );
141    }
142    Ok(request)
143}
144
145#[cfg(feature = "reqwest-blocking")]
146#[inline(always)]
147pub fn reqwest_blocking_request(
148    builder: ::reqwest::blocking::Request,
149) -> Result<::reqwest::blocking::Request, crate::v1_1_4::ApiError>
150{
151    Ok(builder)
152}