docx_rs/documents/
paragraph_property_change_id.rs

1#[cfg(not(test))]
2use std::sync::atomic::AtomicUsize;
3#[cfg(not(test))]
4static HISTORY_ID: AtomicUsize = AtomicUsize::new(0);
5
6#[cfg(not(test))]
7pub trait ParagraphPropertyChangeId {
8    fn generate(&self) -> String {
9        use std::sync::atomic::Ordering;
10
11        let id = HISTORY_ID.load(Ordering::Relaxed);
12        HISTORY_ID.store(id + 1, Ordering::Relaxed);
13        format!("{}", id)
14    }
15}
16
17#[cfg(test)]
18pub trait ParagraphPropertyChangeId {
19    fn generate(&self) -> &str {
20        "123"
21    }
22}