util: Add Erase and EraseIf helpers
No std::erase_if in C++17 which is handy to have!
This commit is contained in:
parent
2812b58680
commit
2fbaba8aa4
|
@ -362,3 +362,16 @@ inline uint32 tzcnt( uint32 n )
|
|||
#endif
|
||||
}
|
||||
|
||||
template< typename T, typename Value >
|
||||
constexpr void Erase( T &c, const Value &value )
|
||||
{
|
||||
auto it = std::remove( c.begin(), c.end(), value );
|
||||
c.erase( it, c.end() );
|
||||
}
|
||||
|
||||
template< typename T, typename Pred >
|
||||
constexpr void EraseIf( T &c, Pred pred )
|
||||
{
|
||||
auto it = std::remove_if( c.begin(), c.end(), pred );
|
||||
c.erase( it, c.end() );
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue