D Programming Language 2.0

- Comments
- D
- Search
- Home

Last update Tue Aug 10 19:14:15 2010

# std.outbuffer

Boilerplate:

License:
Boost License 1.0.

Authors:
Walter Bright

Copyright Digital Mars 2000 - 2009. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at ) http:
//www.boost.org/LICENSE_1_0.txt

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 from OutBuffer.

  ubyte[] toBytes();
    Convert to array of bytes.

  void reserve(uint 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.

  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(uint nbytes);
    Append nbytes of 0 to the internal buffer.

  void alignSize(uint 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(uint index, uint nbytes);
    At offset index into buffer, create nbytes of space by shifting upwards all data past index.

Copyright Digital Mars 2000 - 2009. | Page generated by Ddoc.