jinxapi_github/v1_1_4/request/
repos_codeowners_errors.rs

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