Я написал следующее расширение в Swift 2.3:
extension CollectionType {
/// Returns the element at the specified index iff it is within bounds, otherwise nil.
subscript (safe index: Index) -> Generator.Element? {
return indices.contains(index) ? self[index] : nil
}
}
Однако, оказывается, что Swift 3.0 не имеет функции contains()
. Вместо этого он предлагает мне следующий синтаксис для этого метода:
indices.contains(where: { (<#Self.Indices.Iterator.Element#>) -> Bool in
<# code ??? what should it do??? #>
})
Проблема в том, что я не знаю, что она должна содержать внутри блока. Любая помощь по его миграции, пожалуйста?