radr/repository/
mod.rs

1use anyhow::Result;
2use std::path::{Path, PathBuf};
3
4use crate::domain::AdrMeta;
5
6pub mod fs;
7
8pub trait AdrRepository {
9    fn adr_dir(&self) -> &Path;
10    fn list(&self) -> Result<Vec<AdrMeta>>;
11    fn read_string(&self, path: &Path) -> Result<String>;
12    fn write_string(&self, path: &Path, content: &str) -> Result<()>;
13}
14
15pub fn idx_path(dir: &Path, index_name: &str) -> PathBuf {
16    dir.join(index_name)
17}