mirror of
https://github.com/mfontanini/libtins
synced 2026-01-23 02:35:57 +01:00
Move constructors are now noexcept.
This commit is contained in:
@@ -104,12 +104,12 @@ public:
|
||||
/**
|
||||
* Move constructor.
|
||||
*/
|
||||
DNSResourceRecord(DNSResourceRecord &&rhs);
|
||||
DNSResourceRecord(DNSResourceRecord &&rhs) noexcept;
|
||||
|
||||
/**
|
||||
* Move assignment operator.
|
||||
*/
|
||||
DNSResourceRecord& operator=(DNSResourceRecord &&rhs);
|
||||
DNSResourceRecord& operator=(DNSResourceRecord &&rhs) noexcept;
|
||||
#endif // TINS_IS_CXX11
|
||||
|
||||
/**
|
||||
|
||||
@@ -1179,6 +1179,7 @@ private:
|
||||
void parse_options(const uint8_t *&buffer, uint32_t &total_sz);
|
||||
void add_addr_list(uint8_t type, const addr_list_type &value);
|
||||
addr_list_type search_addr_list(Options type) const;
|
||||
|
||||
template<template <typename> class Functor>
|
||||
const icmpv6_option *safe_search_option(Options opt, uint32_t size) const {
|
||||
const icmpv6_option *option = search_option(opt);
|
||||
|
||||
@@ -186,14 +186,14 @@ public:
|
||||
/**
|
||||
* Move constructor.
|
||||
*/
|
||||
Packet(Packet &&rhs) : pdu_(rhs.pdu()), ts(rhs.timestamp()) {
|
||||
Packet(Packet &&rhs) noexcept : pdu_(rhs.pdu()), ts(rhs.timestamp()) {
|
||||
rhs.pdu_ = nullptr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Move assignment operator.
|
||||
*/
|
||||
Packet& operator=(Packet &&rhs) {
|
||||
Packet& operator=(Packet &&rhs) noexcept {
|
||||
if(this != &rhs) {
|
||||
std::swap(pdu_, rhs.pdu_);
|
||||
ts = rhs.timestamp();
|
||||
|
||||
@@ -63,13 +63,13 @@ namespace Tins {
|
||||
* \brief Move constructor.
|
||||
* This constructor is available only in C++11.
|
||||
*/
|
||||
BaseSniffer(BaseSniffer &&rhs);
|
||||
BaseSniffer(BaseSniffer &&rhs) noexcept;
|
||||
|
||||
/**
|
||||
* \brief Move assignment operator.
|
||||
* This opeartor is available only in C++11.
|
||||
*/
|
||||
BaseSniffer& operator=(BaseSniffer &&rhs);
|
||||
BaseSniffer& operator=(BaseSniffer &&rhs) noexcept;
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
||||
@@ -107,12 +107,14 @@ DNSResourceRecord& DNSResourceRecord::operator=(const DNSResourceRecord &rhs)
|
||||
}
|
||||
|
||||
#if TINS_IS_CXX11
|
||||
DNSResourceRecord::DNSResourceRecord(DNSResourceRecord &&rhs)
|
||||
DNSResourceRecord::DNSResourceRecord(DNSResourceRecord &&rhs) noexcept
|
||||
: info_(rhs.info_), data(std::move(rhs.data)), impl(0) {
|
||||
std::swap(impl, rhs.impl);
|
||||
}
|
||||
|
||||
DNSResourceRecord& DNSResourceRecord::operator=(DNSResourceRecord &&rhs) {
|
||||
DNSResourceRecord& DNSResourceRecord::operator=(DNSResourceRecord &&rhs)
|
||||
noexcept
|
||||
{
|
||||
info_ = rhs.info_;
|
||||
data = std::move(rhs.data);
|
||||
delete impl;
|
||||
|
||||
@@ -41,12 +41,12 @@ BaseSniffer::BaseSniffer() : handle(0), mask(0)
|
||||
}
|
||||
|
||||
#if TINS_IS_CXX11
|
||||
BaseSniffer::BaseSniffer(BaseSniffer &&rhs)
|
||||
BaseSniffer::BaseSniffer(BaseSniffer &&rhs) noexcept
|
||||
{
|
||||
*this = std::move(rhs);
|
||||
}
|
||||
|
||||
BaseSniffer& BaseSniffer::operator=(BaseSniffer &&rhs)
|
||||
BaseSniffer& BaseSniffer::operator=(BaseSniffer &&rhs) noexcept
|
||||
{
|
||||
handle = 0;
|
||||
mask = rhs.mask;
|
||||
|
||||
Reference in New Issue
Block a user