use std::path::Path;
#[derive(Debug, Clone, Copy, PartialEq)]
pub enum BackendFormat {
Sqlite,
Unknown,
}
pub fn detect_backend_format(path: &Path) -> BackendFormat {
use std::fs::File;
use std::io::Read;
let mut file = match File::open(path) {
Ok(f) => f,
Err(_) => return BackendFormat::Unknown,
};
let mut header = [0u8; 16];
match file.read_exact(&mut header) {
Ok(_) => {}
Err(_) => return BackendFormat::Unknown,
}
if header[0..16] == *b"SQLite format 3\0" {
return BackendFormat::Sqlite;
}
BackendFormat::Unknown
}