/** Constructor used when creating a raw type. */ public ReferenceType(ResolvedType theGenericType, World aWorld) { super(theGenericType.getErasureSignature(), theGenericType.getErasureSignature(), aWorld); ReferenceType genericReferenceType = (ReferenceType) theGenericType; this.typeParameters = null; this.genericType = genericReferenceType; this.typeKind = TypeKind.RAW; this.delegate = genericReferenceType.getDelegate(); genericReferenceType.addDependentType(this); }
/** Constructor used when creating a parameterized type. */ public ReferenceType(ResolvedType theGenericType, ResolvedType[] theParameters, World aWorld) { super( makeParameterizedSignature(theGenericType, theParameters), theGenericType.signatureErasure, aWorld); ReferenceType genericReferenceType = (ReferenceType) theGenericType; this.typeParameters = theParameters; this.genericType = genericReferenceType; this.typeKind = TypeKind.PARAMETERIZED; this.delegate = genericReferenceType.getDelegate(); genericReferenceType.addDependentType(this); }