¿Qué es .successor () en swift?

¿Alguien puede explicar qué es someVar.successor ()? La documentation de Apple dice "Devuelve el siguiente valor consecutivo después de self ". No entiendo su significado de implementación.

Gracias.

En lugar de agregar 1, podemos llamar al sucesor () en el índice.

Por ejemplo esto:

 func naturalIndexOfItem(item: Item) -> Int? { if let index = indexOfItem(item) { return index + 1 } else { return nil } } 

Es igual a esto:

 func naturalIndexOfItem(item: Item) -> Int? { if let index = indexOfItem(item) { return index.successor() } else { return nil } } 

El método successor() devuelve el siguiente valor después del actual (si hay alguno, si el valor actual es 0, entonces llamar al successor() devolverá 1 y así sucesivamente)

Una implementación sucesor típica () se verá así:

 class ForWardIndexDemo: ForwardIndex { private var _myIndex = 0 init(index: Int) { _myIndex = index; } func successor() -> ForWardIndexDemo { return ForWardIndexDemo(index:_myIndex++) } } 

La colección tipo asociado IndexType especifica qué tipo se usa para indexar la colección. Cualquier tipo que implemente ForwardIndex se puede usar como IndexType.

The ForwardIndex es un índice que solo puede incrementarse, por ejemplo, un índice de valor de avance 0 puede incrementarse a 1,2,3, etc … Este protocolo henetworkinga internamente desde los protocolos Equable y _Incrementable. Para adherirse al sucesor del protocolo ForwardIndex () -> Método propio y deben implementarse los protocolos Equatables.

Lea más sobre esto aquí