jinxapi_github/v1_1_4/request/
gists_list_comments.rs1fn url_string(
7 base_url: &str,
8 p_gist_id: &str,
9 q_per_page: ::std::option::Option<i64>,
10 q_page: ::std::option::Option<i64>,
11) -> Result<String, crate::v1_1_4::ApiError> {
12 let trimmed = if base_url.is_empty() {
13 "https://api.github.com"
14 } else {
15 base_url.trim_end_matches('/')
16 };
17 let mut url = String::with_capacity(trimmed.len() + 33);
18 url.push_str(trimmed);
19 url.push_str("/gists/");
20 ::querylizer::Simple::extend(&mut url, &p_gist_id, false, &::querylizer::encode_path)?;
21 url.push_str("/comments");
22 let mut prefix = '?';
23 if let Some(value) = &q_per_page {
24 url.push(::std::mem::replace(&mut prefix, '&'));
25 ::querylizer::Form::extend(&mut url, "per_page", value, false, &::querylizer::encode_query)?;
26 }
27 if let Some(value) = &q_page {
28 url.push(::std::mem::replace(&mut prefix, '&'));
29 ::querylizer::Form::extend(&mut url, "page", value, false, &::querylizer::encode_query)?;
30 }
31 Ok(url)
32}
33
34#[cfg(feature = "hyper")]
35pub fn http_builder(
36 base_url: &str,
37 p_gist_id: &str,
38 q_per_page: ::std::option::Option<i64>,
39 q_page: ::std::option::Option<i64>,
40 h_user_agent: &str,
41 h_accept: ::std::option::Option<&str>,
42) -> Result<::http::request::Builder, crate::v1_1_4::ApiError> {
43 let url = url_string(
44 base_url,
45 p_gist_id,
46 q_per_page,
47 q_page,
48 )?;
49 let mut builder = ::http::request::Request::get(url);
50 builder = builder.header(
51 "User-Agent",
52 &::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?
53 );
54 if let Some(value) = &h_accept {
55 builder = builder.header(
56 "Accept",
57 &::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?
58 );
59 }
60 Ok(builder)
61}
62
63#[cfg(feature = "hyper")]
64#[inline]
65pub fn hyper_request(
66 builder: ::http::request::Builder,
67) -> Result<::http::request::Request<::hyper::Body>, crate::v1_1_4::ApiError> {
68 Ok(builder.body(::hyper::Body::empty())?)
69}
70
71#[cfg(feature = "reqwest")]
72pub fn reqwest_builder(
73 base_url: &str,
74 p_gist_id: &str,
75 q_per_page: ::std::option::Option<i64>,
76 q_page: ::std::option::Option<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_gist_id,
83 q_per_page,
84 q_page,
85 )?;
86 let reqwest_url = ::reqwest::Url::parse(&url)?;
87 let mut request = ::reqwest::Request::new(::reqwest::Method::GET, reqwest_url);
88 let headers = request.headers_mut();
89 headers.append(
90 "User-Agent",
91 ::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?.try_into()?
92 );
93 if let Some(value) = &h_accept {
94 headers.append(
95 "Accept",
96 ::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?.try_into()?
97 );
98 }
99 Ok(request)
100}
101
102#[cfg(feature = "reqwest")]
103#[inline(always)]
104pub fn reqwest_request(
105 builder: ::reqwest::Request,
106) -> Result<::reqwest::Request, crate::v1_1_4::ApiError>
107{
108 Ok(builder)
109}
110
111#[cfg(feature = "reqwest-blocking")]
112pub fn reqwest_blocking_builder(
113 base_url: &str,
114 p_gist_id: &str,
115 q_per_page: ::std::option::Option<i64>,
116 q_page: ::std::option::Option<i64>,
117 h_user_agent: &str,
118 h_accept: ::std::option::Option<&str>,
119) -> Result<::reqwest::blocking::Request, crate::v1_1_4::ApiError> {
120 let url = url_string(
121 base_url,
122 p_gist_id,
123 q_per_page,
124 q_page,
125 )?;
126 let reqwest_url = ::reqwest::Url::parse(&url)?;
127 let mut request = ::reqwest::blocking::Request::new(::reqwest::Method::GET, reqwest_url);
128 let headers = request.headers_mut();
129 headers.append(
130 "User-Agent",
131 ::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?.try_into()?
132 );
133 if let Some(value) = &h_accept {
134 headers.append(
135 "Accept",
136 ::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?.try_into()?
137 );
138 }
139 Ok(request)
140}
141
142#[cfg(feature = "reqwest-blocking")]
143#[inline(always)]
144pub fn reqwest_blocking_request(
145 builder: ::reqwest::blocking::Request,
146) -> Result<::reqwest::blocking::Request, crate::v1_1_4::ApiError>
147{
148 Ok(builder)
149}