#pragma once #include namespace gp{ template void indexed_foreach(range n, F f) { for(size_t idx = 0; idx < n.size(); ++idx) { f(idx, n[idx]); } } template void foreach(range n, F f) { for(auto& elem : n) { f(elem); } } }