Struct splay_tree::set::VecLike

source ·
pub struct VecLike<'a, T: 'a> { /* private fields */ }
Expand description

A vector like view of a set.

Implementations§

Returns the element of the vector at the given index, or None if the index is out of bounds.

Examples
use splay_tree::SplaySet;

let mut set = SplaySet::new();
set.insert("foo");
set.insert("bar");
set.insert("baz");

let vec = set.as_vec_like();
assert_eq!(vec.get(0), Some(&"foo"));
assert_eq!(vec.get(1), Some(&"bar"));
assert_eq!(vec.get(2), Some(&"baz"));
assert_eq!(vec.get(3), None);

Returns the first element of the vector, or None if it is empty.

Examples
use splay_tree::SplaySet;

let mut set = SplaySet::new();
set.insert("foo");
set.insert("bar");
set.insert("baz");

let vec = set.as_vec_like();
assert_eq!(vec.first(), Some(&"foo"));

Returns the last element of the vector, or None if it is empty.

Examples
use splay_tree::SplaySet;

let mut set = SplaySet::new();
set.insert("foo");
set.insert("bar");
set.insert("baz");

let vec = set.as_vec_like();
assert_eq!(vec.last(), Some(&"baz"));

Gets an iterator over the vector’s elements, in positional order (low to high).

Examples
use splay_tree::SplaySet;

let mut set = SplaySet::new();
set.insert("foo");
set.insert("bar");
set.insert("baz");

assert_eq!(set.iter().cloned().collect::<Vec<_>>(), ["bar", "baz", "foo"]);

let vec = set.as_vec_like();
assert_eq!(vec.iter().cloned().collect::<Vec<_>>(), ["foo", "bar", "baz"]);

Returns the number of elements in the vector like set.

Examples
use splay_tree::SplaySet;

let mut set = SplaySet::new();
set.insert("foo");
{
    let vec = set.as_vec_like();
    assert_eq!(vec.len(), 1);
}

Returns true if the vector like set contains no elements.

Examples
use splay_tree::SplaySet;

let set = SplaySet::<usize>::new();
let vec = set.as_vec_like();
assert!(vec.is_empty());

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.