pub struct FilterRequestRef<'a> {
pub request_id: &'a str,
pub thread_id: Option<QueryRef<'a>>,
pub method: &'a str,
pub path: &'a str,
pub query: Option<QueryRef<'a>>,
pub headers: &'a [HeaderRef<'a>],
pub body: &'a [u8],
pub principal: PrincipalRef<'a>,
pub candidates: &'a [UpstreamCandidateRef<'a>],
}Expand description
Borrowed mirror of FilterRequest used by the host encode path.
Serialising this emits the same archived byte layout as
FilterRequest so the guest reads it via
rkyv::access::<ArchivedFilterRequest, _> unchanged.
Fields§
§request_id: &'a str§thread_id: Option<QueryRef<'a>>§method: &'a str§path: &'a str§query: Option<QueryRef<'a>>§headers: &'a [HeaderRef<'a>]§body: &'a [u8]§principal: PrincipalRef<'a>§candidates: &'a [UpstreamCandidateRef<'a>]Trait Implementations§
Source§impl<'a> Archive for FilterRequestRef<'a>where
InlineAsBox: ArchiveWith<&'a str> + ArchiveWith<&'a [HeaderRef<'a>]> + ArchiveWith<&'a [u8]> + ArchiveWith<&'a [UpstreamCandidateRef<'a>]>,
Option<QueryRef<'a>>: Archive,
PrincipalRef<'a>: Archive,
impl<'a> Archive for FilterRequestRef<'a>where
InlineAsBox: ArchiveWith<&'a str> + ArchiveWith<&'a [HeaderRef<'a>]> + ArchiveWith<&'a [u8]> + ArchiveWith<&'a [UpstreamCandidateRef<'a>]>,
Option<QueryRef<'a>>: Archive,
PrincipalRef<'a>: Archive,
Source§type Archived = ArchivedFilterRequestRef<'a>
type Archived = ArchivedFilterRequestRef<'a>
The archived representation of this type. Read more
Source§type Resolver = FilterRequestRefResolver<'a>
type Resolver = FilterRequestRefResolver<'a>
The resolver for this type. It must contain all the additional
information from serializing needed to make the archived type from
the normal type.
Source§fn resolve(&self, resolver: Self::Resolver, out: Place<Self::Archived>)
fn resolve(&self, resolver: Self::Resolver, out: Place<Self::Archived>)
Creates the archived version of this value at the given position and
writes it to the given output. Read more
Source§const COPY_OPTIMIZATION: CopyOptimization<Self> = _
const COPY_OPTIMIZATION: CopyOptimization<Self> = _
An optimization flag that allows the bytes of this type to be copied
directly to a writer instead of calling
serialize. Read moreSource§impl<'a, __S: Fallible + ?Sized> Serialize<__S> for FilterRequestRef<'a>where
InlineAsBox: SerializeWith<&'a str, __S> + SerializeWith<&'a [HeaderRef<'a>], __S> + SerializeWith<&'a [u8], __S> + SerializeWith<&'a [UpstreamCandidateRef<'a>], __S>,
Option<QueryRef<'a>>: Serialize<__S>,
PrincipalRef<'a>: Serialize<__S>,
impl<'a, __S: Fallible + ?Sized> Serialize<__S> for FilterRequestRef<'a>where
InlineAsBox: SerializeWith<&'a str, __S> + SerializeWith<&'a [HeaderRef<'a>], __S> + SerializeWith<&'a [u8], __S> + SerializeWith<&'a [UpstreamCandidateRef<'a>], __S>,
Option<QueryRef<'a>>: Serialize<__S>,
PrincipalRef<'a>: Serialize<__S>,
§impl<'a> WireSchema for FilterRequestRef<'a>
impl<'a> WireSchema for FilterRequestRef<'a>
const FINGERPRINT: [u8; 32]
const DESCRIPTOR: &'static str = "FilterRequestRef{body:&[u8],candidates:&[UpstreamCandidateRef],headers:&[HeaderRef],method:&str,path:&str,principal:PrincipalRef,query:Option<QueryRef>,request_id:&str,thread_id:Option<QueryRef>}"
Auto Trait Implementations§
impl<'a> Freeze for FilterRequestRef<'a>
impl<'a> RefUnwindSafe for FilterRequestRef<'a>
impl<'a> Send for FilterRequestRef<'a>
impl<'a> Sync for FilterRequestRef<'a>
impl<'a> Unpin for FilterRequestRef<'a>
impl<'a> UnsafeUnpin for FilterRequestRef<'a>
impl<'a> UnwindSafe for FilterRequestRef<'a>
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> ArchiveUnsized for Twhere
T: Archive,
impl<T> ArchiveUnsized for Twhere
T: Archive,
Source§type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
The archived counterpart of this type. Unlike
Archive, it may be
unsized. Read moreSource§fn archived_metadata(
&self,
) -> <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
fn archived_metadata( &self, ) -> <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
Creates the archived version of the metadata for this value.
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
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.