         currentIndex = currentIndex.advancedBy(delta)
     }
     
-    subscript (i: String.CharacterView.Index) -> Character {
+    subscript (i: String.Index) -> Character {
         return characters[i]
     }
     
-    subscript (r: Range<String.CharacterView.Index>) -> String {
+    subscript (r: Range<String.Index>) -> String {
         return String(characters[r])
     }
 }

        return currentIndex >= characters.endIndex
    }
    
    func resetTo(index: String.CharacterView.Index) {
        currentIndex = index
    }
    

internal class TokenCharacterBuffer {
    private let characters: String.CharacterView
    private let lowercaseCharacters: String.CharacterView
    private(set) var currentIndex: String.Index
    
    init(string: String) {
        characters = string.characters
