Say I have
class Value;
class Key;
class MyClass {
private:
std::map<Key,Value> my_map;
....
}
Inside of MyClass methods I have a very convenient way to iterate through values of my_map by saying
for( auto& value: my_map | boost::adaptors::map_values) {
...
}
However I would like to have a method of MyClass that would essentially output my_map | boost::adaptors::map_values and allow convenient value iteration outside of MyClass methods. How do I declare such a method? Would I need to implement some sort of pseudo container and corresponding iterator or there is a shortcut?