public class JifNewExt extends JifExprExt
New
node.New
,
Serialized FormModifier and Type | Field and Description |
---|---|
protected ConstructorChecker |
constructorChecker |
protected CallHelper |
helper
Squirreling this away here because we need to reuse it in the extended
Fabric Checking.
|
Modifier and Type | Method and Description |
---|---|
polyglot.ast.Node |
labelCheck(LabelChecker lc)
Label check the node to which this extension is attached.
|
polyglot.ast.New |
node() |
java.util.List<polyglot.types.Type> |
throwTypes(polyglot.types.TypeSystem ts) |
polyglot.ast.Node |
typeCheck(polyglot.visit.TypeChecker tc) |
polyglot.visit.NodeVisitor |
typeCheckEnter(polyglot.visit.TypeChecker tc) |
protected void |
updateContextPostTarget(LabelChecker lc,
JifContext A,
PathMap Xtarg)
Utility method for updating the context after checking the target.
|
protected void |
updateContextPostTargetExpr(LabelChecker lc,
JifContext A,
PathMap Xtarg)
Utility method for updating the context after checking the target and it
is an expression (not a Special node).
|
getNumericBounds, setNumericBounds
checkAndRemoveThrowType, checkThrowTypes, copy, dump, getPathMap, init, integerBoundsCalculated, toJava, toJava, updatePathMap, X, X
addDecls, buildTypes, buildTypesEnter, checkConstants, childExpectedType, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, ext, ext, extRewrite, extRewriteEnter, extRewriteOverride, initPred, lang, pred, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, superLang, toString, translate, typeCheckOverride, visitChild, visitChildren, visitList
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addDecls, 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, translate, typeCheckOverride, visitChild, visitChildren, visitList
protected ConstructorChecker constructorChecker
protected CallHelper helper
public JifNewExt(ToJavaExt toJava)
public polyglot.ast.New node()
node
in interface polyglot.ast.Ext
node
in class polyglot.ast.Ext_c
public polyglot.visit.NodeVisitor typeCheckEnter(polyglot.visit.TypeChecker tc) throws polyglot.types.SemanticException
typeCheckEnter
in interface polyglot.ast.NodeOps
typeCheckEnter
in class polyglot.ast.Ext_c
polyglot.types.SemanticException
public polyglot.ast.Node typeCheck(polyglot.visit.TypeChecker tc) throws polyglot.types.SemanticException
typeCheck
in interface polyglot.ast.NodeOps
typeCheck
in class polyglot.ast.Ext_c
polyglot.types.SemanticException
public java.util.List<polyglot.types.Type> throwTypes(polyglot.types.TypeSystem ts)
throwTypes
in interface polyglot.ast.NodeOps
throwTypes
in class polyglot.ast.Ext_c
public polyglot.ast.Node labelCheck(LabelChecker lc) throws polyglot.types.SemanticException
JifExt
labelCheck
in interface JifExt
labelCheck
in class JifExt_c
polyglot.types.SemanticException
protected void updateContextPostTarget(LabelChecker lc, JifContext A, PathMap Xtarg)
protected void updateContextPostTargetExpr(LabelChecker lc, JifContext A, PathMap Xtarg)