rstring-builder 0.1.2

String builder type
Documentation
rstring-builder
===

[![Build Status](https://drone.0u0.me/api/badges/fewensa/rstring-builder/status.svg)](https://drone.0u0.me/fewensa/rstring-builder)

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

```toml
[dependencies]
rstring-builder = "0.1"
```

# Example

```rust
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