/******************************************************************************* * Copyright (c) 2008, 2010 Institute for Software, HSR Hochschule fuer Technik * Rapperswil, University of applied sciences and others * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Institute for Software - initial API and implementation *******************************************************************************/ package org.eclipse.cdt.internal.ui.refactoring.utils; import org.eclipse.cdt.core.dom.ast.ASTVisitor; import org.eclipse.cdt.core.dom.ast.IASTDeclSpecifier; import org.eclipse.cdt.core.dom.ast.IASTDeclaration; import org.eclipse.cdt.core.dom.ast.IASTDeclarator; import org.eclipse.cdt.core.dom.ast.IASTEnumerationSpecifier.IASTEnumerator; import org.eclipse.cdt.core.dom.ast.IASTExpression; import org.eclipse.cdt.core.dom.ast.IASTInitializer; import org.eclipse.cdt.core.dom.ast.IASTName; import org.eclipse.cdt.core.dom.ast.IASTNode; import org.eclipse.cdt.core.dom.ast.IASTParameterDeclaration; import org.eclipse.cdt.core.dom.ast.IASTProblem; import org.eclipse.cdt.core.dom.ast.IASTStatement; import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit; import org.eclipse.cdt.core.dom.ast.IASTTypeId; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTNamespaceDefinition; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter; public class CPPASTAllVisitor extends ASTVisitor { { shouldVisitNames = true; shouldVisitDeclarations = true; shouldVisitInitializers = true; shouldVisitParameterDeclarations = true; shouldVisitDeclarators = true; shouldVisitDeclSpecifiers = true; shouldVisitExpressions = true; shouldVisitStatements = true; shouldVisitTypeIds = true; shouldVisitEnumerators = true; shouldVisitTranslationUnit = true; shouldVisitProblems = true; shouldVisitBaseSpecifiers = true; shouldVisitNamespaces = true; shouldVisitTemplateParameters = true; } @Override public int visit(IASTTranslationUnit tu) { return visitAll(tu); } @Override public int visit(IASTName name) { return visitAll(name); } @Override public int visit(IASTDeclaration declaration) { return visitAll(declaration); } @Override public int visit(IASTInitializer initializer) { return visitAll(initializer); } @Override public int visit(IASTParameterDeclaration parameterDeclaration) { return visitAll(parameterDeclaration); } @Override public int visit(IASTDeclarator declarator) { return visitAll(declarator); } @Override public int visit(IASTDeclSpecifier declSpec) { return visitAll(declSpec); } @Override public int visit(IASTExpression expression) { return visitAll(expression); } @Override public int visit(IASTStatement statement) { return visitAll(statement); } @Override public int visit(IASTTypeId typeId) { return visitAll(typeId); } @Override public int visit(IASTEnumerator enumerator) { return visitAll(enumerator); } @Override public int visit( IASTProblem problem ){ return visitAll(problem); } /** * Visit BaseSpecifiers. */ @Override public int visit(ICPPASTBaseSpecifier specifier) { return visitAll(specifier); } /** * Visit namespace definitions. */ @Override public int visit(ICPPASTNamespaceDefinition namespace) { return visitAll(namespace); } /** * Visit template parameter. */ @Override public int visit(ICPPASTTemplateParameter parameter) { return visitAll(parameter); } public int visitAll(IASTNode node){ return PROCESS_CONTINUE; } }