title: C++11 reverse range-based for-loop
body: <p>Is there a container adapter that would reverse the direction of iterators so I can iterate over a container in reverse with range-based for-loop?</p>
  
  <p>With explicit iterators I would convert this:</p>
  
  <pre><code>for (auto i = c.begin(); i != c.end(); ++i) { ...
  </code></pre>
  
  <p>into this:</p>
  
  <pre><code>for (auto i = c.rbegin(); i != c.rend(); ++i) { ...
  </code></pre>
  
  <p>I want to convert this:</p>
  
  <pre><code>for (auto&amp; i: c) { ...
  </code></pre>
  
  <p>to this:</p>
  
  <pre><code>for (auto&amp; i: std::magic_reverse_adapter(c)) { ...
  </code></pre>
  
  <p>Is there such a thing or do I have to write it myself?</p>