clankerdiff_protocol/shared/
document.rs1use clankerdiff_core::{DiffDocument, DiffScope, FileDiff, RepoPath};
2use serde::{Deserialize, Serialize};
3use std::sync::Arc;
4
5#[derive(Debug, Clone, PartialEq, Eq)]
6pub struct DiffSnapshot {
7 pub scope: DiffScope,
8 pub document: Arc<DiffDocument>,
9}
10
11#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
12pub enum FileEntry {
13 Unchanged(RepoPath),
14 Changed(Arc<FileDiff>),
15}
16
17#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
18pub struct DocumentUpdate {
19 pub scope: DiffScope,
20 pub repo_root: String,
21 pub files: Vec<FileEntry>,
22}