Skip to content

Commit

Permalink
README: experiment with spacing
Browse files Browse the repository at this point in the history
  • Loading branch information
TooTallNate committed May 16, 2012
1 parent 1c698bf commit 9b96558
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions README.md
Expand Up @@ -68,14 +68,20 @@ Additions to `Buffer.prototype`

`ref` extends Node's core `Buffer` instances with some useful additions:

---

#### `Buffer#address()` → Number

Returns the memory address of the Buffer instance.

---

#### `Buffer#isNull()` → Boolean

Returns `true` if the Buffer's memory address is NULL, `false` otherwise.

---

#### `Buffer#ref()` → Buffer

Returns a new Buffer instance that is referencing this Buffer. That is, the new
Expand All @@ -84,6 +90,8 @@ Buffer is "pointer" sized, and points to the memory address of this Buffer.
The returned Buffer's `type` property gets set properly as well, with an
`indirection` level increased by 1.

---

#### `Buffer#deref()` → ???

Returns the dereferenced value from the Buffer instance. This depends on the
Expand All @@ -93,30 +101,40 @@ The returned value can be another Buffer, or pretty much be anything else,
depending on the `get()` function of the "type" instance and current
`indirection` level of the Buffer.

---

#### `Buffer#readObject(Number offset)` → Object

Returns the JS `Object` that has previously been written to the Buffer at the
given offset using `writeObject()`.

---

#### `Buffer#writeObject(Object obj, Number offset)` → undefined

Writes the given JS `Object` to the Buffer at the given offset. Make sure that at
least `ref.sizeof.Object` bytes are available in the Buffer after the specified
offset. The object can later be retrieved using `readObject()`.

---

#### `Buffer#readPointer(Number offset, Number size)` → Buffer

Returns a new Buffer instance pointing to the address specified in this Buffer at
the given offset. The `size` is the length of the returned Buffer, which defaults
to 0.

---

#### `Buffer#writePointer(Buffer pointer, Number offset)` → undefined

Writes the given Buffer's memory address to this Buffer at the given offset. Make
sure that at least `ref.sizeof.pointer` bytes are available in the Buffer after
the specified offset. The Buffer can later be retrieved again using
`readPointer()`.

---

#### `Buffer#readCString(Number offset)` → String

Returns a JS String from read from the Buffer at the given offset. The C String is
Expand All @@ -125,38 +143,50 @@ read up til the first NULL byte, which indicates the end of the C String.
This function can read beyond the length of a Buffer, and reads up until the first
NULL byte regardless.

---

#### `Buffer#writeCString(String string, Number offset, String encoding)` → undefined

Writes `string` as a C String (i.e. NULL terminated) to this Buffer at the given
offset. `encoding` is optional and defaults to `utf8`.

---

#### `Buffer#readInt64[native-endianness](Number offset)` → Number|String

Returns a Number or String representation of the 64-bit int read from this Buffer
at the given offset. If the returned value will fit inside a Number without losing
precision, then a Number is returned, otherwise a String is returned.

---

#### `Buffer#writeInt64[native-endianness](Number|String value, Number offset)` → undefined

Writes an value as a `int64_t` to this Buffer at the given offset. `value` may be
either a Number or a String representing the 64-bit int value. Ensure that at
least `ref.sizeof.int64` (always 8) bytes are available in the Buffer after the
given offset.

---

#### `Buffer#readUInt64[native-endianness](Number offset)` → Number|String

Returns a Number or String representation of the 64-bit unsigned int read from
this Buffer at the given offset. If the returned value will fit inside a
Number without losing precision, then a Number is returned, otherwise a String
is returned.

---

#### `Buffer#writeUInt64[native-endianness](Number|String value, Number offset)` → undefined

Writes an value as a `int64_t` to this Buffer at the given offset. `value` may be
either a Number or a String representing the 64-bit unsigned int value. Ensure
that at least `ref.sizeof.uint64` (always 8) bytes are available in the Buffer
after the given offset.

---

#### `Buffer#reinterpret(Number size)` → Buffer

Returns a new Buffer instance with the exact same memory address as the target
Expand Down

0 comments on commit 9b96558

Please sign in to comment.