|
|
@@ -966,12 +966,31 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl |
|
|
|
} |
|
|
|
TypeVariable[] tvs = getGenericType().getTypeVariables(); |
|
|
|
Map<String, UnresolvedType> parameterizationMap = new HashMap<String, UnresolvedType>(); |
|
|
|
if (tvs.length != typeParameters.length) { |
|
|
|
throw new IllegalStateException("Unexpected mismatch when building parameterization map. For type "+this.signature+" expecting "+tvs.length+": "+toString(tvs)+" type parameters but found "+typeParameters.length+":"+toString(typeParameters)); |
|
|
|
} |
|
|
|
for (int i = 0; i < tvs.length; i++) { |
|
|
|
parameterizationMap.put(tvs[i].getName(), typeParameters[i]); |
|
|
|
} |
|
|
|
return parameterizationMap; |
|
|
|
} |
|
|
|
|
|
|
|
private String toString(UnresolvedType[] typeParameters) { |
|
|
|
StringBuilder s = new StringBuilder(); |
|
|
|
for (UnresolvedType tv: typeParameters) { |
|
|
|
s.append(tv.getSignature()).append(" "); |
|
|
|
} |
|
|
|
return s.toString(); |
|
|
|
} |
|
|
|
|
|
|
|
private String toString(TypeVariable[] tvs) { |
|
|
|
StringBuilder s = new StringBuilder(); |
|
|
|
for (TypeVariable tv: tvs) { |
|
|
|
s.append(tv.getName()).append(" "); |
|
|
|
} |
|
|
|
return s.toString(); |
|
|
|
} |
|
|
|
|
|
|
|
public List<ShadowMunger> getDeclaredAdvice() { |
|
|
|
List<ShadowMunger> l = new ArrayList<ShadowMunger>(); |
|
|
|
ResolvedMember[] methods = getDeclaredMethods(); |