Transformar uma sequência Swift em pares adjacentes
Dado que eu tenho uma matriz no Swift, como[1,2,3,4]
, um métodopairs()
irá transformá-lo na matriz de tuplas:[(1,2), (2,3), (3,4)]
.
Aqui estão mais alguns exemplos de comopairs()
Deve se comportar:
pairs([])
deve retornar[]
como não tem pares.pairs([1])
também deve retornar[]
, pois não possui pares.pairs([1,2])
deveria estar[(1,2)]
. Tem apenas um par.Eu posso escrever código para fazer issoArray
, mas eu gostaria de terpairs()
disponível como uma extensão emSequence
, para que retorne umSequence
dos pares. Isso o tornaria utilizável em qualquer sequência e compatível com métodos comomap
, reduce
, filter
, etc.
Como faço para criar umSequence
como isso? E como escrevo o método para transformar qualquerSequence
desta maneira, para que possa ser usado da maneira mais flexível possível?