class TypeTupleSet
extends java.lang.Object
ParameterizedType, and uses this set to construct substitutions for a list of
TypeArgument objects.
Starts as a singleton list with the empty list, which is expanded by repeated use of the
extend(List) method that adds new types to the lists in the set, then the set of Substitution objects is created by a call to filter(List).
| Modifier and Type | Field and Description |
|---|---|
private int |
tupleLength
The length of tuples in the set.
|
private java.util.List<java.util.List<ReferenceType>> |
typeTuples
The list of type lists (tuples).
|
| Constructor and Description |
|---|
TypeTupleSet()
Creates a tuple set with a single empty tuple.
|
| Modifier and Type | Method and Description |
|---|---|
void |
extend(java.util.List<ReferenceType> types)
Extends all of the elements of the current tuple set with all of the types in the given list.
|
(package private) java.util.List<Substitution> |
filter(java.util.List<TypeVariable> typeParameters)
Returns a list of substitutions for type tuples that can instantiate the given list of
TypeArgument objects, and filters the set of tuples. |
private java.util.List<java.util.List<ReferenceType>> typeTuples
private int tupleLength
public void extend(java.util.List<ReferenceType> types)
types - the list of typesjava.util.List<Substitution> filter(java.util.List<TypeVariable> typeParameters)
TypeArgument objects, and filters the set of tuples.typeParameters - the type arguments