public class JifFormalExt extends JifExt_c
Formal node.Formal,
Serialized Form| Modifier and Type | Class and Description |
|---|---|
protected static class |
JifFormalExt.FormalVarianceLabelChecker
Checker to ensure that labels do not use
covariant labels in the wrong places
|
protected static class |
JifFormalExt.FormalVarianceLabelSubstr
Visitor to ensure that labels do not use
covariant labels in the wrong places
|
| Constructor and Description |
|---|
JifFormalExt(ToJavaExt toJava) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
checkVariance(LabelChecker lc,
polyglot.ast.Formal f)
Ensure that covariant labels do not occur in the type of the formal for methods.
|
polyglot.ast.Node |
labelCheck(LabelChecker lc)
Label check the node to which this extension is attached.
|
checkAndRemoveThrowType, checkThrowTypes, copy, dump, getPathMap, init, 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 JifFormalExt(ToJavaExt toJava)
public polyglot.ast.Node labelCheck(LabelChecker lc) throws polyglot.types.SemanticException
JifExtlabelCheck in interface JifExtlabelCheck in class JifExt_cpolyglot.types.SemanticExceptionprotected void checkVariance(LabelChecker lc, polyglot.ast.Formal f) throws polyglot.types.SemanticException
lc - f - polyglot.types.SemanticException