A spiritual successor to Boost.FunctionTypes, Boost.CallableTraits is a header-only C++11 library for the compile-time inspection and manipulation of all 'callable' types. Additional support for C++17 features.
int main()
{
net::io_context ioc;
tcp::resolver resolver(ioc);
beast::tcp_stream stream(ioc);
stream.connect(resolver.resolve("example.com", "80"));
http::request<http::empty_body> req{http::verb::get, "/", 11};
req.set(http::field::host, "example.com");
http::write(stream, req);
beast::flat_buffer buffer;
http::response<http::string_body> res;
http::read(stream, buffer, res);
std::cout << res << std::endl;
}
Get started with header-only libraries
brew install openssl
export OPENSSL_ROOT=$(brew --prefix openssl)
# install bjam tool user specific configuration file to read OPENSSL_ROOT
# see https://www.bfgroup.xyz/b2/manual/release/index.html
cp ./libs/beast/tools/user-config.jam $HOME
No dependencies