public class JifCallDel extends JifDel_c implements polyglot.ast.CallOps
Call node.Call_c,
Serialized Form| Modifier and Type | Field and Description |
|---|---|
protected java.util.List<VarLabel> |
argVarLabels |
protected java.util.List<VarLabel> |
paramVarLabels |
protected VarLabel |
receiverVarLabel |
fatalExceptions| Constructor and Description |
|---|
JifCallDel() |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
constantValue(polyglot.ast.Lang lang) |
boolean |
constantValueSet(polyglot.ast.Lang lang) |
polyglot.types.Type |
findContainer(polyglot.types.TypeSystem ts,
polyglot.types.MethodInstance mi) |
polyglot.types.ReferenceType |
findTargetType() |
boolean |
isConstant(polyglot.ast.Lang lang) |
void |
printArgs(polyglot.util.CodeWriter w,
polyglot.visit.PrettyPrinter tr) |
void |
setFatalExceptions(polyglot.types.TypeSystem ts,
polyglot.util.SubtypeSet fatalExceptions)
Set the exceptions thrown by this node that are treated as fatal.
|
void |
setTargetIsNeverNull(boolean neverNull) |
boolean |
targetIsNeverNull() |
java.util.List<polyglot.types.Type> |
throwTypes(polyglot.types.TypeSystem ts)
List of Types of exceptions that might get thrown.
|
polyglot.ast.Node |
typeCheck(polyglot.visit.TypeChecker tc) |
polyglot.visit.NodeVisitor |
typeCheckEnter(polyglot.visit.TypeChecker tc) |
polyglot.ast.Node |
typeCheckNullTarget(polyglot.visit.TypeChecker tc,
java.util.List<polyglot.types.Type> argTypes) |
buildTypes, fatalExceptions, translateaddDecls, buildTypesEnter, checkConstants, childExpectedType, copy, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, extRewrite, extRewriteEnter, extRewriteOverride, init, jl, lang, node, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, typeCheckOverride, visitChild, visitChildren, visitListprotected VarLabel receiverVarLabel
protected java.util.List<VarLabel> argVarLabels
protected java.util.List<VarLabel> paramVarLabels
public void setTargetIsNeverNull(boolean neverNull)
public boolean targetIsNeverNull()
public java.util.List<polyglot.types.Type> throwTypes(polyglot.types.TypeSystem ts)
throwTypes in interface polyglot.ast.NodeOpsthrowTypes in class JifDel_cpublic void setFatalExceptions(polyglot.types.TypeSystem ts,
polyglot.util.SubtypeSet fatalExceptions)
JifDel_csetFatalExceptions in interface JifDelsetFatalExceptions in class JifDel_cpublic polyglot.visit.NodeVisitor typeCheckEnter(polyglot.visit.TypeChecker tc)
throws polyglot.types.SemanticException
typeCheckEnter in interface polyglot.ast.NodeOpstypeCheckEnter in class polyglot.ast.JLDel_cpolyglot.types.SemanticExceptionpublic polyglot.ast.Node typeCheck(polyglot.visit.TypeChecker tc)
throws polyglot.types.SemanticException
typeCheck in interface polyglot.ast.NodeOpstypeCheck in class polyglot.ast.JLDel_cpolyglot.types.SemanticExceptionpublic polyglot.types.Type findContainer(polyglot.types.TypeSystem ts,
polyglot.types.MethodInstance mi)
findContainer in interface polyglot.ast.CallOpspublic polyglot.types.ReferenceType findTargetType()
throws polyglot.types.SemanticException
findTargetType in interface polyglot.ast.CallOpspolyglot.types.SemanticExceptionpublic polyglot.ast.Node typeCheckNullTarget(polyglot.visit.TypeChecker tc,
java.util.List<polyglot.types.Type> argTypes)
throws polyglot.types.SemanticException
typeCheckNullTarget in interface polyglot.ast.CallOpspolyglot.types.SemanticExceptionpublic void printArgs(polyglot.util.CodeWriter w,
polyglot.visit.PrettyPrinter tr)
printArgs in interface polyglot.ast.ProcedureCallOpspublic boolean constantValueSet(polyglot.ast.Lang lang)
constantValueSet in interface polyglot.ast.ExprOpspublic boolean isConstant(polyglot.ast.Lang lang)
isConstant in interface polyglot.ast.ExprOpspublic java.lang.Object constantValue(polyglot.ast.Lang lang)
constantValue in interface polyglot.ast.ExprOps