//
//  PolicyRuleSnapshot.swift
//  punchnet
//
//  Created by 安礼成 on 2026/2/5.
//
import Foundation

final class PolicyRuleSnapshot: Snapshot {
    typealias IdentityID = UInt32
    
    private let ruleMapByIdentity: [IdentityID: PolicyRuleMap]
    
    init(ruleMapByIdentity: [IdentityID : PolicyRuleMap]) {
        self.ruleMapByIdentity = ruleMapByIdentity
    }
    
    func lookup(_ id: IdentityID) -> PolicyRuleMap? {
        return self.ruleMapByIdentity[id]
    }
    
    static func empty() -> PolicyRuleSnapshot {
        return PolicyRuleSnapshot(ruleMapByIdentity: [:])
    }
    
}
