Back to Site
Loading...
Searching...
No Matches
librats::Address Struct Reference

#include <address.h>

Collaboration diagram for librats::Address:
[legend]

Public Member Functions

 Address ()=default
 
 Address (std::string ip, uint16_t port)
 
std::string to_string () const
 IPv6 literals (any ip containing ':') serialise bracketed; everything else plain.
 
bool operator== (const Address &o) const
 
bool operator!= (const Address &o) const
 

Static Public Member Functions

static std::optional< Addressparse (std::string_view text)
 Parse "host:port" or "[ipv6]:port".
 

Public Attributes

std::string ip
 
uint16_t port = 0
 

Detailed Description

Definition at line 26 of file address.h.

Constructor & Destructor Documentation

◆ Address() [1/2]

librats::Address::Address ( )
default

◆ Address() [2/2]

librats::Address::Address ( std::string  ip,
uint16_t  port 
)
inline

Definition at line 31 of file address.h.

Member Function Documentation

◆ operator!=()

bool librats::Address::operator!= ( const Address o) const
inline

Definition at line 68 of file address.h.

◆ operator==()

bool librats::Address::operator== ( const Address o) const
inline

Definition at line 67 of file address.h.

References ip, and port.

◆ parse()

static std::optional< Address > librats::Address::parse ( std::string_view  text)
inlinestatic

Parse "host:port" or "[ipv6]:port".

Returns nullopt if the port is missing/invalid, or for a bare (unbracketed) IPv6 literal whose own colons make the port ambiguous. Exact inverse of to_string().

Definition at line 36 of file address.h.

References port.

◆ to_string()

std::string librats::Address::to_string ( ) const
inline

IPv6 literals (any ip containing ':') serialise bracketed; everything else plain.

Definition at line 61 of file address.h.

References ip, and port.

Member Data Documentation

◆ ip

std::string librats::Address::ip

Definition at line 27 of file address.h.

Referenced by operator==(), and to_string().

◆ port

uint16_t librats::Address::port = 0

Definition at line 28 of file address.h.

Referenced by operator==(), parse(), and to_string().


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