public class JL5UnaryExt extends JL5ExprExt
| Constructor and Description |
|---|
JL5UnaryExt() |
| Modifier and Type | Method and Description |
|---|---|
Type |
childExpectedType(Expr child,
AscriptionVisitor av)
Get the expected type of a child expression of
this. |
Node |
typeCheck(TypeChecker tc)
Type check the expression.
|
constantValue, constantValueSet, isConstant, nodeacceptCFG, firstChildaddDecls, buildTypes, buildTypesEnter, checkConstants, copy, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, ext, ext, extRewrite, extRewriteEnter, init, initPred, pred, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, superLang, throwTypes, toString, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitListpublic Node typeCheck(TypeChecker tc) throws SemanticException
typeCheck in interface NodeOpstypeCheck in class Ext_ctc - The type checking visitor.SemanticExceptionpublic Type childExpectedType(Expr child, AscriptionVisitor av)
NodeOpsthis.
The expected type is determined by the context in that the child occurs
(e.g., for x = e, the expected type of e is
the declared type of x.
The expected type should impose the least constraints on the child's
type that are allowed by the parent node.childExpectedType in interface NodeOpschildExpectedType in class Ext_cchild - A child expression of this node.av - An ascription visitor.child.