Ich versuche, die unter Swift 2 Erweiterungsmethode Swift 3.‚Generator‘ ist kein Mitglied Art von ‚Self.SubSequence‘
extension CollectionType {
func chunk(withDistance distance: Index.Distance) -> [[SubSequence.Generator.Element]] {
var index = startIndex
let generator: AnyGenerator<Array<SubSequence.Generator.Element>> = anyGenerator {
defer { index = index.advancedBy(distance, limit: self.endIndex) }
return index != self.endIndex ? Array(self[index ..< index.advancedBy(distance, limit: self.endIndex)]) : nil
}
return Array(generator)
}
}
Das Xcode-Konvertierungs-Werkzeug mir dabei links zu konvertieren.
extension Collection {
func chunk(withDistance distance: Int) -> [[SubSequence.Iterator.Element]] {
var index = startIndex
let generator: AnyGenerator<Array<SubSequence.Generator.Element>> = anyGenerator {
defer { index = index.advancedBy(distance, limit: self.endIndex) }
return index != self.endIndex ? Array(self[index ..< index.advancedBy(distance, limit: self.endIndex)]) : nil
}
return Array(generator)
}
}
Jetzt bin immer ich den obigen Fehler in Zeile, let generator: AnyGenerator<Array<SubSequence.Generator.Element>> = anyGenerator {
. Ich kann nicht herausfinden, wie ich das beheben kann.
Danke. Ihr zweiter Ansatz ist viel sauberer und leichter zu verstehen. – Isuru