public abstract class AstTranslator extends CAstVisitor<AstTranslator.WalkContext> implements ArrayOpHandler, TranslatorToIR
| Modifier and Type | Class and Description |
|---|---|
class |
AstTranslator.AbstractScope |
static class |
AstTranslator.AbstractSymbol |
protected static class |
AstTranslator.AstCFG
data structure for the final CFG for a method, based on the information in
an
AstTranslator.IncipientCFG |
static class |
AstTranslator.AstLexicalInformation
lexical access information for some entity scope.
|
class |
AstTranslator.CodeEntityContext |
protected class |
AstTranslator.FinalCAstSymbol |
class |
AstTranslator.IncipientCFG
holds the control-flow graph as it is being constructed.
|
static class |
AstTranslator.InternalCAstSymbol |
protected static class |
AstTranslator.PreBasicBlock
basic block implementation used in the CFGs constructed during the
IR-generating AST traversal
|
class |
AstTranslator.RootContext |
static interface |
AstTranslator.Scope
a scope in the symbol table built during AST traversal
|
static class |
AstTranslator.ScopeType |
protected static interface |
AstTranslator.Symbol
interface for name information stored in a symbol table.
|
protected class |
AstTranslator.UnwindState |
static interface |
AstTranslator.WalkContext |
CAstVisitor.Context| Modifier and Type | Field and Description |
|---|---|
static boolean |
DEBUG_ALL |
static boolean |
DEBUG_CFG |
static boolean |
DEBUG_LEXICAL |
static boolean |
DEBUG_NAMES |
static boolean |
DEBUG_TOP |
protected Map<CAstEntity,Set<String>> |
entity2ExposedNames |
protected SSAInstructionFactory |
insts |
protected IClassLoader |
loader |
protected Map |
namedEntityResolver
for handling languages that let you include other source files named
statically (e.g., ABAP)
|
currentPosition| Modifier | Constructor and Description |
|---|---|
protected |
AstTranslator(IClassLoader loader) |
protected |
AstTranslator(IClassLoader loader,
Map namedEntityResolver) |
protected |
AstTranslator(IClassLoader loader,
Map namedEntityResolver,
ArrayOpHandler arrayOpHandler) |
doVisit, doVisitArrayRefNode, doVisitAssignNodes, doVisitEntity, enterNode, getCurrentPosition, getParent, leaveCast, leaveEntity, leaveForIn, leaveInstanceOf, leaveMacroEntity, leaveMacroVar, leaveNode, postProcessEntity, postProcessNode, setParent, visit, visitAllChildren, visitAssignNodes, visitCast, visitChildren, visitEntities, visitEntity, visitForIn, visitInclude, visitInstanceOf, visitMacroVar, visitNode, visitScopedEntities, visitScopedEntitiesprotected final IClassLoader loader
protected final Map namedEntityResolver
protected final SSAInstructionFactory insts
public static final boolean DEBUG_ALL
public static final boolean DEBUG_TOP
public static final boolean DEBUG_CFG
public static final boolean DEBUG_NAMES
public static final boolean DEBUG_LEXICAL
protected Map<CAstEntity,Set<String>> entity2ExposedNames
protected AstTranslator(IClassLoader loader, Map namedEntityResolver, ArrayOpHandler arrayOpHandler)
protected AstTranslator(IClassLoader loader, Map namedEntityResolver)
protected AstTranslator(IClassLoader loader)
protected abstract boolean useDefaultInitValues()
protected abstract boolean treatGlobalsAsLexicallyScoped()
protected boolean topLevelFunctionsInGlobalScope()
protected abstract TypeReference defaultCatchType()
protected abstract TypeReference makeType(CAstType type)
protected abstract boolean defineType(CAstEntity type, AstTranslator.WalkContext wc)
protected abstract void declareFunction(CAstEntity N, AstTranslator.WalkContext context)
protected abstract void defineFunction(CAstEntity N, AstTranslator.WalkContext definingContext, AbstractCFG cfg, SymbolTable symtab, boolean hasCatchBlock, Map<IBasicBlock,TypeReference[]> catchTypes, boolean hasMonitorOp, AstTranslator.AstLexicalInformation lexicalInfo, AstMethod.DebuggingInformation debugInfo)
protected abstract void defineField(CAstEntity topEntity, AstTranslator.WalkContext context, CAstEntity fieldEntity)
protected abstract String composeEntityName(AstTranslator.WalkContext parent, CAstEntity f)
protected abstract void doThrow(AstTranslator.WalkContext context, int exception)
public abstract void doArrayRead(AstTranslator.WalkContext context, int result, int arrayValue, CAstNode arrayRef, int[] dimValues)
doArrayRead in interface ArrayOpHandlerpublic abstract void doArrayWrite(AstTranslator.WalkContext context, int arrayValue, CAstNode arrayRef, int[] dimValues, int rval)
doArrayWrite in interface ArrayOpHandlerprotected abstract void doFieldRead(AstTranslator.WalkContext context, int result, int receiver, CAstNode elt, CAstNode parent)
protected abstract void doFieldWrite(AstTranslator.WalkContext context, int receiver, CAstNode elt, CAstNode parent, int rval)
protected abstract void doMaterializeFunction(CAstNode node, AstTranslator.WalkContext context, int result, int exception, CAstEntity fn)
protected abstract void doNewObject(AstTranslator.WalkContext context, CAstNode newNode, int result, Object type, int[] arguments)
protected abstract void doCall(AstTranslator.WalkContext context, CAstNode call, int result, int exception, CAstNode name, int receiver, int[] arguments)
protected abstract CAstType topType()
protected abstract CAstType exceptionType()
protected boolean isExceptionLabel(Object label)
protected boolean hasImplicitGlobals()
protected boolean hasSpecialUndeclaredVariables()
protected void handleUnspecifiedLiteralKey(AstTranslator.WalkContext context, CAstNode objectLiteralNode, int unspecifiedLiteralIndex, CAstVisitor<AstTranslator.WalkContext> visitor)
protected void doPrologue(AstTranslator.WalkContext context)
protected abstract void doPrimitive(int resultVal,
AstTranslator.WalkContext context,
CAstNode primitiveCall)
protected int doLocalRead(AstTranslator.WalkContext context, String name, TypeReference type)
protected void doLocalWrite(AstTranslator.WalkContext context, String nm, TypeReference type, int rval)
AssignInstruction to context.cfg() that copies rval to the
value number of local nm. Note that the caller is responsible for ensuring
that nm is defined in the local scope.protected int doLexicallyScopedRead(CAstNode node, AstTranslator.WalkContext context, String name, TypeReference type)
node - the AST node representing the readcontext - name - protected boolean ignoreName(String name)
name - A variable nameprotected void doLexicallyScopedWrite(AstTranslator.WalkContext context, String name, TypeReference type, int rval)
protected int doGlobalRead(CAstNode node, AstTranslator.WalkContext context, String name, TypeReference type)
protected void doGlobalWrite(AstTranslator.WalkContext context, String name, TypeReference type, int rval)
protected void doIsFieldDefined(AstTranslator.WalkContext context, int result, int ref, CAstNode field)
protected FieldReference makeGlobalRef(String globalName)
protected AstTranslator.AbstractScope makeScriptScope(CAstEntity s, AstTranslator.Scope parent)
protected int getArgumentCount(CAstEntity f)
protected String[] getArgumentNames(CAstEntity f)
protected AstTranslator.Scope makeTypeScope(CAstEntity type, AstTranslator.Scope parent)
public void setDefaultValue(SymbolTable symtab, int vn, Object value)
protected IUnaryOpInstruction.IOperator translateUnaryOpcode(CAstNode op)
protected IBinaryOpInstruction.IOperator translateBinaryOpcode(CAstNode op)
protected IConditionalBranchInstruction.IOperator translateConditionOpcode(CAstNode op)
protected String[] makeNameMap(CAstEntity n, Set<AstTranslator.Scope> scopes, SSAInstruction[] insts)
protected final CAstType getTypeForNode(AstTranslator.WalkContext context, CAstNode node)
protected AstTranslator.WalkContext makeFileContext(AstTranslator.WalkContext c, CAstEntity n)
CAstVisitormakeFileContext in class CAstVisitor<AstTranslator.WalkContext>c - a visitor-specific context in which this file was visitedn - the file entityprotected AstTranslator.WalkContext makeTypeContext(AstTranslator.WalkContext c, CAstEntity n)
CAstVisitormakeTypeContext in class CAstVisitor<AstTranslator.WalkContext>c - a visitor-specific context in which this type was visitedn - the type entityprotected AstTranslator.WalkContext makeCodeContext(AstTranslator.WalkContext context, CAstEntity n)
CAstVisitormakeCodeContext in class CAstVisitor<AstTranslator.WalkContext>context - a visitor-specific context in which the code was visitedn - the code entityprotected boolean enterEntity(CAstEntity n, AstTranslator.WalkContext context, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorenterEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextprotected boolean visitFileEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext fileContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitFileEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextfileContext - a visitor-specific context for this fileprotected void leaveFileEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext fileContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveFileEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextfileContext - a visitor-specific context for this fileprotected boolean visitFieldEntity(CAstEntity n, AstTranslator.WalkContext context, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitFieldEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextprotected void leaveFieldEntity(CAstEntity n, AstTranslator.WalkContext context, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveFieldEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextprotected boolean visitGlobalEntity(CAstEntity n, AstTranslator.WalkContext context, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitGlobalEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextprotected void leaveGlobalEntity(CAstEntity n, AstTranslator.WalkContext context, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveGlobalEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextprotected boolean visitTypeEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext typeContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitTypeEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contexttypeContext - a visitor-specific context for this typeprotected void leaveTypeEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext typeContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveTypeEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contexttypeContext - a visitor-specific context for this typeprotected boolean visitFunctionEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext codeContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitFunctionEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextcodeContext - a visitor-specific context for this functionprotected void leaveFunctionEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext codeContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveFunctionEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextcodeContext - a visitor-specific context for this functionprotected boolean visitMacroEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext codeContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitMacroEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextcodeContext - a visitor-specific context for this macroprotected boolean visitScriptEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext codeContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitScriptEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextcodeContext - a visitor-specific context for this scriptprotected void leaveScriptEntity(CAstEntity n, AstTranslator.WalkContext context, AstTranslator.WalkContext codeContext, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveScriptEntity in class CAstVisitor<AstTranslator.WalkContext>n - the entity to processcontext - a visitor-specific contextcodeContext - a visitor-specific context for this scriptpublic void initFunctionEntity(CAstEntity n, AstTranslator.WalkContext parentContext, AstTranslator.WalkContext functionContext)
public void closeFunctionEntity(CAstEntity n, AstTranslator.WalkContext parentContext, AstTranslator.WalkContext functionContext)
protected AstTranslator.WalkContext makeLocalContext(AstTranslator.WalkContext context, CAstNode n)
CAstVisitormakeLocalContext in class CAstVisitor<AstTranslator.WalkContext>context - a visitor-specific context in which the local scope was visitedn - the local scope nodeprotected AstTranslator.WalkContext makeSpecialParentContext(AstTranslator.WalkContext context, CAstNode n)
makeSpecialParentContext in class CAstVisitor<AstTranslator.WalkContext>protected AstTranslator.WalkContext makeUnwindContext(AstTranslator.WalkContext context, CAstNode n, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitormakeUnwindContext in class CAstVisitor<AstTranslator.WalkContext>context - a visitor-specific context in which the unwind was visitedn - the unwind nodeprotected int processFunctionExpr(CAstNode n, AstTranslator.WalkContext context)
protected boolean visitFunctionExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitFunctionExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveFunctionExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveFunctionExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitFunctionStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitFunctionStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveFunctionStmt(CAstNode n, AstTranslator.WalkContext context, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveFunctionStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processcontext - a visitor-specific contextprotected boolean visitLocalScope(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitLocalScope in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitSpecialParentScope(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
visitSpecialParentScope in class CAstVisitor<AstTranslator.WalkContext>protected void leaveLocalScope(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveLocalScope in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveSpecialParentScope(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
leaveSpecialParentScope in class CAstVisitor<AstTranslator.WalkContext>protected boolean visitBlockExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitBlockExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveBlockExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveBlockExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitBlockStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitBlockStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveBlockStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveBlockStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitLoop(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitLoop in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveLoopHeader(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveLoopHeader in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveLoop(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveLoop in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitGetCaughtException(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitGetCaughtException in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveGetCaughtException(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveGetCaughtException in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitThis(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitThis in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveThis(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveThis in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitSuper(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitSuper in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveSuper(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveSuper in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitCall(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitCall in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveCall(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveCall in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitVar(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitVar in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveVar(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveVar in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitConstant(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitConstant in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveConstant(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveConstant in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitBinaryExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitBinaryExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveBinaryExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveBinaryExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitUnaryExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitUnaryExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveUnaryExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveUnaryExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitArrayLength(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitArrayLength in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveArrayLength(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveArrayLength in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitArrayRef(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitArrayRef in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveArrayRef(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveArrayRef in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitDeclStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitDeclStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveDeclStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveDeclStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitReturn(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitReturn in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveReturn(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveReturn in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitIfgoto(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitIfgoto in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveIfgoto(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveIfgoto in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitGoto(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitGoto in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveGoto(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveGoto in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitLabelStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitLabelStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveLabelStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveLabelStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void processIf(CAstNode n, boolean isExpr, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
protected final void leaveIfStmtCondition(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveIfStmtCondition in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveIfStmtTrueClause(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveIfStmtTrueClause in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveIfStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveIfStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveIfExprCondition(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveIfExprCondition in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveIfExprTrueClause(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveIfExprTrueClause in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveIfExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveIfExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitIfStmt(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitIfStmt in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitIfExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitIfExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitNew(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitNew in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveNew(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveNew in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitObjectLiteral(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitObjectLiteral in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveObjectLiteralFieldInit(CAstNode n, int i, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveObjectLiteralFieldInit in class CAstVisitor<AstTranslator.WalkContext>n - the node to processi - the field position that was initializedc - a visitor-specific contextprotected void leaveObjectLiteral(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveObjectLiteral in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitArrayLiteral(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitArrayLiteral in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveArrayLiteralObject(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveArrayLiteralObject in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveArrayLiteralInitElement(CAstNode n, int i, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveArrayLiteralInitElement in class CAstVisitor<AstTranslator.WalkContext>n - the node to processi - the index that was initializedc - a visitor-specific contextprotected void leaveArrayLiteral(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveArrayLiteral in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitObjectRef(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitObjectRef in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveObjectRef(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveObjectRef in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextpublic boolean visitAssign(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitAssign in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextpublic void leaveAssign(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveAssign in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected int processAssignOp(CAstNode n, CAstNode v, CAstNode a, int temp, boolean post, AstTranslator.WalkContext c)
protected boolean visitArrayRefAssign(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitArrayRefAssign in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processc - a visitor-specific contextprotected void leaveArrayRefAssign(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveArrayRefAssign in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processc - a visitor-specific contextprotected boolean visitArrayRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitArrayRefAssignOp in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processpre - whether the value before the operation should be usedc - a visitor-specific contextprotected void leaveArrayRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveArrayRefAssignOp in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processpre - whether the value before the operation should be usedc - a visitor-specific contextprotected boolean visitObjectRefAssign(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitObjectRefAssign in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processc - a visitor-specific contextprotected void leaveObjectRefAssign(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveObjectRefAssign in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processc - a visitor-specific contextprotected void processObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c)
protected boolean visitObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitObjectRefAssignOp in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processpre - whether the value before the operation should be usedc - a visitor-specific contextprotected void leaveObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveObjectRefAssignOp in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processpre - whether the value before the operation should be usedc - a visitor-specific contextprotected boolean visitBlockExprAssign(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitBlockExprAssign in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processc - a visitor-specific contextprotected void leaveBlockExprAssign(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveBlockExprAssign in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processc - a visitor-specific contextprotected boolean visitBlockExprAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitBlockExprAssignOp in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processpre - whether the value before the operation should be usedc - a visitor-specific contextprotected void leaveBlockExprAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveBlockExprAssignOp in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processpre - whether the value before the operation should be usedc - a visitor-specific contextprotected boolean visitVarAssign(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitVarAssign in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processc - a visitor-specific contextprotected void assignValue(CAstNode n, AstTranslator.WalkContext context, AstTranslator.Symbol ls, String nm, int rval)
protected void leaveVarAssign(CAstNode n, CAstNode v, CAstNode a, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveVarAssign in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processc - a visitor-specific contextprotected boolean visitVarAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitVarAssignOp in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processpre - whether the value before the operation should be usedc - a visitor-specific contextprotected void leaveVarAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveVarAssignOp in class CAstVisitor<AstTranslator.WalkContext>n - the LHS node to processv - the RHS node to processa - the assignment node to processpre - whether the value before the operation should be usedc - a visitor-specific contextprotected boolean visitSwitch(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitSwitch in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveSwitchValue(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveSwitchValue in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveSwitch(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveSwitch in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitThrow(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitThrow in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveThrow(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveThrow in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitCatch(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitCatch in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveCatch(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveCatch in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitUnwind(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitUnwind in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveUnwind(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveUnwind in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitTry(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitTry in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveTryBlock(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveTryBlock in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void leaveTry(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveTry in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitEmpty(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitEmpty in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveEmpty(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveEmpty in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitPrimitive(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitPrimitive in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leavePrimitive(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleavePrimitive in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitVoid(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitVoid in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveVoid(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveVoid in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitAssert(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
visitAssert in class CAstVisitor<AstTranslator.WalkContext>protected void leaveAssert(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveAssert in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitEachElementGet(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitEachElementGet in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveEachElementGet(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveEachElementGet in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitEachElementHasNext(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitEachElementHasNext in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveEachElementHasNext(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
leaveEachElementHasNext in class CAstVisitor<AstTranslator.WalkContext>protected boolean visitTypeLiteralExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorvisitTypeLiteralExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected void leaveTypeLiteralExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveTypeLiteralExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitIsDefinedExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
visitIsDefinedExpr in class CAstVisitor<AstTranslator.WalkContext>protected void leaveIsDefinedExpr(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveIsDefinedExpr in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected boolean visitEcho(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
visitEcho in class CAstVisitor<AstTranslator.WalkContext>protected void leaveEcho(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveEcho in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextpublic CAstEntity getIncludedEntity(CAstNode n)
protected void leaveInclude(CAstNode n, AstTranslator.WalkContext c, CAstVisitor<AstTranslator.WalkContext> visitor)
CAstVisitorleaveInclude in class CAstVisitor<AstTranslator.WalkContext>n - the node to processc - a visitor-specific contextprotected final void walkEntities(CAstEntity N, AstTranslator.WalkContext c)
public void translate(CAstEntity N, ModuleEntry module)
CAstEntity Ntranslate in interface TranslatorToIRpublic void translate(CAstEntity N, AstTranslator.WalkContext context)