edu.ksu.cis.projects.bogor.ast.checker
Class StatementTerminaChecker

java.lang.Object
  extended by edu.ksu.cis.projects.bogor.ast.ASTVisitor
      extended by edu.ksu.cis.projects.bogor.ast.checker.StatementTerminaChecker

public final class StatementTerminaChecker
extends ASTVisitor

Visitor to determine if every exiting branch from a statement eventually performs a return.

Version:
CVS $Revision: 1.2 $ $Date: 2005/02/03 20:54:29 $
Author:
Matt Hoosier

Constructor Summary
StatementTerminaChecker()
           
 
Method Summary
 boolean statementTerminatedWithReturn(Statement s)
           
protected  void visitAtomicActionStatement(AtomicActionStatement node)
           
protected  void visitAtomicStatement(AtomicStatement node)
           
protected  void visitBlockStatement(BlockStatement node)
           
protected  void visitChooseStatement(ChooseStatement node)
           
protected  void visitIfStatement(IfStatement node)
           
protected  void visitReturnStatement(ReturnStatement node)
           
protected  void visitTryCatchStatement(TryCatchStatement node)
           
protected  void visitWhileStatement(WhileStatement node)
           
 
Methods inherited from class edu.ksu.cis.projects.bogor.ast.ASTVisitor
visitActionExtension, visitActionStatement, visitApplyExp, visitArrayAccessExp, visitAssertAction, visitAssignAction, visitAssumeAction, visitASTArrayType, visitASTBooleanType, visitASTDoubleType, visitASTExtType, visitASTFloatType, visitASTFunType, visitASTIntRangeType, visitASTIntType, visitASTLockType, visitASTLongRangeType, visitASTLongType, visitASTStringType, visitASTThreadIdType, visitAtomicExp, visitBinaryExp, visitBlockTransformation, visitBooleanConstant, visitBooleanLiteral, visitCastExp, visitCatch, visitConditionalExp, visitConstantDefinition, visitDoubleConstant, visitDoubleLiteral, visitEnumDefinition, visitExitThreadAction, visitExpAction, visitExpExtension, visitExtensionDefinition, visitExtExp, visitField, visitFieldAccessExp, visitFloatConstant, visitFloatLiteral, visitFSM, visitFun, visitGlobal, visitGotoNextState, visitIdExp, visitIdPrintArg, visitIdType, visitInitialValue, visitInstanceofExp, visitIntConstant, visitIntLiteral, visitInvokeAction, visitInvokeExp, visitInvokeTransformation, visitKindofExp, visitLetExp, visitLiteralExp, visitLiveSet, visitLocal, visitLocation, visitLockAction, visitLockTestExp, visitLongConstant, visitLongLiteral, visitNewArrayExp, visitNewLockExp, visitNewRecordExp, visitNullLiteral, visitParam, visitParenExp, visitPrintAction, visitRecordDefinition, visitReturnNextState, visitSkipStatement, visitStartThreadExp, visitStringConstant, visitStringLiteral, visitStringPrintArg, visitSystem, visitThreadTestExp, visitThrowAction, visitTypeAliasDefinition, visitTypedId, visitTypeExtension, visitUnaryExp, visitVirtualTableDefinition
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StatementTerminaChecker

public StatementTerminaChecker()
Method Detail

statementTerminatedWithReturn

public boolean statementTerminatedWithReturn(Statement s)

visitAtomicActionStatement

protected void visitAtomicActionStatement(AtomicActionStatement node)
Overrides:
visitAtomicActionStatement in class ASTVisitor

visitAtomicStatement

protected void visitAtomicStatement(AtomicStatement node)
Overrides:
visitAtomicStatement in class ASTVisitor

visitBlockStatement

protected void visitBlockStatement(BlockStatement node)
Overrides:
visitBlockStatement in class ASTVisitor

visitChooseStatement

protected void visitChooseStatement(ChooseStatement node)
Overrides:
visitChooseStatement in class ASTVisitor

visitIfStatement

protected void visitIfStatement(IfStatement node)
Overrides:
visitIfStatement in class ASTVisitor

visitReturnStatement

protected void visitReturnStatement(ReturnStatement node)
Overrides:
visitReturnStatement in class ASTVisitor

visitTryCatchStatement

protected void visitTryCatchStatement(TryCatchStatement node)
Overrides:
visitTryCatchStatement in class ASTVisitor

visitWhileStatement

protected void visitWhileStatement(WhileStatement node)
Overrides:
visitWhileStatement in class ASTVisitor