Package polyglot.ext.polyj.types

Interface Summary
BackMapProcedures  
InstType Each InstType keeps a list of substitutions for each of the parameters to its polymorphic type.
ParamType Instances of ParamType represent formal parameters of a PolyJClassType.
PolyDlg A PolyDlg is a delegate for handling any requests from the PolyTypeOps interface.
PolyJArrayType A PolyJArrayType represents an array of base Java or parametric types.
PolyJClassType A PolyJClassType represents classes that might also be polymorphic, i.e.
PolyJContext Extends a Context to include the type parameters that are in scope.
PolyJParsedClassType  
PolyJTypeSystem  
PolyTypeOps The operations in common for all polymorphic types.
SubstType A SubstType is a type that performs substitution of type parameters.
WrappedClassType A WrappedClassType is a PolyJClassType that has been wrapped by a TypeWrapper in order to implement lazy parameter substition.
 

Class Summary
ConstraintChecker Helper class that encapsulates the logic for constraint checking.
InstType_c Each InstType keeps a list of substitutions for each of the parameters to its polymorphic type.
ParamType_c Instances of ParamType represent formal parameters of a PolyJClassType.
PolyDlg_c  
PolyJArrayType_c A PolyJArrayType_c must implement translation differently than ArrayType_c because the innermost dimension of an array with a parametric base type is represented as Object in the translation.
PolyJContext_c Extends a Context to include the type parameters that are in scope.
PolyJParsedClassType_c  
PolyJTranslationHelper  
PolyJTypeSystem_c  
 

Exception Summary
ConstraintException Thrown by the ConstraintChecker if any constraints are unsatisfied.