summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian White <mscdex@mscdex.net>2011-08-09 00:40:10 -0400
committerBen Noordhuis <info@bnoordhuis.nl>2011-08-12 15:49:57 +0200
commitb7c23ac3f5e550e272d3695bf7076343e2d79c79 (patch)
treed9eb40295d3d04f559949653196c9f23def3a615
parenta002f4f4531eafaa2a5bb5d446616528e151dfc1 (diff)
downloadnode-new-b7c23ac3f5e550e272d3695bf7076343e2d79c79.tar.gz
Incorporate endianness into buffer.read* function names instead of passing in a boolean flag
-rw-r--r--doc/api/buffers.markdown256
-rw-r--r--lib/buffer.js466
-rw-r--r--lib/buffer_ieee754.js14
-rw-r--r--test/simple/test-readdouble.js61
-rw-r--r--test/simple/test-readfloat.js37
-rw-r--r--test/simple/test-readint.js68
-rw-r--r--test/simple/test-readuint.js51
-rw-r--r--test/simple/test-writedouble.js21
-rw-r--r--test/simple/test-writefloat.js21
-rw-r--r--test/simple/test-writeint.js44
-rw-r--r--test/simple/test-writeuint.js55
11 files changed, 595 insertions, 499 deletions
diff --git a/doc/api/buffers.markdown b/doc/api/buffers.markdown
index 9ebf5a9f3c..940635abb2 100644
--- a/doc/api/buffers.markdown
+++ b/doc/api/buffers.markdown
@@ -155,8 +155,8 @@ indexes.
**Modifying the new buffer slice will modify memory in the original buffer!**
-Example: build a Buffer with the ASCII alphabet, take a slice, then modify one byte
-from the original Buffer.
+Example: build a Buffer with the ASCII alphabet, take a slice, then modify one
+byte from the original Buffer.
var buf1 = new Buffer(26);
@@ -172,11 +172,12 @@ from the original Buffer.
// abc
// !bc
-### buffer.readUInt8(offset, bigEndian)
+### buffer.readUInt8(offset, noAssert=false)
-Reads an unsigned 8 bit integer from the buffer at the specified offset. If
-`bigEndian` is true, reads bytes in a big endian format, otherwise reads them as
-little endian.
+Reads an unsigned 8 bit integer from the buffer at the specified offset.
+
+Set `noAssert` to true to skip validation of `offset`. This means that `offset`
+may be beyond the end of the buffer.
Example:
@@ -188,24 +189,22 @@ Example:
buf[3] = 0x42;
for (ii = 0; ii < buf.length; ii++) {
- console.log(buf.readUInt8(ii, true));
- console.log(buf.readUInt8(ii, false));
+ console.log(buf.readUInt8(ii);
}
// 0x3
- // 0x3
// 0x4
- // 0x4
- // 0x23
// 0x23
// 0x42
- // 0x42
-### buffer.readUInt16(offset, bigEndian)
+### buffer.readUInt16LE(offset, noAssert=false)
+### buffer.readUInt16BE(offset, noAssert=false)
+
+Reads an unsigned 16 bit integer from the buffer at the specified offset with
+specified endian format.
-Reads an unsigned 16 bit integer from the buffer at the specified offset. If
-`bigEndian` is true, reads bytes in a big endian format, otherwise reads them as
-little endian.
+Set `noAssert` to true to skip validation of `offset`. This means that `offset`
+may be beyond the end of the buffer.
Example:
@@ -216,12 +215,12 @@ Example:
buf[2] = 0x23;
buf[3] = 0x42;
- console.log(buf.readUInt16(0, true));
- console.log(buf.readUInt16(0, false));
- console.log(buf.readUInt16(1, true));
- console.log(buf.readUInt16(1, false));
- console.log(buf.readUInt16(2, true));
- console.log(buf.readUInt16(2, false));
+ console.log(buf.readUInt16BE(0));
+ console.log(buf.readUInt16LE(0));
+ console.log(buf.readUInt16BE(1));
+ console.log(buf.readUInt16LE(1));
+ console.log(buf.readUInt16BE(2));
+ console.log(buf.readUInt16LE(2));
// 0x0304
// 0x0403
@@ -230,12 +229,14 @@ Example:
// 0x2342
// 0x4223
-### buffer.readUInt32(offset, bigEndian)
+### buffer.readUInt32LE(offset, noAssert=false)
+### buffer.readUInt32BE(offset, noAssert=false)
-Reads an unsigned 32 bit integer from the buffer at the specified offset. If
-`bigEndian` is true, reads bytes in a big endian format, otherwise reads them as
-little endian.
+Reads an unsigned 32 bit integer from the buffer at the specified offset with
+specified endian format.
+Set `noAssert` to true to skip validation of `offset`. This means that `offset`
+may be beyond the end of the buffer.
Example:
@@ -246,43 +247,54 @@ Example:
buf[2] = 0x23;
buf[3] = 0x42;
- console.log(buf.readUInt32(0, true));
- console.log(buf.readUInt32(0, false));
+ console.log(buf.readUInt32BE(0));
+ console.log(buf.readUInt32LE(0));
// 0x03042342
// 0x42230403
-### buffer.readInt8(offset, bigEndian)
+### buffer.readInt8(offset, noAssert=false)
-Reads a signed 8 bit integer from the buffer at the specified offset. If
-`bigEndian` is true, reads bytes in a big endian format, otherwise reads them as
-little endian.
+Reads a signed 8 bit integer from the buffer at the specified offset.
-Works as `buffer.readUInt8`, except buffer contents are treated as twos
+Set `noAssert` to true to skip validation of `offset`. This means that `offset`
+may be beyond the end of the buffer.
+
+Works as `buffer.readUInt8`, except buffer contents are treated as two's
complement signed values.
-### buffer.readInt16(offset, bigEndian)
+### buffer.readInt16LE(offset, noAssert=false)
+### buffer.readInt16BE(offset, noAssert=false)
+
+Reads a signed 16 bit integer from the buffer at the specified offset with
+specified endian format.
-Reads a signed 16 bit integer from the buffer at the specified offset. If
-`bigEndian` is true, reads bytes in a big endian format, otherwise reads them as
-little endian.
+Set `noAssert` to true to skip validation of `offset`. This means that `offset`
+may be beyond the end of the buffer.
-Works as `buffer.readUInt16`, except buffer contents are treated as twos
+Works as `buffer.readUInt16*`, except buffer contents are treated as two's
complement signed values.
-### buffer.readInt32(offset, bigEndian)
+### buffer.readInt32LE(offset, noAssert=false)
+### buffer.readInt32BE(offset, noAssert=false)
-Reads a signed 32 bit integer from the buffer at the specified offset. If
-`bigEndian` is true, reads bytes in a big endian format, otherwise reads them as
-little endian.
+Reads a signed 32 bit integer from the buffer at the specified offset with
+specified endian format.
-Works as `buffer.readUInt32`, except buffer contents are treated as twos
+Set `noAssert` to true to skip validation of `offset`. This means that `offset`
+may be beyond the end of the buffer.
+
+Works as `buffer.readUInt32*`, except buffer contents are treated as two's
complement signed values.
-### buffer.readFloat(offset, bigEndian)
+### buffer.readFloatLE(offset, noAssert=false)
+### buffer.readFloatBE(offset, noAssert=false)
-Reads a 32 bit float from the buffer at the specified offset.
+Reads a 32 bit float from the buffer at the specified offset with specified
+endian format.
+Set `noAssert` to true to skip validation of `offset`. This means that `offset`
+may be beyond the end of the buffer.
Example:
@@ -293,15 +305,18 @@ Example:
buf[2] = 0x80;
buf[3] = 0x3f;
- console.log(buf.readFloat(0, false));
+ console.log(buf.readFloatLE(0));
// 0x01
-### buffer.readDouble(offset, bigEndian)
+### buffer.readDoubleLE(offset, noAssert=false)
+### buffer.readDoubleBE(offset, noAssert=false)
+
+Reads a 64 bit double from the buffer at the specified offset with specified
+endian format.
-Reads a 64 bit double from the buffer at the specified offset. Endian must be
-either true or false and specifies what endian ordering to read the bytes
-from the buffer in.
+Set `noAssert` to true to skip validation of `offset`. This means that `offset`
+may be beyond the end of the buffer.
Example:
@@ -316,152 +331,175 @@ Example:
buf[6] = 0xd5;
buf[7] = 0x3f;
- console.log(buf.readDouble(0, false));
+ console.log(buf.readDoubleLE(0));
// 0.3333333333333333
-### buffer.writeUInt8(value, offset, bigEndian)
+### buffer.writeUInt8(value, offset, noAssert=false)
-Writes `value` to the buffer at the specified offset with specified endian
-format. Note, `value` must be a valid 8 bit unsigned integer.
+Writes `value` to the buffer at the specified offset. Note, `value` must be a
+valid unsigned 8 bit integer.
+
+Set `noAssert` to true to skip validation of `value` and `offset`. This means
+that `value` may be too large for the specific function and `offset` may be
+beyond the end of the buffer leading to the values being silently dropped. This
+should not be used unless you are certain of correctness.
Example:
var buf = new Buffer(4);
- buf.writeUInt8(0x3, 0, true);
- buf.writeUInt8(0x4, 1, true);
- buf.writeUInt8(0x23, 2, true);
- buf.writeUInt8(0x42, 3, true);
-
- console.log(buf);
-
- buf.writeUInt8(0x3, 0, false);
- buf.writeUInt8(0x4, 1, false);
- buf.writeUInt8(0x23, 2, false);
- buf.writeUInt8(0x42, 3, false);
+ buf.writeUInt8(0x3, 0);
+ buf.writeUInt8(0x4, 1);
+ buf.writeUInt8(0x23, 2);
+ buf.writeUInt8(0x42, 3);
console.log(buf);
// <Buffer 03 04 23 42>
- // <Buffer 03 04 23 42>
-### buffer.writeUInt16(value, offset, bigEndian)
+### buffer.writeUInt16LE(value, offset, noAssert=false)
+### buffer.writeUInt16BE(value, offset, noAssert=false)
Writes `value` to the buffer at the specified offset with specified endian
-format. Note, `value` must be a valid 16 bit unsigned integer.
+format. Note, `value` must be a valid unsigned 16 bit integer.
+
+Set `noAssert` to true to skip validation of `value` and `offset`. This means
+that `value` may be too large for the specific function and `offset` may be
+beyond the end of the buffer leading to the values being silently dropped. This
+should not be used unless you are certain of correctness.
Example:
var buf = new Buffer(4);
- buf.writeUInt16(0xdead, 0, true);
- buf.writeUInt16(0xbeef, 2, true);
+ buf.writeUInt16BE(0xdead, 0);
+ buf.writeUInt16BE(0xbeef, 2);
console.log(buf);
- buf.writeUInt16(0xdead, 0, false);
- buf.writeUInt16(0xbeef, 2, false);
+ buf.writeUInt16LE(0xdead, 0);
+ buf.writeUInt16LE(0xbeef, 2);
console.log(buf);
// <Buffer de ad be ef>
// <Buffer ad de ef be>
-### buffer.writeUInt32(value, offset, bigEndian)
+### buffer.writeUInt32LE(value, offset, noAssert=false)
+### buffer.writeUInt32BE(value, offset, noAssert=false)
Writes `value` to the buffer at the specified offset with specified endian
-format. Note, `value` must be a valid 32 bit unsigned integer.
+format. Note, `value` must be a valid unsigned 32 bit integer.
+
+Set `noAssert` to true to skip validation of `value` and `offset`. This means
+that `value` may be too large for the specific function and `offset` may be
+beyond the end of the buffer leading to the values being silently dropped. This
+should not be used unless you are certain of correctness.
Example:
var buf = new Buffer(4);
- buf.writeUInt32(0xfeedface, 0, true);
+ buf.writeUInt32BE(0xfeedface, 0);
console.log(buf);
- buf.writeUInt32(0xfeedface, 0, false);
+ buf.writeUInt32LE(0xfeedface, 0);
console.log(buf);
// <Buffer fe ed fa ce>
// <Buffer ce fa ed fe>
-### buffer.writeInt8(value, offset, bigEndian)
+### buffer.writeInt8(value, offset, noAssert=false)
-Writes `value` to the buffer at the specified offset with specified endian
-format. Note, `value` must be a valid 16 bit signed integer.
+Writes `value` to the buffer at the specified offset. Note, `value` must be a
+valid signed 8 bit integer.
+
+Set `noAssert` to true to skip validation of `value` and `offset`. This means
+that `value` may be too large for the specific function and `offset` may be
+beyond the end of the buffer leading to the values being silently dropped. This
+should not be used unless you are certain of correctness.
Works as `buffer.writeUInt8`, except value is written out as a two's complement
signed integer into `buffer`.
-### buffer.writeInt16(value, offset, bigEndian)
+### buffer.writeInt16LE(value, offset, noAssert=false)
+### buffer.writeInt16BE(value, offset, noAssert=false)
Writes `value` to the buffer at the specified offset with specified endian
-format. Note, `value` must be a valid 16 bit unsigned integer.
+format. Note, `value` must be a valid signed 16 bit integer.
-Works as `buffer.writeUInt16`, except value is written out as a two's complement
-signed integer into `buffer`.
+Set `noAssert` to true to skip validation of `value` and `offset`. This means
+that `value` may be too large for the specific function and `offset` may be
+beyond the end of the buffer leading to the values being silently dropped. This
+should not be used unless you are certain of correctness.
+
+Works as `buffer.writeUInt16*`, except value is written out as a two's
+complement signed integer into `buffer`.
-### buffer.writeInt32(value, offset, bigEndian)
+### buffer.writeInt32LE(value, offset, noAssert=false)
+### buffer.writeInt32BE(value, offset, noAssert=false)
Writes `value` to the buffer at the specified offset with specified endian
-format. Note, `value` must be a valid 32 bit signed integer.
+format. Note, `value` must be a valid signed 32 bit integer.
-Works as `buffer.writeUInt32`, except value is written out as a two's complement
-signed integer into `buffer`.
+Set `noAssert` to true to skip validation of `value` and `offset`. This means
+that `value` may be too large for the specific function and `offset` may be
+beyond the end of the buffer leading to the values being silently dropped. This
+should not be used unless you are certain of correctness.
+
+Works as `buffer.writeUInt32*`, except value is written out as a two's
+complement signed integer into `buffer`.
-### buffer.writeFloat(value, offset, bigEndian)
+### buffer.writeFloatLE(value, offset, noAssert=false)
+### buffer.writeFloatBE(value, offset, noAssert=false)
Writes `value` to the buffer at the specified offset with specified endian
format. Note, `value` must be a valid 32 bit float.
+Set `noAssert` to true to skip validation of `value` and `offset`. This means
+that `value` may be too large for the specific function and `offset` may be
+beyond the end of the buffer leading to the values being silently dropped. This
+should not be used unless you are certain of correctness.
+
Example:
var buf = new Buffer(4);
- buf.writeFloat(0xcafebabe, 0, true);
+ buf.writeFloatBE(0xcafebabe, 0);
console.log(buf);
- buf.writeFloat(0xcafebabe, 0, false);
+ buf.writeFloatLE(0xcafebabe, 0);
console.log(buf);
// <Buffer 4f 4a fe bb>
// <Buffer bb fe 4a 4f>
-### buffer.writeDouble(value, offset, bigEndian)
+### buffer.writeDoubleLE(value, offset, noAssert=false)
+### buffer.writeDoubleBE(value, offset, noAssert=false)
Writes `value` to the buffer at the specified offset with specified endian
format. Note, `value` must be a valid 64 bit double.
+Set `noAssert` to true to skip validation of `value` and `offset`. This means
+that `value` may be too large for the specific function and `offset` may be
+beyond the end of the buffer leading to the values being silently dropped. This
+should not be used unless you are certain of correctness.
+
Example:
var buf = new Buffer(8);
- buf.writeFloat(0xdeadbeefcafebabe, 0, true);
+ buf.writeDoubleBE(0xdeadbeefcafebabe, 0);
console.log(buf);
- buf.writeFloat(0xdeadbeefcafebabe, 0, false);
+ buf.writeDoubleLE(0xdeadbeefcafebabe, 0);
console.log(buf);
// <Buffer 43 eb d5 b7 dd f9 5f d7>
// <Buffer d7 5f f9 dd b7 d5 eb 43>
-### buffer.readUInt8NoChk(value, offset, bigEndian)
-### buffer.readUInt16NoChk(value, offset, bigEndian)
-### buffer.readUInt32NoChk(value, offset, bigEndian)
-### buffer.writeUInt8NoChk(value, offset, bigEndian)
-### buffer.writeUInt16NoChk(value, offset, bigEndian)
-### buffer.writeUInt32NoChk(value, offset, bigEndian)
-
-These functions all work as per the versions without the NoChk suffix. These
-functions allow you to do use the raw functionality without any kind of
-validation for correctness. This means that value may be too large for the
-specific function and offset may be beyond the end of the buffer leading to the
-values being silently dropped. These should not be used unless you are certain
-of correctness.
-
-
### buffer.fill(value, offset=0, length=-1)
Fills the buffer with the specified value. If the offset and length are not
@@ -472,5 +510,5 @@ given it will fill the entire buffer.
### INSPECT_MAX_BYTES
-How many bytes will be returned when `b.inspect()` is called. This can
+How many bytes will be returned when `buffer.inspect()` is called. This can
be overriden by user modules.
diff --git a/lib/buffer.js b/lib/buffer.js
index b9c86b9058..c8a4eb14ce 100644
--- a/lib/buffer.js
+++ b/lib/buffer.js
@@ -536,28 +536,36 @@ Buffer.prototype.asciiWrite = function(string, offset) {
return this.write(string, offset, 'ascii');
};
-Buffer.prototype.readUInt8NoChk = function(offset, bigEndian) {
+Buffer.prototype.readUInt8 = function(offset, noAssert) {
var buffer = this;
+
+ if (!noAssert) {
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
+
+ assert.ok(offset < buffer.length,
+ 'Trying to read beyond buffer length');
+ }
+
return buffer[offset];
};
-Buffer.prototype.readUInt8 = function(offset, bigEndian) {
- var buffer = this;
+function readUInt16(buffer, offset, isBigEndian, noAssert) {
+ var val = 0;
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
- assert.ok(offset < buffer.length,
- 'Trying to read beyond buffer length');
+ if (!noAssert) {
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- return buffer.readUInt8NoChk(offset, bigEndian);
-};
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
-Buffer.prototype.readUInt16NoChk = function(offset, bigEndian) {
- var val = 0;
- var buffer = this;
+ assert.ok(offset + 1 < buffer.length,
+ 'Trying to read beyond buffer length');
+ }
- if (bigEndian) {
+ if (isBigEndian) {
val = buffer[offset] << 8;
val |= buffer[offset + 1];
} else {
@@ -566,28 +574,31 @@ Buffer.prototype.readUInt16NoChk = function(offset, bigEndian) {
}
return val;
-};
+}
-Buffer.prototype.readUInt16 = function(offset, bigEndian) {
- var buffer = this;
+Buffer.prototype.readUInt16LE = function(offset, noAssert) {
+ return readUInt16(this, offset, false, noAssert);
+};
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+Buffer.prototype.readUInt16BE = function(offset, noAssert) {
+ return readUInt16(this, offset, true, noAssert);
+};
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+function readUInt32(buffer, offset, isBigEndian, noAssert) {
+ var val = 0;
- assert.ok(offset + 1 < buffer.length,
- 'Trying to read beyond buffer length');
+ if (!noAssert) {
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- return buffer.readUInt16NoChk(offset, bigEndian);
-};
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
-Buffer.prototype.readUInt32NoChk = function(offset, bigEndian) {
- var val = 0;
- var buffer = this;
+ assert.ok(offset + 3 < buffer.length,
+ 'Trying to read beyond buffer length');
+ }
- if (bigEndian) {
+ if (isBigEndian) {
val = buffer[offset + 1] << 16;
val |= buffer[offset + 2] << 8;
val |= buffer[offset + 3];
@@ -600,22 +611,14 @@ Buffer.prototype.readUInt32NoChk = function(offset, bigEndian) {
}
return val;
-};
-
-Buffer.prototype.readUInt32 = function(offset, bigEndian) {
- var val = 0;
- var buffer = this;
-
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
-
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+}
- assert.ok(offset + 3 < buffer.length,
- 'Trying to read beyond buffer length');
+Buffer.prototype.readUInt32LE = function(offset, noAssert) {
+ return readUInt32(this, offset, false, noAssert);
+};
- return buffer.readUInt32NoChk(offset, bigEndian);
+Buffer.prototype.readUInt32BE = function(offset, noAssert) {
+ return readUInt32(this, offset, true, noAssert);
};
@@ -664,15 +667,17 @@ Buffer.prototype.readUInt32 = function(offset, bigEndian) {
* (0x007f + 1) * -1
* (0x0080) * -1
*/
-Buffer.prototype.readInt8 = function(offset, bigEndian) {
+Buffer.prototype.readInt8 = function(offset, noAssert) {
var buffer = this;
var neg;
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ if (!noAssert) {
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(offset < buffer.length,
- 'Trying to read beyond buffer length');
+ assert.ok(offset < buffer.length,
+ 'Trying to read beyond buffer length');
+ }
neg = buffer[offset] & 0x80;
if (!neg) {
@@ -682,77 +687,108 @@ Buffer.prototype.readInt8 = function(offset, bigEndian) {
return ((0xff - buffer[offset] + 1) * -1);
};
-
-Buffer.prototype.readInt16 = function(offset, bigEndian) {
- var buffer = this;
+function readInt16(buffer, offset, isBigEndian, noAssert) {
var neg;
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+ if (!noAssert) {
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(offset + 1 < buffer.length,
- 'Trying to read beyond buffer length');
+ assert.ok(offset + 1 < buffer.length,
+ 'Trying to read beyond buffer length');
+ }
- val = buffer.readUInt16NoChk(offset, bigEndian);
+ val = readUInt16(buffer, offset, isBigEndian, noAssert);
neg = val & 0x8000;
if (!neg) {
return val;
}
return (0xffff - val + 1) * -1;
+}
+
+Buffer.prototype.readInt16LE = function(offset, noAssert) {
+ return readInt16(this, offset, false, noAssert);
};
+Buffer.prototype.readInt16BE = function(offset, noAssert) {
+ return readInt16(this, offset, true, noAssert);
+};
-Buffer.prototype.readInt32 = function(offset, bigEndian) {
- var buffer = this;
+function readInt32(buffer, offset, isBigEndian, noAssert) {
var neg;
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+ if (!noAssert) {
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(offset + 3 < buffer.length,
- 'Trying to read beyond buffer length');
+ assert.ok(offset + 3 < buffer.length,
+ 'Trying to read beyond buffer length');
+ }
- val = buffer.readUInt32NoChk(offset, bigEndian);
+ val = readUInt32(buffer, offset, isBigEndian, noAssert);
neg = val & 0x80000000;
if (!neg) {
return (val);
}
return (0xffffffff - val + 1) * -1;
-};
+}
+Buffer.prototype.readInt32LE = function(offset, noAssert) {
+ return readInt32(this, offset, false, noAssert);
+};
-Buffer.prototype.readFloat = function(offset, bigEndian) {
- var buffer = this;
+Buffer.prototype.readInt32BE = function(offset, noAssert) {
+ return readInt32(this, offset, true, noAssert);
+};
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+function readFloat(buffer, offset, isBigEndian, noAssert) {
+ if (!noAssert) {
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- assert.ok(offset + 3 < buffer.length,
- 'Trying to read beyond buffer length');
+ assert.ok(offset + 3 < buffer.length,
+ 'Trying to read beyond buffer length');
+ }
- return require('buffer_ieee754').readIEEE754(buffer, offset, bigEndian,
+ return require('buffer_ieee754').readIEEE754(buffer, offset, isBigEndian,
23, 4);
+}
+
+Buffer.prototype.readFloatLE = function(offset, noAssert) {
+ return readFloat(this, offset, false, noAssert);
};
-Buffer.prototype.readDouble = function(offset, bigEndian) {
- var buffer = this;
+Buffer.prototype.readFloatBE = function(offset, noAssert) {
+ return readFloat(this, offset, true, noAssert);
+};
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+function readDouble(buffer, offset, isBigEndian, noAssert) {
+ if (!noAssert) {
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- assert.ok(offset + 7 < buffer.length,
- 'Trying to read beyond buffer length');
+ assert.ok(offset + 7 < buffer.length,
+ 'Trying to read beyond buffer length');
+ }
- return require('buffer_ieee754').readIEEE754(buffer, offset, bigEndian,
+ return require('buffer_ieee754').readIEEE754(buffer, offset, isBigEndian,
52, 8);
+}
+
+Buffer.prototype.readDoubleLE = function(offset, noAssert) {
+ return readDouble(this, offset, false, noAssert);
+};
+
+Buffer.prototype.readDoubleBE = function(offset, noAssert) {
+ return readDouble(this, offset, true, noAssert);
};
@@ -777,68 +813,77 @@ function verifuint(value, max) {
assert.ok(Math.floor(value) === value, 'value has a fractional component');
}
-Buffer.prototype.writeUInt8NoChk = function(value, offset, bigEndian) {
+Buffer.prototype.writeUInt8 = function(value, offset, noAssert) {
var buffer = this;
- buffer[offset] = value;
-};
-Buffer.prototype.writeUInt8 = function(value, offset, bigEndian) {
- var buffer = this;
+ if (!noAssert) {
+ assert.ok(value !== undefined && value !== null,
+ 'missing value');
- assert.ok(value !== undefined && value !== null,
- 'missing value');
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+ assert.ok(offset < buffer.length,
+ 'trying to write beyond buffer length');
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ verifuint(value, 0xff);
+ }
- assert.ok(offset < buffer.length,
- 'trying to write beyond buffer length');
+ buffer[offset] = value;
+};
- verifuint(value, 0xff);
+function writeUInt16(buffer, value, offset, isBigEndian, noAssert) {
+ if (!noAssert) {
+ assert.ok(value !== undefined && value !== null,
+ 'missing value');
- buffer.writeUInt8NoChk(value, offset, bigEndian);
-};
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
-Buffer.prototype.writeUInt16NoChk = function(value, offset, bigEndian) {
- var buffer = this;
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- if (bigEndian) {
+ assert.ok(offset + 1 < buffer.length,
+ 'trying to write beyond buffer length');
+
+ verifuint(value, 0xffff);
+ }
+
+ if (isBigEndian) {
buffer[offset] = (value & 0xff00) >>> 8;
buffer[offset + 1] = value & 0x00ff;
} else {
buffer[offset + 1] = (value & 0xff00) >>> 8;
buffer[offset] = value & 0x00ff;
}
+}
+Buffer.prototype.writeUInt16LE = function(value, offset, noAssert) {
+ writeUInt16(this, value, offset, false, noAssert);
};
-Buffer.prototype.writeUInt16 = function(value, offset, bigEndian) {
- var buffer = this;
-
- assert.ok(value !== undefined && value !== null,
- 'missing value');
-
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+Buffer.prototype.writeUInt16BE = function(value, offset, noAssert) {
+ writeUInt16(this, value, offset, true, noAssert);
+};
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+function writeUInt32(buffer, value, offset, isBigEndian, noAssert) {
+ if (!noAssert) {
+ assert.ok(value !== undefined && value !== null,
+ 'missing value');
- assert.ok(offset + 1 < buffer.length,
- 'trying to write beyond buffer length');
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- verifuint(value, 0xffff);
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- buffer.writeUInt16NoChk(value, offset, bigEndian);
-};
+ assert.ok(offset + 3 < buffer.length,
+ 'trying to write beyond buffer length');
-Buffer.prototype.writeUInt32NoChk = function(value, offset, bigEndian) {
- var buffer = this;
+ verifuint(value, 0xffffffff);
+ }
- if (bigEndian) {
+ if (isBigEndian) {
buffer[offset] = (value >>> 24) & 0xff;
buffer[offset + 1] = (value >>> 16) & 0xff;
buffer[offset + 2] = (value >>> 8) & 0xff;
@@ -849,26 +894,14 @@ Buffer.prototype.writeUInt32NoChk = function(value, offset, bigEndian) {
buffer[offset + 1] = (value >>> 8) & 0xff;
buffer[offset] = value & 0xff;
}
-};
-
-Buffer.prototype.writeUInt32 = function(value, offset, bigEndian) {
- var buffer = this;
-
- assert.ok(value !== undefined && value !== null,
- 'missing value');
-
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
-
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
-
- assert.ok(offset + 3 < buffer.length,
- 'trying to write beyond buffer length');
+}
- verifuint(value, 0xffffffff);
+Buffer.prototype.writeUInt32LE = function(value, offset, noAssert) {
+ writeUInt32(this, value, offset, false, noAssert);
+};
- buffer.writeUInt32NoChk(value, offset, bigEndian);
+Buffer.prototype.writeUInt32BE = function(value, offset, noAssert) {
+ writeUInt32(this, value, offset, true, noAssert);
};
@@ -923,7 +956,6 @@ function verifsint(value, max, min) {
assert.ok(Math.floor(value) === value, 'value has a fractional component');
}
-
function verifIEEE754(value, max, min) {
assert.ok(typeof (value) == 'number',
'cannot write a non-number as a number');
@@ -933,119 +965,147 @@ function verifIEEE754(value, max, min) {
assert.ok(value >= min, 'value smaller than minimum allowed value');
}
-
-Buffer.prototype.writeInt8 = function(value, offset, bigEndian) {
+Buffer.prototype.writeInt8 = function(value, offset, noAssert) {
var buffer = this;
- assert.ok(value !== undefined && value !== null,
- 'missing value');
+ if (!noAssert) {
+ assert.ok(value !== undefined && value !== null,
+ 'missing value');
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ assert.ok(offset < buffer.length,
+ 'Trying to write beyond buffer length');
- assert.ok(offset < buffer.length,
- 'Trying to write beyond buffer length');
-
- verifsint(value, 0x7f, -0xf0);
+ verifsint(value, 0x7f, -0xf0);
+ }
if (value >= 0) {
- buffer.writeUInt8NoChk(value, offset, bigEndian);
+ buffer.writeUInt8(value, offset, noAssert);
} else {
- buffer.writeUInt8NoChk(0xff + value + 1, offset, bigEndian);
+ buffer.writeUInt8(0xff + value + 1, offset, noAssert);
}
};
+function writeInt16(buffer, value, offset, isBigEndian, noAssert) {
+ if (!noAssert) {
+ assert.ok(value !== undefined && value !== null,
+ 'missing value');
-Buffer.prototype.writeInt16 = function(value, offset, bigEndian) {
- var buffer = this;
-
- assert.ok(value !== undefined && value !== null,
- 'missing value');
-
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(offset + 1 < buffer.length,
- 'Trying to write beyond buffer length');
+ assert.ok(offset + 1 < buffer.length,
+ 'Trying to write beyond buffer length');
- verifsint(value, 0x7fff, -0xf000);
+ verifsint(value, 0x7fff, -0xf000);
+ }
if (value >= 0) {
- buffer.writeUInt16NoChk(value, offset, bigEndian);
+ writeUInt16(buffer, value, offset, isBigEndian, noAssert);
} else {
- buffer.writeUInt16NoChk(0xffff + value + 1, offset, bigEndian);
+ writeUInt16(buffer, 0xffff + value + 1, offset, isBigEndian, noAssert);
}
+}
+
+Buffer.prototype.writeInt16LE = function(value, offset, noAssert) {
+ writeInt16(this, value, offset, false, noAssert);
};
+Buffer.prototype.writeInt16BE = function(value, offset, noAssert) {
+ writeInt16(this, value, offset, true, noAssert);
+};
-Buffer.prototype.writeInt32 = function(value, offset, bigEndian) {
- var buffer = this;
+function writeInt32(buffer, value, offset, isBigEndian, noAssert) {
+ if (!noAssert) {
+ assert.ok(value !== undefined && value !== null,
+ 'missing value');
- assert.ok(value !== undefined && value !== null,
- 'missing value');
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ assert.ok(offset + 3 < buffer.length,
+ 'Trying to write beyond buffer length');
- assert.ok(offset + 3 < buffer.length,
- 'Trying to write beyond buffer length');
+ verifsint(value, 0x7fffffff, -0xf0000000);
+ }
- verifsint(value, 0x7fffffff, -0xf0000000);
if (value >= 0) {
- buffer.writeUInt32NoChk(value, offset, bigEndian);
+ writeUInt32(buffer, value, offset, isBigEndian, noAssert);
} else {
- buffer.writeUInt32NoChk(0xffffffff + value + 1, offset, bigEndian);
+ writeUInt32(buffer, 0xffffffff + value + 1, offset, isBigEndian, noAssert);
}
+}
+
+Buffer.prototype.writeInt32LE = function(value, offset, noAssert) {
+ writeInt32(this, value, offset, false, noAssert);
};
+Buffer.prototype.writeInt32BE = function(value, offset, noAssert) {
+ writeInt32(this, value, offset, true, noAssert);
+};
-Buffer.prototype.writeFloat = function(value, offset, bigEndian) {
- var buffer = this;
+function writeFloat(buffer, value, offset, isBigEndian, noAssert) {
+ if (!noAssert) {
+ assert.ok(value !== undefined && value !== null,
+ 'missing value');
- assert.ok(value !== undefined && value !== null,
- 'missing value');
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ assert.ok(offset + 3 < buffer.length,
+ 'Trying to write beyond buffer length');
- assert.ok(offset + 3 < buffer.length,
- 'Trying to write beyond buffer length');
+ verifIEEE754(value, 3.4028234663852886e+38, -3.4028234663852886e+38);
+ }
- verifIEEE754(value, 3.4028234663852886e+38, -3.4028234663852886e+38);
- require('buffer_ieee754').writeIEEE754(buffer, value, offset, bigEndian,
+ require('buffer_ieee754').writeIEEE754(buffer, value, offset, isBigEndian,
23, 4);
+}
+
+Buffer.prototype.writeFloatLE = function(value, offset, noAssert) {
+ writeFloat(this, value, offset, false, noAssert);
};
+Buffer.prototype.writeFloatBE = function(value, offset, noAssert) {
+ writeFloat(this, value, offset, true, noAssert);
+};
-Buffer.prototype.writeDouble = function(value, offset, bigEndian) {
- var buffer = this;
+function writeDouble(buffer, value, offset, isBigEndian, noAssert) {
+ if (!noAssert) {
+ assert.ok(value !== undefined && value !== null,
+ 'missing value');
- assert.ok(value !== undefined && value !== null,
- 'missing value');
+ assert.ok(typeof (isBigEndian) === 'boolean',
+ 'missing or invalid endian');
- assert.ok(typeof (bigEndian) === 'boolean',
- 'missing or invalid endian');
+ assert.ok(offset !== undefined && offset !== null,
+ 'missing offset');
- assert.ok(offset !== undefined && offset !== null,
- 'missing offset');
+ assert.ok(offset + 7 < buffer.length,
+ 'Trying to write beyond buffer length');
- assert.ok(offset + 7 < buffer.length,
- 'Trying to write beyond buffer length');
+ verifIEEE754(value, 1.7976931348623157E+308, -1.7976931348623157E+308);
+ }
- verifIEEE754(value, 1.7976931348623157E+308, -1.7976931348623157E+308);
- require('buffer_ieee754').writeIEEE754(buffer, value, offset, bigEndian,
+ require('buffer_ieee754').writeIEEE754(buffer, value, offset, isBigEndian,
52, 8);
+}
+
+Buffer.prototype.writeDoubleLE = function(value, offset, noAssert) {
+ writeDouble(this, value, offset, false, noAssert);
};
+Buffer.prototype.writeDoubleBE = function(value, offset, noAssert) {
+ writeDouble(this, value, offset, true, noAssert);
+};
diff --git a/lib/buffer_ieee754.js b/lib/buffer_ieee754.js
index 393ced926d..7a86b2f294 100644
--- a/lib/buffer_ieee754.js
+++ b/lib/buffer_ieee754.js
@@ -30,15 +30,14 @@
//
// Modifications to writeIEEE754 to support negative zeroes made by Brian White
-exports.readIEEE754 = function(buffer, offset, endian, mLen, nBytes) {
+exports.readIEEE754 = function(buffer, offset, isBE, mLen, nBytes) {
var e, m,
- bBE = endian,
eLen = nBytes * 8 - mLen - 1,
eMax = (1 << eLen) - 1,
eBias = eMax >> 1,
nBits = -7,
- i = bBE ? 0 : (nBytes - 1),
- d = bBE ? 1 : -1,
+ i = isBE ? 0 : (nBytes - 1),
+ d = isBE ? 1 : -1,
s = buffer[offset + i];
i += d;
@@ -64,15 +63,14 @@ exports.readIEEE754 = function(buffer, offset, endian, mLen, nBytes) {
return (s ? -1 : 1) * m * Math.pow(2, e - mLen);
};
-exports.writeIEEE754 = function(buffer, value, offset, endian, mLen, nBytes) {
+exports.writeIEEE754 = function(buffer, value, offset, isBE, mLen, nBytes) {
var e, m, c,
- bBE = endian,
eLen = nBytes * 8 - mLen - 1,
eMax = (1 << eLen) - 1,
eBias = eMax >> 1,
rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0),
- i = bBE ? (nBytes-1) : 0,
- d = bBE ? -1 : 1,
+ i = isBE ? (nBytes-1) : 0,
+ d = isBE ? -1 : 1,
s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;
value = Math.abs(value);
diff --git a/test/simple/test-readdouble.js b/test/simple/test-readdouble.js
index f9a03618f7..a6438b9c75 100644
--- a/test/simple/test-readdouble.js
+++ b/test/simple/test-readdouble.js
@@ -8,6 +8,7 @@ var ASSERT = require('assert');
*/
function test() {
var buffer = new Buffer(8);
+
buffer[0] = 0x55;
buffer[1] = 0x55;
buffer[2] = 0x55;
@@ -16,8 +17,8 @@ function test() {
buffer[5] = 0x55;
buffer[6] = 0xd5;
buffer[7] = 0x3f;
- ASSERT.equal(1.1945305291680097e+103, buffer.readDouble(0, true));
- ASSERT.equal(0.3333333333333333, buffer.readDouble(0, false));
+ ASSERT.equal(1.1945305291680097e+103, buffer.readDoubleBE(0));
+ ASSERT.equal(0.3333333333333333, buffer.readDoubleLE(0));
buffer[0] = 1;
buffer[1] = 0;
@@ -27,18 +28,18 @@ function test() {
buffer[5] = 0;
buffer[6] = 0xf0;
buffer[7] = 0x3f;
- ASSERT.equal(7.291122019655968e-304, buffer.readDouble(0, true));
- ASSERT.equal(1.0000000000000002, buffer.readDouble(0, false));
+ ASSERT.equal(7.291122019655968e-304, buffer.readDoubleBE(0));
+ ASSERT.equal(1.0000000000000002, buffer.readDoubleLE(0));
buffer[0] = 2;
- ASSERT.equal(4.778309726801735e-299, buffer.readDouble(0, true));
- ASSERT.equal(1.0000000000000004, buffer.readDouble(0, false));
+ ASSERT.equal(4.778309726801735e-299, buffer.readDoubleBE(0));
+ ASSERT.equal(1.0000000000000004, buffer.readDoubleLE(0));
buffer[0] = 1;
buffer[6] = 0;
buffer[7] = 0;
- ASSERT.equal(7.291122019556398e-304, buffer.readDouble(0, true));
- ASSERT.equal(5e-324, buffer.readDouble(0, false));
+ ASSERT.equal(7.291122019556398e-304, buffer.readDoubleBE(0));
+ ASSERT.equal(5e-324, buffer.readDoubleLE(0));
buffer[0] = 0xff;
buffer[1] = 0xff;
@@ -48,13 +49,13 @@ function test() {
buffer[5] = 0xff;
buffer[6] = 0x0f;
buffer[7] = 0x00;
- ASSERT.ok(isNaN(buffer.readDouble(0, true)));
- ASSERT.equal(2.225073858507201e-308, buffer.readDouble(0, false));
+ ASSERT.ok(isNaN(buffer.readDoubleBE(0)));
+ ASSERT.equal(2.225073858507201e-308, buffer.readDoubleLE(0));
buffer[6] = 0xef;
buffer[7] = 0x7f;
- ASSERT.ok(isNaN(buffer.readDouble(0, true)));
- ASSERT.equal(1.7976931348623157e+308, buffer.readDouble(0, false));
+ ASSERT.ok(isNaN(buffer.readDoubleBE(0)));
+ ASSERT.equal(1.7976931348623157e+308, buffer.readDoubleLE(0));
buffer[0] = 0;
buffer[1] = 0;
@@ -64,42 +65,42 @@ function test() {
buffer[5] = 0;
buffer[6] = 0xf0;
buffer[7] = 0x3f;
- ASSERT.equal(3.03865e-319, buffer.readDouble(0, true));
- ASSERT.equal(1, buffer.readDouble(0, false));
+ ASSERT.equal(3.03865e-319, buffer.readDoubleBE(0));
+ ASSERT.equal(1, buffer.readDoubleLE(0));
buffer[6] = 0;
buffer[7] = 0x40;
- ASSERT.equal(3.16e-322, buffer.readDouble(0, true));
- ASSERT.equal(2, buffer.readDouble(0, false));
+ ASSERT.equal(3.16e-322, buffer.readDoubleBE(0));
+ ASSERT.equal(2, buffer.readDoubleLE(0));
buffer[7] = 0xc0;
- ASSERT.equal(9.5e-322, buffer.readDouble(0, true));
- ASSERT.equal(-2, buffer.readDouble(0, false));
+ ASSERT.equal(9.5e-322, buffer.readDoubleBE(0));
+ ASSERT.equal(-2, buffer.readDoubleLE(0));
buffer[6] = 0x10;
buffer[7] = 0;
- ASSERT.equal(2.0237e-320, buffer.readDouble(0, true));
- ASSERT.equal(2.2250738585072014e-308, buffer.readDouble(0, false));
+ ASSERT.equal(2.0237e-320, buffer.readDoubleBE(0));
+ ASSERT.equal(2.2250738585072014e-308, buffer.readDoubleLE(0));
buffer[6] = 0;
- ASSERT.equal(0, buffer.readDouble(0, true));
- ASSERT.equal(0, buffer.readDouble(0, false));
- ASSERT.equal(false, 1/buffer.readDouble(0, false)<0);
+ ASSERT.equal(0, buffer.readDoubleBE(0));
+ ASSERT.equal(0, buffer.readDoubleLE(0));
+ ASSERT.equal(false, 1/buffer.readDoubleLE(0)<0);
buffer[7] = 0x80;
- ASSERT.equal(6.3e-322, buffer.readDouble(0, true));
- ASSERT.equal(0, buffer.readDouble(0, false));
- ASSERT.equal(true, 1/buffer.readDouble(0, false)<0);
+ ASSERT.equal(6.3e-322, buffer.readDoubleBE(0));
+ ASSERT.equal(0, buffer.readDoubleLE(0));
+ ASSERT.equal(true, 1/buffer.readDoubleLE(0)<0);
buffer[6] = 0xf0;
buffer[7] = 0x7f;
- ASSERT.equal(3.0418e-319, buffer.readDouble(0, true));
- ASSERT.equal(Infinity, buffer.readDouble(0, false));
+ ASSERT.equal(3.0418e-319, buffer.readDoubleBE(0));
+ ASSERT.equal(Infinity, buffer.readDoubleLE(0));
buffer[6] = 0xf0;
buffer[7] = 0xff;
- ASSERT.equal(3.04814e-319, buffer.readDouble(0, true));
- ASSERT.equal(-Infinity, buffer.readDouble(0, false));
+ ASSERT.equal(3.04814e-319, buffer.readDoubleBE(0));
+ ASSERT.equal(-Infinity, buffer.readDoubleLE(0));
}
diff --git a/test/simple/test-readfloat.js b/test/simple/test-readfloat.js
index 5385740d80..0e259b5631 100644
--- a/test/simple/test-readfloat.js
+++ b/test/simple/test-readfloat.js
@@ -8,60 +8,61 @@ var ASSERT = require('assert');
*/
function test() {
var buffer = new Buffer(4);
+
buffer[0] = 0;
buffer[1] = 0;
buffer[2] = 0x80;
buffer[3] = 0x3f;
- ASSERT.equal(4.600602988224807e-41, buffer.readFloat(0, true));
- ASSERT.equal(1, buffer.readFloat(0, false));
+ ASSERT.equal(4.600602988224807e-41, buffer.readFloatBE(0));
+ ASSERT.equal(1, buffer.readFloatLE(0));
buffer[0] = 0;
buffer[1] = 0;
buffer[2] = 0;
buffer[3] = 0xc0;
- ASSERT.equal(2.6904930515036488e-43, buffer.readFloat(0, true));
- ASSERT.equal(-2, buffer.readFloat(0, false));
+ ASSERT.equal(2.6904930515036488e-43, buffer.readFloatBE(0));
+ ASSERT.equal(-2, buffer.readFloatLE(0));
buffer[0] = 0xff;
buffer[1] = 0xff;
buffer[2] = 0x7f;
buffer[3] = 0x7f;
- ASSERT.ok(isNaN(buffer.readFloat(0, true)));
- ASSERT.equal(3.4028234663852886e+38, buffer.readFloat(0, false));
+ ASSERT.ok(isNaN(buffer.readFloatBE(0)));
+ ASSERT.equal(3.4028234663852886e+38, buffer.readFloatLE(0));
buffer[0] = 0xab;
buffer[1] = 0xaa;
buffer[2] = 0xaa;
buffer[3] = 0x3e;
- ASSERT.equal(-1.2126478207002966e-12, buffer.readFloat(0, true));
- ASSERT.equal(0.3333333432674408, buffer.readFloat(0, false));
+ ASSERT.equal(-1.2126478207002966e-12, buffer.readFloatBE(0));
+ ASSERT.equal(0.3333333432674408, buffer.readFloatLE(0));
buffer[0] = 0;
buffer[1] = 0;
buffer[2] = 0;
buffer[3] = 0;
- ASSERT.equal(0, buffer.readFloat(0, true));
- ASSERT.equal(0, buffer.readFloat(0, false));
- ASSERT.equal(false, 1/buffer.readFloat(0, false)<0);
+ ASSERT.equal(0, buffer.readFloatBE(0));
+ ASSERT.equal(0, buffer.readFloatLE(0));
+ ASSERT.equal(false, 1/buffer.readFloatLE(0)<0);
buffer[3] = 0x80;
- ASSERT.equal(1.793662034335766e-43, buffer.readFloat(0, true));
- ASSERT.equal(0, buffer.readFloat(0, false));
- ASSERT.equal(true, 1/buffer.readFloat(0, false)<0);
+ ASSERT.equal(1.793662034335766e-43, buffer.readFloatBE(0));
+ ASSERT.equal(0, buffer.readFloatLE(0));
+ ASSERT.equal(true, 1/buffer.readFloatLE(0)<0);
buffer[0] = 0;
buffer[1] = 0;
buffer[2] = 0x80;
buffer[3] = 0x7f;
- ASSERT.equal(4.609571298396486e-41, buffer.readFloat(0, true));
- ASSERT.equal(Infinity, buffer.readFloat(0, false));
+ ASSERT.equal(4.609571298396486e-41, buffer.readFloatBE(0));
+ ASSERT.equal(Infinity, buffer.readFloatLE(0));
buffer[0] = 0;
buffer[1] = 0;
buffer[2] = 0x80;
buffer[3] = 0xff;
- ASSERT.equal(4.627507918739843e-41, buffer.readFloat(0, true));
- ASSERT.equal(-Infinity, buffer.readFloat(0, false));
+ ASSERT.equal(4.627507918739843e-41, buffer.readFloatBE(0));
+ ASSERT.equal(-Infinity, buffer.readFloatLE(0));
}
diff --git a/test/simple/test-readint.js b/test/simple/test-readint.js
index 5adc797851..99569fae80 100644
--- a/test/simple/test-readint.js
+++ b/test/simple/test-readint.js
@@ -10,39 +10,34 @@ function test8() {
var data = new Buffer(4);
data[0] = 0x23;
- ASSERT.equal(0x23, data.readInt8(0, true));
- ASSERT.equal(0x23, data.readInt8(0, false));
+ ASSERT.equal(0x23, data.readInt8(0));
data[0] = 0xff;
- ASSERT.equal(-1, data.readInt8(0, true));
- ASSERT.equal(-1, data.readInt8(0, false));
+ ASSERT.equal(-1, data.readInt8(0));
data[0] = 0x87;
data[1] = 0xab;
data[2] = 0x7c;
data[3] = 0xef;
- ASSERT.equal(-121, data.readInt8(0, true));
- ASSERT.equal(-85, data.readInt8(1, true));
- ASSERT.equal(124, data.readInt8(2, true));
- ASSERT.equal(-17, data.readInt8(3, true));
- ASSERT.equal(-121, data.readInt8(0, false));
- ASSERT.equal(-85, data.readInt8(1, false));
- ASSERT.equal(124, data.readInt8(2, false));
- ASSERT.equal(-17, data.readInt8(3, false));
+ ASSERT.equal(-121, data.readInt8(0));
+ ASSERT.equal(-85, data.readInt8(1));
+ ASSERT.equal(124, data.readInt8(2));
+ ASSERT.equal(-17, data.readInt8(3));
}
function test16() {
var buffer = new Buffer(6);
+
buffer[0] = 0x16;
buffer[1] = 0x79;
- ASSERT.equal(0x1679, buffer.readInt16(0, true));
- ASSERT.equal(0x7916, buffer.readInt16(0, false));
+ ASSERT.equal(0x1679, buffer.readInt16BE(0));
+ ASSERT.equal(0x7916, buffer.readInt16LE(0));
buffer[0] = 0xff;
buffer[1] = 0x80;
- ASSERT.equal(-128, buffer.readInt16(0, true));
- ASSERT.equal(-32513, buffer.readInt16(0, false));
+ ASSERT.equal(-128, buffer.readInt16BE(0));
+ ASSERT.equal(-32513, buffer.readInt16LE(0));
/* test offset with weenix */
buffer[0] = 0x77;
@@ -51,34 +46,35 @@ function test16() {
buffer[3] = 0x6e;
buffer[4] = 0x69;
buffer[5] = 0x78;
- ASSERT.equal(0x7765, buffer.readInt16(0, true));
- ASSERT.equal(0x6565, buffer.readInt16(1, true));
- ASSERT.equal(0x656e, buffer.readInt16(2, true));
- ASSERT.equal(0x6e69, buffer.readInt16(3, true));
- ASSERT.equal(0x6978, buffer.readInt16(4, true));
- ASSERT.equal(0x6577, buffer.readInt16(0, false));
- ASSERT.equal(0x6565, buffer.readInt16(1, false));
- ASSERT.equal(0x6e65, buffer.readInt16(2, false));
- ASSERT.equal(0x696e, buffer.readInt16(3, false));
- ASSERT.equal(0x7869, buffer.readInt16(4, false));
+ ASSERT.equal(0x7765, buffer.readInt16BE(0));
+ ASSERT.equal(0x6565, buffer.readInt16BE(1));
+ ASSERT.equal(0x656e, buffer.readInt16BE(2));
+ ASSERT.equal(0x6e69, buffer.readInt16BE(3));
+ ASSERT.equal(0x6978, buffer.readInt16BE(4));
+ ASSERT.equal(0x6577, buffer.readInt16LE(0));
+ ASSERT.equal(0x6565, buffer.readInt16LE(1));
+ ASSERT.equal(0x6e65, buffer.readInt16LE(2));
+ ASSERT.equal(0x696e, buffer.readInt16LE(3));
+ ASSERT.equal(0x7869, buffer.readInt16LE(4));
}
function test32() {
var buffer = new Buffer(6);
+
buffer[0] = 0x43;
buffer[1] = 0x53;
buffer[2] = 0x16;
buffer[3] = 0x79;
- ASSERT.equal(0x43531679, buffer.readInt32(0, true));
- ASSERT.equal(0x79165343, buffer.readInt32(0, false));
+ ASSERT.equal(0x43531679, buffer.readInt32BE(0));
+ ASSERT.equal(0x79165343, buffer.readInt32LE(0));
buffer[0] = 0xff;
buffer[1] = 0xfe;
buffer[2] = 0xef;
buffer[3] = 0xfa;
- ASSERT.equal(-69638, buffer.readInt32(0, true));
- ASSERT.equal(-84934913, buffer.readInt32(0, false));
+ ASSERT.equal(-69638, buffer.readInt32BE(0));
+ ASSERT.equal(-84934913, buffer.readInt32LE(0));
buffer[0] = 0x42;
buffer[1] = 0xc3;
@@ -86,12 +82,12 @@ function test32() {
buffer[3] = 0xa9;
buffer[4] = 0x36;
buffer[5] = 0x17;
- ASSERT.equal(0x42c395a9, buffer.readInt32(0, true));
- ASSERT.equal(-1013601994, buffer.readInt32(1, true));
- ASSERT.equal(-1784072681, buffer.readInt32(2, true));
- ASSERT.equal(-1449802942, buffer.readInt32(0, false));
- ASSERT.equal(917083587, buffer.readInt32(1, false));
- ASSERT.equal(389458325, buffer.readInt32(2, false));
+ ASSERT.equal(0x42c395a9, buffer.readInt32BE(0));
+ ASSERT.equal(-1013601994, buffer.readInt32BE(1));
+ ASSERT.equal(-1784072681, buffer.readInt32BE(2));
+ ASSERT.equal(-1449802942, buffer.readInt32LE(0));
+ ASSERT.equal(917083587, buffer.readInt32LE(1));
+ ASSERT.equal(389458325, buffer.readInt32LE(2));
}
diff --git a/test/simple/test-readuint.js b/test/simple/test-readuint.js
index 4b041111ae..4fdda1b3fe 100644
--- a/test/simple/test-readuint.js
+++ b/test/simple/test-readuint.js
@@ -13,21 +13,18 @@ var ASSERT = require('assert');
*/
function test8() {
var data = new Buffer(4);
+
data[0] = 23;
data[1] = 23;
data[2] = 23;
data[3] = 23;
- ASSERT.equal(23, data.readUInt8(0, true));
- ASSERT.equal(23, data.readUInt8(0, false));
- ASSERT.equal(23, data.readUInt8(1, true));
- ASSERT.equal(23, data.readUInt8(1, false));
- ASSERT.equal(23, data.readUInt8(2, true));
- ASSERT.equal(23, data.readUInt8(2, false));
- ASSERT.equal(23, data.readUInt8(3, true));
- ASSERT.equal(23, data.readUInt8(3, false));
+ ASSERT.equal(23, data.readUInt8(0));
+ ASSERT.equal(23, data.readUInt8(1));
+ ASSERT.equal(23, data.readUInt8(2));
+ ASSERT.equal(23, data.readUInt8(3));
+
data[0] = 255; /* If it became a signed int, would be -1 */
- ASSERT.equal(255, data.readUInt8(0, true));
- ASSERT.equal(255, data.readUInt8(0, false));
+ ASSERT.equal(255, data.readUInt8(0));
}
@@ -46,20 +43,17 @@ function test16() {
data[1] = 0x23;
data[2] = 0x42;
data[3] = 0x3f;
-
- ASSERT.equal(0x23, data.readUInt16(0, true));
- ASSERT.equal(0x2342, data.readUInt16(1, true));
- ASSERT.equal(0x423f, data.readUInt16(2, true));
-
- ASSERT.equal(0x2300, data.readUInt16(0, false));
- ASSERT.equal(0x4223, data.readUInt16(1, false));
- ASSERT.equal(0x3f42, data.readUInt16(2, false));
+ ASSERT.equal(0x23, data.readUInt16BE(0));
+ ASSERT.equal(0x2342, data.readUInt16BE(1));
+ ASSERT.equal(0x423f, data.readUInt16BE(2));
+ ASSERT.equal(0x2300, data.readUInt16LE(0));
+ ASSERT.equal(0x4223, data.readUInt16LE(1));
+ ASSERT.equal(0x3f42, data.readUInt16LE(2));
data[0] = 0xfe;
data[1] = 0xfe;
-
- ASSERT.equal(0xfefe, data.readUInt16(0, true));
- ASSERT.equal(0xfefe, data.readUInt16(0, false));
+ ASSERT.equal(0xfefe, data.readUInt16BE(0));
+ ASSERT.equal(0xfefe, data.readUInt16LE(0));
}
@@ -72,20 +66,19 @@ function test16() {
*/
function test32() {
var data = new Buffer(8);
+
data[0] = 0x32;
data[1] = 0x65;
data[2] = 0x42;
data[3] = 0x56;
data[4] = 0x23;
data[5] = 0xff;
-
- ASSERT.equal(0x32654256, data.readUInt32(0, true));
- ASSERT.equal(0x65425623, data.readUInt32(1, true));
- ASSERT.equal(0x425623ff, data.readUInt32(2, true));
-
- ASSERT.equal(0x56426532, data.readUInt32(0, false));
- ASSERT.equal(0x23564265, data.readUInt32(1, false));
- ASSERT.equal(0xff235642, data.readUInt32(2, false));
+ ASSERT.equal(0x32654256, data.readUInt32BE(0));
+ ASSERT.equal(0x65425623, data.readUInt32BE(1));
+ ASSERT.equal(0x425623ff, data.readUInt32BE(2));
+ ASSERT.equal(0x56426532, data.readUInt32LE(0));
+ ASSERT.equal(0x23564265, data.readUInt32LE(1));
+ ASSERT.equal(0xff235642, data.readUInt32LE(2));
}
diff --git a/test/simple/test-writedouble.js b/test/simple/test-writedouble.js
index a484c90c3a..81565189e7 100644
--- a/test/simple/test-writedouble.js
+++ b/test/simple/test-writedouble.js
@@ -5,8 +5,9 @@ var ASSERT = require('assert');
function test() {
var buffer = new Buffer(16);
- buffer.writeDouble(2.225073858507201e-308, 0, true);
- buffer.writeDouble(2.225073858507201e-308, 8, false);
+
+ buffer.writeDoubleBE(2.225073858507201e-308, 0);
+ buffer.writeDoubleLE(2.225073858507201e-308, 8);
ASSERT.equal(0x00, buffer[0]);
ASSERT.equal(0x0f, buffer[1]);
ASSERT.equal(0xff, buffer[2]);
@@ -24,8 +25,8 @@ function test() {
ASSERT.equal(0x0f, buffer[14]);
ASSERT.equal(0x00, buffer[15]);
- buffer.writeDouble(1.0000000000000004, 0, true);
- buffer.writeDouble(1.0000000000000004, 8, false);
+ buffer.writeDoubleBE(1.0000000000000004, 0);
+ buffer.writeDoubleLE(1.0000000000000004, 8);
ASSERT.equal(0x3f, buffer[0]);
ASSERT.equal(0xf0, buffer[1]);
ASSERT.equal(0x00, buffer[2]);
@@ -43,8 +44,8 @@ function test() {
ASSERT.equal(0xf0, buffer[14]);
ASSERT.equal(0x3f, buffer[15]);
- buffer.writeDouble(-2, 0, true);
- buffer.writeDouble(-2, 8, false);
+ buffer.writeDoubleBE(-2, 0);
+ buffer.writeDoubleLE(-2, 8);
ASSERT.equal(0xc0, buffer[0]);
ASSERT.equal(0x00, buffer[1]);
ASSERT.equal(0x00, buffer[2]);
@@ -62,8 +63,8 @@ function test() {
ASSERT.equal(0x00, buffer[14]);
ASSERT.equal(0xc0, buffer[15]);
- buffer.writeDouble(1.7976931348623157e+308, 0, true);
- buffer.writeDouble(1.7976931348623157e+308, 8, false);
+ buffer.writeDoubleBE(1.7976931348623157e+308, 0);
+ buffer.writeDoubleLE(1.7976931348623157e+308, 8);
ASSERT.equal(0x7f, buffer[0]);
ASSERT.equal(0xef, buffer[1]);
ASSERT.equal(0xff, buffer[2]);
@@ -81,8 +82,8 @@ function test() {
ASSERT.equal(0xef, buffer[14]);
ASSERT.equal(0x7f, buffer[15]);
- buffer.writeDouble(0*-1, 0, true);
- buffer.writeDouble(0*-1, 8, false);
+ buffer.writeDoubleBE(0*-1, 0);
+ buffer.writeDoubleLE(0*-1, 8);
ASSERT.equal(0x80, buffer[0]);
ASSERT.equal(0x00, buffer[1]);
ASSERT.equal(0x00, buffer[2]);
diff --git a/test/simple/test-writefloat.js b/test/simple/test-writefloat.js
index cbf6e12f5a..64f01307be 100644
--- a/test/simple/test-writefloat.js
+++ b/test/simple/test-writefloat.js
@@ -5,8 +5,9 @@ var ASSERT = require('assert');
function test() {
var buffer = new Buffer(8);
- buffer.writeFloat(1, 0, true);
- buffer.writeFloat(1, 4, false);
+
+ buffer.writeFloatBE(1, 0);
+ buffer.writeFloatLE(1, 4);
ASSERT.equal(0x3f, buffer[0]);
ASSERT.equal(0x80, buffer[1]);
ASSERT.equal(0x00, buffer[2]);
@@ -16,8 +17,8 @@ function test() {
ASSERT.equal(0x80, buffer[6]);
ASSERT.equal(0x3f, buffer[7]);
- buffer.writeFloat(1.793662034335766e-43, 0, true);
- buffer.writeFloat(1.793662034335766e-43, 4, false);
+ buffer.writeFloatBE(1.793662034335766e-43, 0);
+ buffer.writeFloatLE(1.793662034335766e-43, 4);
ASSERT.equal(0x00, buffer[0]);
ASSERT.equal(0x00, buffer[1]);
ASSERT.equal(0x00, buffer[2]);
@@ -27,8 +28,8 @@ function test() {
ASSERT.equal(0x00, buffer[6]);
ASSERT.equal(0x00, buffer[7]);
- buffer.writeFloat(1/3, 0, true);
- buffer.writeFloat(1/3, 4, false);
+ buffer.writeFloatBE(1/3, 0);
+ buffer.writeFloatLE(1/3, 4);
ASSERT.equal(0x3e, buffer[0]);
ASSERT.equal(0xaa, buffer[1]);
ASSERT.equal(0xaa, buffer[2]);
@@ -38,8 +39,8 @@ function test() {
ASSERT.equal(0xaa, buffer[6]);
ASSERT.equal(0x3e, buffer[7]);
- buffer.writeFloat(3.4028234663852886e+38, 0, true);
- buffer.writeFloat(3.4028234663852886e+38, 4, false);
+ buffer.writeFloatBE(3.4028234663852886e+38, 0);
+ buffer.writeFloatLE(3.4028234663852886e+38, 4);
ASSERT.equal(0x7f, buffer[0]);
ASSERT.equal(0x7f, buffer[1]);
ASSERT.equal(0xff, buffer[2]);
@@ -49,8 +50,8 @@ function test() {
ASSERT.equal(0x7f, buffer[6]);
ASSERT.equal(0x7f, buffer[7]);
- buffer.writeFloat(0*-1, 0, true);
- buffer.writeFloat(0*-1, 4, false);
+ buffer.writeFloatBE(0*-1, 0);
+ buffer.writeFloatLE(0*-1, 4);
ASSERT.equal(0x80, buffer[0]);
ASSERT.equal(0x00, buffer[1]);
ASSERT.equal(0x00, buffer[2]);
diff --git a/test/simple/test-writeint.js b/test/simple/test-writeint.js
index 6186831c86..6a62e5b1e7 100644
--- a/test/simple/test-writeint.js
+++ b/test/simple/test-writeint.js
@@ -4,44 +4,43 @@
var ASSERT = require('assert');
function test8() {
- var buffer = new Buffer(4);
- buffer.writeInt8(0x23, 0, true);
- buffer.writeInt8(0x23, 1, false);
- buffer.writeInt8(-5, 2, true);
- buffer.writeInt8(-5, 3, false);
+ var buffer = new Buffer(2);
+
+ buffer.writeInt8(0x23, 0);
+ buffer.writeInt8(-5, 1);
ASSERT.equal(0x23, buffer[0]);
- ASSERT.equal(0x23, buffer[1]);
- ASSERT.equal(0xfb, buffer[2]);
- ASSERT.equal(0xfb, buffer[3]);
+ ASSERT.equal(0xfb, buffer[1]);
/* Make sure we handle truncation correctly */
ASSERT.throws(function() {
- buffer.writeInt8(0xabc, 0, true);
+ buffer.writeInt8(0xabc, 0);
});
ASSERT.throws(function() {
- buffer.writeInt8(0xabc, 0, false);
+ buffer.writeInt8(0xabc, 0);
});
}
function test16() {
var buffer = new Buffer(6);
- buffer.writeInt16(0x0023, 0, true);
- buffer.writeInt16(0x0023, 2, false);
+
+ buffer.writeInt16BE(0x0023, 0);
+ buffer.writeInt16LE(0x0023, 2);
ASSERT.equal(0x00, buffer[0]);
ASSERT.equal(0x23, buffer[1]);
ASSERT.equal(0x23, buffer[2]);
ASSERT.equal(0x00, buffer[3]);
- buffer.writeInt16(-5, 0, true);
- buffer.writeInt16(-5, 2, false);
+
+ buffer.writeInt16BE(-5, 0);
+ buffer.writeInt16LE(-5, 2);
ASSERT.equal(0xff, buffer[0]);
ASSERT.equal(0xfb, buffer[1]);
ASSERT.equal(0xfb, buffer[2]);
ASSERT.equal(0xff, buffer[3]);
- buffer.writeInt16(-1679, 1, true);
- buffer.writeInt16(-1679, 3, false);
+ buffer.writeInt16BE(-1679, 1);
+ buffer.writeInt16LE(-1679, 3);
ASSERT.equal(0xf9, buffer[1]);
ASSERT.equal(0x71, buffer[2]);
ASSERT.equal(0x71, buffer[3]);
@@ -51,8 +50,9 @@ function test16() {
function test32() {
var buffer = new Buffer(8);
- buffer.writeInt32(0x23, 0, true);
- buffer.writeInt32(0x23, 4, false);
+
+ buffer.writeInt32BE(0x23, 0);
+ buffer.writeInt32LE(0x23, 4);
ASSERT.equal(0x00, buffer[0]);
ASSERT.equal(0x00, buffer[1]);
ASSERT.equal(0x00, buffer[2]);
@@ -62,8 +62,8 @@ function test32() {
ASSERT.equal(0x00, buffer[6]);
ASSERT.equal(0x00, buffer[7]);
- buffer.writeInt32(-5, 0, true);
- buffer.writeInt32(-5, 4, false);
+ buffer.writeInt32BE(-5, 0);
+ buffer.writeInt32LE(-5, 4);
ASSERT.equal(0xff, buffer[0]);
ASSERT.equal(0xff, buffer[1]);
ASSERT.equal(0xff, buffer[2]);
@@ -73,8 +73,8 @@ function test32() {
ASSERT.equal(0xff, buffer[6]);
ASSERT.equal(0xff, buffer[7]);
- buffer.writeInt32(-805306713, 0, true);
- buffer.writeInt32(-805306713, 4, false);
+ buffer.writeInt32BE(-805306713, 0);
+ buffer.writeInt32LE(-805306713, 4);
ASSERT.equal(0xcf, buffer[0]);
ASSERT.equal(0xff, buffer[1]);
ASSERT.equal(0xfe, buffer[2]);
diff --git a/test/simple/test-writeuint.js b/test/simple/test-writeuint.js
index 45f72ce405..e67c153a9e 100644
--- a/test/simple/test-writeuint.js
+++ b/test/simple/test-writeuint.js
@@ -12,25 +12,29 @@ var ASSERT = require('assert');
*/
function test8() {
var data = new Buffer(4);
- data.writeUInt8(23, 0, true);
- data.writeUInt8(23, 1, true);
- data.writeUInt8(23, 2, true);
- data.writeUInt8(23, 3, true);
+
+ data.writeUInt8(23, 0);
+ data.writeUInt8(23, 1);
+ data.writeUInt8(23, 2);
+ data.writeUInt8(23, 3);
ASSERT.equal(23, data[0]);
ASSERT.equal(23, data[1]);
ASSERT.equal(23, data[2]);
ASSERT.equal(23, data[3]);
- data.writeUInt8(23, 0, false);
- data.writeUInt8(23, 1, false);
- data.writeUInt8(23, 2, false);
- data.writeUInt8(23, 3, false);
+
+ data.writeUInt8(23, 0);
+ data.writeUInt8(23, 1);
+ data.writeUInt8(23, 2);
+ data.writeUInt8(23, 3);
ASSERT.equal(23, data[0]);
ASSERT.equal(23, data[1]);
ASSERT.equal(23, data[2]);
ASSERT.equal(23, data[3]);
- data.writeUInt8(255, 0, true);
+
+ data.writeUInt8(255, 0);
ASSERT.equal(255, data[0]);
- data.writeUInt8(255, 0, false);
+
+ data.writeUInt8(255, 0);
ASSERT.equal(255, data[0]);
}
@@ -38,34 +42,37 @@ function test8() {
function test16() {
var value = 0x2343;
var data = new Buffer(4);
- data.writeUInt16(value, 0, true);
+
+ data.writeUInt16BE(value, 0);
ASSERT.equal(0x23, data[0]);
ASSERT.equal(0x43, data[1]);
- data.writeUInt16(value, 1, true);
+
+ data.writeUInt16BE(value, 1);
ASSERT.equal(0x23, data[1]);
ASSERT.equal(0x43, data[2]);
- data.writeUInt16(value, 2, true);
+
+ data.writeUInt16BE(value, 2);
ASSERT.equal(0x23, data[2]);
ASSERT.equal(0x43, data[3]);
- data.writeUInt16(value, 0, false);
+ data.writeUInt16LE(value, 0);
ASSERT.equal(0x23, data[1]);
ASSERT.equal(0x43, data[0]);
- data.writeUInt16(value, 1, false);
+ data.writeUInt16LE(value, 1);
ASSERT.equal(0x23, data[2]);
ASSERT.equal(0x43, data[1]);
- data.writeUInt16(value, 2, false);
+ data.writeUInt16LE(value, 2);
ASSERT.equal(0x23, data[3]);
ASSERT.equal(0x43, data[2]);
value = 0xff80;
- data.writeUInt16(value, 0, false);
+ data.writeUInt16LE(value, 0);
ASSERT.equal(0xff, data[1]);
ASSERT.equal(0x80, data[0]);
- data.writeUInt16(value, 0, true);
+ data.writeUInt16BE(value, 0);
ASSERT.equal(0xff, data[0]);
ASSERT.equal(0x80, data[1]);
}
@@ -75,37 +82,37 @@ function test32() {
var data = new Buffer(6);
var value = 0xe7f90a6d;
- data.writeUInt32(value, 0, true);
+ data.writeUInt32BE(value, 0);
ASSERT.equal(0xe7, data[0]);
ASSERT.equal(0xf9, data[1]);
ASSERT.equal(0x0a, data[2]);
ASSERT.equal(0x6d, data[3]);
- data.writeUInt32(value, 1, true);
+ data.writeUInt32BE(value, 1);
ASSERT.equal(0xe7, data[1]);
ASSERT.equal(0xf9, data[2]);
ASSERT.equal(0x0a, data[3]);
ASSERT.equal(0x6d, data[4]);
- data.writeUInt32(value, 2, true);
+ data.writeUInt32BE(value, 2);
ASSERT.equal(0xe7, data[2]);
ASSERT.equal(0xf9, data[3]);
ASSERT.equal(0x0a, data[4]);
ASSERT.equal(0x6d, data[5]);
- data.writeUInt32(value, 0, false);
+ data.writeUInt32LE(value, 0);
ASSERT.equal(0xe7, data[3]);
ASSERT.equal(0xf9, data[2]);
ASSERT.equal(0x0a, data[1]);
ASSERT.equal(0x6d, data[0]);
- data.writeUInt32(value, 1, false);
+ data.writeUInt32LE(value, 1);
ASSERT.equal(0xe7, data[4]);
ASSERT.equal(0xf9, data[3]);
ASSERT.equal(0x0a, data[2]);
ASSERT.equal(0x6d, data[1]);
- data.writeUInt32(value, 2, false);
+ data.writeUInt32LE(value, 2);
ASSERT.equal(0xe7, data[5]);
ASSERT.equal(0xf9, data[4]);
ASSERT.equal(0x0a, data[3]);