/*
  * @see ASTVisitor#visit(TypeParameter)
  * @since 3.0
  */
 @Override
 public boolean visit(TypeParameter node) {
   printModifiers(node.modifiers());
   node.getName().accept(this);
   if (!node.typeBounds().isEmpty()) {
     this.fBuffer.append(" extends "); // $NON-NLS-1$
     for (Iterator<Type> it = node.typeBounds().iterator(); it.hasNext(); ) {
       Type t = it.next();
       t.accept(this);
       if (it.hasNext()) {
         this.fBuffer.append(" & "); // $NON-NLS-1$
       }
     }
   }
   return false;
 }