Package uk.ac.starlink.table.join
Interface LinkSet
Holds an unordered collection of unique
RowLink objects.
The set is understood to be mutable - that is the methods
(including iterator().remove() should not throw
UnsupportedOperationExceptions.
Although its methods are very similar to those of a
Set, this is not a Set implementation.
This is because it will have a pretty specialised use - in particular
you should usually treat it as though it may contain a very large
number of elements and hence think carefully about efficiency
of access methods rather than take advantage of the convenience
methods available in the Collections package.
- Since:
- 7 Sep 2005
- Author:
- Mark Taylor
-
Method Summary
Modifier and TypeMethodDescriptionvoidAdds a new link to this set.booleancontainsLink(RowLink link) Indicates whether this set contains a given link.iterator()Returns an iterator over the elements of this set.booleanremoveLink(RowLink link) Removes an existing link from this set.intsize()Returns the number of items in this set.toSorted()Returns a collection of RowLink objects that has the same content as this LinkSet, but with entries in their natural (Comparable) order.Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
addLink
Adds a new link to this set. If the set has any existing entries equivalent tolink(byequals) they should be removed.- Parameters:
link- row link to add
-
containsLink
Indicates whether this set contains a given link.- Parameters:
link- link to test- Returns:
- true iff this set contains an entry equal to
link
-
removeLink
Removes an existing link from this set.- Parameters:
link- link to remove- Returns:
- true iff
linkwas there in the first place
-
iterator
Returns an iterator over the elements of this set. -
size
int size()Returns the number of items in this set.- Returns:
- set size
-
toSorted
Collection<RowLink> toSorted()Returns a collection of RowLink objects that has the same content as this LinkSet, but with entries in their natural (Comparable) order.The result is not intended for modification; it may or may not be backed by this object, so subsequent modifications of this LinkSet while it's in use are not recommended.
- Returns:
- unmodifiable sorted collection of the row links in this set
-