Adds the given upper type bound to this TypesSet unless a supertype
of the given type is already added as an upper type bound.
Adds the given upper type bound to this TypesSet unless a supertype
of the given type is already added as an upper type bound.
All subtypes – whether concrete or upper types bounds – are removed.
The set of concrete types which are not subtypes of any type which
is returned by upperTypeBounds.
A call back function will be called for each type stored in the set along with
the information if type represents an upper type bound (true) or refers to a
concrete class/interface type (the second parameter is then false).
Returns true if this set is empty.
Returns true if this set contains at least one type.
The number of types explicitly stored in the set.
The number of types explicitly stored in the set. This number is independent
of the number of represented types. E.g., if java.lang.Object is stored in this set
then the size of this set is 1 even though it represents all known types.
Returns a pair where the first set contains all concrete types and the second set contains all upper type bounds.
Returns a pair where the first set contains all concrete types and the second set contains all upper type bounds.
An efficient representation of a set of types if some types are actually upper type bounds and hence already represent sets of types.
Thread Safety
This class is not thread safe.