pub use crate::patterns::Token;
pub use detector::UnifiedTimestampDetector;
pub use formats::{PatternSource, TimestampFormat, TimestampPattern};
pub use priority::{FormatFamily, PatternPriority};
pub use registry::TimestampRegistry;
pub struct TimestampDetector;
impl TimestampDetector {
pub fn detect_and_replace(text: &str) -> (String, Vec<Token>) {
UnifiedTimestampDetector::detect_and_replace(text)
}
}
pub mod detector;
pub mod formats;
pub mod priority;
pub mod registry;
#[derive(Debug, Clone)]
pub struct DetectionResult {
pub normalized_text: String,
pub matches: Vec<TimestampMatch>,
}
#[derive(Debug, Clone)]
pub struct TimestampMatch {
pub original: String,
pub start_pos: usize,
pub end_pos: usize,
pub priority: PatternPriority,
}