Struct splay_tree::set::VecLike [] [src]

pub struct VecLike<'a, T: 'a> { /* fields omitted */ }

A vector like view of a set.

Methods

impl<'a, T: 'a> VecLike<'a, T>
[src]

[src]

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);

[src]

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"));

[src]

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"));

Important traits for VecLikeIter<'a, T>
[src]

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"]);

[src]

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);
}

[src]

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

impl<'a, T: Debug + 'a> Debug for VecLike<'a, T>
[src]

[src]

Formats the value using the given formatter. Read more

impl<'a, T: Clone + 'a> Clone for VecLike<'a, T>
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

Auto Trait Implementations

impl<'a, T> Send for VecLike<'a, T> where
    T: Sync

impl<'a, T> Sync for VecLike<'a, T> where
    T: Sync