use crate::offset::Offset;
#[derive(Debug, Clone)]
pub struct Column<O: Offset> {
pub dict_bytes: Vec<u8>,
pub dict_offsets: Vec<u32>,
pub bits: u32,
pub codes: Vec<u16>,
pub code_offsets: Vec<O>,
}
#[derive(Copy, Clone, Debug)]
pub struct Parts<'a> {
pub dict_bytes: &'a [u8],
pub dict_offsets: &'a [u32],
pub bits: u32,
pub codes: &'a [u16],
}
impl<O: Offset> Column<O> {
#[inline]
pub fn as_parts(&self) -> Parts<'_> {
Parts {
dict_bytes: &self.dict_bytes,
dict_offsets: &self.dict_offsets,
bits: self.bits,
codes: &self.codes,
}
}
}