blob: 264c611e9f72d8637f94dcd0c18ac6957a5e4728 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 2003 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Common Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/cpl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.jdt.core.tests.dom;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.eclipse.jdt.core.dom.*;
import org.eclipse.jdt.core.dom.ASTVisitor;
class ASTNodesCollectorVisitor extends ASTVisitor {
private Set detachedAstNodes;
/**
*
* @see java.lang.Object#Object()
*/
ASTNodesCollectorVisitor() {
this.detachedAstNodes = new HashSet();
}
private void add(ASTNode node) {
this.detachedAstNodes.add(node);
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.AnonymousClassDeclaration)
*/
public void endVisit(AnonymousClassDeclaration node) {
add(node);
detachedListElement(node.bodyDeclarations());
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ArrayAccess)
*/
public void endVisit(ArrayAccess node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ArrayCreation)
*/
public void endVisit(ArrayCreation node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ArrayInitializer)
*/
public void endVisit(ArrayInitializer node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ArrayType)
*/
public void endVisit(ArrayType node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.AssertStatement)
*/
public void endVisit(AssertStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.Assignment)
*/
public void endVisit(Assignment node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.Block)
*/
public void endVisit(Block node) {
}
private void detachedListElement(List list) {
for (int i = 0; i < list.size(); i++) {
list.remove(0);
}
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.BooleanLiteral)
*/
public void endVisit(BooleanLiteral node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.BreakStatement)
*/
public void endVisit(BreakStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.CastExpression)
*/
public void endVisit(CastExpression node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.CatchClause)
*/
public void endVisit(CatchClause node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.CharacterLiteral)
*/
public void endVisit(CharacterLiteral node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ClassInstanceCreation)
*/
public void endVisit(ClassInstanceCreation node) {
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.CompilationUnit)
*/
public void endVisit(CompilationUnit node) {
detachedListElement(node.imports());
node.setPackage(node.getAST().newPackageDeclaration());
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ConditionalExpression)
*/
public void endVisit(ConditionalExpression node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ConstructorInvocation)
*/
public void endVisit(ConstructorInvocation node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ContinueStatement)
*/
public void endVisit(ContinueStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.DoStatement)
*/
public void endVisit(DoStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.EmptyStatement)
*/
public void endVisit(EmptyStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ExpressionStatement)
*/
public void endVisit(ExpressionStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.FieldAccess)
*/
public void endVisit(FieldAccess node) {
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.FieldDeclaration)
*/
public void endVisit(FieldDeclaration node) {
detachedListElement(node.fragments());
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ForStatement)
*/
public void endVisit(ForStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.IfStatement)
*/
public void endVisit(IfStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ImportDeclaration)
*/
public void endVisit(ImportDeclaration node) {
add(node);
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.InfixExpression)
*/
public void endVisit(InfixExpression node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.Initializer)
*/
public void endVisit(Initializer node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.InstanceofExpression)
*/
public void endVisit(InstanceofExpression node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.Javadoc)
*/
public void endVisit(Javadoc node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.LabeledStatement)
*/
public void endVisit(LabeledStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.MethodDeclaration)
*/
public void endVisit(MethodDeclaration node) {
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.MethodInvocation)
*/
public void endVisit(MethodInvocation node) {
add(node);
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.NullLiteral)
*/
public void endVisit(NullLiteral node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.NumberLiteral)
*/
public void endVisit(NumberLiteral node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.PackageDeclaration)
*/
public void endVisit(PackageDeclaration node) {
add(node);
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ParenthesizedExpression)
*/
public void endVisit(ParenthesizedExpression node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.PostfixExpression)
*/
public void endVisit(PostfixExpression node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.PrefixExpression)
*/
public void endVisit(PrefixExpression node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.PrimitiveType)
*/
public void endVisit(PrimitiveType node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.QualifiedName)
*/
public void endVisit(QualifiedName node) {
add(node);
node.setQualifier(node.getAST().newSimpleName("sss")); //$NON-NLS-1$
node.setName(node.getAST().newSimpleName("sss")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ReturnStatement)
*/
public void endVisit(ReturnStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SimpleName)
*/
public void endVisit(SimpleName node) {
ASTNode parent = node.getParent();
switch(parent.getNodeType()) {
case ASTNode.CONTINUE_STATEMENT :
case ASTNode.BREAK_STATEMENT :
case ASTNode.LABELED_STATEMENT :
break;
default :
add(node);
}
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SimpleType)
*/
public void endVisit(SimpleType node) {
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SingleVariableDeclaration)
*/
public void endVisit(SingleVariableDeclaration node) {
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.StringLiteral)
*/
public void endVisit(StringLiteral node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SuperConstructorInvocation)
*/
public void endVisit(SuperConstructorInvocation node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SuperFieldAccess)
*/
public void endVisit(SuperFieldAccess node) {
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
node.setQualifier(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SuperMethodInvocation)
*/
public void endVisit(SuperMethodInvocation node) {
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
node.setQualifier(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SwitchCase)
*/
public void endVisit(SwitchCase node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SwitchStatement)
*/
public void endVisit(SwitchStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.SynchronizedStatement)
*/
public void endVisit(SynchronizedStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ThisExpression)
*/
public void endVisit(ThisExpression node) {
node.setQualifier(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.ThrowStatement)
*/
public void endVisit(ThrowStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.TryStatement)
*/
public void endVisit(TryStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.TypeDeclaration)
*/
public void endVisit(TypeDeclaration node) {
add(node);
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
node.setSuperclass(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
detachedListElement(node.bodyDeclarations());
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.TypeDeclarationStatement)
*/
public void endVisit(TypeDeclarationStatement node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.TypeLiteral)
*/
public void endVisit(TypeLiteral node) {
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.VariableDeclarationExpression)
*/
public void endVisit(VariableDeclarationExpression node) {
detachedListElement(node.fragments());
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.VariableDeclarationFragment)
*/
public void endVisit(VariableDeclarationFragment node) {
add(node);
node.setName(node.getAST().newSimpleName("XXX")); //$NON-NLS-1$
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.VariableDeclarationStatement)
*/
public void endVisit(VariableDeclarationStatement node) {
detachedListElement(node.fragments());
}
/**
* @see org.eclipse.jdt.core.dom.ASTVisitor#endVisit(org.eclipse.jdt.core.dom.WhileStatement)
*/
public void endVisit(WhileStatement node) {
}
/**
* Returns the detachedAstNodes.
* @return Set
*/
public Set getDetachedAstNodes() {
return detachedAstNodes;
}
}