/*******************************************************************************
* Copyright (c) 2009, 2010 Wind River Systems, Inc. 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:
* Markus Schorn - initial API and implementation
*******************************************************************************/
package org.eclipse.cdt.core.dom.ast;
import org.eclipse.cdt.core.dom.ast.IASTEnumerationSpecifier.IASTEnumerator;
import org.eclipse.cdt.core.dom.ast.c.ICASTDesignator;
import org.eclipse.cdt.core.dom.ast.c.ICASTVisitor;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCapture;
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;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTVisitor;
/**
* Generic visitor for ast-nodes.
* <p> Clients may subclass. </p>
* @since 5.1
*/
public abstract class ASTGenericVisitor extends ASTVisitor implements ICPPASTVisitor, ICASTVisitor {
public ASTGenericVisitor(boolean visitNodes) {
super(visitNodes);
}
protected int genericVisit(IASTNode node) {
return PROCESS_CONTINUE;
}
protected int genericLeave(IASTNode node) {
return PROCESS_CONTINUE;
}
@Override
public int visit(ICPPASTBaseSpecifier baseSpecifier) {
return genericVisit(baseSpecifier);
}
@Override
public int visit(ICPPASTNamespaceDefinition namespaceDefinition) {
return genericVisit(namespaceDefinition);
}
@Override
public int visit(ICPPASTTemplateParameter templateParameter) {
return genericVisit(templateParameter);
}
@Override
public int visit(ICPPASTCapture capture) {
return genericVisit(capture);
}
@Override
public int visit(IASTArrayModifier arrayModifier) {
return genericVisit(arrayModifier);
}
@Override
public int visit(IASTPointerOperator ptrOperator) {
return genericVisit(ptrOperator);
}
@Override
public int visit(IASTDeclaration declaration) {
return genericVisit(declaration);
}
@Override
public int visit(IASTDeclarator declarator) {
return genericVisit(declarator);
}
@Override
public int visit(IASTDeclSpecifier declSpec) {
return genericVisit(declSpec);
}
@Override
public int visit(IASTEnumerator enumerator) {
return genericVisit(enumerator);
}
@Override
public int visit(IASTExpression expression) {
return genericVisit(expression);
}
@Override
public int visit(IASTInitializer initializer) {
return genericVisit(initializer);
}
@Override
public int visit(IASTName name) {
return genericVisit(name);
}
@Override
public int visit(IASTParameterDeclaration parameterDeclaration) {
return genericVisit(parameterDeclaration);
}
@Override
public int visit(IASTProblem problem) {
return genericVisit(problem);
}
@Override
public int visit(IASTStatement statement) {
return genericVisit(statement);
}
@Override
public int visit(IASTTranslationUnit tu) {
return genericVisit(tu);
}
@Override
public int visit(IASTTypeId typeId) {
return genericVisit(typeId);
}
@Override
public int visit(ICASTDesignator designator) {
return genericVisit(designator);
}
@Override
public int leave(ICASTDesignator designator) {
return genericLeave(designator);
}
@Override
public int leave(ICPPASTBaseSpecifier baseSpecifier) {
return genericLeave(baseSpecifier);
}
@Override
public int leave(ICPPASTNamespaceDefinition namespaceDefinition) {
return genericLeave(namespaceDefinition);
}
@Override
public int leave(ICPPASTTemplateParameter templateParameter) {
return genericLeave(templateParameter);
}
@Override
public int leave(ICPPASTCapture capture) {
return genericLeave(capture);
}
@Override
public int leave(IASTArrayModifier arrayModifier) {
return genericLeave(arrayModifier);
}
@Override
public int leave(IASTPointerOperator ptrOperator) {
return genericLeave(ptrOperator);
}
@Override
public int leave(IASTDeclaration declaration) {
return genericLeave(declaration);
}
@Override
public int leave(IASTDeclarator declarator) {
return genericLeave(declarator);
}
@Override
public int leave(IASTDeclSpecifier declSpec) {
return genericLeave(declSpec);
}
@Override
public int leave(IASTEnumerator enumerator) {
return genericLeave(enumerator);
}
@Override
public int leave(IASTExpression expression) {
return genericLeave(expression);
}
@Override
public int leave(IASTInitializer initializer) {
return genericLeave(initializer);
}
@Override
public int leave(IASTName name) {
return genericLeave(name);
}
@Override
public int leave(IASTParameterDeclaration parameterDeclaration) {
return genericLeave(parameterDeclaration);
}
@Override
public int leave(IASTProblem problem) {
return genericLeave(problem);
}
@Override
public int leave(IASTStatement statement) {
return genericLeave(statement);
}
@Override
public int leave(IASTTranslationUnit tu) {
return genericLeave(tu);
}
@Override
public int leave(IASTTypeId typeId) {
return genericLeave(typeId);
}
}