pub struct OpenApiSpec {
pub openapi: String,
pub info: ApiInfo,
pub json_schema_dialect: Option<String>,
pub servers: Vec<Server>,
pub paths: BTreeMap<String, PathItem>,
pub webhooks: BTreeMap<String, PathItem>,
pub components: Option<Components>,
pub security: Vec<BTreeMap<String, Vec<String>>>,
pub tags: Vec<Tag>,
pub external_docs: Option<ExternalDocs>,
}Expand description
OpenAPI 3.1.0 specification
Fields§
§openapi: StringOpenAPI version (always “3.1.0”)
info: ApiInfoAPI information
json_schema_dialect: Option<String>JSON Schema dialect (optional, defaults to JSON Schema 2020-12)
servers: Vec<Server>Server list
paths: BTreeMap<String, PathItem>API paths
webhooks: BTreeMap<String, PathItem>Webhooks
components: Option<Components>Components
security: Vec<BTreeMap<String, Vec<String>>>Security requirements
Tags
external_docs: Option<ExternalDocs>External documentation
Implementations§
Source§impl OpenApiSpec
impl OpenApiSpec
pub fn new(title: impl Into<String>, version: impl Into<String>) -> Self
pub fn description(self, desc: impl Into<String>) -> Self
pub fn summary(self, summary: impl Into<String>) -> Self
pub fn path(self, path: &str, method: &str, operation: Operation) -> Self
Sourcepub fn register<T: RustApiSchema>(self) -> Self
pub fn register<T: RustApiSchema>(self) -> Self
Register a type that implements RustApiSchema
Sourcepub fn register_in_place<T: RustApiSchema>(&mut self)
pub fn register_in_place<T: RustApiSchema>(&mut self)
Register a type into this spec in-place.
pub fn server(self, server: Server) -> Self
pub fn security_scheme( self, name: impl Into<String>, scheme: SecurityScheme, ) -> Self
pub fn to_json(&self) -> Value
Trait Implementations§
Source§impl Clone for OpenApiSpec
impl Clone for OpenApiSpec
Source§fn clone(&self) -> OpenApiSpec
fn clone(&self) -> OpenApiSpec
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OpenApiSpec
impl Debug for OpenApiSpec
Source§impl<'de> Deserialize<'de> for OpenApiSpec
impl<'de> Deserialize<'de> for OpenApiSpec
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for OpenApiSpec
impl RefUnwindSafe for OpenApiSpec
impl Send for OpenApiSpec
impl Sync for OpenApiSpec
impl Unpin for OpenApiSpec
impl UnwindSafe for OpenApiSpec
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more