package org.pdtextensions.core.ast.util;
import java.util.ArrayList;
import org.eclipse.core.runtime.Assert;
import org.eclipse.dltk.core.ISourceRange;
import org.eclipse.php.core.ast.nodes.ASTNode;
public class RangeNodeFinder extends GenericVisitor {
protected ArrayList<ASTNode> fCoveredNodes = new ArrayList<ASTNode>();
protected ISourceRange fSourceRange;
public RangeNodeFinder(ISourceRange range)
{
setRange(range);
}
@Override
protected boolean visitNode(ASTNode node) {
if(SourceRangeUtil.covers(fSourceRange, node)) {
fCoveredNodes.add(node);
return false;
}
return true;
}
public void setRange(ISourceRange range)
{
Assert.isNotNull(range);
fSourceRange = range;
}
public ArrayList<ASTNode> getNodes()
{
return fCoveredNodes;
}
}