|
@@ -30,25 +30,29 @@ public:
|
|
l{ip.type == IPADDR_TYPE_V4 ? ip.u_addr.ip4.addr : 0} { }
|
|
l{ip.type == IPADDR_TYPE_V4 ? ip.u_addr.ip4.addr : 0} { }
|
|
IP4(const char *str);
|
|
IP4(const char *str);
|
|
|
|
|
|
- constexpr operator uint32_t () { return l; }
|
|
|
|
- operator IPAddress () { return IPAddress(l); }
|
|
|
|
- constexpr operator ip_addr_t () {
|
|
|
|
|
|
+ operator uint32_t () const { return l; }
|
|
|
|
+ operator IPAddress () const { return IPAddress(l); }
|
|
|
|
+ constexpr operator ip_addr_t () const {
|
|
return ip_addr_t {
|
|
return ip_addr_t {
|
|
.u_addr = {.ip4 = {.addr = l}},
|
|
.u_addr = {.ip4 = {.addr = l}},
|
|
.type = IPADDR_TYPE_V4
|
|
.type = IPADDR_TYPE_V4
|
|
};
|
|
};
|
|
}
|
|
}
|
|
- constexpr operator esp_ip_addr_t () {
|
|
|
|
|
|
+ constexpr operator esp_ip_addr_t () const {
|
|
return esp_ip_addr_t {
|
|
return esp_ip_addr_t {
|
|
.u_addr = {.ip4 = {.addr = l}},
|
|
.u_addr = {.ip4 = {.addr = l}},
|
|
.type = IPADDR_TYPE_V4
|
|
.type = IPADDR_TYPE_V4
|
|
};
|
|
};
|
|
}
|
|
}
|
|
- constexpr operator bool () { return l != 0; }
|
|
|
|
- constexpr bool operator ! () { return l == 0; }
|
|
|
|
- constexpr bool operator == (const IP4 &b) { return l == b.l; }
|
|
|
|
- constexpr bool operator != (const IP4 &b) { return l != b.l; }
|
|
|
|
- constexpr uint8_t operator [] (size_t n) { return b[n]; }
|
|
|
|
|
|
+ constexpr operator bool () const { return l != 0; }
|
|
|
|
+ constexpr bool operator ! () const { return l == 0; }
|
|
|
|
+ constexpr bool operator == (const IP4 &b) const { return l == b.l; }
|
|
|
|
+ constexpr bool operator != (const IP4 &b) const { return l != b.l; }
|
|
|
|
+ constexpr IP4 operator & (const IP4 &b) const { return IP4(l & b.l); }
|
|
|
|
+ constexpr IP4 operator | (const IP4 &b) const { return IP4(l | b.l); }
|
|
|
|
+ constexpr IP4 operator ^ (const IP4 &b) const { return IP4(l ^ b.l); }
|
|
|
|
+ constexpr IP4 operator ~ () const { return IP4(~l); }
|
|
|
|
+ constexpr uint8_t operator [] (size_t n) const { return b[n]; }
|
|
uint8_t & operator [] (size_t n) { return b[n]; }
|
|
uint8_t & operator [] (size_t n) { return b[n]; }
|
|
|
|
|
|
const char *cstr();
|
|
const char *cstr();
|