mermaid_cli/cache/
types.rs1use serde::{Deserialize, Serialize};
2use std::path::PathBuf;
3use std::time::SystemTime;
4
5#[derive(Debug, Clone, Hash, PartialEq, Eq, Serialize, Deserialize)]
7pub struct CacheKey {
8 pub file_path: PathBuf,
9 pub file_hash: String,
10}
11
12#[derive(Debug, Clone, Serialize, Deserialize)]
14pub struct CacheMetadata {
15 pub created_at: SystemTime,
16 pub last_accessed: SystemTime,
17 pub file_size: u64,
18 pub compressed_size: usize,
19 pub compression_ratio: f32,
20}
21
22#[derive(Debug, Clone, Serialize, Deserialize)]
24pub struct CacheEntry<T> {
25 pub key: CacheKey,
26 pub data: T,
27 pub metadata: CacheMetadata,
28}
29
30#[derive(Debug, Clone, Serialize, Deserialize)]
32pub struct CachedTokens {
33 pub count: usize,
34 pub model_name: String,
35}