use super::BlockStore;
use cid::{Cid, Code};
use db::sled::SledDb;
use std::error::Error as StdError;
impl BlockStore for SledDb {
fn put_raw(&self, bytes: Vec<u8>, code: Code) -> Result<Cid, Box<dyn StdError>> {
let cid = cid::new_from_cbor(&bytes, code);
let _ = self
.db
.compare_and_swap(cid.to_bytes(), None as Option<&[u8]>, Some(bytes))?;
Ok(cid)
}
}