traced-test 1.0.4

this crate lets us use #[traced_test] to automatically configure sane default tracing for a rust test
Documentation
// ---------------- [ File: src/flush_logs_if_needed.rs ]
crate::ix!();

impl TracedTestGenerator {

    pub fn define_flush_logs_if_needed(&self) -> TokenStream2 {
        quote!{
            // Define flush_logs_if_needed function
            pub fn flush_logs_if_needed<TSubscriber>(
                local_subscriber: &std::sync::Arc<TSubscriber>,
                logs_already_flushed: &std::sync::Arc<std::sync::Mutex<bool>>,
            )
            where
                TSubscriber: Flushable + Send + Sync + 'static,
            {
                let mut flushed = logs_already_flushed.lock().unwrap();
                if !*flushed {
                    local_subscriber.flush();
                    *flushed = true;
                }
            }
        }
    }
}