/** * {@inheritDoc} */ public Generic getUpperBounds() { return typeVariableToken.getBounds().accept(visitor); }
/** * {@inheritDoc} */ public TypeVariableToken accept(TypeDescription.Generic.Visitor<? extends TypeDescription.Generic> visitor) { return new TypeVariableToken(symbol, getBounds().accept(visitor), annotations); }
/** * {@inheritDoc} */ public TypeDescription onTypeVariable(Generic typeVariable) { for (TypeVariableToken typeVariableToken : typeVariableTokens) { if (typeVariable.getSymbol().equals(typeVariableToken.getSymbol())) { return typeVariableToken.getBounds().get(0).accept(this); } } return TargetType.resolve(declaringType.findVariable(typeVariable.getSymbol()).asErasure(), declaringType); }