Class ImmutableLinkedHashSet<E>

Type Parameters:
E - the type of content of this Set
All Implemented Interfaces:
Serializable, Iterable<E>, ImmutableCollection<E>, ImmutableSet<E>

public class ImmutableLinkedHashSet<E>
extends ImmutableAbstractSet<E>
An immutable wrapper for a LinkedHashSet.

Copyright (c) 2016-2020 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See for project information https://djutils.org. The DJUTILS project is distributed under a three-clause BSD-style license, which can be found at https://djutils.org/docs/license.html.

$, initial version May 7, 2016
Author:
Alexander Verbraeck, Peter Knoppers, Wouter Schakel
See Also:
Serialized Form
  • Constructor Details

    • ImmutableLinkedHashSet

      public ImmutableLinkedHashSet​(Collection<? extends E> collection)
      Parameters:
      collection - Collection<? extends E>; the collection to use for the immutable set.
    • ImmutableLinkedHashSet

      public ImmutableLinkedHashSet​(Set<E> collection, Immutable copyOrWrap)
      Parameters:
      collection - Set<E>; the collection to use for the immutable set.
      copyOrWrap - COPY stores a safe, internal copy of the collection; WRAP stores a pointer to the original collection
    • ImmutableLinkedHashSet

      public ImmutableLinkedHashSet​(ImmutableAbstractCollection<? extends E> collection)
      Parameters:
      collection - ImmutableAbstractCollection<? extends E>; the collection to use for the immutable set.
    • ImmutableLinkedHashSet

      public ImmutableLinkedHashSet​(ImmutableAbstractSet<E> set, Immutable copyOrWrap)
      Parameters:
      set - ImmutableAbstractSet<E>; the collection to use for the immutable set.
      copyOrWrap - COPY stores a safe, internal copy of the collection; WRAP stores a pointer to the original collection
  • Method Details

    • getUnderlyingCollection

      protected Set<E> getUnderlyingCollection()
      Returns the underlying collection of this immutable collection. In case of Immutable.WRAP, this will be the original collection. In case of IMMUTABLE.COPY, this will be the internally stored (mutable) copy of the collection.
      Overrides:
      getUnderlyingCollection in class ImmutableAbstractSet<E>
      Returns:
      the underlying collection of this immutable collection.
    • toSet

      public final Set<E> toSet()
      Returns a modifiable copy of this immutable set.
      Returns:
      a modifiable copy of this immutable set.
    • toString

      public final String toString()
      Force to redefine toString.
      Specified by:
      toString in interface ImmutableSet<E>
      Overrides:
      toString in class Object
      Returns:
      String; a description of this immutable set