Struct salvo_oapi::operation::Operation

source ·
#[non_exhaustive]
pub struct Operation {
Show 13 fields pub tags: Vec<String>, pub summary: Option<String>, pub description: Option<String>, pub operation_id: Option<String>, pub external_docs: Option<ExternalDocs>, pub parameters: Parameters, pub request_body: Option<RequestBody>, pub responses: Responses, pub callbacks: Option<String>, pub deprecated: Option<Deprecated>, pub securities: Vec<SecurityRequirement>, pub servers: Servers, pub extensions: Option<HashMap<String, Value>>,
}
Expand description

Implements OpenAPI Operation Object object.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§tags: Vec<String>

List of tags used for grouping operations.

When used with derive #[salvo_oapi::endpoint(...)] attribute macro the default value used will be resolved from handler path provided in #[openapi(paths(...))] with #[derive(OpenApi)] macro. If path resolves to None value crate will be used by default.

§summary: Option<String>

Short summary what Operation does.

When used with derive #[salvo_oapi::endpoint(...)] attribute macro the value is taken from first line of doc comment.

§description: Option<String>

Long explanation of Operation behaviour. Markdown syntax is supported.

When used with derive #[salvo_oapi::endpoint(...)] attribute macro the doc comment is used as value for description.

§operation_id: Option<String>

Unique identifier for the API Operation. Most typically this is mapped to handler function name.

When used with derive #[salvo_oapi::endpoint(...)] attribute macro the handler function name will be used by default.

§external_docs: Option<ExternalDocs>

Additional external documentation for this operation.

§parameters: Parameters

List of applicable parameters for this Operation.

§request_body: Option<RequestBody>

Optional request body for this Operation.

§responses: Responses

List of possible responses returned by the Operation.

§callbacks: Option<String>

Callback information.

§deprecated: Option<Deprecated>

Define whether the operation is deprecated or not and thus should be avoided consuming.

§securities: Vec<SecurityRequirement>

Declaration which security mechanisms can be used for for the operation. Only one SecurityRequirement must be met.

Security for the Operation can be set to optional by adding empty security with SecurityRequirement::default.

§servers: Servers

Alternative Servers for this Operation.

§extensions: Option<HashMap<String, Value>>

Optional extensions “x-something”

Implementations§

source§

impl Operation

source

pub fn new() -> Self

Construct a new API Operation.

source

pub fn tags<I, T>(self, tags: I) -> Self
where I: IntoIterator<Item = T>, T: Into<String>,

Add or change tags of the Operation.

source

pub fn add_tag<S: Into<String>>(self, tag: S) -> Self

Append tag to Operation tags and returns Self.

source

pub fn summary<S: Into<String>>(self, summary: S) -> Self

Add or change short summary of the Operation.

source

pub fn description<S: Into<String>>(self, description: S) -> Self

Add or change description of the Operation.

source

pub fn operation_id<S: Into<String>>(self, operation_id: S) -> Self

Add or change operation id of the Operation.

source

pub fn parameters<I: IntoIterator<Item = P>, P: Into<Parameter>>( self, parameters: I, ) -> Self

Add or change parameters of the Operation.

source

pub fn add_parameter<P: Into<Parameter>>(self, parameter: P) -> Self

Append parameter to Operation parameters and returns Self.

source

pub fn request_body(self, request_body: RequestBody) -> Self

Add or change request body of the Operation.

source

pub fn responses<R: Into<Responses>>(self, responses: R) -> Self

Add or change responses of the Operation.

source

pub fn add_response<S: Into<String>, R: Into<RefOr<Response>>>( self, code: S, response: R, ) -> Self

Append status code and a Response to the Operation responses map and returns Self.

  • code must be valid HTTP status code.
  • response is instances of Response.
source

pub fn deprecated<D: Into<Deprecated>>(self, deprecated: D) -> Self

Add or change deprecated status of the Operation.

source

pub fn securities<I: IntoIterator<Item = SecurityRequirement>>( self, securities: I, ) -> Self

Add or change list of SecurityRequirements that are available for Operation.

source

pub fn add_security(self, security: SecurityRequirement) -> Self

Append SecurityRequirement to Operation security requirements and returns Self.

source

pub fn servers<I: IntoIterator<Item = Server>>(self, servers: I) -> Self

Add or change list of Servers of the Operation.

source

pub fn add_server(self, server: Server) -> Self

Append a new Server to the Operation servers and returns Self.

source

pub fn then<F>(self, func: F) -> Self
where F: FnOnce(Self) -> Self,

For easy chaining of operations.

Trait Implementations§

source§

impl Clone for Operation

source§

fn clone(&self) -> Operation

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Operation

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Operation

source§

fn default() -> Operation

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for Operation

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl PartialEq for Operation

source§

fn eq(&self, other: &Operation) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for Operation

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl StructuralPartialEq for Operation

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

source§

impl<T> ErasedDestructor for T
where T: 'static,

source§

impl<T> MaybeSendSync for T