vtcode_session_store/
error.rs1use std::path::PathBuf;
4
5#[derive(Debug, thiserror::Error)]
7pub enum SessionStoreError {
8 #[error("session store IO error at {path}: {source}")]
10 Io {
11 path: PathBuf,
13 source: std::io::Error,
15 },
16
17 #[error("session store serialization error: {0}")]
19 Json(#[from] serde_json::Error),
20
21 #[error("turn {turn} not found in session {session}")]
23 TurnNotFound {
24 session: String,
26 turn: u64,
28 },
29
30 #[error("failed to create session directory {path}: {source}")]
32 CreateDir {
33 path: PathBuf,
35 source: std::io::Error,
37 },
38}
39
40impl SessionStoreError {
41 pub(crate) fn io(path: impl Into<PathBuf>, source: std::io::Error) -> Self {
43 Self::Io {
44 path: path.into(),
45 source,
46 }
47 }
48}