Struct http_typed::Client

source ·
pub struct Client<RequestGroup = All> { /* private fields */ }
Expand description

A client to delegate to the send function that provides the ability to optionally specify:

  • a base url to be used for all requests
  • a request group to constrain the request types accepted by this type

Implementations§

source§

impl<RequestGroup> Client<RequestGroup>

source

pub fn new(base_url: String) -> Self

source

pub async fn send_to<Req>( base_url: &str, request: Req ) -> Result<Req::Response, Error>where Req: Request + Serialize + InRequestGroup<RequestGroup>, Req::Response: for<'a> Deserialize<'a>,

Send the provided request to the host at the specified base url, using the request metadata specified by the Request implementation. This method upgrades from the send function by enabling you to constrain the request group with the type system.

source

pub async fn send<Req>(&self, request: Req) -> Result<Req::Response, Error>where Req: Request + Serialize + InRequestGroup<RequestGroup>, Req::Response: for<'a> Deserialize<'a>,

Send the provided request to the host at the specified base url, using the request metadata specified by the Request implementation. This method upgrades from the send_to method by allowing you specify the base url at the time of instantiation rather than passing it to every send call.

Trait Implementations§

source§

impl<RequestGroup: Clone> Clone for Client<RequestGroup>

source§

fn clone(&self) -> Client<RequestGroup>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<RequestGroup: Debug> Debug for Client<RequestGroup>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<RequestGroup> RefUnwindSafe for Client<RequestGroup>where RequestGroup: RefUnwindSafe,

§

impl<RequestGroup> Send for Client<RequestGroup>where RequestGroup: Send,

§

impl<RequestGroup> Sync for Client<RequestGroup>where RequestGroup: Sync,

§

impl<RequestGroup> Unpin for Client<RequestGroup>where RequestGroup: Unpin,

§

impl<RequestGroup> UnwindSafe for Client<RequestGroup>where RequestGroup: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> InRequestGroup<All> for T