An open API service indexing awesome lists of open source software.

https://github.com/burner/stringbuffer

A stack based string buffer that grows into the heap if needed.
https://github.com/burner/stringbuffer

dlang stack string stringbuffer

Last synced: 2 months ago
JSON representation

A stack based string buffer that grows into the heap if needed.

Awesome Lists containing this project

README

          

StringBuffer
============

![alt text](https://travis-ci.org/burner/StringBuffer.svg?branch=master)

A simple stack based StringBuffer that overflows into the heap and releases
all used memory on destruction.

By default the StringBuffer can store 512 chars on the stack.
If a different number of chars on the stack is required create an
```d
alias MyStringBuffer = StringBufferImpl!1337;
```
like this.

The two important methods of the StringBuffer are writer and getData.
The method writer returns a OutputRange that can be used with formattedWrite
from std.format;
The method getData returns a string of the stored data.
No reference to the returned data from writer and getData must be used after
the associated StringBuffer is destructed.

Example
-------

```d
unittest {
import std.format : formattedWrite;

StringBuffer buf;
auto w = buf.writer();
formattedWrite(w, "foobar %d", 10);
assert(buf.getData() == "foobar 10");
}
```