Built in *safe* way to move out of Vec<T>?
<p>I've been looking over the documentation, and so far I haven't seen a built in function to safely move an item out of a <code>Vec</code>.</p>

<p><code>Vec::get</code> exists, but that just borrows. <code>Vec::remove</code> exists, and while that does move out of the vector, it also panics if the index is out of range. So, I have two questions:</p>

<ol>
<li>What is the intended/good way to move an item from a vector?</li>
<li><code>remove(&amp;mut self, index: usize) -&gt; T</code> panics if out of range. What might be the reason for panicking? Why isn't it implemented like <code>remove(&amp;mut self, index: usize) -&gt; Option&lt;T&gt;</code>?</li>
</ol>