Buffer
Utilities for working with buffers.
Edit on GitHubBuffers are data structures that automatically expand as more data is appended. They are useful for storing and operating on an unknown number of bytes. All set or append operations mutate the buffer.
Added in 0.4.0
No other changes yet.
from "buffer" include Buffer
Buffer.make(64)
Type declarations included in the Buffer module.
type Buffer
Functions and constants included in the Buffer module.
Added in 0.4.0
No other changes yet.
make : (initialSize: Number) => Buffer
Creates a fresh buffer, initially empty.
The initialSize parameter is the initial size of the internal byte sequence that holds the buffer contents.
That byte sequence is automatically reallocated when more than initialSize bytes are stored in the buffer, but shrinks back to initialSize characters when reset is called.
Parameters:
| param | type | description |
|---|---|---|
initialSize | Number | The initial size of the buffer |
initialSize: The initial size of the bufferReturns:
| type | description |
|---|---|
Buffer | The new buffer |
Buffer: The new bufferThrows:
InvalidArgument(String)
- When the
initialSizeis a negative number
Examples:
Buffer.make(0)
Buffer.make(64)
Added in 0.4.0
No other changes yet.
length : (buffer: Buffer) => Number
Gets the number of bytes currently contained in a buffer.
Parameters:
| param | type | description |
|---|---|---|
buffer | Buffer | The buffer to access |
buffer: The buffer to accessReturns:
| type | description |
|---|---|
Number | The length of the buffer in bytes |
Number: The length of the buffer in bytesExamples:
Buffer.length(Buffer.make(32)) == 0
let buf = Buffer.make(32)
Buffer.addInt32(1l, buf)
assert Buffer.length(buf) == 4
Added in 0.4.0
No other changes yet.
clear : (buffer: Buffer) => Void
Clears data in the buffer and sets its length to zero.
This operation does not resize the underlying byte sequence.
Parameters:
| param | type | description |
|---|---|---|
buffer | Buffer | The buffer to clear |
buffer: The buffer to clearExamples:
let buf = Buffer.make(0)
Buffer.addInt32(1l, buf)
assert Buffer.length(buf) == 4
Buffer.clear(buf)
assert Buffer.length(buf) == 0
Added in 0.4.0
No other changes yet.
reset : (buffer: Buffer) => Void
Empty a buffer and deallocate the internal byte sequence holding the buffer contents.
This operation resizes the underlying byte sequence to the initial size of the buffer.
Parameters:
| param | type | description |
|---|---|---|
buffer | Buffer | The buffer to reset |
buffer: The buffer to resetExamples:
let buf = Buffer.make(0)
Buffer.addInt32(1l, buf)
assert Buffer.length(buf) == 4
Buffer.reset(buf)
assert Buffer.length(buf) == 0
Added in 0.4.0
No other changes yet.
truncate : (length: Number, buffer: Buffer) => Void
Shortens a buffer to the given length.
This operation does not resize the underlying byte sequence.
Parameters:
| param | type | description |
|---|---|---|
length | Number | The number of bytes to truncate the buffer to |
buffer | Buffer | The buffer to truncate |
length: The number of bytes to truncate the buffer tobuffer: The buffer to truncateThrows:
IndexOutOfBounds
- When the
lengthis negative - When the
lengthis greater than the buffer size
Examples:
let buf = Buffer.make(0)
Buffer.addInt32(1l, buf)
assert Buffer.length(buf) == 4
Buffer.truncate(1, buf)
assert Buffer.length(buf) == 1
Added in 0.4.0
No other changes yet.
toBytes : (buffer: Buffer) => Bytes
Returns a copy of the current contents of the buffer as a byte sequence.
Parameters:
| param | type | description |
|---|---|---|
buffer | Buffer | The buffer to copy into a byte sequence |
buffer: The buffer to copy into a byte sequenceReturns:
| type | description |
|---|---|
Bytes | A byte sequence made from copied buffer data |
Bytes: A byte sequence made from copied buffer dataExamples:
let buf = Buffer.make(0)
Buffer.addString("test", buf)
assert Buffer.toBytes(buf) == b"test"
Added in 0.4.0
No other changes yet.
toBytesSlice : (start: Number, length: Number, buffer: Buffer) => Bytes
Returns a slice of the current contents of the buffer as a byte sequence.
Parameters:
| param | type | description |
|---|---|---|
start | Number | The start index |
length | Number | The number of bytes to include after the starting index |
buffer | Buffer | The buffer to copy from |
start: The start indexlength: The number of bytes to include after the starting indexbuffer: The buffer to copy fromReturns:
| type | description |
|---|---|
Bytes | A byte sequence with bytes copied from the buffer |
Bytes: A byte sequence with bytes copied from the bufferThrows:
IndexOutOfBounds
- When
startis negative - When
startis greater than or equal to the buffer size - When
start + lengthis greater than the buffer size
Examples:
let buf = Buffer.make(0)
Buffer.addString("HelloWorld", buf)
assert Buffer.toBytesSlice(0, 5, buf) == b"Hello"
Added in 0.4.0
No other changes yet.
toString : (buffer: Buffer) => String
Returns a copy of the current contents of the buffer as a string.
Parameters:
| param | type | description |
|---|---|---|
buffer | Buffer | The buffer to stringify |
buffer: The buffer to stringifyReturns:
| type | description |
|---|---|
String | A string made with data copied from the buffer |
String: A string made with data copied from the bufferExamples:
let buf = Buffer.make(0)
Buffer.addString("HelloWorld", buf)
assert Buffer.toString(buf) == "HelloWorld"
Added in 0.4.0
No other changes yet.
toStringSlice : (start: Number, length: Number, buffer: Buffer) => String
Returns a copy of a subset of the current contents of the buffer as a string.
Parameters:
| param | type | description |
|---|---|---|
start | Number | The start index |
length | Number | The number of bytes to include after the starting index |
buffer | Buffer | The buffer to copy from |
start: The start indexlength: The number of bytes to include after the starting indexbuffer: The buffer to copy fromReturns:
| type | description |
|---|---|
String | A string made with a subset of data copied from the buffer |
String: A string made with a subset of data copied from the bufferExamples:
let buf = Buffer.make(0)
Buffer.addString("HelloWorld", buf)
assert Buffer.toStringSlice(0, 5, buf) == "Hello"
Added in 0.4.0
No other changes yet.
addBytes : (bytes: Bytes, buffer: Buffer) => Void
Appends a byte sequence to a buffer.
Parameters:
| param | type | description |
|---|---|---|
bytes | Bytes | The byte sequence to append |
buffer | Buffer | The buffer to mutate |
bytes: The byte sequence to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(0)
Buffer.addBytes(b"test", buf)
assert Buffer.toBytes(buf) == b"test"
Added in 0.4.0
No other changes yet.
addString : (string: String, buffer: Buffer) => Void
Appends the bytes of a string to a buffer.
Parameters:
| param | type | description |
|---|---|---|
string | String | The string to append |
buffer | Buffer | The buffer to mutate |
string: The string to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(0)
Buffer.addString("Hello", buf)
assert Buffer.toString(buf) == "Hello"
Added in 0.4.0
No other changes yet.
addChar : (char: Char, buffer: Buffer) => Void
Appends the bytes of a character to a buffer.
Parameters:
| param | type | description |
|---|---|---|
char | Char | The character to append to the buffer |
buffer | Buffer | The buffer to mutate |
char: The character to append to the bufferbuffer: The buffer to mutateExamples:
let buf = Buffer.make(0)
Buffer.addChar('H', buf)
assert Buffer.toString(buf) == "H"
Added in 0.6.0
No other changes yet.
addCharFromCodePoint : (codePoint: Number, buffer: Buffer) => Void
Appends a character represented by a code point to a buffer.
Parameters:
| param | type | description |
|---|---|---|
codePoint | Number | The code point to append to the buffer |
buffer | Buffer | The buffer to mutate |
codePoint: The code point to append to the bufferbuffer: The buffer to mutateExamples:
let buf = Buffer.make(0)
Buffer.addCharFromCodePoint(72, buf)
assert Buffer.toString(buf) == "H"
Added in 0.4.0
| version | changes |
|---|---|
0.5.0 | Now takes the end offset instead of length |
addStringSlice :
(start: Number, end: Number, string: String, buffer: Buffer) => Void
Appends the bytes of a subset of a string to a buffer.
Parameters:
| param | type | description |
|---|---|---|
start | Number | The char offset into the string |
end | Number | The end offset into the string |
string | String | The string to append |
buffer | Buffer | The buffer to mutate |
start: The char offset into the stringend: The end offset into the stringstring: The string to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(0)
Buffer.addStringSlice(0, 5, "HelloWorld", buf)
assert Buffer.toString(buf) == "Hello"
Added in 0.4.0
No other changes yet.
addBytesSlice :
(start: Number, length: Number, bytes: Bytes, buffer: Buffer) => Void
Appends the bytes of a subset of a byte sequence to a buffer.
Parameters:
| param | type | description |
|---|---|---|
start | Number | The byte offset into the byte sequence |
length | Number | The number of bytes to append |
bytes | Bytes | The byte sequence to append |
buffer | Buffer | The buffer to mutate |
start: The byte offset into the byte sequencelength: The number of bytes to appendbytes: The byte sequence to appendbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When the
startis negative - When the
startis greater than or equal to thebytessize - When the
lengthis negative - When the
lengthis greater than thebyteslength minusstart
Examples:
let buf = Buffer.make(0)
Buffer.addBytesSlice(0, 5, b"HelloWorld", buf)
assert Buffer.toString(buf) == "Hello"
Added in 0.4.0
No other changes yet.
addBuffer : (srcBuffer: Buffer, dstBuffer: Buffer) => Void
Appends the bytes of a source buffer to destination buffer.
The source buffer is not mutated by this operation. The destination buffer, however, is mutated.
Parameters:
| param | type | description |
|---|---|---|
srcBuffer | Buffer | The buffer to append |
dstBuffer | Buffer | The buffer to mutate |
srcBuffer: The buffer to appenddstBuffer: The buffer to mutateExamples:
let buf1 = Buffer.make(0)
Buffer.addString("Hello", buf1)
let buf2 = Buffer.make(0)
Buffer.addString("World", buf2)
Buffer.addBuffer(buf2, buf1)
assert Buffer.toString(buf1) == "HelloWorld"
Added in 0.4.0
No other changes yet.
addBufferSlice :
(start: Number, length: Number, srcBuffer: Buffer, dstBuffer: Buffer) =>
Void
Appends the bytes of a part of a buffer to the end of the buffer
The source buffer is not mutated by this operation. The destination buffer, however, is mutated.
Parameters:
| param | type | description |
|---|---|---|
start | Number | The byte offset into the buffer |
length | Number | The number of bytes to append |
srcBuffer | Buffer | The buffer to append |
dstBuffer | Buffer | The buffer to mutate |
start: The byte offset into the bufferlength: The number of bytes to appendsrcBuffer: The buffer to appenddstBuffer: The buffer to mutateExamples:
let buf1 = Buffer.make(0)
Buffer.addString("Hello", buf1)
let buf2 = Buffer.make(0)
Buffer.addString("HiWorld", buf2)
Buffer.addBufferSlice(2, 5, buf2, buf1)
assert Buffer.toString(buf1) == "HelloWorld"
Added in 0.6.0
| version | changes |
|---|---|
0.4.0 | Originally called `getInt8S`, returning an `Int32` |
getInt8 : (index: Number, buffer: Buffer) => Int8
Gets a signed 8-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Int8 | A signed 8-bit integer that starts at the given index |
Int8: A signed 8-bit integer that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 1is greater than the buffer size
Examples:
let buf = Buffer.make(0)
Buffer.addInt8(1s, buf)
assert Buffer.getInt8(0, buf) == 1s
Added in 0.4.0
| version | changes |
|---|---|
0.6.0 | `value` argument type changed to `Int8` |
setInt8 : (index: Number, value: Int8, buffer: Buffer) => Void
Sets a signed 8-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Int8 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 1is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setInt8(0, 3s, buf)
assert Buffer.getInt8(0, buf) == 3s
Added in 0.4.0
| version | changes |
|---|---|
0.6.0 | `value` argument type changed to `Int8` |
addInt8 : (value: Int8, buffer: Buffer) => Void
Appends a signed 8-bit integer to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Int8 | The value to append |
buffer | Buffer | The buffer to mutate |
value: The value to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(0)
Buffer.addInt8(2s, buf)
assert Buffer.getInt8(0, buf) == 2s
Added in 0.6.0
| version | changes |
|---|---|
0.4.0 | Originally called `getInt8U`, returning an `Int32` |
getUint8 : (index: Number, buffer: Buffer) => Uint8
Gets an unsigned 8-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Uint8 | An unsigned 8-bit integer that starts at the given index |
Uint8: An unsigned 8-bit integer that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 1is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addUint8(3us, buf)
assert Buffer.getUint8(0, buf) == 3us
Added in 0.6.0
No other changes yet.
setUint8 : (index: Number, value: Uint8, buffer: Buffer) => Void
Sets an unsigned 8-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Uint8 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 1is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setUint8(4us, buf)
assert Buffer.getUint8(0, buf) == 4us
Added in 0.6.0
No other changes yet.
addUint8 : (value: Uint8, buffer: Buffer) => Void
Appends an unsigned 8-bit integer to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Uint8 | The value to append |
buffer | Buffer | The buffer to mutate |
value: The value to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(32)
Buffer.addUint8(0us, buf)
assert Buffer.getUint8(0, buf) == 0us
Added in 0.6.0
| version | changes |
|---|---|
0.4.0 | Originally called `getInt16S`, returning an `Int32` |
getInt16 : (index: Number, buffer: Buffer) => Int16
Gets a signed 16-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Int16 | A signed 16-bit integer that starts at the given index |
Int16: A signed 16-bit integer that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 2is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addInt16(1S, buf)
assert Buffer.getInt16(0, buf) == 1S
Added in 0.4.0
| version | changes |
|---|---|
0.6.0 | `value` argument type changed to `Int16` |
setInt16 : (index: Number, value: Int16, buffer: Buffer) => Void
Sets a signed 16-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Int16 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 2is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setInt16(5, 1S, buf)
assert Buffer.getInt16(5, buf) == 1S
Added in 0.4.0
| version | changes |
|---|---|
0.6.0 | `value` argument type changed to `Int16` |
addInt16 : (value: Int16, buffer: Buffer) => Void
Appends a signed 16-bit integer to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Int16 | The value to append |
buffer | Buffer | The buffer to mutate |
value: The value to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(0)
Buffer.addInt16(2S, buf)
assert Buffer.getInt16(0, buf) == 2S
Added in 0.6.0
| version | changes |
|---|---|
0.4.0 | Originally called `getInt16U`, returning an `Int32` |
getUint16 : (index: Number, buffer: Buffer) => Uint16
Gets an unsigned 16-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Uint16 | An unsigned 16-bit integer that starts at the given index |
Uint16: An unsigned 16-bit integer that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 2is greater than the buffer size
Examples:
let buf = Buffer.make(0)
Buffer.addUint16(1uS, buf)
assert Buffer.getUint16(0, buf) == 1uS
Added in 0.6.0
No other changes yet.
setUint16 : (index: Number, value: Uint16, buffer: Buffer) => Void
Sets an unsigned 16-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Uint16 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 2is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setUint16(0, 1uS, buf)
assert Buffer.getUint16(0, buf) == 1uS
Added in 0.6.0
No other changes yet.
addUint16 : (value: Uint16, buffer: Buffer) => Void
Appends an unsigned 16-bit integer to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Uint16 | The value to append |
buffer | Buffer | The buffer to mutate |
value: The value to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(0)
Buffer.addUint16(0, 2uS, buf)
assert Buffer.getUint16(0, buf) == 2uS
Added in 0.4.0
No other changes yet.
getInt32 : (index: Number, buffer: Buffer) => Int32
Gets a signed 32-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Int32 | A signed 32-bit integer that starts at the given index |
Int32: A signed 32-bit integer that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 4is greater than the buffer size
Examples:
let buf = Buffer.make(0)
Buffer.addInt32(1l, buf)
assert Buffer.getInt32(0, buf) == 1l
Added in 0.4.0
No other changes yet.
setInt32 : (index: Number, value: Int32, buffer: Buffer) => Void
Sets a signed 32-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Int32 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 4is greater than the buffer size
Examples:
let buf = Buffer.make(64)
Buffer.addString("Hello World", buf)
Buffer.setInt32(3, 1l, buf)
assert Buffer.getInt32(3, buf) == 1l
Added in 0.4.0
No other changes yet.
addInt32 : (value: Int32, buffer: Buffer) => Void
Appends a signed 32-bit integer to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Int32 | The value to append |
buffer | Buffer | The buffer to mutate |
value: The value to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(64)
Buffer.addInt32(1l, buf)
assert Buffer.getInt32(0, buf) == 1l
Added in 0.6.0
No other changes yet.
getUint32 : (index: Number, buffer: Buffer) => Uint32
Gets an unsigned 32-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Uint32 | An unsigned 32-bit integer that starts at the given index |
Uint32: An unsigned 32-bit integer that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 4is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addUint32(1ul, buf)
assert Buffer.getUint32(0, buf) == 1ul
Added in 0.6.0
No other changes yet.
setUint32 : (index: Number, value: Uint32, buffer: Buffer) => Void
Sets an unsigned 32-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Uint32 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 4is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setUint32(0, 1ul, buf)
assert Buffer.getUint32(0, buf) == 1ul
Added in 0.6.0
No other changes yet.
addUint32 : (value: Uint32, buffer: Buffer) => Void
Appends an unsigned 32-bit integer to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Uint32 | The value to append |
buffer | Buffer | The buffer to mutate |
value: The value to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(32)
Buffer.addUint32(1ul, buf)
assert Buffer.getUint32(0, buf) == 1ul
Added in 0.4.0
No other changes yet.
getFloat32 : (index: Number, buffer: Buffer) => Float32
Gets a 32-bit float starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Float32 | A 32-bit float that starts at the given index |
Float32: A 32-bit float that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 4is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addFloat32(1.0f, buf)
assert Buffer.getFloat32(0, buf) == 1.0f
Added in 0.4.0
No other changes yet.
setFloat32 : (index: Number, value: Float32, buffer: Buffer) => Void
Sets a 32-bit float starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Float32 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 4is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setFloat32(0, 1.0f, buf)
assert Buffer.getFloat32(0, buf) == 1.0f
Added in 0.4.0
No other changes yet.
addFloat32 : (value: Float32, buffer: Buffer) => Void
Appends a 32-bit float to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Float32 | The value to append |
buffer | Buffer | The buffer to mutate |
value: The value to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(32)
Buffer.addFloat32(1.0f, buf)
assert Buffer.getFloat32(0, buf) == 1.0f
Added in 0.4.0
No other changes yet.
getInt64 : (index: Number, buffer: Buffer) => Int64
Gets a signed 64-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Int64 | A signed 64-bit integer that starts at the given index |
Int64: A signed 64-bit integer that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 8is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addInt64(1L, buf)
assert Buffer.getInt64(0, buf) == 1L
Added in 0.4.0
No other changes yet.
setInt64 : (index: Number, value: Int64, buffer: Buffer) => Void
Sets a signed 64-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Int64 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 8is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setInt64(0, 1L, buf)
assert Buffer.getInt64(0, buf) == 1L
Added in 0.4.0
No other changes yet.
addInt64 : (value: Int64, buffer: Buffer) => Void
Appends a signed 64-bit integer to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Int64 | The value to set |
buffer | Buffer | The buffer to mutate |
value: The value to setbuffer: The buffer to mutateExamples:
let buf = Buffer.make(32)
Buffer.addInt64(1L, buf)
assert Buffer.getInt64(0, buf) == 1L
Added in 0.6.0
No other changes yet.
getUint64 : (index: Number, buffer: Buffer) => Uint64
Gets an unsigned 64-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Uint64 | An unsigned 64-bit integer that starts at the given index |
Uint64: An unsigned 64-bit integer that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 8is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addUint64(1uL, buf)
assert Buffer.getUint64(0, buf) == 1uL
Added in 0.6.0
No other changes yet.
setUint64 : (index: Number, value: Uint64, buffer: Buffer) => Void
Sets an unsigned 64-bit integer starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Uint64 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 8is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setUint64(0, 1uL, buf)
assert Buffer.getUint64(0, buf) == 1uL
Added in 0.6.0
No other changes yet.
addUint64 : (value: Uint64, buffer: Buffer) => Void
Appends an unsigned 64-bit integer to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Uint64 | The value to set |
buffer | Buffer | The buffer to mutate |
value: The value to setbuffer: The buffer to mutateExamples:
let buf = Buffer.make(32)
Buffer.addUint64(1uL, buf)
assert Buffer.getUint64(0, buf) == 1uL
Added in 0.4.0
No other changes yet.
getFloat64 : (index: Number, buffer: Buffer) => Float64
Gets a 64-bit float starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to access |
buffer | Buffer | The buffer to access |
index: The byte index to accessbuffer: The buffer to accessReturns:
| type | description |
|---|---|
Float64 | A 64-bit float that starts at the given index |
Float64: A 64-bit float that starts at the given indexThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 8is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addFloat64(1.0F, buf)
assert Buffer.getFloat64(0, buf) == 1.0F
Added in 0.4.0
No other changes yet.
setFloat64 : (index: Number, value: Float64, buffer: Buffer) => Void
Sets a 64-bit float starting at the given byte index.
Parameters:
| param | type | description |
|---|---|---|
index | Number | The byte index to update |
value | Float64 | The value to set |
buffer | Buffer | The buffer to mutate |
index: The byte index to updatevalue: The value to setbuffer: The buffer to mutateThrows:
IndexOutOfBounds
- When
indexis negative - When
indexis greater than or equal to the buffer size - When
index + 8is greater than the buffer size
Examples:
let buf = Buffer.make(32)
Buffer.addString("Hello World", buf)
Buffer.setFloat64(0, 1.0F, buf)
assert Buffer.getFloat64(0, buf) == 1.0F
Added in 0.4.0
No other changes yet.
addFloat64 : (value: Float64, buffer: Buffer) => Void
Appends a 64-bit float to a buffer.
Parameters:
| param | type | description |
|---|---|---|
value | Float64 | The value to append |
buffer | Buffer | The buffer to mutate |
value: The value to appendbuffer: The buffer to mutateExamples:
let buf = Buffer.make(32)
Buffer.addFloat64(1.0F, buf)
assert Buffer.getFloat64(0, buf) == 1.0F