#![allow(unused_variables)] // TODO(you): remove this lint after implementing this mod #![allow(dead_code)] // TODO(you): remove this lint after implementing this mod use std::sync::Arc; use super::Block; /// Iterates on a block. pub struct BlockIterator { block: Arc, key: Vec, value: Vec, idx: usize, } impl BlockIterator { fn new(block: Arc) -> Self { Self { block, key: Vec::new(), value: Vec::new(), idx: 0, } } /// Creates a block iterator and seek to the first entry. pub fn create_and_seek_to_first(block: Arc) -> Self { unimplemented!() } /// Creates a block iterator and seek to the first key that >= `key`. pub fn create_and_seek_to_key(block: Arc, key: &[u8]) -> Self { unimplemented!() } /// Returns the key of the current entry. pub fn key(&self) -> &[u8] { unimplemented!() } /// Returns the value of the current entry. pub fn value(&self) -> &[u8] { unimplemented!() } /// Returns true if the iterator is valid. pub fn is_valid(&self) -> bool { unimplemented!() } /// Seeks to the first key in the block. pub fn seek_to_first(&mut self) { unimplemented!() } /// Move to the next key in the block. pub fn next(&mut self) { unimplemented!() } /// Seek to the first key that >= `key`. pub fn seek_to_key(&mut self, key: &[u8]) { unimplemented!() } }