This commit is contained in:
Owen Qwen
2026-08-31 16:44:54 -05:00
parent e71b3ada71
commit 5f99d9b137
21 changed files with 1045 additions and 47 deletions
@@ -0,0 +1,15 @@
import Foundation
public struct RouteSetDiff: Equatable, Sendable {
public let additions: Set<MeshAddress>
public let removals: Set<MeshAddress>
}
public enum HelperRouteSet {
public static func validate(_ desired: Set<MeshAddress>, local: MeshAddress, maximum: Int = 31) throws {
guard desired.count <= maximum, !desired.contains(local) else { throw UMNError.invalidFrame }
}
public static func diff(current: Set<MeshAddress>, desired: Set<MeshAddress>) -> RouteSetDiff {
.init(additions: desired.subtracting(current), removals: current.subtracting(desired))
}
}