Enum CollectionFeature
- java.lang.Object
-
- java.lang.Enum<CollectionFeature>
-
- com.google.common.collect.testing.features.CollectionFeature
-
- All Implemented Interfaces:
Feature<Collection>
,Serializable
,Comparable<CollectionFeature>
@GwtCompatible public enum CollectionFeature extends Enum<CollectionFeature> implements Feature<Collection>
Optional features of classes derived fromCollection
.- Author:
- George van den Driessche
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
CollectionFeature.Require
-
Enum Constant Summary
Enum Constants Enum Constant Description ALLOWS_NULL_QUERIES
The collection must not throwNullPointerException
on calls such ascontains(null)
orremove(null)
, but instead must return a simplefalse
.ALLOWS_NULL_VALUES
DESCENDING_VIEW
FAILS_FAST_ON_CONCURRENT_MODIFICATION
GENERAL_PURPOSE
Features supported by general-purpose collections - everything butRESTRICTS_ELEMENTS
.KNOWN_ORDER
Indicates that a collection has a well-defined ordering of its elements.NON_STANDARD_TOSTRING
Indicates that a collection has a differentObject.toString()
representation than most collections.NONE
For documenting collections that support no optional features, such asCollections.emptySet()
REJECTS_DUPLICATES_AT_CREATION
Indicates that the constructor or factory method of a collection, usually an immutable set, throws anIllegalArgumentException
when presented with duplicate elements instead of collapsing them to a single element or including duplicate instances in the collection.REMOVE_OPERATIONS
Features supported by collections where only removal is allowed.RESTRICTS_ELEMENTS
Indicates that a collection disallows certain elements (other thannull
, whose validity as an element is indicated by the presence or absence ofALLOWS_NULL_VALUES
).SERIALIZABLE
SERIALIZABLE_INCLUDING_VIEWS
SUBSET_VIEW
SUPPORTS_ADD
SUPPORTS_ITERATOR_REMOVE
SUPPORTS_REMOVE
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Set<Feature<? super Collection>>
getImpliedFeatures()
Returns the set of features that are implied by this feature.static CollectionFeature
valueOf(String name)
Returns the enum constant of this type with the specified name.static CollectionFeature[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
ALLOWS_NULL_QUERIES
public static final CollectionFeature ALLOWS_NULL_QUERIES
The collection must not throwNullPointerException
on calls such ascontains(null)
orremove(null)
, but instead must return a simplefalse
.
-
ALLOWS_NULL_VALUES
public static final CollectionFeature ALLOWS_NULL_VALUES
-
RESTRICTS_ELEMENTS
public static final CollectionFeature RESTRICTS_ELEMENTS
Indicates that a collection disallows certain elements (other thannull
, whose validity as an element is indicated by the presence or absence ofALLOWS_NULL_VALUES
). From the documentation forCollection
:"Some collection implementations have restrictions on the elements that they may contain. For example, some implementations prohibit null elements, and some have restrictions on the types of their elements."
-
KNOWN_ORDER
public static final CollectionFeature KNOWN_ORDER
Indicates that a collection has a well-defined ordering of its elements. The ordering may depend on the element values, such as aSortedSet
, or on the insertion ordering, such as aLinkedHashSet
. All list tests and sorted-collection tests automatically specify this feature.
-
NON_STANDARD_TOSTRING
public static final CollectionFeature NON_STANDARD_TOSTRING
Indicates that a collection has a differentObject.toString()
representation than most collections. If not specified, the collection tests will examine the value returned byObject.toString()
.
-
REJECTS_DUPLICATES_AT_CREATION
public static final CollectionFeature REJECTS_DUPLICATES_AT_CREATION
Indicates that the constructor or factory method of a collection, usually an immutable set, throws anIllegalArgumentException
when presented with duplicate elements instead of collapsing them to a single element or including duplicate instances in the collection.
-
SUPPORTS_ADD
public static final CollectionFeature SUPPORTS_ADD
-
SUPPORTS_REMOVE
public static final CollectionFeature SUPPORTS_REMOVE
-
SUPPORTS_ITERATOR_REMOVE
public static final CollectionFeature SUPPORTS_ITERATOR_REMOVE
-
FAILS_FAST_ON_CONCURRENT_MODIFICATION
public static final CollectionFeature FAILS_FAST_ON_CONCURRENT_MODIFICATION
-
GENERAL_PURPOSE
public static final CollectionFeature GENERAL_PURPOSE
Features supported by general-purpose collections - everything butRESTRICTS_ELEMENTS
.
-
REMOVE_OPERATIONS
public static final CollectionFeature REMOVE_OPERATIONS
Features supported by collections where only removal is allowed.
-
SERIALIZABLE
public static final CollectionFeature SERIALIZABLE
-
SERIALIZABLE_INCLUDING_VIEWS
public static final CollectionFeature SERIALIZABLE_INCLUDING_VIEWS
-
SUBSET_VIEW
public static final CollectionFeature SUBSET_VIEW
-
DESCENDING_VIEW
public static final CollectionFeature DESCENDING_VIEW
-
NONE
public static final CollectionFeature NONE
For documenting collections that support no optional features, such asCollections.emptySet()
-
-
Method Detail
-
values
public static CollectionFeature[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (CollectionFeature c : CollectionFeature.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static CollectionFeature valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
getImpliedFeatures
public Set<Feature<? super Collection>> getImpliedFeatures()
Description copied from interface:Feature
Returns the set of features that are implied by this feature.- Specified by:
getImpliedFeatures
in interfaceFeature<Collection>
-
-