rttp_client 0.1.0

Rust http client lib
Documentation
use crate::error;
use crate::request::{Request, RequestBody};
use crate::request::raw_builder::RawBuilder;
use crate::types::RoUrl;

#[derive(Debug)]
pub struct RawRequest<'a> {
  pub(crate) origin: &'a mut Request,
  pub(crate) url: RoUrl,
  pub(crate) header: String,
  pub(crate) body: Option<RequestBody>,
}

impl<'a> RawRequest<'a> {
  pub fn block_new(request: &'a mut Request) -> error::Result<RawRequest<'a>> {
    RawBuilder::new(request).block_raw_request()
  }

  #[cfg(feature = "async")]
  pub async fn async_new(request: &'a mut Request) -> error::Result<RawRequest<'a>> {
    RawBuilder::new(request).async_raw_request().await
  }

  pub fn origin(&self) -> &Request { &self.origin }
  pub fn url(&self) -> &RoUrl { &self.url }
  pub fn header(&self) -> &String { &self.header }
  pub fn body(&self) -> &Option<RequestBody> { &self.body }

  pub(crate) fn origin_mut(&mut self) -> &mut Request { &mut self.origin }
}