pub enum Classification {
FromHeaders(ClassifiedCall),
FromBody,
}Expand description
The outcome of looking at the request headers alone.
Variants§
FromHeaders(ClassifiedCall)
The revision mandates header/body validation, so the headers priced the call and the body is never parsed.
FromBody
A legacy revision. The call is priced from the body once it has been read.
Implementations§
Source§impl Classification
impl Classification
Sourcepub const fn is_from_body(&self) -> bool
pub const fn is_from_body(&self) -> bool
Whether the call was priced from the body rather than from trusted headers.
Sourcepub fn resolve(
self,
http_method: &Method,
body: &[u8],
) -> Result<Option<ClassifiedCall>, String>
pub fn resolve( self, http_method: &Method, body: &[u8], ) -> Result<Option<ClassifiedCall>, String>
Finish classification, reading the body only when the headers could not be
trusted. Called after the credential gate.
Transport operations and valid client responses return None.
§Errors
Returns an error when the legacy body cannot be classified safely.
Trait Implementations§
Source§impl Clone for Classification
impl Clone for Classification
Source§fn clone(&self) -> Classification
fn clone(&self) -> Classification
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for Classification
impl RefUnwindSafe for Classification
impl Send for Classification
impl Sync for Classification
impl Unpin for Classification
impl UnsafeUnpin for Classification
impl UnwindSafe for Classification
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more