mirror of
https://github.com/gbdev/rgbds.git
synced 2026-10-07 12:45:34 +00:00
Implement reversed template for reversing for-each loops
This commit is contained in:
1 parent
fba0562650
commit
02c2408f58
4 files changed
+27
-6
No files matched your search
@@ -12,6 +12,26 @@
|
||||
#include <unordered_map>
|
||||
#include <utility>
|
||||
|
||||
template<typename T>
|
||||
struct ReversedIterable {
|
||||
T &_iterable;
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
auto begin(ReversedIterable<T> r) {
|
||||
return std::rbegin(r._iterable);
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
auto end(ReversedIterable<T> r) {
|
||||
return std::rend(r._iterable);
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
ReversedIterable<T> reversed(T &&_iterable) {
|
||||
return {_iterable};
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
class InsertionOrderedMap {
|
||||
std::deque<T> list;
|
||||
|
||||
Reference in new issue
Block a user