diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java index 9a287f7a3fd0..18c6e48a636a 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java @@ -633,6 +633,18 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List operations = objectMap.getOperation(); for (CodegenOperation operation : operations) { if (operation.pathParams != null && operation.pathParams.size() > 0) { + + // For types with `isAnyType` we assume it's a `serde_json::Value` type. + // However for path, query, and headers it's unlikely to be JSON so we default to `String`. + // Note that we keep the default `serde_json::Value` for body parameters. + for (var param : operation.allParams) { + if (param.isAnyType && (param.isPathParam || param.isQueryParam || param.isHeaderParam)) { + param.dataType = "String"; + param.isPrimitiveType = true; + param.isString = true; + } + } + for (var pathParam : operation.pathParams) { if (!pathParam.baseName.contains("-")) { continue; diff --git a/modules/openapi-generator/src/test/resources/3_0/rust/petstore.yaml b/modules/openapi-generator/src/test/resources/3_0/rust/petstore.yaml index a282c5456be9..0e50c34403bd 100644 --- a/modules/openapi-generator/src/test/resources/3_0/rust/petstore.yaml +++ b/modules/openapi-generator/src/test/resources/3_0/rust/petstore.yaml @@ -615,6 +615,11 @@ paths: description: To test escaping of parameters in rust code works schema: type: string + # For testing `isAnyType` types + - name: anyType + in: query + required: true + schema: {} responses: '200': description: successful operation @@ -996,3 +1001,9 @@ components: properties: dummy: type: string + AnyTypeTest: + type: object + properties: + foo: {} + required: ["foo"] + diff --git a/samples/client/petstore/rust/hyper/petstore/.openapi-generator/FILES b/samples/client/petstore/rust/hyper/petstore/.openapi-generator/FILES index 078bc10bcb44..5767a23c8ba5 100644 --- a/samples/client/petstore/rust/hyper/petstore/.openapi-generator/FILES +++ b/samples/client/petstore/rust/hyper/petstore/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -37,6 +38,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/hyper/petstore/README.md b/samples/client/petstore/rust/hyper/petstore/README.md index 3c26db515d26..f6319d46f240 100644 --- a/samples/client/petstore/rust/hyper/petstore/README.md +++ b/samples/client/petstore/rust/hyper/petstore/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/hyper/petstore/docs/AnyTypeTest.md b/samples/client/petstore/rust/hyper/petstore/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/hyper/petstore/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/hyper/petstore/docs/FakeApi.md b/samples/client/petstore/rust/hyper/petstore/docs/FakeApi.md index 7f8beb91115b..9dcab81e5dc9 100644 --- a/samples/client/petstore/rust/hyper/petstore/docs/FakeApi.md +++ b/samples/client/petstore/rust/hyper/petstore/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/hyper/petstore/src/apis/fake_api.rs b/samples/client/petstore/rust/hyper/petstore/src/apis/fake_api.rs index b1e78f2c5f5a..8e422ef9d4bc 100644 --- a/samples/client/petstore/rust/hyper/petstore/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/hyper/petstore/src/apis/fake_api.rs @@ -37,19 +37,20 @@ impl FakeApiClient } pub trait FakeApi: Send + Sync { - fn test_nullable_required_param(&self, user_name: &str, dummy_required_nullable_param: Option<&str>, uppercase: Option<&str>, content: Option<&str>) -> Pin> + Send>>; + fn test_nullable_required_param(&self, user_name: &str, dummy_required_nullable_param: Option<&str>, any_type: &str, uppercase: Option<&str>, content: Option<&str>) -> Pin> + Send>>; } implFakeApi for FakeApiClient where C: Clone + std::marker::Send + Sync { #[allow(unused_mut)] - fn test_nullable_required_param(&self, user_name: &str, dummy_required_nullable_param: Option<&str>, uppercase: Option<&str>, content: Option<&str>) -> Pin> + Send>> { + fn test_nullable_required_param(&self, user_name: &str, dummy_required_nullable_param: Option<&str>, any_type: &str, uppercase: Option<&str>, content: Option<&str>) -> Pin> + Send>> { let mut req = __internal_request::Request::new(hyper::Method::GET, "/fake/user/{user_name}".to_string()) ; if let Some(ref s) = content { let query_value = s.to_string(); req = req.with_query_param("content".to_string(), query_value); } + req = req.with_query_param("anyType".to_string(), any_type.to_string()); req = req.with_path_param("user_name".to_string(), user_name.to_string()); match dummy_required_nullable_param { Some(param_value) => { req = req.with_header_param("dummy_required_nullable_param".to_string(), param_value.to_string()); }, diff --git a/samples/client/petstore/rust/hyper/petstore/src/models/any_type_test.rs b/samples/client/petstore/rust/hyper/petstore/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/hyper/petstore/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/hyper/petstore/src/models/mod.rs b/samples/client/petstore/rust/hyper/petstore/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/hyper/petstore/src/models/mod.rs +++ b/samples/client/petstore/rust/hyper/petstore/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test; diff --git a/samples/client/petstore/rust/hyper/petstore/tests/thread_test.rs b/samples/client/petstore/rust/hyper/petstore/tests/thread_test.rs index 8329988a18bf..d0bc025ce50b 100644 --- a/samples/client/petstore/rust/hyper/petstore/tests/thread_test.rs +++ b/samples/client/petstore/rust/hyper/petstore/tests/thread_test.rs @@ -11,7 +11,7 @@ mod tests { let handle = thread::spawn(move || { let _ = client .fake_api() - .test_nullable_required_param("username", None, None, None); + .test_nullable_required_param("username", None, "any_type", None, None); }); handle.join().expect("Thread panicked!"); diff --git a/samples/client/petstore/rust/hyper0x/petstore/.openapi-generator/FILES b/samples/client/petstore/rust/hyper0x/petstore/.openapi-generator/FILES index 6d5eacd5c073..d935311d38c8 100644 --- a/samples/client/petstore/rust/hyper0x/petstore/.openapi-generator/FILES +++ b/samples/client/petstore/rust/hyper0x/petstore/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/hyper0x/petstore/README.md b/samples/client/petstore/rust/hyper0x/petstore/README.md index 0143eb0f8137..c41a4d7e0e90 100644 --- a/samples/client/petstore/rust/hyper0x/petstore/README.md +++ b/samples/client/petstore/rust/hyper0x/petstore/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/hyper0x/petstore/docs/AnyTypeTest.md b/samples/client/petstore/rust/hyper0x/petstore/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/hyper0x/petstore/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/hyper0x/petstore/docs/FakeApi.md b/samples/client/petstore/rust/hyper0x/petstore/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/hyper0x/petstore/docs/FakeApi.md +++ b/samples/client/petstore/rust/hyper0x/petstore/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/hyper0x/petstore/src/apis/fake_api.rs b/samples/client/petstore/rust/hyper0x/petstore/src/apis/fake_api.rs index 12a59925332f..099602bb22a7 100644 --- a/samples/client/petstore/rust/hyper0x/petstore/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/hyper0x/petstore/src/apis/fake_api.rs @@ -36,19 +36,20 @@ impl FakeApiClient } pub trait FakeApi { - fn test_nullable_required_param(&self, user_name: &str, dummy_required_nullable_param: Option<&str>, uppercase: Option<&str>, content: Option<&str>) -> Pin>>>; + fn test_nullable_required_param(&self, user_name: &str, dummy_required_nullable_param: Option<&str>, any_type: &str, uppercase: Option<&str>, content: Option<&str>) -> Pin>>>; } implFakeApi for FakeApiClient where C: Clone + std::marker::Send + Sync { #[allow(unused_mut)] - fn test_nullable_required_param(&self, user_name: &str, dummy_required_nullable_param: Option<&str>, uppercase: Option<&str>, content: Option<&str>) -> Pin>>> { + fn test_nullable_required_param(&self, user_name: &str, dummy_required_nullable_param: Option<&str>, any_type: &str, uppercase: Option<&str>, content: Option<&str>) -> Pin>>> { let mut req = __internal_request::Request::new(hyper::Method::GET, "/fake/user/{user_name}".to_string()) ; if let Some(ref s) = content { let query_value = s.to_string(); req = req.with_query_param("content".to_string(), query_value); } + req = req.with_query_param("anyType".to_string(), any_type.to_string()); req = req.with_path_param("user_name".to_string(), user_name.to_string()); match dummy_required_nullable_param { Some(param_value) => { req = req.with_header_param("dummy_required_nullable_param".to_string(), param_value.to_string()); }, diff --git a/samples/client/petstore/rust/hyper0x/petstore/src/models/any_type_test.rs b/samples/client/petstore/rust/hyper0x/petstore/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/hyper0x/petstore/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/hyper0x/petstore/src/models/mod.rs b/samples/client/petstore/rust/hyper0x/petstore/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/hyper0x/petstore/src/models/mod.rs +++ b/samples/client/petstore/rust/hyper0x/petstore/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test; diff --git a/samples/client/petstore/rust/reqwest-trait/petstore/.openapi-generator/FILES b/samples/client/petstore/rust/reqwest-trait/petstore/.openapi-generator/FILES index 6d5eacd5c073..d935311d38c8 100644 --- a/samples/client/petstore/rust/reqwest-trait/petstore/.openapi-generator/FILES +++ b/samples/client/petstore/rust/reqwest-trait/petstore/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/reqwest-trait/petstore/README.md b/samples/client/petstore/rust/reqwest-trait/petstore/README.md index d4fe770230cf..abfb091ca356 100644 --- a/samples/client/petstore/rust/reqwest-trait/petstore/README.md +++ b/samples/client/petstore/rust/reqwest-trait/petstore/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/reqwest-trait/petstore/docs/AnyTypeTest.md b/samples/client/petstore/rust/reqwest-trait/petstore/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/reqwest-trait/petstore/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/reqwest-trait/petstore/docs/FakeApi.md b/samples/client/petstore/rust/reqwest-trait/petstore/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/reqwest-trait/petstore/docs/FakeApi.md +++ b/samples/client/petstore/rust/reqwest-trait/petstore/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/reqwest-trait/petstore/src/apis/fake_api.rs b/samples/client/petstore/rust/reqwest-trait/petstore/src/apis/fake_api.rs index 6dd5512c1982..7368946bb46f 100644 --- a/samples/client/petstore/rust/reqwest-trait/petstore/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/reqwest-trait/petstore/src/apis/fake_api.rs @@ -23,7 +23,7 @@ use super::{Error, configuration}; pub trait FakeApi: Send + Sync { /// GET /fake/user/{user_name} - async fn test_nullable_required_param<'user_name, 'dummy_required_nullable_param, 'uppercase, 'content>(&self, user_name: &'user_name str, dummy_required_nullable_param: Option<&'dummy_required_nullable_param str>, uppercase: Option<&'uppercase str>, content: Option<&'content str>) -> Result<(), Error>; + async fn test_nullable_required_param<'user_name, 'dummy_required_nullable_param, 'any_type, 'uppercase, 'content>(&self, user_name: &'user_name str, dummy_required_nullable_param: Option<&'dummy_required_nullable_param str>, any_type: &'any_type str, uppercase: Option<&'uppercase str>, content: Option<&'content str>) -> Result<(), Error>; } pub struct FakeApiClient { @@ -41,7 +41,7 @@ impl FakeApiClient { #[async_trait] impl FakeApi for FakeApiClient { /// - async fn test_nullable_required_param<'user_name, 'dummy_required_nullable_param, 'uppercase, 'content>(&self, user_name: &'user_name str, dummy_required_nullable_param: Option<&'dummy_required_nullable_param str>, uppercase: Option<&'uppercase str>, content: Option<&'content str>) -> Result<(), Error> { + async fn test_nullable_required_param<'user_name, 'dummy_required_nullable_param, 'any_type, 'uppercase, 'content>(&self, user_name: &'user_name str, dummy_required_nullable_param: Option<&'dummy_required_nullable_param str>, any_type: &'any_type str, uppercase: Option<&'uppercase str>, content: Option<&'content str>) -> Result<(), Error> { let local_var_configuration = &self.configuration; let local_var_client = &local_var_configuration.client; @@ -52,6 +52,7 @@ impl FakeApi for FakeApiClient { if let Some(ref local_var_str) = content { local_var_req_builder = local_var_req_builder.query(&[("content", &local_var_str.to_string())]); } + local_var_req_builder = local_var_req_builder.query(&[("anyType", &any_type.to_string())]); if let Some(ref local_var_user_agent) = local_var_configuration.user_agent { local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone()); } diff --git a/samples/client/petstore/rust/reqwest-trait/petstore/src/models/any_type_test.rs b/samples/client/petstore/rust/reqwest-trait/petstore/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/reqwest-trait/petstore/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/reqwest-trait/petstore/src/models/mod.rs b/samples/client/petstore/rust/reqwest-trait/petstore/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/reqwest-trait/petstore/src/models/mod.rs +++ b/samples/client/petstore/rust/reqwest-trait/petstore/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test; diff --git a/samples/client/petstore/rust/reqwest/petstore-async-middleware/.openapi-generator/FILES b/samples/client/petstore/rust/reqwest/petstore-async-middleware/.openapi-generator/FILES index 6d5eacd5c073..d935311d38c8 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-middleware/.openapi-generator/FILES +++ b/samples/client/petstore/rust/reqwest/petstore-async-middleware/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/reqwest/petstore-async-middleware/README.md b/samples/client/petstore/rust/reqwest/petstore-async-middleware/README.md index 32d4fa4e5da7..f478f035b2b8 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-middleware/README.md +++ b/samples/client/petstore/rust/reqwest/petstore-async-middleware/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/reqwest/petstore-async-middleware/docs/AnyTypeTest.md b/samples/client/petstore/rust/reqwest/petstore-async-middleware/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-async-middleware/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/reqwest/petstore-async-middleware/docs/FakeApi.md b/samples/client/petstore/rust/reqwest/petstore-async-middleware/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-middleware/docs/FakeApi.md +++ b/samples/client/petstore/rust/reqwest/petstore-async-middleware/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/apis/fake_api.rs b/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/apis/fake_api.rs index dbc4858a0eed..be9503699260 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/apis/fake_api.rs @@ -21,6 +21,7 @@ pub struct TestNullableRequiredParamParams { pub user_name: String, /// To test nullable required parameters pub dummy_required_nullable_param: Option, + pub any_type: String, /// To test parameter names in upper case pub uppercase: Option, /// To test escaping of parameters in rust code works @@ -55,6 +56,7 @@ pub async fn test_nullable_required_param(configuration: &configuration::Configu if let Some(ref param_value) = params.content { req_builder = req_builder.query(&[("content", ¶m_value.to_string())]); } + req_builder = req_builder.query(&[("anyType", ¶ms.any_type.to_string())]); if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } diff --git a/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/models/any_type_test.rs b/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/models/mod.rs b/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/models/mod.rs +++ b/samples/client/petstore/rust/reqwest/petstore-async-middleware/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test; diff --git a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/.openapi-generator/FILES b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/.openapi-generator/FILES index 6d5eacd5c073..d935311d38c8 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/.openapi-generator/FILES +++ b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/README.md b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/README.md index 1517c8be4854..e38f79988b82 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/README.md +++ b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/docs/AnyTypeTest.md b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/docs/FakeApi.md b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/docs/FakeApi.md +++ b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/apis/fake_api.rs b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/apis/fake_api.rs index dbc4858a0eed..be9503699260 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/apis/fake_api.rs @@ -21,6 +21,7 @@ pub struct TestNullableRequiredParamParams { pub user_name: String, /// To test nullable required parameters pub dummy_required_nullable_param: Option, + pub any_type: String, /// To test parameter names in upper case pub uppercase: Option, /// To test escaping of parameters in rust code works @@ -55,6 +56,7 @@ pub async fn test_nullable_required_param(configuration: &configuration::Configu if let Some(ref param_value) = params.content { req_builder = req_builder.query(&[("content", ¶m_value.to_string())]); } + req_builder = req_builder.query(&[("anyType", ¶ms.any_type.to_string())]); if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } diff --git a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/models/any_type_test.rs b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/models/mod.rs b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/models/mod.rs +++ b/samples/client/petstore/rust/reqwest/petstore-async-tokensource/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test; diff --git a/samples/client/petstore/rust/reqwest/petstore-async/.openapi-generator/FILES b/samples/client/petstore/rust/reqwest/petstore-async/.openapi-generator/FILES index 6d5eacd5c073..d935311d38c8 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async/.openapi-generator/FILES +++ b/samples/client/petstore/rust/reqwest/petstore-async/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/reqwest/petstore-async/README.md b/samples/client/petstore/rust/reqwest/petstore-async/README.md index 8975bbb48926..72996d36543f 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async/README.md +++ b/samples/client/petstore/rust/reqwest/petstore-async/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/reqwest/petstore-async/docs/AnyTypeTest.md b/samples/client/petstore/rust/reqwest/petstore-async/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-async/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/reqwest/petstore-async/docs/FakeApi.md b/samples/client/petstore/rust/reqwest/petstore-async/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async/docs/FakeApi.md +++ b/samples/client/petstore/rust/reqwest/petstore-async/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/reqwest/petstore-async/src/apis/fake_api.rs b/samples/client/petstore/rust/reqwest/petstore-async/src/apis/fake_api.rs index dbc4858a0eed..be9503699260 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/reqwest/petstore-async/src/apis/fake_api.rs @@ -21,6 +21,7 @@ pub struct TestNullableRequiredParamParams { pub user_name: String, /// To test nullable required parameters pub dummy_required_nullable_param: Option, + pub any_type: String, /// To test parameter names in upper case pub uppercase: Option, /// To test escaping of parameters in rust code works @@ -55,6 +56,7 @@ pub async fn test_nullable_required_param(configuration: &configuration::Configu if let Some(ref param_value) = params.content { req_builder = req_builder.query(&[("content", ¶m_value.to_string())]); } + req_builder = req_builder.query(&[("anyType", ¶ms.any_type.to_string())]); if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } diff --git a/samples/client/petstore/rust/reqwest/petstore-async/src/models/any_type_test.rs b/samples/client/petstore/rust/reqwest/petstore-async/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-async/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/reqwest/petstore-async/src/models/mod.rs b/samples/client/petstore/rust/reqwest/petstore-async/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/reqwest/petstore-async/src/models/mod.rs +++ b/samples/client/petstore/rust/reqwest/petstore-async/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test; diff --git a/samples/client/petstore/rust/reqwest/petstore-avoid-box/.openapi-generator/FILES b/samples/client/petstore/rust/reqwest/petstore-avoid-box/.openapi-generator/FILES index 6d5eacd5c073..d935311d38c8 100644 --- a/samples/client/petstore/rust/reqwest/petstore-avoid-box/.openapi-generator/FILES +++ b/samples/client/petstore/rust/reqwest/petstore-avoid-box/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/reqwest/petstore-avoid-box/README.md b/samples/client/petstore/rust/reqwest/petstore-avoid-box/README.md index 03f217550a46..3dd5fd8df914 100644 --- a/samples/client/petstore/rust/reqwest/petstore-avoid-box/README.md +++ b/samples/client/petstore/rust/reqwest/petstore-avoid-box/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/reqwest/petstore-avoid-box/docs/AnyTypeTest.md b/samples/client/petstore/rust/reqwest/petstore-avoid-box/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-avoid-box/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/reqwest/petstore-avoid-box/docs/FakeApi.md b/samples/client/petstore/rust/reqwest/petstore-avoid-box/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/reqwest/petstore-avoid-box/docs/FakeApi.md +++ b/samples/client/petstore/rust/reqwest/petstore-avoid-box/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/apis/fake_api.rs b/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/apis/fake_api.rs index dbc4858a0eed..be9503699260 100644 --- a/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/apis/fake_api.rs @@ -21,6 +21,7 @@ pub struct TestNullableRequiredParamParams { pub user_name: String, /// To test nullable required parameters pub dummy_required_nullable_param: Option, + pub any_type: String, /// To test parameter names in upper case pub uppercase: Option, /// To test escaping of parameters in rust code works @@ -55,6 +56,7 @@ pub async fn test_nullable_required_param(configuration: &configuration::Configu if let Some(ref param_value) = params.content { req_builder = req_builder.query(&[("content", ¶m_value.to_string())]); } + req_builder = req_builder.query(&[("anyType", ¶ms.any_type.to_string())]); if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } diff --git a/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/models/any_type_test.rs b/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/models/mod.rs b/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/models/mod.rs +++ b/samples/client/petstore/rust/reqwest/petstore-avoid-box/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test; diff --git a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/.openapi-generator/FILES b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/.openapi-generator/FILES index 6d5eacd5c073..d935311d38c8 100644 --- a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/.openapi-generator/FILES +++ b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/README.md b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/README.md index 494104867fad..5ed03ffe8db8 100644 --- a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/README.md +++ b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/docs/AnyTypeTest.md b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/docs/FakeApi.md b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/docs/FakeApi.md +++ b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/apis/fake_api.rs b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/apis/fake_api.rs index f607b9b069d4..84059e46e596 100644 --- a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/apis/fake_api.rs @@ -26,10 +26,11 @@ pub enum TestNullableRequiredParamError { /// -pub fn test_nullable_required_param(configuration: &configuration::Configuration, user_name: &str, dummy_required_nullable_param: Option<&str>, uppercase: Option<&str>, content: Option<&str>) -> Result<(), Error> { +pub fn test_nullable_required_param(configuration: &configuration::Configuration, user_name: &str, dummy_required_nullable_param: Option<&str>, any_type: &str, uppercase: Option<&str>, content: Option<&str>) -> Result<(), Error> { // add a prefix to parameters to efficiently prevent name collisions let p_user_name = user_name; let p_dummy_required_nullable_param = dummy_required_nullable_param; + let p_any_type = any_type; let p_uppercase = uppercase; let p_content = content; @@ -39,6 +40,7 @@ pub fn test_nullable_required_param(configuration: &configuration::Configuration if let Some(ref param_value) = p_content { req_builder = req_builder.query(&[("content", ¶m_value.to_string())]); } + req_builder = req_builder.query(&[("anyType", &p_any_type.to_string())]); if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } diff --git a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/models/any_type_test.rs b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/models/mod.rs b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/models/mod.rs +++ b/samples/client/petstore/rust/reqwest/petstore-awsv4signature/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test; diff --git a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/.openapi-generator/FILES b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/.openapi-generator/FILES index 13e753f39020..1c83a6638ad2 100644 --- a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/.openapi-generator/FILES +++ b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/.openapi-generator/FILES @@ -4,6 +4,7 @@ Cargo.toml README.md docs/FakeApi.md docs/FooActionContainer.md +docs/FooAnyTypeTest.md docs/FooApiResponse.md docs/FooArrayItemRefTest.md docs/FooBaz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/foo_action_container.rs +src/models/foo_any_type_test.rs src/models/foo_api_response.rs src/models/foo_array_item_ref_test.rs src/models/foo_baz.rs diff --git a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/README.md b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/README.md index a1383c0003e7..1303b7a8174e 100644 --- a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/README.md +++ b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [FooActionContainer](docs/FooActionContainer.md) + - [FooAnyTypeTest](docs/FooAnyTypeTest.md) - [FooApiResponse](docs/FooApiResponse.md) - [FooArrayItemRefTest](docs/FooArrayItemRefTest.md) - [FooBaz](docs/FooBaz.md) diff --git a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/docs/FakeApi.md b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/docs/FakeApi.md +++ b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/docs/FooAnyTypeTest.md b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/docs/FooAnyTypeTest.md new file mode 100644 index 000000000000..ca27b3a52bc1 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/docs/FooAnyTypeTest.md @@ -0,0 +1,11 @@ +# FooAnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/apis/fake_api.rs b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/apis/fake_api.rs index f607b9b069d4..84059e46e596 100644 --- a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/apis/fake_api.rs @@ -26,10 +26,11 @@ pub enum TestNullableRequiredParamError { /// -pub fn test_nullable_required_param(configuration: &configuration::Configuration, user_name: &str, dummy_required_nullable_param: Option<&str>, uppercase: Option<&str>, content: Option<&str>) -> Result<(), Error> { +pub fn test_nullable_required_param(configuration: &configuration::Configuration, user_name: &str, dummy_required_nullable_param: Option<&str>, any_type: &str, uppercase: Option<&str>, content: Option<&str>) -> Result<(), Error> { // add a prefix to parameters to efficiently prevent name collisions let p_user_name = user_name; let p_dummy_required_nullable_param = dummy_required_nullable_param; + let p_any_type = any_type; let p_uppercase = uppercase; let p_content = content; @@ -39,6 +40,7 @@ pub fn test_nullable_required_param(configuration: &configuration::Configuration if let Some(ref param_value) = p_content { req_builder = req_builder.query(&[("content", ¶m_value.to_string())]); } + req_builder = req_builder.query(&[("anyType", &p_any_type.to_string())]); if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } diff --git a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/models/foo_any_type_test.rs b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/models/foo_any_type_test.rs new file mode 100644 index 000000000000..6f0cbd7a74ac --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/models/foo_any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct FooAnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl FooAnyTypeTest { + pub fn new(foo: Option) -> FooAnyTypeTest { + FooAnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/models/mod.rs b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/models/mod.rs index 11d4654e7908..256941bfbc1e 100644 --- a/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/models/mod.rs +++ b/samples/client/petstore/rust/reqwest/petstore-model-name-prefix/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod foo_action_container; pub use self::foo_action_container::FooActionContainer; +pub mod foo_any_type_test; +pub use self::foo_any_type_test::FooAnyTypeTest; pub mod foo_api_response; pub use self::foo_api_response::FooApiResponse; pub mod foo_array_item_ref_test; diff --git a/samples/client/petstore/rust/reqwest/petstore/.openapi-generator/FILES b/samples/client/petstore/rust/reqwest/petstore/.openapi-generator/FILES index 6d5eacd5c073..d935311d38c8 100644 --- a/samples/client/petstore/rust/reqwest/petstore/.openapi-generator/FILES +++ b/samples/client/petstore/rust/reqwest/petstore/.openapi-generator/FILES @@ -3,6 +3,7 @@ Cargo.toml README.md docs/ActionContainer.md +docs/AnyTypeTest.md docs/ApiResponse.md docs/ArrayItemRefTest.md docs/Baz.md @@ -35,6 +36,7 @@ src/apis/testing_api.rs src/apis/user_api.rs src/lib.rs src/models/action_container.rs +src/models/any_type_test.rs src/models/api_response.rs src/models/array_item_ref_test.rs src/models/baz.rs diff --git a/samples/client/petstore/rust/reqwest/petstore/README.md b/samples/client/petstore/rust/reqwest/petstore/README.md index d4fe770230cf..abfb091ca356 100644 --- a/samples/client/petstore/rust/reqwest/petstore/README.md +++ b/samples/client/petstore/rust/reqwest/petstore/README.md @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description ## Documentation For Models - [ActionContainer](docs/ActionContainer.md) + - [AnyTypeTest](docs/AnyTypeTest.md) - [ApiResponse](docs/ApiResponse.md) - [ArrayItemRefTest](docs/ArrayItemRefTest.md) - [Baz](docs/Baz.md) diff --git a/samples/client/petstore/rust/reqwest/petstore/docs/AnyTypeTest.md b/samples/client/petstore/rust/reqwest/petstore/docs/AnyTypeTest.md new file mode 100644 index 000000000000..cfcbd80fed0e --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/docs/AnyTypeTest.md @@ -0,0 +1,11 @@ +# AnyTypeTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**foo** | Option<[**serde_json::Value**](.md)> | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/rust/reqwest/petstore/docs/FakeApi.md b/samples/client/petstore/rust/reqwest/petstore/docs/FakeApi.md index c41f7d7b0e2f..ac1e9f40c105 100644 --- a/samples/client/petstore/rust/reqwest/petstore/docs/FakeApi.md +++ b/samples/client/petstore/rust/reqwest/petstore/docs/FakeApi.md @@ -10,7 +10,7 @@ Method | HTTP request | Description ## test_nullable_required_param -> test_nullable_required_param(user_name, dummy_required_nullable_param, uppercase, content) +> test_nullable_required_param(user_name, dummy_required_nullable_param, any_type, uppercase, content) To test nullable required parameters @@ -22,6 +22,7 @@ Name | Type | Description | Required | Notes ------------- | ------------- | ------------- | ------------- | ------------- **user_name** | **String** | The name that needs to be fetched. Use user1 for testing. | [required] | **dummy_required_nullable_param** | Option<**String**> | To test nullable required parameters | [required] | +**any_type** | **String** | | [required] | **uppercase** | Option<**String**> | To test parameter names in upper case | | **content** | Option<**String**> | To test escaping of parameters in rust code works | | diff --git a/samples/client/petstore/rust/reqwest/petstore/src/apis/fake_api.rs b/samples/client/petstore/rust/reqwest/petstore/src/apis/fake_api.rs index f607b9b069d4..84059e46e596 100644 --- a/samples/client/petstore/rust/reqwest/petstore/src/apis/fake_api.rs +++ b/samples/client/petstore/rust/reqwest/petstore/src/apis/fake_api.rs @@ -26,10 +26,11 @@ pub enum TestNullableRequiredParamError { /// -pub fn test_nullable_required_param(configuration: &configuration::Configuration, user_name: &str, dummy_required_nullable_param: Option<&str>, uppercase: Option<&str>, content: Option<&str>) -> Result<(), Error> { +pub fn test_nullable_required_param(configuration: &configuration::Configuration, user_name: &str, dummy_required_nullable_param: Option<&str>, any_type: &str, uppercase: Option<&str>, content: Option<&str>) -> Result<(), Error> { // add a prefix to parameters to efficiently prevent name collisions let p_user_name = user_name; let p_dummy_required_nullable_param = dummy_required_nullable_param; + let p_any_type = any_type; let p_uppercase = uppercase; let p_content = content; @@ -39,6 +40,7 @@ pub fn test_nullable_required_param(configuration: &configuration::Configuration if let Some(ref param_value) = p_content { req_builder = req_builder.query(&[("content", ¶m_value.to_string())]); } + req_builder = req_builder.query(&[("anyType", &p_any_type.to_string())]); if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } diff --git a/samples/client/petstore/rust/reqwest/petstore/src/models/any_type_test.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/any_type_test.rs new file mode 100644 index 000000000000..8a873991fd42 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/src/models/any_type_test.rs @@ -0,0 +1,27 @@ +/* + * OpenAPI Petstore + * + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use crate::models; +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AnyTypeTest { + #[serde(rename = "foo", deserialize_with = "Option::deserialize")] + pub foo: Option, +} + +impl AnyTypeTest { + pub fn new(foo: Option) -> AnyTypeTest { + AnyTypeTest { + foo, + } + } +} + diff --git a/samples/client/petstore/rust/reqwest/petstore/src/models/mod.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/mod.rs index b7e684d8071d..da642be6a19c 100644 --- a/samples/client/petstore/rust/reqwest/petstore/src/models/mod.rs +++ b/samples/client/petstore/rust/reqwest/petstore/src/models/mod.rs @@ -1,5 +1,7 @@ pub mod action_container; pub use self::action_container::ActionContainer; +pub mod any_type_test; +pub use self::any_type_test::AnyTypeTest; pub mod api_response; pub use self::api_response::ApiResponse; pub mod array_item_ref_test;