[][src]Struct rstring_builder::StringBuilder

pub struct StringBuilder { /* fields omitted */ }

Methods

impl StringBuilder[src]

pub fn new() -> StringBuilder[src]

Return a new StringBuilder with default initial capacity.

pub fn with_capacity(size: usize) -> StringBuilder[src]

Return a new StringBuilder with an initial capacity.

pub fn append<T: Vcharsable>(&mut self, buff: T) -> &mut StringBuilder[src]

Add a type that can be viewed as a slice of bytes.

Example

use rstring_builder::StringBuilder;
let mut builder = StringBuilder::new();
builder.append("some string");

pub fn len(&self) -> usize[src]

Return the current length in chars of the underlying buffer.

Example

use rstring_builder::StringBuilder;

let mut builder = StringBuilder::new();
builder.append("four");
assert_eq!(builder.len(), 4);
builder.append("華文");
assert_eq!(builder.len(), 6);

pub fn delete_at(&mut self, start: usize) -> &mut StringBuilder[src]

Delete chars of index

Example

use rstring_builder::StringBuilder;

let mut builder = StringBuilder::new();
builder.append("abc");
assert_eq!("bc".to_string(), builder.delete_at(0).string());
assert_eq!("b".to_string(), builder.delete_at(1).string());

pub fn delete(&mut self, start: usize, end: usize) -> &mut StringBuilder[src]

Delete chars range

Example

use rstring_builder::StringBuilder;

let mut builder = StringBuilder::new();
builder.append("abc\ndef");
assert_eq!("adef".to_string(), builder.delete(1, 4).string());
assert_eq!("".to_string(), builder.delete(0, builder.len()).string());

pub fn clear(&mut self) -> &mut StringBuilder[src]

Clear string builder.

Example

use rstring_builder::StringBuilder;

let mut builder = StringBuilder::new();
builder.append("abc\ndef");
assert_eq!("".to_string(), builder.clear().string());

pub fn string(&self) -> String[src]

Return String

Example

use rstring_builder::StringBuilder;

let mut builder = StringBuilder::new();
builder.append("abc\ndef");
assert_eq!("abc\ndef".to_string(), builder.string());

pub fn is_empty(&self) -> bool[src]

text builder is empty

Example

use rstring_builder::StringBuilder;

let mut builder = StringBuilder::new();
assert_eq!(true, builder.is_empty());
builder.append("abc\ndef");
assert_eq!(false, builder.is_empty());

Trait Implementations

impl Vcharsable for StringBuilder[src]

impl PartialEq<StringBuilder> for StringBuilder[src]

impl ToString for StringBuilder[src]

impl Debug for StringBuilder[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]