Struct ropey::RopeBuilder
source · pub struct RopeBuilder { /* private fields */ }
Expand description
An efficient incremental Rope
builder.
This is used to efficiently build ropes from sequences of text chunks. It is useful for creating ropes from:
- …large text files, without pre-loading their entire contents into
memory (but see
from_reader()
for a convenience function that does this for casual use-cases). - …streaming data sources.
- …non-utf8 text data, doing the encoding conversion incrementally as you go.
Unlike repeatedly calling Rope::insert()
on the end of a rope,
this API runs in time linear to the amount of data fed to it, and
is overall much faster.
§Example
let mut builder = RopeBuilder::new();
builder.append("Hello ");
builder.append("world!\n");
builder.append("How's ");
builder.append("it goin");
builder.append("g?");
let rope = builder.finish();
assert_eq!(rope, "Hello world!\nHow's it going?");
Implementations§
source§impl RopeBuilder
impl RopeBuilder
Trait Implementations§
source§impl Clone for RopeBuilder
impl Clone for RopeBuilder
source§fn clone(&self) -> RopeBuilder
fn clone(&self) -> RopeBuilder
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for RopeBuilder
impl Debug for RopeBuilder
Auto Trait Implementations§
impl Freeze for RopeBuilder
impl RefUnwindSafe for RopeBuilder
impl Send for RopeBuilder
impl Sync for RopeBuilder
impl Unpin for RopeBuilder
impl UnwindSafe for RopeBuilder
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)