title: How does one have a for loop borrow the iterator?
body: <p>How does one have a <code>for</code> ... <code>in</code> loop borrow the iterator it is operating over? For example:</p>
  
  <pre><code>let x = vec![1, 2, 3, 4];
  let i = x.iter();
  for a1 in i { break; } // iterate over just one "i"
  for a2 in i { break; } // continue iterating through "i" here
  </code></pre>
  
  <p>You can't simply give <code>&amp;i</code> to the for, because then it can't convert the <code>&amp;Iterator</code> to an <code>Iterator</code> object.</p>