Tipo 'String' no se ajusta al protocolo 'SequenceType' – Swift 2.0

Estoy tratando de invertir la cadena en Swift 2.0, pero recibo un error en la cadena si mismo.

func reverseString(string: String) -> String { var buffer = "" for character in string { buffer.insert(character, atIndex: buffer.startIndex) } return buffer } 

El error:

 Type 'String' does not conform to protocol 'SequenceType' 

Solución fácil:

 func reverseString(string: String) -> String { return String(string.characters.reverse()) } 

Su código funciona con este cambio.

 for character in string.characters { 

Swift 3:

En Swift 3 reverse() ha cambiado el nombre a reversed()

Swift 4:

En Swift se pueden omitir 4 characters porque String volvió a comportarse como una secuencia.

 func reverseString(string: String) -> String { return String(string.reversed()) } 

A partir de Swift 2, String no se ajusta a SequenceType .

Puedes agregar una extensión.

 extension String: SequenceType {}