#![cfg_attr(coverage_nightly, coverage(off))]
use crate::cli::DagType;
use crate::models::churn::CodeChurnAnalysis;
use crate::models::dag::DependencyGraph;
use crate::models::template::TemplateResource;
use crate::services::cache::base::CacheStrategy;
use crate::services::context::FileContext;
use std::fs;
use std::path::PathBuf;
use std::time::{Duration, UNIX_EPOCH};
#[derive(Clone)]
pub struct AstCacheStrategy;
#[derive(Clone)]
pub struct TemplateCacheStrategy;
#[derive(Clone)]
pub struct DagCacheStrategy;
#[derive(Clone)]
pub struct ChurnCacheStrategy;
#[derive(Clone)]
pub struct GitStatsCacheStrategy;
#[derive(Clone)]
pub struct GitStats {
pub total_commits: usize,
pub authors: Vec<String>,
pub branch: String,
pub head_commit: String,
}
include!("strategies_ast.rs");
include!("strategies_template.rs");
include!("strategies_dag.rs");
include!("strategies_git.rs");
include!("strategies_tests.rs");