title: Does slicing a string copy the underlying data?
body: <p>In Rust, if I wanted read-only access to one <code>&amp;str</code> across multiple contexts without copying the <em>actual</em> underlying data, am I correct in thinking that I just use a slice?</p>
  <p><strong>Example</strong></p>
  <pre class="lang-rust prettyprint-override"><code>let original_string = &quot;here's a string&quot;;
  
  let slice = &amp;original_string[0..3];
  </code></pre>
  <p>Or would something like <code>Rc&lt;str&gt;</code> be needed?</p>