org.eclipse.xtext.xbase.lib
Class CollectionLiterals

java.lang.Object
  extended by org.eclipse.xtext.xbase.lib.CollectionLiterals

public class CollectionLiterals
extends java.lang.Object

This is an extension library for collections.

Author:
Sebastian Zarnekow - Initial contribution and API

Constructor Summary
CollectionLiterals()
           
 
Method Summary
static
<T> java.util.List<T>
emptyList()
          Returns the empty, immutable list.
static
<K,V> java.util.Map<K,V>
emptyMap()
          Returns the empty, immutable map.
static
<T> java.util.Set<T>
emptySet()
          Returns the empty, immutable set.
static
<T> java.util.ArrayList<T>
newArrayList(T... initial)
          Creates a mutable ArrayList instance containing the given initial elements.
static
<K,V> java.util.HashMap<K,V>
newHashMap(Pair<K,V>... initial)
          Creates a mutable HashMap instance containing the given initial entries.
static
<T> java.util.HashSet<T>
newHashSet(T... initial)
          Creates a mutable HashSet instance containing the given initial elements.
static
<T> java.util.List<T>
newImmutableList(T... elements)
          Returns an immutable list containing the given elements, in order.
static
<K,V> java.util.Map<K,V>
newImmutableMap(Pair<K,V>... entries)
          Returns an immutable map containing the given entries.
static
<T> java.util.Set<T>
newImmutableSet(T... elements)
          Returns an immutable set containing the given elements.
static
<K,V> java.util.LinkedHashMap<K,V>
newLinkedHashMap(Pair<K,V>... initial)
          Creates a mutable LinkedHashMap instance containing the given initial entries.
static
<T> java.util.LinkedHashSet<T>
newLinkedHashSet(T... initial)
          Creates a mutable LinkedHashSet instance containing the given initial elements.
static
<T> java.util.LinkedList<T>
newLinkedList(T... initial)
          Creates a mutable LinkedList instance containing the given initial elements.
static
<K,V> java.util.TreeMap<K,V>
newTreeMap(java.util.Comparator<? super K> comparator, Pair<K,V>... initial)
          Creates a mutable TreeMap instance containing the given initial entries.
static
<T> java.util.TreeSet<T>
newTreeSet(java.util.Comparator<? super T> comparator, T... initial)
          Creates a mutable TreeSet instance containing the given initial elements.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CollectionLiterals

public CollectionLiterals()
Method Detail

emptyList

public static final <T> java.util.List<T> emptyList()
Returns the empty, immutable list.

Returns:
an empty, immutable list.
See Also:
Collections.emptyList()

emptySet

public static final <T> java.util.Set<T> emptySet()
Returns the empty, immutable set.

Returns:
an empty, immutable set.
See Also:
Collections.emptySet()

emptyMap

public static final <K,V> java.util.Map<K,V> emptyMap()
Returns the empty, immutable map.

Returns:
an empty, immutable map.
See Also:
Collections.emptyMap()

newImmutableList

public static final <T> java.util.List<T> newImmutableList(T... elements)
Returns an immutable list containing the given elements, in order.

Parameters:
elements - the elements that should be contained in the list. May not be null or contain any null values.
Returns:
an immutable list containing the given elements.
Throws:
java.lang.NullPointerException - if elements or any of items in elements is null

newImmutableSet

public static final <T> java.util.Set<T> newImmutableSet(T... elements)
Returns an immutable set containing the given elements. Repeated occurrences of an element (according to Object.equals(java.lang.Object)) after the first are ignored

Parameters:
elements - the elements that should be contained in the set. May not be null or contain any null values.
Returns:
an immutable set containing the given elements.
Throws:
java.lang.NullPointerException - if elements or any of items in elements is null

newImmutableMap

public static final <K,V> java.util.Map<K,V> newImmutableMap(Pair<K,V>... entries)
Returns an immutable map containing the given entries. Repeated occurrences of a keys will cause an IllegalArgumentException.

Parameters:
entries - the entries that should be contained in the map. May not be null or contain any null keys or value.
Returns:
an immutable map containing the given entries.
Throws:
java.lang.NullPointerException - if entries or any key or value in entries is null
java.lang.IllegalArgumentException - if duplicate keys are contained in entries.

newArrayList

public static final <T> java.util.ArrayList<T> newArrayList(T... initial)
Creates a mutable ArrayList instance containing the given initial elements.

Parameters:
initial - the initial elements that the list should contain, in order. May not be null but may contain null values.
Returns:
a new ArrayList containing those elements

newLinkedList

public static final <T> java.util.LinkedList<T> newLinkedList(T... initial)
Creates a mutable LinkedList instance containing the given initial elements.

Parameters:
initial - the initial elements that the list should contain, in order. May not be null but may contain null values.
Returns:
a new LinkedList containing those elements

newHashSet

public static final <T> java.util.HashSet<T> newHashSet(T... initial)
Creates a mutable HashSet instance containing the given initial elements.

Parameters:
initial - the initial elements that the set should contain, in order. May not be null but may contain null values.
Returns:
a new HashSet containing those elements

newLinkedHashSet

public static final <T> java.util.LinkedHashSet<T> newLinkedHashSet(T... initial)
Creates a mutable LinkedHashSet instance containing the given initial elements.

Parameters:
initial - the initial elements that the set should contain, in order. May not be null but may contain null values.
Returns:
a new LinkedHashSet containing those elements

newTreeSet

public static final <T> java.util.TreeSet<T> newTreeSet(java.util.Comparator<? super T> comparator,
                                                        T... initial)
Creates a mutable TreeSet instance containing the given initial elements.

Parameters:
initial - the initial elements that the set should contain, in order. May not be null but may contain null values.
comparator - the comparator that should be used. May be null which indicates that the natural ordering of the items should be used.
Returns:
a new TreeSet containing those elements

newHashMap

public static final <K,V> java.util.HashMap<K,V> newHashMap(Pair<K,V>... initial)
Creates a mutable HashMap instance containing the given initial entries. Repeated occurrences of a keys will cause an IllegalArgumentException.

Parameters:
initial - the entries that should be contained in the map. May not be null but may contain null keys or values.
Returns:
a new HashMap containing those elements
Throws:
java.lang.IllegalArgumentException - if duplicate keys are contained the initial entries.

newLinkedHashMap

public static final <K,V> java.util.LinkedHashMap<K,V> newLinkedHashMap(Pair<K,V>... initial)
Creates a mutable LinkedHashMap instance containing the given initial entries. Repeated occurrences of a keys will cause an IllegalArgumentException.

Parameters:
initial - the entries that should be contained in the map. May not be null but may contain null keys or values.
Returns:
a new LinkedHashMap containing those elements
Throws:
java.lang.IllegalArgumentException - if duplicate keys are contained the initial entries.

newTreeMap

public static final <K,V> java.util.TreeMap<K,V> newTreeMap(java.util.Comparator<? super K> comparator,
                                                            Pair<K,V>... initial)
Creates a mutable TreeMap instance containing the given initial entries. Repeated occurrences of a keys will cause an IllegalArgumentException.

Parameters:
initial - the entries that should be contained in the map. May not be null but may contain null keys or values.
comparator - the comparator that should be used. May be null which indicates that the natural ordering of the keys should be used.
Returns:
a new TreeMap containing those elements
Throws:
java.lang.IllegalArgumentException - if duplicate keys are contained the initial entries.