需要澄清 Swift 中的类型别名语法

Need clarification on typealias syntax in Swift

谁能解释一下为什么在下面的例子中,typealias "Generator" 后面有一个“:”?是说 "Generator" 符合 "GeneratorType" 吗?我很困惑,因为当我阅读 Swift 文档时,它只在别名后描述了一个“=”符号。

protocol SequenceType : _Sequence_Type {
    typealias Generator : GeneratorType
    func generate() -> Generator
}

在协议中,typealias 声明了一个 associated type。 类 和符合此协议的结构必须有一个 typealias 指令,该指令将类型声明为具体的东西。

是的,这意味着 GeneratorSequenceType 协议的任何实现中都必须符合 GeneratorType