jinxapi_github/v1_1_4/request/
gists_check_is_starred.rs

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