Struct radix_trie::NibbleVec [] [src]

pub struct NibbleVec { /* fields omitted */ }

A data-structure for storing a sequence of 4-bit values.

Values are stored in a Vec<u8>, with two values per byte.

Values at even indices are stored in the most-significant half of their byte, while values at odd indices are stored in the least-significant half.

Imagine a vector of MSB first bytes, and you'll be right.

n = [_ _ | _ _ | _ _]

Methods

impl NibbleVec
[src]

[src]

Create an empty nibble vector.

[src]

Create a nibble vector from a vector of bytes.

Each byte is split into two 4-bit entries (MSB, LSB).

[src]

Get the number of elements stored in the vector.

[src]

Fetch a single entry from the vector.

Guaranteed to be a value in the interval [0, 15].

Panics if idx >= self.len().

[src]

Add a single nibble to the vector.

Only the 4 least-significant bits of the value are used.

[src]

Split the vector into two parts.

All elements at or following the given index are returned in a new NibbleVec, with exactly idx elements remaining in this vector.

Panics if idx > self.len().

[src]

Append another nibble vector whilst consuming this vector.

Trait Implementations

impl Clone for NibbleVec
[src]

[src]

impl Debug for NibbleVec
[src]

[src]

Formats the value using the given formatter.

impl Eq for NibbleVec
[src]

impl PartialEq<NibbleVec> for NibbleVec
[src]

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

1.0.0
[src]

This method tests for !=.

impl PartialEq<[u8]> for NibbleVec
[src]

Compare a NibbleVec and a slice of bytes element-by-element. Bytes are not interpreted as two NibbleVec entries.

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

1.0.0
[src]

This method tests for !=.