Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions openapi-generator-template/model.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ impl Default for {{classname}} {
{{/vendorExtensions.x-rust-builder}}{{!
}}{{#vendorExtensions.x-rust-has-byte-array}}#[serde_as]{{/vendorExtensions.x-rust-has-byte-array}}{{!
}}{{#oneOf.isEmpty}}#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct {{{classname}}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a{{#vendorExtensions.x-rust-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-generic-parameter}}>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}{{#vendorExtensions.x-rust-generic-parameter}}<{{{.}}}>{{/vendorExtensions.x-rust-generic-parameter}}{{/vendorExtensions.x-rust-has-borrowed-data}} {
pub struct {{{classname}}}{{#vendorExtensions.x-rust-has-lifetime}}<'a{{#vendorExtensions.x-rust-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-generic-parameter}}>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}{{#vendorExtensions.x-rust-generic-parameter}}<{{{.}}}>{{/vendorExtensions.x-rust-generic-parameter}}{{/vendorExtensions.x-rust-has-lifetime}} {
{{#vars}}
{{#description}}
/// {{{.}}}
Expand All @@ -148,15 +148,15 @@ pub struct {{{classname}}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a{{#ve
### Enums
}}{{#isEnum}}{{#isArray}}{{#uniqueItems}}std::collections::HashSet<{{/uniqueItems}}{{^uniqueItems}}Vec<{{/uniqueItems}}{{/isArray}}{{{enumName}}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{!
### Models
}}{{^isEnum}}{{#isModel}}{{^avoidBoxedModels}}Box<{{/avoidBoxedModels}}{{{dataType}}}{{#vendorExtensions.x-rust-has-borrowed-data}}{{#model}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}<'static>{{/vendorExtensions.x-rust-has-borrowed-data}}{{/model}}{{/vendorExtensions.x-rust-has-borrowed-data}}{{^avoidBoxedModels}}>{{/avoidBoxedModels}}{{/isModel}}{{!
}}{{^isEnum}}{{#isModel}}{{^avoidBoxedModels}}Box<{{/avoidBoxedModels}}{{{dataType}}}{{#vendorExtensions.x-rust-has-lifetime}}{{#model}}{{#vendorExtensions.x-rust-has-lifetime}}<'a>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}<'static>{{/vendorExtensions.x-rust-has-lifetime}}{{/model}}{{/vendorExtensions.x-rust-has-lifetime}}{{^avoidBoxedModels}}>{{/avoidBoxedModels}}{{/isModel}}{{!
### ByteArray
}}{{^isModel}}{{#isByteArray}}Vec<u8>{{/isByteArray}}{{!
### String
}}{{^isByteArray}}{{#isString}}{{#model}}{{#vendorExtensions.x-rust-has-borrowed-data}}Cow<'a, str>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}String{{/vendorExtensions.x-rust-has-borrowed-data}}{{/model}}{{/isString}}{{!
}}{{^isByteArray}}{{#isString}}{{#model}}{{#vendorExtensions.x-rust-has-lifetime}}Cow<'a, str>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}String{{/vendorExtensions.x-rust-has-lifetime}}{{/model}}{{/isString}}{{!
### Arrays
}}{{^isString}}{{#isArray}}Vec<{{#items}}{{!
### Array Models
}}{{#isModel}}{{{dataType}}}{{#vendorExtensions.x-rust-has-borrowed-data}}{{#model}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}<'static>{{/vendorExtensions.x-rust-has-borrowed-data}}{{/model}}{{/vendorExtensions.x-rust-has-borrowed-data}}{{/isModel}}{{!
}}{{#isModel}}{{{dataType}}}{{#vendorExtensions.x-rust-has-lifetime}}{{#model}}{{#vendorExtensions.x-rust-has-lifetime}}<'a>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}<'static>{{/vendorExtensions.x-rust-has-lifetime}}{{/model}}{{/vendorExtensions.x-rust-has-lifetime}}{{/isModel}}{{!
### Array other datatypes
}}{{^isModel}}{{{dataType}}}{{/isModel}}{{/items}}>{{/isArray}}{{!
### Primitive datatypes
Expand All @@ -171,8 +171,8 @@ pub struct {{{classname}}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a{{#ve
{{/vars}}
}

impl{{#vendorExtensions.x-rust-has-borrowed-data}}<'a{{#vendorExtensions.x-rust-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-generic-parameter}}>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}{{#vendorExtensions.x-rust-generic-parameter}}<{{{.}}}>{{/vendorExtensions.x-rust-generic-parameter}}{{/vendorExtensions.x-rust-has-borrowed-data}} {{!
}}{{{classname}}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a{{#vendorExtensions.x-rust-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-generic-parameter}}>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}{{#vendorExtensions.x-rust-generic-parameter}}<{{{.}}}>{{/vendorExtensions.x-rust-generic-parameter}}{{/vendorExtensions.x-rust-has-borrowed-data}} {
impl{{#vendorExtensions.x-rust-has-lifetime}}<'a{{#vendorExtensions.x-rust-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-generic-parameter}}>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}{{#vendorExtensions.x-rust-generic-parameter}}<{{{.}}}>{{/vendorExtensions.x-rust-generic-parameter}}{{/vendorExtensions.x-rust-has-lifetime}} {{!
}}{{{classname}}}{{#vendorExtensions.x-rust-has-lifetime}}<'a{{#vendorExtensions.x-rust-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-generic-parameter}}>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}{{#vendorExtensions.x-rust-generic-parameter}}<{{{.}}}>{{/vendorExtensions.x-rust-generic-parameter}}{{/vendorExtensions.x-rust-has-lifetime}} {
{{#description}}
/// {{{.}}}
{{/description}}
Expand All @@ -183,11 +183,11 @@ impl{{#vendorExtensions.x-rust-has-borrowed-data}}<'a{{#vendorExtensions.x-rust-
}}{{^vendorExtensions.x-rust-type}}{{#isNullable}}Option<{{/isNullable}}{{!
}}{{#isEnum}}{{#isArray}}{{#uniqueItems}}std::collections::HashSet<{{/uniqueItems}}{{^uniqueItems}}Vec<{{/uniqueItems}}{{/isArray}}{{{enumName}}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{!
}}{{^isEnum}}{{#isByteArray}}Vec<u8>{{/isByteArray}}{{!
}}{{^isByteArray}}{{#isString}}{{#model}}{{#vendorExtensions.x-rust-has-borrowed-data}}Cow<'a, str>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}String{{/vendorExtensions.x-rust-has-borrowed-data}}{{/model}}{{/isString}}{{!
}}{{^isByteArray}}{{#isString}}{{#model}}{{#vendorExtensions.x-rust-has-lifetime}}Cow<'a, str>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}String{{/vendorExtensions.x-rust-has-lifetime}}{{/model}}{{/isString}}{{!
}}{{^isString}}{{#isArray}}Vec<{{#items}}{{!
}}{{#isModel}}{{{dataType}}}{{#vendorExtensions.x-rust-has-borrowed-data}}{{#model}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}<'static>{{/vendorExtensions.x-rust-has-borrowed-data}}{{/model}}{{/vendorExtensions.x-rust-has-borrowed-data}}{{/isModel}}{{!
}}{{#isModel}}{{{dataType}}}{{#vendorExtensions.x-rust-has-lifetime}}{{#model}}{{#vendorExtensions.x-rust-has-lifetime}}<'a>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}<'static>{{/vendorExtensions.x-rust-has-lifetime}}{{/model}}{{/vendorExtensions.x-rust-has-lifetime}}{{/isModel}}{{!
}}{{^isModel}}{{{dataType}}}{{/isModel}}{{/items}}>{{/isArray}}{{!
}}{{^isArray}}{{{dataType}}}{{#isModel}}{{#vendorExtensions.x-rust-has-borrowed-data}}{{#model}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a>{{/vendorExtensions.x-rust-has-borrowed-data}}{{^vendorExtensions.x-rust-has-borrowed-data}}<'static>{{/vendorExtensions.x-rust-has-borrowed-data}}{{/model}}{{/vendorExtensions.x-rust-has-borrowed-data}}{{/isModel}}{{!
}}{{^isArray}}{{{dataType}}}{{#isModel}}{{#vendorExtensions.x-rust-has-lifetime}}{{#model}}{{#vendorExtensions.x-rust-has-lifetime}}<'a>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}<'static>{{/vendorExtensions.x-rust-has-lifetime}}{{/model}}{{/vendorExtensions.x-rust-has-lifetime}}{{/isModel}}{{!
}}{{/isArray}}{{/isString}}{{/isByteArray}}{{/isEnum}}{{!
}}{{#isNullable}}>{{/isNullable}}{{/vendorExtensions.x-rust-type}}{{!
### Comma for next arguement
Expand Down Expand Up @@ -218,16 +218,16 @@ impl{{#vendorExtensions.x-rust-has-borrowed-data}}<'a{{#vendorExtensions.x-rust-
{{/description}}
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
#[serde(untagged)]
pub enum {{classname}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a>{{/vendorExtensions.x-rust-has-borrowed-data}} {
pub enum {{classname}}{{#vendorExtensions.x-rust-has-lifetime}}<'a>{{/vendorExtensions.x-rust-has-lifetime}} {
{{#composedSchemas.oneOf}}
{{#description}}
/// {{{.}}}
{{/description}}
{{{name}}}({{#isModel}}{{^avoidBoxedModels}}Box<{{/avoidBoxedModels}}{{/isModel}}{{#isArray}}Vec<{{{items.dataType}}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a>{{/vendorExtensions.x-rust-has-borrowed-data}}>{{/isArray}}{{^isArray}}{{{dataType}}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'a>{{/vendorExtensions.x-rust-has-borrowed-data}}{{/isArray}}{{#isModel}}{{^avoidBoxedModels}}>{{/avoidBoxedModels}}{{/isModel}}),
{{{name}}}({{#isModel}}{{^avoidBoxedModels}}Box<{{/avoidBoxedModels}}{{/isModel}}{{#isArray}}Vec<{{{items.dataType}}}{{#items.vendorExtensions.x-rust-has-lifetime}}<'a>{{/items.vendorExtensions.x-rust-has-lifetime}}{{^items.vendorExtensions.x-rust-has-lifetime}}{{#vendorExtensions.x-rust-has-lifetime}}<'a>{{/vendorExtensions.x-rust-has-lifetime}}{{/items.vendorExtensions.x-rust-has-lifetime}}>{{/isArray}}{{^isArray}}{{{dataType}}}{{#vendorExtensions.x-rust-has-lifetime}}<'a>{{/vendorExtensions.x-rust-has-lifetime}}{{/isArray}}{{#isModel}}{{^avoidBoxedModels}}>{{/avoidBoxedModels}}{{/isModel}}),
{{/composedSchemas.oneOf}}
}

impl Default for {{classname}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'_>{{/vendorExtensions.x-rust-has-borrowed-data}} {
impl Default for {{classname}}{{#vendorExtensions.x-rust-has-lifetime}}<'_>{{/vendorExtensions.x-rust-has-lifetime}} {
fn default() -> Self {
{{#composedSchemas.oneOf}}{{#-first}}Self::{{{name}}}(Default::default()){{/-first}}{{/composedSchemas.oneOf}}
}
Expand Down
32 changes: 11 additions & 21 deletions openapi-generator-template/reqwest/api.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,11 @@ use serde::{Deserialize, Serialize, de::Error as _};
{{#operations}}
{{#operation}}
{{#vendorExtensions.x-group-parameters}}
{{#allParams}}
{{#-first}}
{{#hasParams}}
/// struct for passing parameters to the method [`{{operationId}}`]
#[derive(Clone, Debug)]
pub struct {{{operationIdCamelCase}}}Params<'p{{!
Iterate through ALL parameters in the operation.
Only the requestBody has this extension defined, so it will print "<B>".
The other parameters have nothing, so they will print nothing.
This effectively extract the generic parameter from the requestBody
and places it on the struct definition line.
}}{{#allParams}}
{{#vendorExtensions.x-rust-params-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-params-generic-parameter}}
{{/allParams}}> {
{{/-first}}
pub struct {{{operationIdCamelCase}}}Params{{#vendorExtensions.x-rust-has-lifetime}}<'p{{#allParams}}{{#vendorExtensions.x-rust-params-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-params-generic-parameter}}{{/allParams}}>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}{{#allParams}}{{#-first}}{{#vendorExtensions.x-rust-params-generic-parameter}}<{{/vendorExtensions.x-rust-params-generic-parameter}}{{/-first}}{{/allParams}}{{#allParams}}{{#vendorExtensions.x-rust-params-generic-parameter}}{{{.}}}{{/vendorExtensions.x-rust-params-generic-parameter}}{{/allParams}}{{#allParams}}{{#-last}}{{#vendorExtensions.x-rust-params-generic-parameter}}>{{/vendorExtensions.x-rust-params-generic-parameter}}{{/-last}}{{/allParams}}{{/vendorExtensions.x-rust-has-lifetime}} {
{{#allParams}}
{{#description}}
/// {{{.}}}
{{/description}}
Expand All @@ -37,18 +28,17 @@ pub struct {{{operationIdCamelCase}}}Params<'p{{!
}}{{^isUuid}}{{#isString}}{{#isArray}}Vec<{{/isArray}}Cow<'p, str>{{#isArray}}>{{/isArray}}{{/isString}}{{/isUuid}}{{!
### UUIDs
}}{{#isUuid}}{{#isArray}}Vec<{{/isArray}}String{{#isArray}}>{{/isArray}}{{/isUuid}}{{!
### Models and primative types
}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{#isModel}}<'p>{{/isModel}}{{/isUuid}}{{/isString}}{{!
### Models and primitive types
}}{{^isString}}{{^isUuid}}{{#isArray}}Vec<{{#items}}{{^isPrimitiveType}}models::{{/isPrimitiveType}}{{{dataType}}}{{^isPrimitiveType}}{{^isEnum}}{{#vendorExtensions.x-rust-has-lifetime}}<'p>{{/vendorExtensions.x-rust-has-lifetime}}{{/isEnum}}{{/isPrimitiveType}}{{/items}}>{{/isArray}}{{^isArray}}{{^isPrimitiveType}}{{^isContainer}}models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{^isContainer}}{{^isPrimitiveType}}{{^isEnum}}{{#vendorExtensions.x-rust-has-lifetime}}<'p>{{/vendorExtensions.x-rust-has-lifetime}}{{/isEnum}}{{/isPrimitiveType}}{{/isContainer}}{{/isArray}}{{/isUuid}}{{/isString}}{{!
### Option End
}}{{^required}}>{{/required}}{{#required}}{{#isNullable}}>{{/isNullable}}{{/required}}{{!
### Comma for next arguement
}},
{{/vendorExtensions.x-rust-type}}
{{#-last}}
{{/allParams}}
}
{{/hasParams}}

{{/-last}}
{{/allParams}}
{{/vendorExtensions.x-group-parameters}}
{{/operation}}
{{/operations}}
Expand Down Expand Up @@ -106,16 +96,16 @@ pub enum {{{operationIdCamelCase}}}Error {
/// {{{.}}}
{{/notes}}
{{#vendorExtensions.x-group-parameters}}
pub {{#supportAsync}}async {{/supportAsync}}fn {{{operationId}}}{{#vendorExtensions.x-rust-generic-parameter}}<{{{.}}}>{{/vendorExtensions.x-rust-generic-parameter}}(configuration: &configuration::Configuration{{#allParams}}{{#-first}}, {{!
pub {{#supportAsync}}async {{/supportAsync}}fn {{{operationId}}}{{#vendorExtensions.x-rust-generic-parameter}}<{{{.}}}>{{/vendorExtensions.x-rust-generic-parameter}}(configuration: &configuration::Configuration{{#hasParams}}, {{!
### Params
}}params: &{{{operationIdCamelCase}}}Params<'_{{#allParams}}{{#vendorExtensions.x-rust-params-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-params-generic-parameter}}{{/allParams}}>{{/-first}}{{/allParams}}{{!
}}params: &{{{operationIdCamelCase}}}Params{{#vendorExtensions.x-rust-has-lifetime}}<'_{{#allParams}}{{#vendorExtensions.x-rust-params-generic-parameter}}, {{{.}}}{{/vendorExtensions.x-rust-params-generic-parameter}}{{/allParams}}>{{/vendorExtensions.x-rust-has-lifetime}}{{^vendorExtensions.x-rust-has-lifetime}}{{#allParams}}{{#-first}}{{#vendorExtensions.x-rust-params-generic-parameter}}<{{/vendorExtensions.x-rust-params-generic-parameter}}{{/-first}}{{/allParams}}{{#allParams}}{{#vendorExtensions.x-rust-params-generic-parameter}}{{{.}}}{{/vendorExtensions.x-rust-params-generic-parameter}}{{/allParams}}{{#allParams}}{{#-last}}{{#vendorExtensions.x-rust-params-generic-parameter}}>{{/vendorExtensions.x-rust-params-generic-parameter}}{{/-last}}{{/allParams}}{{/vendorExtensions.x-rust-has-lifetime}}{{/hasParams}}{{!
### Function return type
}}) -> Result<{{#vendorExtensions.x-rust-return-type}}{{{.}}}{{/vendorExtensions.x-rust-return-type}}{{^vendorExtensions.x-rust-return-type}}{{!
}}{{#isResponseFile}}{{#supportAsync}}reqwest::Response{{/supportAsync}}{{^supportAsync}}reqwest::blocking::Response{{/supportAsync}}{{/isResponseFile}}{{!
}}{{^isResponseFile}}{{#supportMultipleResponses}}ResponseContent<{{{operationIdCamelCase}}}Success>{{/supportMultipleResponses}}{{^supportMultipleResponses}}{{!
}}{{^returnType}}(){{/returnType}}{{!
}}{{#isArray}}Vec<{{#returnProperty.items}}{{{dataType}}}{{#isModel}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'static>{{/vendorExtensions.x-rust-has-borrowed-data}}{{/isModel}}{{/returnProperty.items}}>{{/isArray}}{{!
}}{{^isArray}}{{#returnProperty}}{{{dataType}}}{{#isModel}}{{#vendorExtensions.x-rust-has-borrowed-data}}<'static>{{/vendorExtensions.x-rust-has-borrowed-data}}{{/isModel}}{{/returnProperty}}{{!
}}{{#isArray}}Vec<{{#returnProperty.items}}{{{dataType}}}{{#isModel}}{{#vendorExtensions.x-rust-has-lifetime}}<'static>{{/vendorExtensions.x-rust-has-lifetime}}{{/isModel}}{{/returnProperty.items}}>{{/isArray}}{{!
}}{{^isArray}}{{#returnProperty}}{{{dataType}}}{{#isModel}}{{#vendorExtensions.x-rust-has-lifetime}}<'static>{{/vendorExtensions.x-rust-has-lifetime}}{{/isModel}}{{/returnProperty}}{{!
}}{{/isArray}}{{/supportMultipleResponses}}{{/isResponseFile}}{{/vendorExtensions.x-rust-return-type}}, Error<{{{operationIdCamelCase}}}Error>> {
{{/vendorExtensions.x-group-parameters}}
let uri_str = format!("{}{{{path}}}", configuration.base_path{{#pathParams}}, {{{baseName}}}={{#isString}}crate::apis::urlencode(&{{/isString}}{{{vendorExtensions.x-rust-param-identifier}}}{{^required}}.unwrap(){{/required}}{{#required}}{{#isNullable}}.unwrap(){{/isNullable}}{{/required}}{{#isArray}}.join(",").as_ref(){{/isArray}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}.to_string(){{/isContainer}}{{/isPrimitiveType}}{{/isUuid}}{{/isString}}{{#isString}}){{/isString}}{{/pathParams}});
Expand Down
Loading
Loading