title: Migrating to Swift 3 troubles: String.CharacterView corresponding to 'startIndex'
body: <p><strong>Code:</strong></p>
  
  <pre><code>let startIndex = oldString.characters.index(oldString.startIndex, offsetBy: range.location)
  
  let endIndex = String.Characterview corresponding to 'startIndex' .index(startIndex, offsetBy: 5)
  </code></pre>
  
  <p><strong>Prior to migrating to Swift 3, the above line was:</strong></p>
  
  <pre><code>let endIndex = startIndex.advancedBy(5)
  </code></pre>
  
  <p>I know the docs say that <code>advancedBy</code> should be converted to:</p>
  
  <pre><code>Collection.index(index, offsetBy: delta)
  </code></pre>
  
  <p>but when I do the above code I get this error:</p>
  
  <blockquote>
    <p>Protocol Collection can only be used as a generic constraint because it has Self or associated type requirements</p>
  </blockquote>
  
  <p><strong>Question:</strong></p>
  
  <p>So what is it that I need to do here? I feel like this is something simple and I'm just barley missing it. I've been all over the docs and the internet.</p>