use super::BTreePageID;
use crate::btree::tuple::Schema;
pub trait BTreePage {
fn new(
pid: &BTreePageID,
bytes: &[u8],
tuple_scheme: &Schema,
key_field: usize,
) -> Self
where
Self: Sized;
fn get_pid(&self) -> BTreePageID;
fn get_parent_pid(&self) -> BTreePageID;
fn set_parent_pid(&mut self, pid: &BTreePageID);
fn get_page_data(&self) -> Vec<u8>;
fn set_before_image(&mut self);
fn get_before_image(&self) -> Vec<u8>;
fn peek(&self);
}