Class BoundSet


  • public class BoundSet
    extends Object
    Author:
    Federico Tomassetti
    • Constructor Detail

      • BoundSet

        public BoundSet()
    • Method Detail

      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • isTrue

        public boolean isTrue()
        It is sometimes convenient to refer to an empty bound set with the symbol true; this is merely out of convenience, and the two are interchangeable.
      • empty

        public static BoundSet empty()
      • isEmpty

        public boolean isEmpty()
      • incorporate

        public BoundSet incorporate​(BoundSet otherBounds,
                                    com.github.javaparser.symbolsolver.model.resolution.TypeSolver typeSolver)
        Maintains a set of inference variable bounds, ensuring that these are consistent as new bounds are added. Because the bounds on one variable can sometimes impact the possible choices for another variable, this process propagates bounds between such interdependent variables.
      • deriveImpliedBounds

        public BoundSet deriveImpliedBounds​(com.github.javaparser.symbolsolver.model.resolution.TypeSolver typeSolver)
      • containsFalse

        public boolean containsFalse()
      • performResolution

        public Optional<InstantiationSet> performResolution​(List<InferenceVariable> variablesToResolve,
                                                            com.github.javaparser.symbolsolver.model.resolution.TypeSolver typeSolver)
        Examines the bounds on an inference variable and determines an instantiation that is compatible with those bounds. It also decides the order in which interdependent inference variables are to be resolved.