scala.collection.mutable

class LinkedHashSet

[source: scala/collection/mutable/LinkedHashSet.scala]

@serializable

class LinkedHashSet[A]
extends Set[A] with GenericSetTemplate[A, LinkedHashSet] with SetLike[A, LinkedHashSet[A]] with FlatHashTable[A]
Todo: this has O(n) cost for element removal. Should be rewritten to be more efficient.
Since
2.2
Value Summary
protected val ordered : ListBuffer[A]
Values and Variables inherited from FlatHashTable
table, tableSize, threshold
Method Summary
def += (elem : A) : LinkedHashSet[A]
Adds a new element to the set.
def -= (elem : A) : LinkedHashSet[A]
Removes a single element from a set.
override def add (elem : A) : Boolean
Adds a new element to the set.
override def clear : Unit
Removes all elements from the set. After this operation is completed, the set will be empty.
override def companion : GenericCompanion[LinkedHashSet]
The factory companion object that builds instances of class CC
def contains (elem : A) : Boolean
Checks if this set contains element elem.
override def foreach [U](f : (A) => U) : Unit
Apply a function f to all elements of this iterable object.
override def iterator : Iterator[A]
Creates a new iterator over all elements contained in this iterable object.
override def remove (elem : A) : Boolean
Removes a single element from a set.
override def size : Int
The number of elements in this collection
Methods inherited from FlatHashTable
loadFactor, loadFactorDenum, initialSize, findEntry, containsEntry, addEntry, removeEntry, elemHashCode, improve, index, clearTable
Methods inherited from SetLike
newBuilder, update, retain, clone, result, +, +, ++, ++, -, -, --, --, <<
Methods inherited from Shrinkable
-=, --=, --=
Methods inherited from Builder
sizeHint, mapResult
Methods inherited from Growable
+=, ++=, ++=
Methods inherited from SetLike
isEmpty, apply, intersect, &, **, union, |, diff, &~, subsetOf, stringPrefix, toString, hashCode, equals
Methods inherited from GenericSetTemplate
empty
Methods inherited from Function1
compose, andThen
Methods inherited from IterableLike
thisCollection, toCollection, elements, forall, exists, find, foldRight, reduceRight, toIterable, head, take, slice, takeWhile, takeRight, dropRight, copyToArray, zip, zipAll, zipWithIndex, sameElements, toStream, canEqual, view, view, first, firstOption, projection
Methods inherited from GenericTraversableTemplate
genericBuilder, unzip, flatten, transpose
Methods inherited from TraversableLike
repr, nonEmpty, hasDefiniteSize, ++, ++, map, flatMap, filter, filterNot, partialMap, remove, partition, groupBy, count, foldLeft, /:, :\, reduceLeft, reduceLeftOption, reduceRightOption, sum, product, min, max, headOption, tail, last, lastOption, init, drop, dropWhile, span, splitAt, copyToBuffer, copyToArray, toArray, toList, toSeq, toIndexedSeq, toSet, mkString, mkString, mkString, addString, addString, addString, withFilter
Methods inherited from AnyRef
getClass, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized
Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf
Value Details
protected val ordered : ListBuffer[A]

Method Details
override def companion : GenericCompanion[LinkedHashSet]
The factory companion object that builds instances of class CC
Overrides
Set.companion

override def size : Int
The number of elements in this collection

def contains(elem : A) : Boolean
Checks if this set contains element elem.
Parameters
elem - the element to check for membership.
Returns
true iff elem is contained in this set.

def +=(elem : A) : LinkedHashSet[A]
Adds a new element to the set.
Parameters
elem - the element to be added
Overrides
SetLike.+=

def -=(elem : A) : LinkedHashSet[A]
Removes a single element from a set.
Parameters
elem - The element to be removed.
Overrides
SetLike.-=

override def add(elem : A) : Boolean
Adds a new element to the set.
Parameters
elem - the element to be added
Returns
true if the element was not yet present in the set.
Overrides
SetLike.add

override def remove(elem : A) : Boolean
Removes a single element from a set.
Parameters
elem - The element to be removed.
Returns
true if the element was already present in the set.
Overrides
SetLike.remove

override def clear : Unit
Removes all elements from the set. After this operation is completed, the set will be empty.
Overrides
SetLike.clear

override def iterator : Iterator[A]
Creates a new iterator over all elements contained in this iterable object.
Returns
the new iterator
Overrides
FlatHashTable.iterator

override def foreach[U](f : (A) => U) : Unit
Apply a function f to all elements of this iterable object.
Parameters
f - A function that is applied for its side-effect to every element. The result (of arbitrary type U) of function `f` is discarded.
Notes
This method underlies the implementation of most other bulk operations. Implementing `foreach` with `iterator` is often suboptimal. So `foreach` should be overridden in concrete collection classes if a more efficient implementation is available.