GeneratorOf创建一个通用的Generator
(和Sequence
):
struct GeneratorOf<T> : Generator, Sequence {
init(_ next: () -> T?)
init<G : Generator where T == T>(_ self_: G)
func next() -> T?
func generate() -> GeneratorOf<T>
}
我不理解的是第二个init:
init<G : Generator where T == T>(_ self_: G)
为什么必须声明 T == T
?
(_ self_: G)
这是什么意思?
谢天谢地,Swift 的一个主要优点就是比 Objective C 更简洁的语法... :-P