Simplification step 1. One last piece of gunk to clear out.

Signed-off-by: Adam Rocska <adam.rocska@adams.solutions>
This commit is contained in:
Adam Rocska 2020-05-01 14:46:40 +02:00
parent 09469628e3
commit 379b3d576c
1 changed files with 4 additions and 15 deletions

View File

@ -57,28 +57,17 @@ extension Data {
} }
func lastIndex(of data: Data) -> Index? { func lastIndex(of data: Data) -> Index? {
var lastIndexOfData: Index? = index(of: data) return lastIndex(of: data, from: self.startIndex)
while lastIndexOfData != nil {
guard let currentIndexOfData = index(
of: data,
from: self.index(after: lastIndexOfData!)
) else {
return lastIndexOfData
}
lastIndexOfData = currentIndexOfData
}
return lastIndexOfData
} }
func lastIndex(of data: Data, from: Index) -> Index? { func lastIndex(of data: Data, from: Index) -> Index? {
var lastIndexOfData: Index? = from var lastIndexOfData: Index? = from
while lastIndexOfData != nil { while lastIndexOfData != nil {
if !self.indices.contains(self.index(after: lastIndexOfData!)) { let upcomingIndex = self.index(after: lastIndexOfData!)
return nil if !self.indices.contains(upcomingIndex) { return lastIndexOfData == from ? nil : lastIndexOfData }
}
guard let currentIndexOfData = index( guard let currentIndexOfData = index(
of: data, of: data,
from: self.index(after: lastIndexOfData!) from: upcomingIndex
) else { ) else {
break break
} }