Module bumpalo::collections::string[][src]

A UTF-8 encoded, growable string.

This module contains the String type and several error types that may result from working with Strings.

Examples

You can create a new String from a string literal with String::from_str_in:

use bumpalo::{Bump, collections::String};

let b = Bump::new();

let s = String::from_str_in("world", &b);

You can create a new String from an existing one by concatenating with +:

use bumpalo::{Bump, collections::String};

let s = "Hello".to_string();

let message = s + " world!";

If you have a vector of valid UTF-8 bytes, you can make a String out of it. You can do the reverse too.

use bumpalo::{Bump, collections::String};

let b = Bump::new();

let sparkle_heart = bumpalo::vec![in &b; 240, 159, 146, 150];

// We know these bytes are valid, so we'll use `unwrap()`.
let sparkle_heart = String::from_utf8(sparkle_heart).unwrap();

assert_eq!("💖", sparkle_heart);

let bytes = sparkle_heart.into_bytes();

assert_eq!(bytes, [240, 159, 146, 150]);

Structs

Drain

A draining iterator for String.

FromUtf8Error

A possible error value when converting a String from a UTF-8 byte vector.

FromUtf16Error

A possible error value when converting a String from a UTF-16 byte slice.

String

A UTF-8 encoded, growable string.