Class AbstractType.Bindings

java.lang.Object
org.postgresql.pljava.adt.spi.AbstractType.Bindings
All Implemented Interfaces:
Type
Enclosing class:
AbstractType

public static class AbstractType.Bindings extends Object implements Type
A class recording the bindings made in a ParameterizedType to the type parameters in a GenericDeclaration<Class>. Implements Type so it can be added to the pending queue in specialization.

In specialization, the tree of superclasses/superinterfaces will be searched breadth-first, with all of a node's immediate supers enqueued before any from the next level. By recording a node's type variable to type argument bindings in an object of this class, and enqueueing it before any of the node's supers, any type variables encountered as actual type arguments to any of those supers should be resolvable in the object of this class most recently dequeued.

  • Constructor Details

    • Bindings

      public Bindings(TypeVariable<?>[] formalParams, Type[] actualArgs)