diff --git a/storage_engine/src/cursor.rs b/storage_engine/src/cursor.rs index c9913b9..05f14db 100644 --- a/storage_engine/src/cursor.rs +++ b/storage_engine/src/cursor.rs @@ -15,6 +15,25 @@ use crate::entry_header::{EntryHeaderWithDataSize, EntryHeader}; use crate::store_header::StoreHeader; use crate::storage_engine::{Store, FilePosition, Column, Result, ROWS_FILE_NAME, GARBAGE_COLLECTION_INTERMEDIATE_ROWS_FILE_NAME}; +// ===Concrete Cursors=== +pub struct ReadCursor { + header: StoreHeader, + file: File, + data_type: PhantomData, + + eof_file_position: FilePosition, +} + +pub struct WriteCursor<'a, T> { + header: &'a mut StoreHeader, + file: File, + data_type: PhantomData, + + eof_file_position: FilePosition, +} + + +// ===Traits=== #[async_trait] // TODO: Make this private pub trait PrimitiveCursor { @@ -206,23 +225,6 @@ pub trait CursorWithStoreHeader: PrimitiveCursor { } -// ===Concrete Cursors=== -pub struct ReadCursor { - header: StoreHeader, - file: File, - data_type: PhantomData, - - eof_file_position: FilePosition, -} - -pub struct WriteCursor<'a, T> { - header: &'a mut StoreHeader, - file: File, - data_type: PhantomData, - - eof_file_position: FilePosition, -} - // ===PrimitiveCursor=== impl PrimitiveCursor for ReadCursor { fn file(&mut self) -> &mut File {