fix -Wdeprecated-copy warnings in string algorithms

This commit is contained in:
Antony Polukhin
2021-10-03 17:16:12 +03:00
parent 2a05506d52
commit a9cd6c353f
2 changed files with 38 additions and 4 deletions

View File

@ -40,10 +40,18 @@ namespace boost {
// Protected construction/destruction // Protected construction/destruction
// Default constructor // Default constructor
find_iterator_base() {} BOOST_DEFAULTED_FUNCTION(find_iterator_base(), {})
// Copy construction // Copy construction
find_iterator_base( const find_iterator_base& Other ) : BOOST_DEFAULTED_FUNCTION(find_iterator_base( const find_iterator_base& Other ), :
m_Finder(Other.m_Finder) {} m_Finder(Other.m_Finder) {}
)
// Assignment
BOOST_DEFAULTED_FUNCTION(find_iterator_base& operator=( const find_iterator_base& Other ), {
m_Finder = Other.m_Finder;
return *this;
})
// Constructor // Constructor
template<typename FinderT> template<typename FinderT>
@ -51,7 +59,7 @@ namespace boost {
m_Finder(Finder) {} m_Finder(Finder) {}
// Destructor // Destructor
~find_iterator_base() {} BOOST_DEFAULTED_FUNCTION(~find_iterator_base(), {})
// Find operation // Find operation
match_type do_find( match_type do_find(

View File

@ -74,7 +74,7 @@ namespace boost {
\post eof()==true \post eof()==true
*/ */
find_iterator() {} BOOST_DEFAULTED_FUNCTION(find_iterator(), {})
//! Copy constructor //! Copy constructor
/*! /*!
@ -85,6 +85,18 @@ namespace boost {
m_Match(Other.m_Match), m_Match(Other.m_Match),
m_End(Other.m_End) {} m_End(Other.m_End) {}
//! Copy assignment
/*!
Assigns a copy of the find_iterator
*/
BOOST_DEFAULTED_FUNCTION(find_iterator& operator=( const find_iterator& Other ), {
if (this == &Other) return *this;
this->base_type::operator=(Other);
m_Match = Other.m_Match;
m_End = Other.m_End;
return *this;
})
//! Constructor //! Constructor
/*! /*!
Construct new find_iterator for a given finder Construct new find_iterator for a given finder
@ -248,6 +260,20 @@ namespace boost {
m_bEof(Other.m_bEof) m_bEof(Other.m_bEof)
{} {}
//! Assignment operator
/*!
Assigns a copy of the split_iterator
*/
BOOST_DEFAULTED_FUNCTION(split_iterator& operator=( const split_iterator& Other ), {
if (this == &Other) return *this;
this->base_type::operator=(Other);
m_Match = Other.m_Match;
m_Next = Other.m_Next;
m_End = Other.m_End;
m_bEof = Other.m_bEof;
return *this;
})
//! Constructor //! Constructor
/*! /*!
Construct new split_iterator for a given finder Construct new split_iterator for a given finder