Class  Description 

ConstraintMap 
ConstraintMap holds simplified versions of the TUConstraints for ALL type variable for which we
are inferring an argument.

ConstraintMapBuilder 
Converts a set of TUConstraints into a ConstraintMap.

EqualitiesSolver 
EqualitiesSolver infers type arguments for targets using the equality constraints in
ConstraintMap.

InferenceResult 
Represents the result from inferring type arguments.

InferredValue 
When one of the constraint solvers infers that a the target has a given type/target in ALL
qualifier hierarchies or that given an additional set of annotations that we know the target must
hold we have covered all hierarchies then it creates an InferredValue to represent this
inference.

InferredValue.InferredTarget 
Indicates that a corresponding target was inferred to be the field "target" in the
hierarchies not overridden by additionalAnnotations.

InferredValue.InferredType 
Indicates that a corresponding target was inferred to be the field "type" in all hierarchies.

SubtypesSolver 
Infers type arguments by using the Greatest Lower Bound computation on the subtype relationships
in a constraint map.

SupertypesSolver 
Infers type arguments by using the Least Upper Bound computation on the supertype relationships
in a constraint map.

TargetConstraints 
TargetConstraints represents the set of all TUConstraints for which target was the type
parameter, i.e.

TargetConstraints.Equalities  
TargetConstraints.Subtypes  
TargetConstraints.Supertypes 