formualizer_eval/engine/graph/
snapshot.rs

1use super::{AstNodeId, ValueRef};
2use crate::{
3    SheetId,
4    engine::packed_coord::PackedCoord,
5    engine::vertex::{VertexId, VertexKind},
6};
7
8/// Snapshot of a vertex's complete state for rollback purposes
9#[derive(Debug, Clone)]
10pub struct VertexSnapshot {
11    pub coord: PackedCoord,
12    pub sheet_id: SheetId,
13    pub kind: VertexKind,
14    pub flags: u8,
15    pub value_ref: Option<ValueRef>,
16    pub formula_ref: Option<AstNodeId>,
17    pub out_edges: Vec<VertexId>,
18}