Swiftgram/submodules/TelegramUI/Sources/ChatHistoryNavigationStack.swift
2020-02-20 18:08:36 +04:00

31 lines
754 B
Swift

import Foundation
import UIKit
import Postbox
struct ChatHistoryNavigationStack {
private var messageIndices: [MessageIndex] = []
mutating func add(_ index: MessageIndex) {
self.messageIndices.append(index)
}
mutating func removeLast() -> MessageIndex? {
if messageIndices.isEmpty {
return nil
}
return messageIndices.removeLast()
}
var isEmpty: Bool {
return self.messageIndices.isEmpty
}
mutating func filterOutIndicesLessThan(_ index: MessageIndex) {
for i in (0 ..< self.messageIndices.count).reversed() {
if self.messageIndices[i] <= index {
self.messageIndices.remove(at: i)
}
}
}
}