1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
* 小说集类 */ struct NovellasCollection<T> { let novellas: [T] }
extension NovellasCollection: SequenceType { typealias Generator = AnyGenerator<T> func generate() -> AnyGenerator<T> { var i = 0 return AnyGenerator{ if i >= self.novellas.count { return nil } else { let r = self.novellas[i] i += 1 return r } } } }
let greatNovellas = NovellasCollection(novellas:["三国演义", "水浒", "红楼梦", "西游记"])
for novella in greatNovellas { print("I've read: \(novella)") }
|