From de1fb78559159e44b4eb5a914823969f40a71cc2 Mon Sep 17 00:00:00 2001 From: acolyer Date: Fri, 8 Jul 2005 16:05:19 +0000 Subject: [PATCH] simplify signature processing and remove implicit extends --- .../weaver/TypeVariableReferenceType.java | 31 +++++++------------ 1 file changed, 11 insertions(+), 20 deletions(-) diff --git a/weaver/src/org/aspectj/weaver/TypeVariableReferenceType.java b/weaver/src/org/aspectj/weaver/TypeVariableReferenceType.java index 38f086f4e..91fde77c5 100644 --- a/weaver/src/org/aspectj/weaver/TypeVariableReferenceType.java +++ b/weaver/src/org/aspectj/weaver/TypeVariableReferenceType.java @@ -16,34 +16,25 @@ package org.aspectj.weaver; */ public class TypeVariableReferenceType extends BoundedReferenceType { - private String name; - - public TypeVariableReferenceType( - String aTypeVariableName, - ReferenceType aBound, - boolean isExtends, - World aWorld - ) { - super(aBound,isExtends,aWorld); - this.name = aTypeVariableName; - } + private TypeVariable typeVariable; public TypeVariableReferenceType( TypeVariable aTypeVariable, World aWorld) { - super((ReferenceType)aTypeVariable.getUpperBound(),true,aWorld); - this.name = aTypeVariable.getName(); - if (aTypeVariable.getLowerBound() != null) { - this.isExtends = false; - this.isSuper = true; - this.lowerBound = (ReferenceType) aTypeVariable.getLowerBound(); - } + super(aTypeVariable.getUpperBound().getSignature(),aWorld); + this.typeVariable = aTypeVariable; + this.isExtends = false; + this.isSuper = false; + this.upperBound = (ReferenceType) aTypeVariable.getUpperBound(); + this.lowerBound = (ReferenceType) aTypeVariable.getLowerBound(); if (aTypeVariable.getAdditionalInterfaceBounds().length > 0) { this.additionalInterfaceBounds = (ReferenceType[]) aTypeVariable.getAdditionalInterfaceBounds(); } + setDelegate(new ReferenceTypeReferenceTypeDelegate((ReferenceType)aTypeVariable.getUpperBound())); } - public String getTypeVariableName() { - return name; + public TypeVariable getTypeVariable() { + return typeVariable; } + } -- 2.39.5