/* (omit javadoc for this method)
  * Method declared on ASTNode.
  */
 ASTNode clone0(AST target) {
   SuperMethodReference result = new SuperMethodReference(target);
   result.setSourceRange(getStartPosition(), getLength());
   result.setName((SimpleName) getName().clone(target));
   result.setQualifier((Name) ASTNode.copySubtree(target, getQualifier()));
   result.typeArguments().addAll(ASTNode.copySubtrees(target, typeArguments()));
   return result;
 }
 /*
  * @see ASTVisitor#visit(SuperMethodReference)
  */
 @Override
 public boolean visit(SuperMethodReference node) {
   if (node.getQualifier() != null) {
     node.getQualifier().accept(this);
     this.fBuffer.append('.');
   }
   this.fBuffer.append("super"); // $NON-NLS-1$
   printReferenceTypeArguments(node.typeArguments());
   node.getName().accept(this);
   return false;
 }
 @Override
 public boolean visit(SuperMethodReference node) {
   doVisitNode(node.getQualifier());
   doVisitChildren(node.typeArguments());
   return false;
 }