common: Implement Storage::size() in Mx25l.
[gps-watch.git] / src / common / storage.rs
index 7f0944620bca915ea6839ffc25bde0e7e0478ded..ebebe798f8bb31eb2378c9e6081066352b4716e3 100644 (file)
  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  */
 
+pub enum Error {
+    UnalignedAddress = 1,
+}
+
 pub trait Storage {
+    fn size(&self) -> usize;
+
     fn read(&self, address: usize, buffer: &mut [u8]);
+
+    fn write(&mut self, address: usize, buffer: &[u8; 4096]) -> Result<(), Error>;
+
+    fn clear(&mut self);
 }