public class JifFormalExt extends JifExt_c
Formal
node.Formal
,
Serialized FormModifier 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, 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, node, pred, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, superLang, throwTypes, toString, translate, typeCheck, typeCheckEnter, 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, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitList
public JifFormalExt(ToJavaExt toJava)
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 checkVariance(LabelChecker lc, polyglot.ast.Formal f) throws polyglot.types.SemanticException
lc
- f
- polyglot.types.SemanticException