Struct rweb::openapi::Spec [−][src]
pub struct Spec {
pub openapi: Cow<'static, str>,
pub info: Info,
pub servers: Vec<Server, Global>,
pub paths: IndexMap<Cow<'static, str>, PathItem, RandomState>,
pub components: Option<Components>,
pub security: Vec<IndexMap<Cow<'static, str>, Vec<Cow<'static, str>, Global>, RandomState>, Global>,
pub tags: Vec<Tag, Global>,
pub external_docs: Option<ExternalDoc>,
}
Expand description
top level document
Fields
openapi: Cow<'static, str>
This string MUST be the semantic version number
of the
OpenAPI Specification version
that the OpenAPI document uses. The openapi
field SHOULD be used by tooling
specifications and clients to interpret the OpenAPI document. This is not related to
the API
info.version
string.
info: Info
Provides metadata about the API. The metadata MAY be used by tooling as required.
servers: Vec<Server, Global>
An array of Server Objects, which provide connectivity information to a target server.
If the servers
property is not provided, or is an empty array, the default value would
be a
Server Object
with a
url
value of /
.
paths: IndexMap<Cow<'static, str>, PathItem, RandomState>
Holds the relative paths to the individual endpoints and their operations. The path is
appended to the URL from the
Server Object
in order to construct the full URL. The Paths MAY be empty, due to
ACL constraints.
components: Option<Components>
An element to hold various schemas for the specification.
security: Vec<IndexMap<Cow<'static, str>, Vec<Cow<'static, str>, Global>, RandomState>, Global>
A declaration of which security mechanisms can be used across the API. The list of values includes alternative security requirement objects that can be used. Only one of the security requirement objects need to be satisfied to authorize a request. Individual operations can override this definition.
A list of tags used by the specification with additional metadata. The order of the tags can be used to reflect on their order by the parsing tools. Not all tags that are used by the Operation Object must be declared. The tags that are not declared MAY be organized randomly or based on the tools’ logic. Each tag name in the list MUST be unique.
external_docs: Option<ExternalDoc>
Additional external documentation.
Trait Implementations
pub fn deserialize<__D>(
__deserializer: __D
) -> Result<Spec, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
pub fn deserialize<__D>(
__deserializer: __D
) -> Result<Spec, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
pub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
pub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations
impl RefUnwindSafe for Spec
impl UnwindSafe for Spec
Blanket Implementations
Mutably borrows from an owned value. Read more
fn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
pub fn vzip(self) -> V
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
fn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
fn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more