The remainder of the Pre-emptively support P0646R1 for std container erasure.
From-SVN: r266673
This commit is contained in:
parent
0b44b4b807
commit
32bbb362ef
|
@ -95,19 +95,23 @@ namespace std _GLIBCXX_VISIBILITY(default)
|
|||
{
|
||||
_GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
template<typename _Tp, typename _Alloc, typename _Predicate>
|
||||
inline void
|
||||
inline typename deque<_Tp, _Alloc>::size_type
|
||||
erase_if(deque<_Tp, _Alloc>& __cont, _Predicate __pred)
|
||||
{
|
||||
const auto __osz = __cont.size();
|
||||
__cont.erase(std::remove_if(__cont.begin(), __cont.end(), __pred),
|
||||
__cont.end());
|
||||
return __osz - __cont.size();
|
||||
}
|
||||
|
||||
template<typename _Tp, typename _Alloc, typename _Up>
|
||||
inline void
|
||||
inline typename deque<_Tp, _Alloc>::size_type
|
||||
erase(deque<_Tp, _Alloc>& __cont, const _Up& __value)
|
||||
{
|
||||
const auto __osz = __cont.size();
|
||||
__cont.erase(std::remove(__cont.begin(), __cont.end(), __value),
|
||||
__cont.end());
|
||||
return __osz - __cont.size();
|
||||
}
|
||||
_GLIBCXX_END_NAMESPACE_VERSION
|
||||
} // namespace std
|
||||
|
|
Loading…
Reference in New Issue