Swift's GeneratorOf <T> сумасшедший инициатор

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

Ответы на вопрос(1)

Ваш ответ на вопрос