Thoth
A functional, expressive, asynchronous C++26 webdev library
Loading...
Searching...
No Matches
Thoth::Http::Client Struct Reference

#include <Client.hpp>

Public Types

using SocketPtr = std::shared_ptr< Socket >
 

Static Public Member Functions

template<MethodConcept Method, BodyConcept Body>
requires std::default_initializable<Body>
static expected< Response< Method, Body >, RequestErrorSend (Request< Method, Body > request)
 Sends synced (thread blocking) requests.
 
template<MethodConcept Method, BodyConcept Body, class F >
requires ResponseBodyFactoryConcept<F, Body>
static expected< Response< Method, Body >, RequestErrorSendAndRecvInto (Request< Method, Body > request, F &&bodyFactory)
 Sends synced (thread blocking) requests.
 
template<MethodConcept Method, RequestBodyConcept RequestBody, ResponseBodyConcept ResponseBody>
requires std::default_initializable<ResponseBody>
static expected< Response< Method, ResponseBody >, RequestErrorSendAndRecvAs (Request< Method, RequestBody > request)
 Sends synced (thread blocking) requests.
 
template<MethodConcept Method, RequestBodyConcept RequestBody, ResponseBodyConcept ResponseBody, class F >
requires ResponseBodyFactoryConcept<F, ResponseBody>
static expected< Response< Method, ResponseBody >, RequestErrorSendAndRecvAsInto (Request< Method, RequestBody > request, F &&bodyFactory)
 Sends synced (thread blocking) requests.
 
static constexpr auto H_Send ()
 @hof{Send}
 
template<class F >
static auto H_SendAndRecvInto (F &&bodyFactory)
 
template<ResponseBodyConcept ResponseBody>
static constexpr auto H_SendAndRecvAs ()
 @hof{SendAndGetAs}
 
template<ResponseBodyConcept ResponseBody, class F >
requires ResponseBodyFactoryConcept<F, ResponseBody>
static auto H_SendAndRecvAsInto (F &&bodyFactory)
 

Member Typedef Documentation

◆ SocketPtr

using Thoth::Http::Client::SocketPtr = std::shared_ptr<Socket>

Member Function Documentation

◆ H_Send()

static constexpr auto Thoth::Http::Client::H_Send ( )
staticconstexpr

@hof{Send}

◆ H_SendAndRecvAs()

template<ResponseBodyConcept ResponseBody>
static constexpr auto Thoth::Http::Client::H_SendAndRecvAs ( )
staticconstexpr

@hof{SendAndGetAs}

◆ H_SendAndRecvAsInto()

template<ResponseBodyConcept ResponseBody, class F >
requires ResponseBodyFactoryConcept<F, ResponseBody>
static auto Thoth::Http::Client::H_SendAndRecvAsInto ( F &&  bodyFactory)
static

◆ H_SendAndRecvInto()

template<class F >
static auto Thoth::Http::Client::H_SendAndRecvInto ( F &&  bodyFactory)
static

◆ Send()

template<MethodConcept Method, BodyConcept Body>
requires std::default_initializable<Body>
static expected< Response< Method, Body >, RequestError > Thoth::Http::Client::Send ( Request< Method, Body >  request)
static

Sends synced (thread blocking) requests.

◆ SendAndRecvAs()

template<MethodConcept Method, RequestBodyConcept RequestBody, ResponseBodyConcept ResponseBody>
requires std::default_initializable<ResponseBody>
static expected< Response< Method, ResponseBody >, RequestError > Thoth::Http::Client::SendAndRecvAs ( Request< Method, RequestBody >  request)
static

Sends synced (thread blocking) requests.

◆ SendAndRecvAsInto()

template<MethodConcept Method, RequestBodyConcept RequestBody, ResponseBodyConcept ResponseBody, class F >
requires ResponseBodyFactoryConcept<F, ResponseBody>
static expected< Response< Method, ResponseBody >, RequestError > Thoth::Http::Client::SendAndRecvAsInto ( Request< Method, RequestBody >  request,
F &&  bodyFactory 
)
static

Sends synced (thread blocking) requests.

◆ SendAndRecvInto()

template<MethodConcept Method, BodyConcept Body, class F >
requires ResponseBodyFactoryConcept<F, Body>
static expected< Response< Method, Body >, RequestError > Thoth::Http::Client::SendAndRecvInto ( Request< Method, Body >  request,
F &&  bodyFactory 
)
static

Sends synced (thread blocking) requests.


The documentation for this struct was generated from the following file: