SplayTreeSet<E> class

A Set of objects that can be ordered relative to each other.

A Set of objects that can be ordered relative to each other.

The set is based on a self-balancing binary tree. It allows most operations in amortized logarithmic time.

Elements of the set are compared using the compare function passed in the constructor, both for ordering and for equality. If the set contains only an object a, then set.contains(b) will return true if and only if compare(a, b) == 0, and the value of a == b is not even checked. If the compare function is omitted, the objects are assumed to be Comparable, and are compared using their Comparable.compareTo method. Non-comparable objects (including null) will not work as an element in that case.

Mixes-in:

Constructors

SplayTreeSet ( [int compare(E key1, E key2), bool isValidKey(potentialKey)] )
Create a new SplayTreeSet with the given compare function.
SplayTreeSet.from ( Iterable elements, [int compare(E key1, E key2), bool isValidKey(potentialKey)] )
Creates a SplayTreeSet that contains all elements.

Instance Properties

iterator Iterator<E>
read-only
length int
read-only
isEmpty bool
read-only
isNotEmpty bool
read-only
first E
read-only
last E
read-only
single E
read-only

Instance Methods

contains ( Object object ) → bool
Returns true if the collection contains an element equal to [element].
add ( E element ) → bool
Adds [value] into the set. Returns true if [value] was added to the set.
remove ( Object object ) → bool
Removes [value] from the set. Returns true if [value] was in the set. Returns false otherwise. The method has no effect if [value] value was not in the set.
addAll ( Iterable<E> elements ) → void
Adds all [elements] to this Set.
removeAll ( Iterable<Object> elements ) → void
Removes each element of [elements] from this set.
retainAll ( Iterable<Object> elements ) → void
Removes all elements of this set that are not elements in [elements].
lookup ( Object object ) → E
If an object equal to [object] is in the set, return it.
intersection ( Set<E> other ) → Set<E>
Returns a new set which is the intersection between this set and [other].
difference ( Set<E> other ) → Set<E>
Returns a new set with the the elements of this that are not in [other].
union ( Set<E> other ) → Set<E>
Returns a new set which contains all the elements of this set and [other].
clear ( ) → void
Removes all elements in the set.
toSet ( ) → Set<E>
Creates a [Set] containing the same elements as this iterable.
toString ( ) → String
Returns a string representation of this object.
map Inherited ( dynamic f(E element) ) → Iterable
Returns a new lazy [Iterable] with elements that are created by calling f on each element of this Iterable in iteration order.
where Inherited ( bool f(E element) ) → Iterable<E>
Returns a new lazy [Iterable] with all elements that satisfy the predicate [test].
expand Inherited ( Iterable f(E element) ) → Iterable
Expands each element of this [Iterable]into zero or more elements.
forEach Inherited ( void f(E element) ) → void
Applies the function [f] to each element of this collection in iteration order.
reduce Inherited ( E combine(E value, E element) ) → E
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function.
fold Inherited ( initialValue, dynamic combine(previousValue, E element) ) → dynamic
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value
every Inherited ( bool f(E element) ) → bool
Checks whether every element of this iterable satisfies [test].
join Inherited ( [String separator = ""] ) → String
Converts each element to a [String] and concatenates the strings.
any Inherited ( bool test(E element) ) → bool
Checks whether any element of this iterable satisfies [test].
toList Inherited ( {bool growable: true} ) → List<E>
Creates a [List] containing the elements of this [Iterable].
take Inherited ( int n ) → Iterable<E>
Returns a lazy iterable of the [count] first elements of this iterable.
takeWhile Inherited ( bool test(E value) ) → Iterable<E>
Returns a lazy iterable of the leading elements satisfying [test].
skip Inherited ( int n ) → Iterable<E>
Returns an Iterable that provides all but the first [count] elements.
skipWhile Inherited ( bool test(E value) ) → Iterable<E>
Returns an Iterable that skips leading elements while [test] is satisfied.
firstWhere Inherited ( bool test(E value), {E orElse()} ) → E
Returns the first element that satisfies the given predicate [test].
lastWhere Inherited ( bool test(E value), {E orElse()} ) → E
Returns the last element that satisfies the given predicate [test].
singleWhere Inherited ( bool test(E value) ) → E
Returns the single element that satisfies [test].
elementAt Inherited ( int index ) → E
Returns the [index]th element.
removeWhere Inherited ( bool test(E element) ) → void
Removes all elements of this set that satisfy [test].
retainWhere Inherited ( bool test(E element) ) → void
Removes all elements of this set that fail to satisfy [test].
containsAll Inherited ( Iterable<Object> other ) → bool
Returns whether this Set contains all the elements of [other].
take Inherited ( int n ) → Iterable<E>
Returns a lazy iterable of the [count] first elements of this iterable.
map Inherited ( dynamic f(E element) ) → Iterable
Returns a new lazy [Iterable] with elements that are created by calling f on each element of this Iterable in iteration order.
forEach Inherited ( void f(E element) ) → void
Applies the function [f] to each element of this collection in iteration order.
skipWhile Inherited ( bool test(E value) ) → Iterable<E>
Returns an Iterable that skips leading elements while [test] is satisfied.
lastWhere Inherited ( bool test(E value), {E orElse()} ) → E
Returns the last element that satisfies the given predicate [test].
reduce Inherited ( E combine(E value, E element) ) → E
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function.
any Inherited ( bool test(E element) ) → bool
Checks whether any element of this iterable satisfies [test].
every Inherited ( bool f(E element) ) → bool
Checks whether every element of this iterable satisfies [test].
where Inherited ( bool f(E element) ) → Iterable<E>
Returns a new lazy [Iterable] with all elements that satisfy the predicate [test].
skip Inherited ( int n ) → Iterable<E>
Returns an Iterable that provides all but the first [count] elements.
expand Inherited ( Iterable f(E element) ) → Iterable
Expands each element of this [Iterable]into zero or more elements.
elementAt Inherited ( int index ) → E
Returns the [index]th element.
takeWhile Inherited ( bool test(E value) ) → Iterable<E>
Returns a lazy iterable of the leading elements satisfying [test].
fold Inherited ( initialValue, dynamic combine(previousValue, E element) ) → dynamic
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value
firstWhere Inherited ( bool test(E value), {E orElse()} ) → E
Returns the first element that satisfies the given predicate [test].
singleWhere Inherited ( bool test(E value) ) → E
Returns the single element that satisfies [test].
removeWhere Inherited ( bool test(E element) ) → void
Removes all elements of this set that satisfy [test].
toList Inherited ( {bool growable: true} ) → List<E>
Creates a [List] containing the elements of this [Iterable].
retainWhere Inherited ( bool test(E element) ) → void
Removes all elements of this set that fail to satisfy [test].