use std::fs::File; use std::path::Path; use std::sync::Arc; use anyhow::Result; use bytes::Bytes; use crossbeam_skiplist::SkipMap; use parking_lot::Mutex; pub struct Wal { file: Arc>, } impl Wal { pub fn create(path: impl AsRef) -> Result { unimplemented!() } pub fn recover(path: impl AsRef, skiplist: &SkipMap) -> Result { unimplemented!() } pub fn put(&self, key: &[u8], value: &[u8]) -> Result<()> { unimplemented!() } pub fn sync(&self) -> Result<()> { unimplemented!() } }