add util funtion to iterate adjacent pairs of a stl compliant container
This commit is contained in:
parent
cd1f45e248
commit
88af9c545b
@ -50,5 +50,19 @@ inline void remove_consecutive_duplicates_from_vector(std::vector<T> & vector) {
|
|||||||
vector.resize(number_of_unique_elements);
|
vector.resize(number_of_unique_elements);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template< typename FwdIter, typename Func >
|
||||||
|
Func for_each_pair( FwdIter iter_begin, FwdIter iter_end, Func func ) {
|
||||||
|
if( iter_begin == iter_end ) {
|
||||||
|
return func;
|
||||||
|
}
|
||||||
|
|
||||||
|
FwdIter iter_next = iter_begin;
|
||||||
|
++iter_next;
|
||||||
|
|
||||||
|
for( ; iter_next != iter_end; ++iter_begin, ++iter_next ){
|
||||||
|
func( *iter_begin, *iter_next );
|
||||||
|
}
|
||||||
|
return func;
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* CONTAINERUTILS_H_ */
|
#endif /* CONTAINERUTILS_H_ */
|
||||||
|
Loading…
Reference in New Issue
Block a user