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以降のデータをその分シフトします。
Copyright © 1999-2009 by Digital Mars, All Rights Reserved