#[non_exhaustive]pub struct Server {
pub url: String,
pub description: Option<String>,
pub variables: ServerVariables,
}
Expand description
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.url: String
Target url of the Server
. It can be valid http url or relative path.
Url also supports variable substitution with {variable}
syntax. The substitutions
then can be configured with Server::variables
map.
description: Option<String>
Optional description describing the target server url. Description supports markdown syntax.
variables: ServerVariables
Optional map of variable name and its substitution value used in Server::url
.
Implementations§
Source§impl Server
impl Server
Sourcepub fn new<S: Into<String>>(url: S) -> Self
pub fn new<S: Into<String>>(url: S) -> Self
Construct a new Server
with given url. Url can be valid http url or context path of the url.
If url is valid http url then all path operation request’s will be forwarded to the selected Server
.
If url is path of url e.g. /api/v1
then the url will be appended to the servers address and the
operations will be forwarded to location server address + url
.
§Examples
Create new server with url path.
Server::new("/api/v1");
Create new server with alternative server.
Server::new("https://alternative.pet-api.test/api/v1");
Sourcepub fn description<S: Into<String>>(self, description: S) -> Self
pub fn description<S: Into<String>>(self, description: S) -> Self
Add or change description of the Server
.
Sourcepub fn add_variable<N: Into<String>, V: Into<ServerVariable>>(
self,
name: N,
variable: V,
) -> Self
pub fn add_variable<N: Into<String>, V: Into<ServerVariable>>( self, name: N, variable: V, ) -> Self
Add parameter to Server
which is used to substitute values in Server::url
and returns Self
.
name
Defines name of the parameter which is being substituted within the url. If url has{username}
substitution then the name should beusername
.parameter
UseServerVariable
to define how the parameter is being substituted within the url.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Server
impl<'de> Deserialize<'de> for Server
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>,
Source§impl Ord for Server
impl Ord for Server
Source§impl PartialOrd for Server
impl PartialOrd for Server
impl Eq for Server
impl StructuralPartialEq for Server
Auto Trait Implementations§
impl Freeze for Server
impl RefUnwindSafe for Server
impl Send for Server
impl Sync for Server
impl Unpin for Server
impl UnwindSafe for Server
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.