org.jetbrains.jet.lang.resolve.calls.inference
Class ConstraintSystemWithPriorities

java.lang.Object
  extended by org.jetbrains.jet.lang.resolve.calls.inference.ConstraintSystemWithPriorities

public class ConstraintSystemWithPriorities
extends java.lang.Object


Nested Class Summary
 class ConstraintSystemWithPriorities.Solution
           
 
Field Summary
static java.util.Comparator<SubtypingConstraint> SUBTYPING_CONSTRAINT_ORDER
           
 
Constructor Summary
ConstraintSystemWithPriorities(ConstraintResolutionListener listener)
           
 
Method Summary
 void addSubtypingConstraint(SubtypingConstraint constraint)
           
 boolean computeValueFor(TypeValue unknown)
           
 boolean expandEqualityConstraint(TypeValue a, TypeValue b)
           
static TypeSubstitutor makeConstantSubstitutor(java.util.Collection<TypeParameterDescriptor> typeParameterDescriptors, JetType type)
           
 void registerTypeVariable(TypeParameterDescriptor typeParameterDescriptor, Variance positionVariance)
           
 ConstraintSystemSolution solve()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SUBTYPING_CONSTRAINT_ORDER

public static final java.util.Comparator<SubtypingConstraint> SUBTYPING_CONSTRAINT_ORDER
Constructor Detail

ConstraintSystemWithPriorities

public ConstraintSystemWithPriorities(ConstraintResolutionListener listener)
Method Detail

makeConstantSubstitutor

public static TypeSubstitutor makeConstantSubstitutor(java.util.Collection<TypeParameterDescriptor> typeParameterDescriptors,
                                                      JetType type)

registerTypeVariable

public void registerTypeVariable(@NotNull
                                 TypeParameterDescriptor typeParameterDescriptor,
                                 @NotNull
                                 Variance positionVariance)

addSubtypingConstraint

public void addSubtypingConstraint(@NotNull
                                   SubtypingConstraint constraint)

expandEqualityConstraint

public boolean expandEqualityConstraint(TypeValue a,
                                        TypeValue b)

solve

@NotNull
public ConstraintSystemSolution solve()

computeValueFor

public boolean computeValueFor(TypeValue unknown)