diff --git a/heed/src/lib.rs b/heed/src/lib.rs index 83a5d15d..cd35e34c 100644 --- a/heed/src/lib.rs +++ b/heed/src/lib.rs @@ -89,7 +89,7 @@ pub use self::iterator::{ RwRevIter, RwRevPrefix, RwRevRange, }; pub use self::mdb::error::Error as MdbError; -use self::mdb::ffi::{from_val, into_val}; +pub use self::mdb::ffi::{from_val, into_val, MDB_val}; pub use self::mdb::flags::{DatabaseFlags, EnvFlags, PutFlags}; pub use self::reserved_space::ReservedSpace; pub use self::traits::{BoxedError, BytesDecode, BytesEncode, Comparator, LexicographicComparator}; diff --git a/heed/src/mdb/lmdb_ffi.rs b/heed/src/mdb/lmdb_ffi.rs index ce99b460..09729b14 100644 --- a/heed/src/mdb/lmdb_ffi.rs +++ b/heed/src/mdb/lmdb_ffi.rs @@ -34,10 +34,12 @@ pub fn reserve_size_val(size: usize) -> ffi::MDB_val { ffi::MDB_val { mv_size: size, mv_data: ptr::null_mut() } } +#[allow(missing_docs)] pub unsafe fn into_val(value: &[u8]) -> ffi::MDB_val { ffi::MDB_val { mv_data: value.as_ptr() as *mut libc::c_void, mv_size: value.len() } } +#[allow(missing_docs)] pub unsafe fn from_val<'a>(value: ffi::MDB_val) -> &'a [u8] { std::slice::from_raw_parts(value.mv_data as *const u8, value.mv_size) }