Instance Propertyswift 6.0.1Swift
base
The position after this position in the underlying collection.
let base: Base.Index
To find the position that corresponds with this index in the original, underlying collection, use that collection’s index(before:)
method with the base
property.
The following example declares a function that returns the index of the last even number in the passed array, if one is found. First, the function finds the position of the last even number as a ReversedIndex
in a reversed view of the array of numbers. Next, the function calls the array’s index(before:)
method to return the correct position in the passed array.
func indexOfLastEven(_ numbers: [Int]) -> Int? {
let reversedNumbers = numbers.reversed()
guard let i = reversedNumbers.firstIndex(where: { $0 % 2 == 0 })
else { return nil }
return numbers.index(before: i.base)
}
let numbers = [10, 20, 13, 19, 30, 52, 17, 40, 51]
if let lastEven = indexOfLastEven(numbers) {
print("Last even number: \(numbers[lastEven])")
}
// Prints "Last even number: 40"
Other members in extension
Type members
init(Base.Index
) Creates a new index into a reversed collection for the position before the specified index.
static func < (lhs: ReversedCollection<Base>.Index, rhs: ReversedCollection<Base>.Index
) -> Bool static func == (lhs: ReversedCollection<Base>.Index, rhs: ReversedCollection<Base>.Index
) -> Bool