aios_spec/traits/
privacy.rs1use crate::event::{RawEvent, SourceTier};
2use crate::sanitized::SanitizedEvent;
3
4pub trait PrivacySanitizer {
9 fn sanitize(&self, raw: RawEvent) -> SanitizedEvent;
11
12 fn sanitize_with_tier(&self, raw: RawEvent, source_tier: SourceTier) -> SanitizedEvent {
17 let mut event = self.sanitize(raw);
18 event.source_tier = source_tier;
19 event
20 }
21
22 fn sanitize_batch(&self, raw_events: Vec<RawEvent>) -> Vec<SanitizedEvent> {
24 raw_events.into_iter().map(|e| self.sanitize(e)).collect()
25 }
26}