Documentation for the rust-axum Generator
METADATA
Property | Value | Notes |
---|---|---|
generator name | rust-axum | pass this to the generate command after -g |
generator stability | BETA | |
generator type | SERVER | |
generator language | Rust | |
generator default templating engine | mustache | |
helpTxt | Generates a Rust server library which bases on Axum. |
CONFIG OPTIONS
These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to configuration docs for more details.
Option | Description | Values | Default |
---|---|---|---|
allowBlockingResponseSerialize | By default, json/form-urlencoded response serialization, which might perform a lot of compute in a future without yielding, is executed on a blocking thread via tokio::task::spawn_blocking. Set this option to true will override this behaviour and allow blocking call to happen. It helps to improve the performance when response serialization (e.g. returns tiny data) is low cost. | false | |
allowBlockingValidator | By default, validation process, which might perform a lot of compute in a future without yielding, is executed on a blocking thread via tokio::task::spawn_blocking. Set this option to true will override this behaviour and allow blocking call to happen. It helps to improve the performance when validating request-data (header, path, query, body) is low cost. | false | |
disableValidator | Disable validating request-data (header, path, query, body) against OpenAPI Schema Specification. | false | |
packageName | Rust crate name (convention: snake_case). | openapi | |
packageVersion | Rust crate version. | null |
IMPORT MAPPING
Type/Alias | Imports |
---|
INSTANTIATION TYPES
Type/Alias | Instantiated By |
---|---|
array | Vec |
map | std::collections::HashMap |
LANGUAGE PRIMITIVES
- String
- bool
- char
- f32
- f64
- i16
- i32
- i64
- i8
- isize
- str
- u16
- u32
- u64
- u8
- usize
RESERVED WORDS
- Self
- abstract
- as
- async
- await
- become
- box
- break
- const
- continue
- crate
- do
- dyn
- else
- enum
- extern
- false
- final
- fn
- for
- if
- impl
- in
- let
- loop
- macro
- match
- mod
- move
- mut
- override
- priv
- pub
- ref
- return
- self
- static
- struct
- super
- trait
- true
- try
- type
- typeof
- unsafe
- unsized
- use
- virtual
- where
- while
- yield
FEATURE SET
Client Modification Feature
Name | Supported | Defined By |
---|---|---|
BasePath | ✗ | ToolingExtension |
Authorizations | ✗ | ToolingExtension |
UserAgent | ✗ | ToolingExtension |
MockServer | ✗ | ToolingExtension |
Data Type Feature
Name | Supported | Defined By |
---|---|---|
Custom | ✗ | OAS2,OAS3 |
Int32 | ✓ | OAS2,OAS3 |
Int64 | ✓ | OAS2,OAS3 |
Float | ✓ | OAS2,OAS3 |
Double | ✓ | OAS2,OAS3 |
Decimal | ✓ | ToolingExtension |
String | ✓ | OAS2,OAS3 |
Byte | ✓ | OAS2,OAS3 |
Binary | ✓ | OAS2,OAS3 |
Boolean | ✓ | OAS2,OAS3 |
Date | ✓ | OAS2,OAS3 |
DateTime | ✓ | OAS2,OAS3 |
Password | ✓ | OAS2,OAS3 |
File | ✓ | OAS2 |
Uuid | ✗ | |
Array | ✓ | OAS2,OAS3 |
Null | ✗ | OAS3 |
AnyType | ✗ | OAS2,OAS3 |
Object | ✓ | OAS2,OAS3 |
Maps | ✓ | ToolingExtension |
CollectionFormat | ✓ | OAS2 |
CollectionFormatMulti | ✓ | OAS2 |
Enum | ✓ | OAS2,OAS3 |
ArrayOfEnum | ✓ | ToolingExtension |
ArrayOfModel | ✓ | ToolingExtension |
ArrayOfCollectionOfPrimitives | ✓ | ToolingExtension |
ArrayOfCollectionOfModel | ✓ | ToolingExtension |
ArrayOfCollectionOfEnum | ✓ | ToolingExtension |
MapOfEnum | ✓ | ToolingExtension |
MapOfModel | ✓ | ToolingExtension |
MapOfCollectionOfPrimitives | ✓ | ToolingExtension |
MapOfCollectionOfModel | ✓ | ToolingExtension |
MapOfCollectionOfEnum | ✓ | ToolingExtension |
Documentation Feature
Name | Supported | Defined By |
---|---|---|
Readme | ✗ | ToolingExtension |
Model | ✓ | ToolingExtension |
Api | ✓ | ToolingExtension |
Global Feature
Name | Supported | Defined By |
---|---|---|
Host | ✓ | OAS2,OAS3 |
BasePath | ✓ | OAS2,OAS3 |
Info | ✗ | OAS2,OAS3 |
Schemes | ✗ | OAS2,OAS3 |
PartialSchemes | ✓ | OAS2,OAS3 |
Consumes | ✓ | OAS2 |
Produces | ✓ | OAS2 |
ExternalDocumentation | ✗ | OAS2,OAS3 |
Examples | ✗ | OAS2,OAS3 |
XMLStructureDefinitions | ✗ | OAS2,OAS3 |
MultiServer | ✗ | OAS3 |
ParameterizedServer | ✗ | OAS3 |
ParameterStyling | ✗ | OAS3 |
Callbacks | ✗ | OAS3 |
LinkObjects | ✗ | OAS3 |
Parameter Feature
Name | Supported | Defined By |
---|---|---|
Path | ✓ | OAS2,OAS3 |
Query | ✓ | OAS2,OAS3 |
Header | ✓ | OAS2,OAS3 |
Body | ✓ | OAS2 |
FormUnencoded | ✓ | OAS2 |
FormMultipart | ✓ | OAS2 |
Cookie | ✓ | OAS3 |
Schema Support Feature
Name | Supported | Defined By |
---|---|---|
Simple | ✓ | OAS2,OAS3 |
Composite | ✓ | OAS2,OAS3 |
Polymorphism | ✗ | OAS2,OAS3 |
Union | ✗ | OAS3 |
allOf | ✗ | OAS2,OAS3 |
anyOf | ✗ | OAS3 |
oneOf | ✗ | OAS3 |
not | ✗ | OAS3 |
Security Feature
Name | Supported | Defined By |
---|---|---|
BasicAuth | ✗ | OAS2,OAS3 |
ApiKey | ✓ | OAS2,OAS3 |
OpenIDConnect | ✗ | OAS3 |
BearerToken | ✗ | OAS3 |
OAuth2_Implicit | ✗ | OAS2,OAS3 |
OAuth2_Password | ✗ | OAS2,OAS3 |
OAuth2_ClientCredentials | ✗ | OAS2,OAS3 |
OAuth2_AuthorizationCode | ✗ | OAS2,OAS3 |
SignatureAuth | ✗ | OAS3 |
AWSV4Signature | ✗ | ToolingExtension |
Wire Format Feature
Name | Supported | Defined By |
---|---|---|
JSON | ✓ | OAS2,OAS3 |
XML | ✗ | OAS2,OAS3 |
PROTOBUF | ✗ | ToolingExtension |
Custom | ✓ | OAS2,OAS3 |