Class TypeBindings


  • public final class TypeBindings
    extends Object
    Helper class used for storing binding of local type variables to matching resolved types, in context of a single class.
    • Method Detail

      • emptyBindings

        public static TypeBindings emptyBindings()
      • create

        public static TypeBindings create​(Class<?> erasedType,
                                          List<ResolvedType> typeList)
        Factory method for constructing bindings for given class using specified type parameters.
      • withUnboundVariable

        public TypeBindings withUnboundVariable​(String name)
        Method for creating an instance that has same bindings as this object, plus an indicator for additional type variable that may be unbound within this context; this is needed to resolve recursive self-references.
        Since:
        1.3 (renamed from "withAdditionalBinding" in 1.2)
      • findBoundType

        public ResolvedType findBoundType​(String name)
        Find type bound to specified name, if there is one; returns bound type if so, null if not.
      • isEmpty

        public boolean isEmpty()
      • size

        public int size()
        Returns number of bindings contained
      • getBoundName

        public String getBoundName​(int index)
      • getBoundType

        public ResolvedType getBoundType​(int index)
      • getTypeParameters

        public List<ResolvedType> getTypeParameters()
        Accessor for getting bound types in declaration order
      • hasUnbound

        public boolean hasUnbound​(String name)
        Since:
        2.3
      • hashCode

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

        protected ResolvedType[] typeParameterArray()