pub struct Buffers {
pub original_buffers: PrimaryMap<BufferRef, OriginalBuffer>,
pub modifications_buffer: String,
pub modifications_newline_offsets: Vec<u32>,
pub modifications_char_checkpoints: Vec<(u32, u32)>,
}Fields§
§original_buffers: PrimaryMap<BufferRef, OriginalBuffer>§modifications_buffer: String§modifications_newline_offsets: Vec<u32>§modifications_char_checkpoints: Vec<(u32, u32)>Implementations§
Source§impl Buffers
impl Buffers
pub fn new() -> Self
pub fn get(&self, buffer: BufferRef) -> &str
pub fn get_slice(&self, buffer: BufferRef, offset: u32, len: u32) -> &str
pub fn count_chars_and_newlines( &self, buffer: BufferRef, start_offset: u32, len: u32, ) -> (u32, u32)
pub fn count_chars(&self, buffer: BufferRef, offset: u32, len: u32) -> u32
pub fn count_newlines(&self, buffer: BufferRef, offset: u32, len: u32) -> u32
Sourcepub fn char_to_byte_absolute(&self, buffer: BufferRef, target_char: u32) -> u32
pub fn char_to_byte_absolute(&self, buffer: BufferRef, target_char: u32) -> u32
Converts an absolute char index to an absolute byte offset for a specific buffer
Sourcepub fn byte_to_char_absolute(&self, buffer: BufferRef, target_byte: u32) -> u32
pub fn byte_to_char_absolute(&self, buffer: BufferRef, target_byte: u32) -> u32
Converts an absolute byte offset to an absolute char index for a specific buffer
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Buffers
impl RefUnwindSafe for Buffers
impl Send for Buffers
impl Sync for Buffers
impl Unpin for Buffers
impl UnsafeUnpin for Buffers
impl UnwindSafe for Buffers
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