Struct ruma_common::api::Metadata
source · [−]pub struct Metadata {
pub description: &'static str,
pub method: Method,
pub name: &'static str,
pub unstable_path: Option<&'static str>,
pub r0_path: Option<&'static str>,
pub stable_path: Option<&'static str>,
pub rate_limited: bool,
pub authentication: AuthScheme,
pub added: Option<MatrixVersion>,
pub deprecated: Option<MatrixVersion>,
pub removed: Option<MatrixVersion>,
}
Expand description
Metadata about an API endpoint.
Fields
description: &'static str
A human-readable description of the endpoint.
method: Method
The HTTP method used by this endpoint.
name: &'static str
A unique identifier for this endpoint.
unstable_path: Option<&'static str>
The unstable path of this endpoint’s URL, often None
, used for developmental
purposes.
r0_path: Option<&'static str>
The pre-v1.1 version of this endpoint’s URL, None
for post-v1.1 endpoints,
supplemental to stable_path
.
stable_path: Option<&'static str>
The path of this endpoint’s URL, with variable names where path parameters should be filled in during a request.
rate_limited: bool
Whether or not this endpoint is rate limited by the server.
authentication: AuthScheme
What authentication scheme the server uses for this endpoint.
added: Option<MatrixVersion>
The matrix version that this endpoint was added in.
Is None when this endpoint is unstable/unreleased.
deprecated: Option<MatrixVersion>
The matrix version that deprecated this endpoint.
Deprecation often precedes one matrix version before removal.
This will make try_into_http_request
emit a warning, see the corresponding documentation for more information.
removed: Option<MatrixVersion>
The matrix version that removed this endpoint.
This will make try_into_http_request
emit an error, see the corresponding documentation for more information.
Implementations
sourceimpl Metadata
impl Metadata
sourcepub fn versioning_decision_for(
&self,
versions: &[MatrixVersion]
) -> VersioningDecision
pub fn versioning_decision_for(
&self,
versions: &[MatrixVersion]
) -> VersioningDecision
Will decide how a particular set of matrix versions sees an endpoint.
It will pick Stable
over R0
and Unstable
. It’ll return Deprecated
or Removed
only
if all versions denote it.
In other words, if in any version it tells it supports the endpoint in a stable fashion,
this will return Stable
, even if some versions in this set will denote deprecation or
removal.
If resulting VersioningDecision
is Stable
, it will also detail if any version denoted
deprecation or removal.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Metadata
impl Send for Metadata
impl Sync for Metadata
impl Unpin for Metadata
impl UnwindSafe for Metadata
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
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
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more