title: How I can iterate over borrowed array?
body: <p>I thought that it should be something like this, but I cannot iterate over an borrowed array.</p>
  
  <pre class="lang-rust prettyprint-override"><code>fn print_me&lt;'a, I&gt;(iter: &amp;'a I) where I: Iterator&lt;Item = i32&gt; {
      for i in *iter {
          println!("{}", i);
      }
  }
  
  fn main() {
      let numbers = vec![1, 2, 3];
      //let numbers = &amp;numbers;
      print_me(numbers.iter());
  }
  </code></pre>
  
  <p>But Rust complains:</p>
  
  <pre class="lang-none prettyprint-override"><code>&lt;anon&gt;:15:12: 15:26 error: mismatched types:
   expected `&amp;_`,
      found `core::slice::Iter&lt;'_, _&gt;`
  (expected &amp;-ptr,
      found struct `core::slice::Iter`) [E0308]
  &lt;anon&gt;:15   print_me(numbers.iter());
                       ^~~~~~~~~~~~~~
  </code></pre>