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
- IterableMixin<E>
- SetMixin<E>
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.factory
Properties
- first → E
-
read-only
- isEmpty → bool
-
read-only
- isNotEmpty → bool
-
read-only
- iterator → Iterator<E>
-
read-only
- last → E
-
read-only
- length → int
-
read-only
- single → E
-
read-only
- hashCode → int
-
The hash code for this object.
read-only, inherited - runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
Operators
-
operator ==(
other) → bool -
The equality operator.
inherited
Methods
-
add(
E element) → bool -
Adds
valueto the set. -
addAll(
Iterable<E> elements) → void -
Adds all
elementsto this Set. -
clear(
) → void -
Removes all elements in the set.
-
contains(
Object object) → bool -
Returns true if the collection contains an element equal to
element. -
difference(
Set<Object> other) → Set<E> -
Returns a new set with the elements of this that are not in
other. -
intersection(
Set<Object> other) → Set<E> -
Returns a new set which is the intersection between this set and
other. -
lookup(
Object object) → E -
If an object equal to
objectis in the set, return it. -
remove(
Object object) → bool -
Removes
valuefrom the set. Returns true ifvaluewas in the set. Returns false otherwise. The method has no effect ifvaluevalue was not in the set. -
removeAll(
Iterable<Object> elements) → void -
Removes each element of
elementsfrom this set. -
retainAll(
Iterable<Object> elements) → void -
Removes all elements of this set that are not elements in
elements. -
toSet(
) → Set<E> -
Creates a
Setcontaining the same elements as this iterable. -
toString(
) → String -
Returns a string representation of this object.
-
union(
Set<E> other) → Set<E> -
Returns a new set which contains all the elements of this set and
other. -
any(
bool test(E element)) → bool -
Checks whether any element of this iterable satisfies
test.inherited -
containsAll(
Iterable<Object> other) → bool -
Returns whether this Set contains all the elements of
other.inherited -
elementAt(
int index) → E -
Returns the
indexth element.inherited -
every(
bool f(E element)) → bool -
Checks whether every element of this iterable satisfies
test.inherited -
expand<T>(
Iterable<T> f(E element)) → Iterable<T> -
Expands each element of this
Iterableinto zero or more elements.inherited -
firstWhere(
bool test(E value), { E orElse() }) → E -
Returns the first element that satisfies the given predicate
test.inherited -
fold<T>(
T initialValue, T combine(T previousValue, E element)) → T -
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value
inherited -
forEach(
void f(E element)) → void -
Applies the function
fto each element of this collection in iteration order.inherited -
join(
[String separator = "" ]) → String -
Converts each element to a
Stringand concatenates the strings.inherited -
lastWhere(
bool test(E value), { E orElse() }) → E -
Returns the last element that satisfies the given predicate
test.inherited -
map<T>(
T f(E element)) → Iterable<T> -
Returns a new lazy
Iterablewith elements that are created by callingfon each element of thisIterablein iteration order.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
inherited -
reduce(
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.
inherited -
removeWhere(
bool test(E element)) → void -
Removes all elements of this set that satisfy
test.inherited -
retainWhere(
bool test(E element)) → void -
Removes all elements of this set that fail to satisfy
test.inherited -
singleWhere(
bool test(E value)) → E -
Returns the single element that satisfies
test.inherited -
skip(
int n) → Iterable<E> -
Returns an
Iterablethat provides all but the firstcountelements.inherited -
skipWhile(
bool test(E value)) → Iterable<E> -
Returns an
Iterablethat skips leading elements whiletestis satisfied.inherited -
take(
int n) → Iterable<E> -
Returns a lazy iterable of the
countfirst elements of this iterable.inherited -
takeWhile(
bool test(E value)) → Iterable<E> -
Returns a lazy iterable of the leading elements satisfying
test.inherited -
toList(
{bool growable: true }) → List<E> -
Creates a
Listcontaining the elements of thisIterable.inherited -
where(
bool f(E element)) → Iterable<E> -
Returns a new lazy
Iterablewith all elements that satisfy the predicatetest.inherited