diff options
| author | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2012-02-21 09:22:50 -0800 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-02-28 18:00:50 -0800 |
| commit | ec51d8fd037cbdfcee7fcf5dbada906451cd1633 (patch) | |
| tree | 0d686a69fd8a30132789bf7c5d08ef12a71e5e51 /src/libstd | |
| parent | b9948baf787e346e1684f530031adabb0c2a8532 (diff) | |
| download | rust-ec51d8fd037cbdfcee7fcf5dbada906451cd1633.tar.gz rust-ec51d8fd037cbdfcee7fcf5dbada906451cd1633.zip | |
std: Add helpers to simplify making str io::writers
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/io.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/libstd/io.rs b/src/libstd/io.rs index 1efd91d54db..253853c6762 100644 --- a/src/libstd/io.rs +++ b/src/libstd/io.rs @@ -508,6 +508,19 @@ fn mem_buffer_buf(b: mem_buffer) -> [u8] { vec::from_mut(b.buf) } fn mem_buffer_str(b: mem_buffer) -> str { let b_ = vec::from_mut(b.buf); str::from_bytes(b_) + +fn with_str_writer(f: fn(writer)) -> str { + let buf = mk_mem_buffer(); + let wr = mem_buffer_writer(buf); + f(wr); + io::mem_buffer_str(buf) +} + +fn with_buf_writer(f: fn(writer)) -> [u8] { + let buf = mk_mem_buffer(); + let wr = mem_buffer_writer(buf); + f(wr); + io::mem_buffer_buf(buf) } // Utility functions |
