public class JifForExt extends JifStmtExt_c
For node.For,
Serialized FormstmtDel| Modifier and Type | Method and Description |
|---|---|
protected PathMap |
checkInits(LabelChecker lc,
JifContext A,
polyglot.ast.For fs,
java.util.List<polyglot.ast.ForInit> newInits)
Splitting out checking of inits and checking of the loop to make it
easier to extend.
|
polyglot.ast.Node |
checkLoop(LabelChecker lc,
JifContext A,
polyglot.ast.For fs,
java.util.List<polyglot.ast.ForInit> inits,
PathMap Xinit)
Utility for easier overriding of loop checking.
|
polyglot.ast.Node |
labelCheckStmt(LabelChecker lc) |
protected void |
updateContextForBody(LabelChecker lc,
JifContext A,
PathMap Xcond)
Utility method for updating the context for checking the body in the for
loop.
|
protected void |
updateContextForNextInit(LabelChecker lc,
JifContext A,
PathMap Xprev)
Utility method for updating the context for checking the next init
statement in the for loop.
|
protected void |
updateContextForNextIter(LabelChecker lc,
JifContext A,
PathMap Xprev)
Utility method for updating the context for checking the next iter
statement in the for loop.
|
copy, init, labelCheck, stmtDel, stmtDelcheckAndRemoveThrowType, checkThrowTypes, dump, getPathMap, integerBoundsCalculated, toJava, toJava, updatePathMap, X, XaddDecls, buildTypes, buildTypesEnter, checkConstants, childExpectedType, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, ext, ext, extRewrite, extRewriteEnter, extRewriteOverride, initPred, lang, node, pred, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, superLang, throwTypes, toString, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitListclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddDecls, buildTypes, buildTypesEnter, checkConstants, childExpectedType, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, extRewrite, extRewriteEnter, extRewriteOverride, lang, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitListpublic JifForExt(ToJavaExt toJava)
public polyglot.ast.Node labelCheckStmt(LabelChecker lc) throws polyglot.types.SemanticException
labelCheckStmt in interface JifStmtExtlabelCheckStmt in class JifStmtExt_cpolyglot.types.SemanticExceptionpublic polyglot.ast.Node checkLoop(LabelChecker lc, JifContext A, polyglot.ast.For fs, java.util.List<polyglot.ast.ForInit> inits, PathMap Xinit) throws polyglot.types.SemanticException
polyglot.types.SemanticExceptionprotected PathMap checkInits(LabelChecker lc, JifContext A, polyglot.ast.For fs, java.util.List<polyglot.ast.ForInit> newInits) throws polyglot.types.SemanticException
polyglot.types.SemanticExceptionprotected void updateContextForNextInit(LabelChecker lc, JifContext A, PathMap Xprev)
protected void updateContextForBody(LabelChecker lc, JifContext A, PathMap Xcond)
protected void updateContextForNextIter(LabelChecker lc, JifContext A, PathMap Xprev)