5 releases

0.1.4 May 24, 2019
0.1.3 Mar 31, 2019
0.1.2 Mar 31, 2019
0.1.1 Mar 30, 2019
0.1.0 Mar 30, 2019

#2198 in Rust patterns

Download history 27/week @ 2024-04-07 8/week @ 2024-04-14 16/week @ 2024-04-21 6/week @ 2024-04-28 96/week @ 2024-05-05 65/week @ 2024-05-12 3/week @ 2024-05-19 1/week @ 2024-06-02 6/week @ 2024-06-09 14/week @ 2024-06-16 8/week @ 2024-06-23 43/week @ 2024-06-30 7/week @ 2024-07-07 58/week @ 2024-07-14 83/week @ 2024-07-21

191 downloads per month
Used in 2 crates

MIT license

11KB
217 lines

rstring-builder

Build Status

This create is a string builder type. If you want support append your type, you can impl Vcharsable and then append your struct.

rstring-builder is designed to be character built, so Vcharsable will return Vec<char> and rstring-bulder is actually maintaining this array.

Now support

  • &str
  • String
  • OsStr
  • char
  • bool
  • i8
  • i16
  • i32
  • i64
  • i128
  • isize
  • u8
  • u16
  • u32
  • u64
  • u128
  • usize
  • f32
  • f64

Usage

[dependencies]
rstring-builder = "0.1"

Example

use rstring_builder::StringBuilder;

#[test]
fn test_string_builder() {
  let mut builder = StringBuilder::new();
  builder.append("a")
    .append('b')
    .append("c".to_string())
    .append("\ndef");

  assert_eq!("bc\ndef".to_string(), builder.delete_at(0).string());
  assert_eq!("bdef".to_string(), builder.delete(1, 3).string());
  assert_eq!(4, builder.len());
  assert_eq!("b".to_string(), builder.delete(1, builder.len()).string());
  assert_eq!("".to_string(), builder.clear().to_string());
}

License

MIT

No runtime deps