Improve this page Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone. Page wiki View or edit the community-maintained wiki page associated with this page.
Boost License 1.0. Authors:
Walter Bright Source:
- class OutBuffer;
- OutBuffer provides a way to build up an array of bytes out
of raw data. It is useful for things like preparing an
array of bytes to write out to a file.
OutBuffer's byte order is the format native to the computer.
To control the byte order (endianness), use a class derived
OutBuffer's internal buffer is allocated with the GC.
- ubyte toBytes();
- Convert to array of bytes.
- void reserve(size_t nbytes);
- Preallocate nbytes more to the size of the internal buffer. This is a speed optimization, a good guess at the maximum size of the resulting buffer will improve performance by eliminating reallocations and copying.
- alias put = write;
- put enables OutBuffer to be used as an OutputRange.
- void write(const(ubyte) bytes);
void write(ubyte b);
void write(byte b);
void write(char c);
void write(dchar c);
void write(ushort w);
void write(short s);
void write(wchar c);
void write(uint w);
void write(int i);
void write(ulong l);
void write(long l);
void write(float f);
void write(double f);
void write(real f);
void write(in char s);
void write(OutBuffer buf);
- Append data to the internal buffer.
- void fill0(size_t nbytes);
- Append nbytes of 0 to the internal buffer.
- void alignSize(size_t alignsize);
- 0-fill to align on power of 2 boundary.
- void align2();
- Optimize common special case alignSize(2)
- void align4();
- Optimize common special case alignSize(4)
- string toString();
- Convert internal buffer to array of chars.
- void vprintf(string format, va_list args);
- Append output of C's vprintf() to internal buffer.
- void printf(string format, ...);
- Append output of C's printf() to internal buffer.
- void spread(size_t index, size_t nbytes);
- At offset index into buffer, create nbytes of space by shifting upwards all data past index.