1 package no.uio.ifi.refaktor.analyze.checkers;
3 import org.eclipse.jdt.core.dom.ASTNode;
4 import org.eclipse.jdt.core.dom.ASTVisitor;
5 import org.eclipse.jdt.core.dom.Statement;
7 class LastStatementFinder extends ASTVisitor {
8 private final ASTNode parent;
9 private Statement lastStatement;
11 public LastStatementFinder(ASTNode parent) {
16 public boolean preVisit2(ASTNode node) {
20 if (node instanceof Statement && isPlacedAfterLastStatement(node)) {
21 lastStatement = (Statement) node;
27 private boolean isPlacedAfterLastStatement(ASTNode node) {
28 if (lastStatement == null)
31 int nodeEndPosition = node.getStartPosition() + node.getLength();
32 int lastStatementEndPosition = lastStatement.getStartPosition() + lastStatement.getLength();
33 return nodeEndPosition > lastStatementEndPosition;
36 public Statement getLastStatement() {