summaryrefslogtreecommitdiffstats
path: root/generator
diff options
context:
space:
mode:
authorCyborus <cyborus@cyborus.xyz>2024-01-30 04:12:52 +0100
committerCyborus <cyborus@cyborus.xyz>2024-01-30 04:12:52 +0100
commit4ccdce0395818793ee90a5e2dd32134202933c30 (patch)
tree680f316334cbe2b5a1d9c77ac2affa312c7f7631 /generator
parentput `query` directly in format string (diff)
downloadforgejo-api-4ccdce0395818793ee90a5e2dd32134202933c30.tar.xz
forgejo-api-4ccdce0395818793ee90a5e2dd32134202933c30.zip
fix warnings
Diffstat (limited to 'generator')
-rw-r--r--generator/src/main.rs2
-rw-r--r--generator/src/methods.rs30
-rw-r--r--generator/src/structs.rs22
3 files changed, 24 insertions, 30 deletions
diff --git a/generator/src/main.rs b/generator/src/main.rs
index 5a59984..6058807 100644
--- a/generator/src/main.rs
+++ b/generator/src/main.rs
@@ -98,7 +98,7 @@ fn schema_type_name(
};
Ok(name.to_owned())
}
- SchemaType::List(list) => todo!(),
+ SchemaType::List(_) => todo!(),
}
} else {
Ok("()".into())
diff --git a/generator/src/methods.rs b/generator/src/methods.rs
index 0e285ad..3e23853 100644
--- a/generator/src/methods.rs
+++ b/generator/src/methods.rs
@@ -137,8 +137,7 @@ fn fn_signature_from_op(spec: &OpenApiV2, op: &Operation) -> eyre::Result<String
fn fn_args_from_op(spec: &OpenApiV2, op: &Operation) -> eyre::Result<String> {
let mut args = "&self".to_string();
let mut has_query = false;
- let mut has_headers = false;
- let mut has_form = false;
+ // let mut has_headers = false;
if let Some(params) = &op.parameters {
for param in params {
let full_param = match &param {
@@ -153,8 +152,8 @@ fn fn_args_from_op(spec: &OpenApiV2, op: &Operation) -> eyre::Result<String> {
args.push_str(": ");
args.push_str(&type_name);
}
- ParameterIn::Query { param } => has_query = true,
- ParameterIn::Header { param }=> has_headers = true,
+ ParameterIn::Query { param: _ } => has_query = true,
+ ParameterIn::Header { param: _ }=> (), // has_headers = true,
ParameterIn::Body { schema } => {
let ty = crate::schema_ref_type_name(spec, schema)?;
args.push_str(", ");
@@ -162,7 +161,7 @@ fn fn_args_from_op(spec: &OpenApiV2, op: &Operation) -> eyre::Result<String> {
args.push_str(": ");
args.push_str(&ty);
}
- ParameterIn::FormData { param } => {
+ ParameterIn::FormData { param: _ } => {
args.push_str(", ");
args.push_str(&crate::sanitize_ident(&full_param.name));
args.push_str(": Vec<u8>");
@@ -303,7 +302,7 @@ fn create_method_body(
op: &Operation,
) -> eyre::Result<String> {
let request = create_method_request(spec, method, path, op)?;
- let response = create_method_response(spec, method, path, op)?;
+ let response = create_method_response(spec, op)?;
Ok(format!("{request}\n {response}"))
}
@@ -314,7 +313,7 @@ fn create_method_request(
op: &Operation,
) -> eyre::Result<String> {
let mut has_query = false;
- let mut has_headers = false;
+ // let mut has_headers = false;
let mut body_method = String::new();
if let Some(params) = &op.parameters {
for param in params {
@@ -324,10 +323,10 @@ fn create_method_request(
};
let name = crate::sanitize_ident(&param.name);
match &param._in {
- ParameterIn::Path { param } => (/* do nothing */),
- ParameterIn::Query { param } => has_query = true,
- ParameterIn::Header { param } => has_headers = true,
- ParameterIn::Body { schema } => {
+ ParameterIn::Path { param: _ } => (/* do nothing */),
+ ParameterIn::Query { param: _ } => has_query = true,
+ ParameterIn::Header { param: _ } => (), // _has_headers = true,
+ ParameterIn::Body { schema: _ } => {
if !body_method.is_empty() {
eyre::bail!("cannot have more than one body parameter");
}
@@ -337,7 +336,7 @@ fn create_method_request(
body_method = format!(".json(&{name})");
}
}
- ParameterIn::FormData { param } => {
+ ParameterIn::FormData { param: _ } => {
if !body_method.is_empty() {
eyre::bail!("cannot have more than one body parameter");
}
@@ -347,12 +346,11 @@ fn create_method_request(
}
}
let mut fmt_str = sanitize_path_arg(path)?;
- let mut fmt_args = String::new();
if has_query {
fmt_str.push_str("?{query}");
}
let path_arg = if fmt_str.contains("{") {
- format!("&format!(\"{fmt_str}\"{fmt_args})")
+ format!("&format!(\"{fmt_str}\")")
} else {
format!("\"{fmt_str}\"")
};
@@ -407,8 +405,6 @@ fn sanitize_path_arg(mut path: &str) -> eyre::Result<String> {
fn create_method_response(
spec: &OpenApiV2,
- method: &str,
- path: &str,
op: &Operation,
) -> eyre::Result<String> {
let mut has_empty = false;
@@ -523,7 +519,7 @@ impl ResponseType {
(Some(a), Some(b)) if a != b => eyre::bail!("incompatible header types in response"),
(Some(a), Some("()") | None) => new.body = Some(format!("Option<{a}>")),
(Some("()") | None, Some(b)) => new.body = Some(format!("Option<{b}>")),
- (a, b) => new.body = self.body.or(other.body),
+ (_, _) => new.body = self.body.or(other.body),
};
Ok(new)
}
diff --git a/generator/src/structs.rs b/generator/src/structs.rs
index ec4f3b3..04c54fe 100644
--- a/generator/src/structs.rs
+++ b/generator/src/structs.rs
@@ -13,8 +13,8 @@ pub fn create_structs(spec: &OpenApiV2) -> eyre::Result<String> {
s.push_str(&strukt);
}
}
- for (path, item) in &spec.paths {
- let strukt = create_query_structs_for_path(&spec, path, item)?;
+ for (_, item) in &spec.paths {
+ let strukt = create_query_structs_for_path(item)?;
s.push_str(&strukt);
}
s.push_str("\n}");
@@ -98,31 +98,29 @@ fn create_struct_docs(schema: &Schema) -> eyre::Result<String> {
}
pub fn create_query_structs_for_path(
- spec: &OpenApiV2,
- path: &str,
item: &PathItem,
) -> eyre::Result<String> {
let mut s = String::new();
if let Some(op) = &item.get {
- s.push_str(&create_query_struct(spec, path, op).wrap_err("GET")?);
+ s.push_str(&create_query_struct(op).wrap_err("GET")?);
}
if let Some(op) = &item.put {
- s.push_str(&create_query_struct(spec, path, op).wrap_err("PUT")?);
+ s.push_str(&create_query_struct(op).wrap_err("PUT")?);
}
if let Some(op) = &item.post {
- s.push_str(&create_query_struct(spec, path, op).wrap_err("POST")?);
+ s.push_str(&create_query_struct(op).wrap_err("POST")?);
}
if let Some(op) = &item.delete {
- s.push_str(&create_query_struct(spec, path, op).wrap_err("DELETE")?);
+ s.push_str(&create_query_struct(op).wrap_err("DELETE")?);
}
if let Some(op) = &item.options {
- s.push_str(&create_query_struct(spec, path, op).wrap_err("OPTIONS")?);
+ s.push_str(&create_query_struct(op).wrap_err("OPTIONS")?);
}
if let Some(op) = &item.head {
- s.push_str(&create_query_struct(spec, path, op).wrap_err("HEAD")?);
+ s.push_str(&create_query_struct(op).wrap_err("HEAD")?);
}
if let Some(op) = &item.patch {
- s.push_str(&create_query_struct(spec, path, op).wrap_err("PATCH")?);
+ s.push_str(&create_query_struct(op).wrap_err("PATCH")?);
}
Ok(s)
}
@@ -138,7 +136,7 @@ pub fn query_struct_name(op: &Operation) -> eyre::Result<String> {
Ok(ty)
}
-fn create_query_struct(spec: &OpenApiV2, path: &str, op: &Operation) -> eyre::Result<String> {
+fn create_query_struct(op: &Operation) -> eyre::Result<String> {
let params = match &op.parameters {
Some(params) => params,
None => return Ok(String::new()),