title: How to declare boost range adaptor (e.g. map_values)
body: <p>Say I have</p>
  
  <pre><code>class Value;
  class Key;
  
  class MyClass {
    private:
    std::map&lt;Key,Value&gt; my_map;
    ....
  }
  </code></pre>
  
  <p>Inside of MyClass methods I have a very convenient way to iterate through values of my_map by saying</p>
  
  <pre><code> for( auto&amp; value: my_map | boost::adaptors::map_values) {
      ...
   }
  </code></pre>
  
  <p>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?</p>