[−][src]Struct parsec_interface::requests::request::Request
Representation of the request wire format.
Fields
header: RequestHeaderRequest header
body: RequestBodyRequest body consists of RequestBody object holding a collection of bytes.
Interpretation of said bytes is deferred to the a converter which can handle the
content_type defined in the header.
auth: RequestAuthAuth field is stored as a RequestAuth object. A parser that can handle the auth_type
specified in the header is needed to authenticate the request.
Implementations
impl Request[src]
pub fn write_to_stream(self, stream: &mut impl Write) -> Result<()>[src]
Serialise request and write it to given stream.
Request header is first converted to its raw format before serialization.
Errors
- if an IO operation fails while writing any of the subfields of the request,
ResponseStatus::ConnectionErroris returned. - if encoding any of the fields in the header fails,
ResponseStatus::InvalidEncodingis returned.
pub fn read_from_stream(
stream: &mut impl Read,
body_len_limit: usize
) -> Result<Request>[src]
stream: &mut impl Read,
body_len_limit: usize
) -> Result<Request>
Deserialise request from given stream.
Request header is parsed from its raw form, ensuring that all fields are valid.
The body_len_limit parameter allows the interface client to reject requests that are
longer than a predefined limit. The length limit is in bytes.
Errors
- if reading any of the subfields (header, body or auth) fails, the corresponding
ResponseStatuswill be returned. - if the request body size specified in the header is larger than the limit passed as
a parameter,
BodySizeExceedsLimitwill be returned.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl UnwindSafe for Request
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,