pub enum Positions {
Small(Vec<PositionData<u16>>),
Large(Vec<PositionData<u32>>),
Huge(Vec<PositionData<u64>>),
}
Expand description
Abstraction over differently sized position vectors
Variants§
Implementations§
Source§impl Positions
impl Positions
pub fn new(filesize: usize) -> Self
pub fn len(&self) -> usize
pub fn bytepos(&self, index: usize) -> Option<usize>
pub fn charpos(&self, index: usize) -> Option<usize>
pub fn size(&self, index: usize) -> Option<u8>
pub fn binary_search(&self, charpos: usize) -> Result<usize, usize>
pub fn push(&mut self, charpos: usize, bytepos: usize, charsize: u8)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Positions
impl RefUnwindSafe for Positions
impl Send for Positions
impl Sync for Positions
impl Unpin for Positions
impl UnwindSafe for Positions
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more