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) } } } }