22#if MSGPACK_RPC_HAS_UNIX_SOCKETS
26#include <asio/local/basic_endpoint.hpp>
27#include <fmt/format.h>
33UnixSocketAddress::UnixSocketAddress(AsioUnixSocketAddress address)
34 : address_(std::move(address)) {}
36std::string UnixSocketAddress::file_path()
const {
return address_.path(); }
38URI UnixSocketAddress::to_uri()
const {
39 return URI(UNIX_SOCKET_SCHEME, address_.path());
42std::string UnixSocketAddress::to_string()
const {
43 return fmt::format(
"unix://{}", address_.path());
46const AsioUnixSocketAddress& UnixSocketAddress::asio_address()
const {
50bool UnixSocketAddress::operator==(
const UnixSocketAddress& right)
const {
51 return address_ == right.address_;
54bool UnixSocketAddress::operator!=(
const UnixSocketAddress& right)
const {
62format_context::iterator
63formatter<msgpack_rpc::addresses::UnixSocketAddress>::format(
64 const msgpack_rpc::addresses::UnixSocketAddress& val,
65 format_context& context)
const {
66 return fmt::format_to(context.out(),
"unix://{}", val.file_path());
72 const msgpack_rpc::addresses::UnixSocketAddress& address) {
73 stream <<
"unix://" << address.file_path();
Namespace of fmt library.
bool operator==(const MethodName &left, const MethodName &right) noexcept
Compare two method names.
Definition of constants of schemes.
Definition of UnixSocketAddress class.
std::ostream & operator<<(std::ostream &stream, const msgpack_rpc::addresses::URI &uri)
Format a URI.