D 1.0   D 2.0
About Japanese Translation

Last update Tue Oct 16 09:58:53 2007

std.outbuffer

Boilerplate:


class OutBuffer;
OutBuffer は、データから生の byte 配列を生成するのに役立つ機能を提供します。これは、 ファイルへ書き出すためのバイト列の生成などに使用できます。 OutBuffer では、マシンネイティブのバイトオーダを使用します。 バイト順(エンディアン)を指定する場合は、OutBuffer の派生クラスを使ってください。

ubyte[] toBytes();
内部バッファをubyteの配列へ変換します。

void reserve(size_t nbytes);
nbytes 以上の内部バッファをあらかじめ確保します。

これは速度最適化のための関数です。結果バッファの最大サイズを 予測しておくことで、再確保やコピー回数が減り、 パフォーマンスが向上します。

void write(ubyte[] bytes);
void write(ubyte b);
void write(byte b);
void write(char 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(string s);
void write(OutBuffer buf);
内部バッファへデータを追加します。

void fill0(size_t nbytes);
nbytes バイトの 0 を内部バッファへ追加します。

void alignSize(size_t alignsize);
alignsize 境界にそろうように 0 を追加します。

void align2();
alignSize(2) の最適化版です。

void align4();
alignSize(4) の最適化版です。

string toString();
内部バッファをcharの配列へ変換します。

void vprintf(string format, va_list args);
C の vprintf() の出力を内部バッファへ追加します。

void printf(string format,...);
C の printf() の出力を内部バッファへ追加します。

void spread(size_t index, size_t nbytes);
内部バッファのオフセット index の位置に nbytes の空き領域を作り、index以降のデータをその分シフトします。