swiftの標準ライブラリはすんなり理解できないところが多いため、一つづつ調べていきたい。
struct Array<T> : MutableCollectionType, Sliceable, _DestructorSafeContainer { } extension Array : _ArrayType { init<S : SequenceType where T == T>(_ s: S) }
このイニシャライザのwhere T == Tの意味だが、TがEquatableプロトコルに準拠していることを表す。
protocol Equatable { func ==(lhs: Self, rhs: Self) -> Bool }