diff --git a/bindings/javascript/src/lib.rs b/bindings/javascript/src/lib.rs index 8dda27dd0..d1045e788 100644 --- a/bindings/javascript/src/lib.rs +++ b/bindings/javascript/src/lib.rs @@ -584,6 +584,10 @@ impl limbo_core::DatabaseStorage for DatabaseFile { fn sync(&self, c: Arc) -> limbo_core::Result<()> { self.file.sync(c) } + + fn size(&self) -> limbo_core::Result { + todo!() + } } #[inline] diff --git a/bindings/wasm/lib.rs b/bindings/wasm/lib.rs index 8f65a3d01..eb78f3b21 100644 --- a/bindings/wasm/lib.rs +++ b/bindings/wasm/lib.rs @@ -367,6 +367,10 @@ impl limbo_core::DatabaseStorage for DatabaseFile { fn sync(&self, _c: Arc) -> Result<()> { todo!() } + + fn size(&self) -> Result { + todo!() + } } #[cfg(all(feature = "web", not(feature = "nodejs")))] diff --git a/core/storage/database.rs b/core/storage/database.rs index db57892ae..2f3e7c9b5 100644 --- a/core/storage/database.rs +++ b/core/storage/database.rs @@ -16,6 +16,7 @@ pub trait DatabaseStorage: Send + Sync { c: Arc, ) -> Result<()>; fn sync(&self, c: Arc) -> Result<()>; + fn size(&self) -> Result; } #[cfg(feature = "fs")] @@ -61,6 +62,10 @@ impl DatabaseStorage for DatabaseFile { fn sync(&self, c: Arc) -> Result<()> { self.file.sync(c) } + + fn size(&self) -> Result { + self.file.size() + } } #[cfg(feature = "fs")] @@ -111,6 +116,10 @@ impl DatabaseStorage for FileMemoryStorage { fn sync(&self, c: Arc) -> Result<()> { self.file.sync(c) } + + fn size(&self) -> Result { + self.file.size() + } } impl FileMemoryStorage {