Struct merkle_tree_stream::PartialNode[][src]

pub struct PartialNode {
    pub parent: usize,
    // some fields omitted
}

Intermediate Node representation. Same as Node, but without the .hash field.

Fields

Reference to this node's parent node.

Methods

impl PartialNode
[src]

Returns the number of elements in the Node, also referred to as its 'length'.

Returns true if the Node contains no elements.

Get the current index into the stream.

Get the data from the thingy.

Methods from Deref<Target = Option<Vec<u8>>>

Returns true if the option is a Some value.

Examples

let x: Option<u32> = Some(2);
assert_eq!(x.is_some(), true);

let x: Option<u32> = None;
assert_eq!(x.is_some(), false);

Returns true if the option is a None value.

Examples

let x: Option<u32> = Some(2);
assert_eq!(x.is_none(), false);

let x: Option<u32> = None;
assert_eq!(x.is_none(), true);

Converts from Option<T> to Option<&T>.

Examples

Convert an Option<String> into an Option<usize>, preserving the original. The map method takes the self argument by value, consuming the original, so this technique uses as_ref to first take an Option to a reference to the value inside the original.

let text: Option<String> = Some("Hello, world!".to_string());
// First, cast `Option<String>` to `Option<&String>` with `as_ref`,
// then consume *that* with `map`, leaving `text` on the stack.
let text_length: Option<usize> = text.as_ref().map(|s| s.len());
println!("still can print text: {:?}", text);

Converts from Option<T> to Option<&mut T>.

Examples

let mut x = Some(2);
match x.as_mut() {
    Some(v) => *v = 42,
    None => {},
}
assert_eq!(x, Some(42));

🔬 This is a nightly-only experimental API. (pin)

Converts from Option<T> to Option<PinMut<'_, T>>

Important traits for Iter<'a, A>

Returns an iterator over the possibly contained value.

Examples

let x = Some(4);
assert_eq!(x.iter().next(), Some(&4));

let x: Option<u32> = None;
assert_eq!(x.iter().next(), None);

Important traits for IterMut<'a, A>

Returns a mutable iterator over the possibly contained value.

Examples

let mut x = Some(4);
match x.iter_mut().next() {
    Some(v) => *v = 42,
    None => {},
}
assert_eq!(x, Some(42));

let mut x: Option<u32> = None;
assert_eq!(x.iter_mut().next(), None);

Important traits for &'a mut R

Inserts v into the option if it is None, then returns a mutable reference to the contained value.

Examples

let mut x = None;

{
    let y: &mut u32 = x.get_or_insert(5);
    assert_eq!(y, &5);

    *y = 7;
}

assert_eq!(x, Some(7));

Important traits for &'a mut R

Inserts a value computed from f into the option if it is None, then returns a mutable reference to the contained value.

Examples

let mut x = None;

{
    let y: &mut u32 = x.get_or_insert_with(|| 5);
    assert_eq!(y, &5);

    *y = 7;
}

assert_eq!(x, Some(7));

Takes the value out of the option, leaving a None in its place.

Examples

let mut x = Some(2);
x.take();
assert_eq!(x, None);

let mut x: Option<u32> = None;
x.take();
assert_eq!(x, None);

Trait Implementations

impl Debug for PartialNode
[src]

Formats the value using the given formatter. Read more

impl Eq for PartialNode
[src]

impl Ord for PartialNode
[src]

This method returns an Ordering between self and other. Read more

Compares and returns the maximum of two values. Read more

Compares and returns the minimum of two values. Read more

impl PartialEq for PartialNode
[src]

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

This method tests for !=.

impl PartialOrd for PartialNode
[src]

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Clone for PartialNode
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Deref for PartialNode
[src]

The resulting type after dereferencing.

Dereferences the value.

impl DerefMut for PartialNode
[src]

Mutably dereferences the value.

Auto Trait Implementations

impl Send for PartialNode

impl Sync for PartialNode