Package com.ibm.wala.cast.tree.visit
Class DelegatingCAstVisitor<C extends CAstVisitor.Context>
- java.lang.Object
-
- com.ibm.wala.cast.tree.visit.CAstVisitor<C>
-
- com.ibm.wala.cast.tree.visit.DelegatingCAstVisitor<C>
-
public abstract class DelegatingCAstVisitor<C extends CAstVisitor.Context> extends CAstVisitor<C>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.ibm.wala.cast.tree.visit.CAstVisitor
CAstVisitor.Context
-
-
Field Summary
-
Fields inherited from class com.ibm.wala.cast.tree.visit.CAstVisitor
currentPosition, DEBUG
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedDelegatingCAstVisitor(CAstVisitor<C> delegate)Delegating CAstVisitorconstructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected CAstVisitor<C>delegate()protected booleandoVisit(CAstNode n, C context, CAstVisitor<C> visitor)Node processing hook; sub-classes are expected to override if they introduce new node types.protected booleandoVisitEntity(CAstEntity n, C context, CAstVisitor<C> visitor)Entity processing hook; sub-classes are expected to override if they introduce new entity types.protected booleanenterEntity(CAstEntity n, C context, CAstVisitor<C> visitor)Enter the entity visitor.protected booleanenterNode(CAstNode n, C c, CAstVisitor<C> visitor)Enter the node visitor.protected CAstEntitygetParent(CAstEntity entity)Get the parent entity for a given entity.protected voidleaveArrayLength(CAstNode n, C c, CAstVisitor<C> visitor)Leave an ArrayLength node.protected voidleaveArrayLiteral(CAstNode n, C c, CAstVisitor<C> visitor)Leave a ArrayLiteral node.protected voidleaveArrayLiteralInitElement(CAstNode n, int i, C c, CAstVisitor<C> visitor)Visit an ArrayLiteral node after processing the {i}th element initializer.protected voidleaveArrayLiteralObject(CAstNode n, C c, CAstVisitor<C> visitor)Visit an ArrayLiteral node after processing the array object.protected voidleaveArrayRef(CAstNode n, C c, CAstVisitor<C> visitor)Leave an ArrayRef node.protected voidleaveArrayRefAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)Visit an ArrayRef Assignment node after visiting the LHS.protected voidleaveArrayRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)Visit an ArrayRef Op/Assignment node after visiting the LHS.voidleaveAssign(CAstNode n, C c, CAstVisitor<C> visitor)Leave an Assign node.protected voidleaveBinaryExpr(CAstNode n, C c, CAstVisitor<C> visitor)Leave a BinaryExpr node.protected voidleaveBlockExpr(CAstNode n, C c, CAstVisitor<C> visitor)Leave a BlockExpr node.protected voidleaveBlockExprAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)Visit a BlockExpr Assignment node after visiting the LHS.protected voidleaveBlockExprAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)Visit a BlockExpr Op/Assignment node after visiting the LHS.protected voidleaveBlockStmt(CAstNode n, C c, CAstVisitor<C> visitor)Leave a BlockStmt node.protected voidleaveCall(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Call node.protected voidleaveCast(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Cast node.protected voidleaveCatch(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Catch node.protected voidleaveConstant(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Constant node.protected voidleaveDeclStmt(CAstNode n, C c, CAstVisitor<C> visitor)Leave a DeclStmt node.protected voidleaveEmpty(CAstNode n, C c, CAstVisitor<C> visitor)Leave an Empty node.voidleaveEntity(CAstEntity n, C context, CAstVisitor<C> visitor)Leave any entity.protected voidleaveFieldEntity(CAstEntity n, C context, CAstVisitor<C> visitor)Leave a Field entity.protected voidleaveFileEntity(CAstEntity n, C context, C fileContext, CAstVisitor<C> visitor)Leave a File entity.protected voidleaveFunctionEntity(CAstEntity n, C context, C codeContext, CAstVisitor<C> visitor)Leave a Function entity.protected voidleaveFunctionExpr(CAstNode n, C c, CAstVisitor<C> visitor)Leave a FunctionExpr node.protected voidleaveFunctionStmt(CAstNode n, C c, CAstVisitor<C> visitor)Leave a FunctionStmt node.protected voidleaveGetCaughtException(CAstNode n, C c, CAstVisitor<C> visitor)Leave a GetCaughtException node.protected voidleaveGoto(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Goto node.protected voidleaveIfExpr(CAstNode n, C c, CAstVisitor<C> visitor)Leave an IfExpr node.protected voidleaveIfExprCondition(CAstNode n, C c, CAstVisitor<C> visitor)Visit an IfExpr node after processing the condition.protected voidleaveIfExprTrueClause(CAstNode n, C c, CAstVisitor<C> visitor)Visit an IfExpr node after processing the true clause.protected voidleaveIfgoto(CAstNode n, C c, CAstVisitor<C> visitor)Leave an Ifgoto node.protected voidleaveIfStmt(CAstNode n, C c, CAstVisitor<C> visitor)Leave an IfStmt node.protected voidleaveIfStmtCondition(CAstNode n, C c, CAstVisitor<C> visitor)Visit an IfStmt node after processing the condition.protected voidleaveIfStmtTrueClause(CAstNode n, C c, CAstVisitor<C> visitor)Visit an IfStmt node after processing the true clause.protected voidleaveInstanceOf(CAstNode n, C c, CAstVisitor<C> visitor)Leave an InstanceOf node.protected voidleaveLabelStmt(CAstNode n, C c, CAstVisitor<C> visitor)Leave a LabelStmt node.protected voidleaveLocalScope(CAstNode n, C c, CAstVisitor<C> visitor)Leave a LocalScope node.protected voidleaveLoop(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Loop node.protected voidleaveLoopHeader(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Loop node after processing the loop header.protected voidleaveNew(CAstNode n, C c, CAstVisitor<C> visitor)Leave a New node.voidleaveNode(CAstNode n, C c, CAstVisitor<C> visitor)Leave any node.protected voidleaveObjectLiteral(CAstNode n, C c, CAstVisitor<C> visitor)Leave an ObjectLiteral node.protected voidleaveObjectLiteralFieldInit(CAstNode n, int i, C c, CAstVisitor<C> visitor)Visit an ObjectLiteral node after processing the {i}th field initializer.protected voidleaveObjectRef(CAstNode n, C c, CAstVisitor<C> visitor)Leave an ObjectRef node.protected voidleaveObjectRefAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)Visit an ObjectRef Assignment node after visiting the LHS.protected voidleaveObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)Visit an ObjectRef Op/Assignment node after visiting the LHS.protected voidleavePrimitive(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Primitive node.protected voidleaveReturn(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Return node.protected voidleaveScriptEntity(CAstEntity n, C context, C codeContext, CAstVisitor<C> visitor)Leave a Script entity.protected voidleaveSpecialParentScope(CAstNode n, C c, CAstVisitor<C> visitor)Leave a LocalScope node.protected voidleaveSuper(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Super node.protected voidleaveSwitch(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Switch node.protected voidleaveSwitchValue(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Switch node after processing the switch value.protected voidleaveThis(CAstNode n, C c, CAstVisitor<C> visitor)Leave a This node.protected voidleaveThrow(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Throw node.protected voidleaveTry(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Try node.protected voidleaveTryBlock(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Try node after processing the try block.protected voidleaveTypeEntity(CAstEntity n, C context, C typeContext, CAstVisitor<C> visitor)Leave a Type entity.protected voidleaveUnaryExpr(CAstNode n, C c, CAstVisitor<C> visitor)Leave a UnaryExpr node.protected voidleaveUnwind(CAstNode n, C c, CAstVisitor<C> visitor)Leave an Unwind node.protected voidleaveVar(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Var node.protected voidleaveVarAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)Visit a Var Assignment node after visiting the LHS.protected voidleaveVarAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)Visit a Var Op/Assignment node after visiting the LHS.protected voidleaveVoid(CAstNode n, C c, CAstVisitor<C> visitor)Leave a Void node.protected CmakeCodeContext(C context, CAstEntity n)Construct a context for a Code entity or delegate by default.protected CmakeFileContext(C context, CAstEntity n)Construct a context for a File entity or delegate by default.protected CmakeLocalContext(C context, CAstNode n)Construct a context for a LocalScope node or delegate by default.protected CmakeTypeContext(C context, CAstEntity n)Construct a context for a Type entity or delegate by default.protected CmakeUnwindContext(C context, CAstNode n, CAstVisitor<C> visitor)Construct a context for an Unwind node or delegate by default.protected voidpostProcessEntity(CAstEntity n, C context, CAstVisitor<C> visitor)Post-process an entity after visiting it.protected voidpostProcessNode(CAstNode n, C c, CAstVisitor<C> visitor)Post-process a node after visiting it.protected voidsetParent(CAstEntity entity, CAstEntity parent)Set the parent entity for a given entity.protected booleanvisitArrayLength(CAstNode n, C c, CAstVisitor<C> visitor)Visit an ArrayLength node.protected booleanvisitArrayLiteral(CAstNode n, C c, CAstVisitor<C> visitor)Visit an ArrayLiteral node.protected booleanvisitArrayRef(CAstNode n, C c, CAstVisitor<C> visitor)Visit an ArrayRef node.protected booleanvisitArrayRefAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)Visit an ArrayRef Assignment node after visiting the RHS.protected booleanvisitArrayRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)Visit an ArrayRef Op/Assignment node after visiting the RHS.booleanvisitAssign(CAstNode n, C c, CAstVisitor<C> visitor)Visit an Assign node.protected booleanvisitBinaryExpr(CAstNode n, C c, CAstVisitor<C> visitor)Visit a BinaryExpr node.protected booleanvisitBlockExpr(CAstNode n, C c, CAstVisitor<C> visitor)Visit a BlockExpr node.protected booleanvisitBlockExprAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)Visit a BlockExpr Assignment node after visiting the RHS.protected booleanvisitBlockExprAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)Visit a BlockExpr Op/Assignment node after visiting the RHS.protected booleanvisitBlockStmt(CAstNode n, C c, CAstVisitor<C> visitor)Visit a BlockStmt node.protected booleanvisitCall(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Call node.protected booleanvisitCast(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Cast node.protected booleanvisitCatch(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Catch node.protected booleanvisitConstant(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Constant node.protected booleanvisitDeclStmt(CAstNode n, C c, CAstVisitor<C> visitor)Visit a DeclStmt node.protected booleanvisitEmpty(CAstNode n, C c, CAstVisitor<C> visitor)Visit an Empty node.booleanvisitEntity(CAstEntity n, C context, CAstVisitor<C> visitor)Visit any entity.protected booleanvisitFieldEntity(CAstEntity n, C context, CAstVisitor<C> visitor)Visit a Field entity.protected booleanvisitFileEntity(CAstEntity n, C context, C fileContext, CAstVisitor<C> visitor)Visit a File entity.protected booleanvisitFunctionEntity(CAstEntity n, C context, C codeContext, CAstVisitor<C> visitor)Visit a Function entity.protected booleanvisitFunctionExpr(CAstNode n, C c, CAstVisitor<C> visitor)Visit a FunctionExpr node.protected booleanvisitFunctionStmt(CAstNode n, C c, CAstVisitor<C> visitor)Visit a FunctionStmt node.protected booleanvisitGetCaughtException(CAstNode n, C c, CAstVisitor<C> visitor)Visit a GetCaughtException node.protected booleanvisitGoto(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Goto node.protected booleanvisitIfExpr(CAstNode n, C c, CAstVisitor<C> visitor)Visit an IfExpr node.protected booleanvisitIfgoto(CAstNode n, C c, CAstVisitor<C> visitor)Visit an Ifgoto node.protected booleanvisitIfStmt(CAstNode n, C c, CAstVisitor<C> visitor)Visit an IfStmt node.protected booleanvisitInstanceOf(CAstNode n, C c, CAstVisitor<C> visitor)Visit an InstanceOf node.protected booleanvisitLabelStmt(CAstNode n, C c, CAstVisitor<C> visitor)Visit a LabelStmt node.protected booleanvisitLocalScope(CAstNode n, C c, CAstVisitor<C> visitor)Visit a LocalScope node.protected booleanvisitLoop(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Loop node.protected booleanvisitNew(CAstNode n, C c, CAstVisitor<C> visitor)Visit a New node.booleanvisitNode(CAstNode n, C c, CAstVisitor<C> visitor)Visit any node.protected booleanvisitObjectLiteral(CAstNode n, C c, CAstVisitor<C> visitor)Visit an ObjectLiteral node.protected booleanvisitObjectRef(CAstNode n, C c, CAstVisitor<C> visitor)Visit an ObjectRef node.protected booleanvisitObjectRefAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)Visit an ObjectRef Assignment node after visiting the RHS.protected booleanvisitObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)Visit an ObjectRef Op/Assignment node after visiting the RHS.protected booleanvisitPrimitive(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Primitive node.protected booleanvisitReturn(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Return node.protected booleanvisitScriptEntity(CAstEntity n, C context, C codeContext, CAstVisitor<C> visitor)Visit a Script entity.protected booleanvisitSpecialParentScope(CAstNode n, C c, CAstVisitor<C> visitor)Visit a LocalScope node.protected booleanvisitSuper(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Super node.protected booleanvisitSwitch(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Switch node.protected booleanvisitThis(CAstNode n, C c, CAstVisitor<C> visitor)Visit a This node.protected booleanvisitThrow(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Throw node.protected booleanvisitTry(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Try node.protected booleanvisitTypeEntity(CAstEntity n, C context, C typeContext, CAstVisitor<C> visitor)Visit a Type entity.protected booleanvisitUnaryExpr(CAstNode n, C c, CAstVisitor<C> visitor)Visit a UnaryExpr node.protected booleanvisitUnwind(CAstNode n, C c, CAstVisitor<C> visitor)Visit an Unwind node.protected booleanvisitVar(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Var node.protected booleanvisitVarAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)Visit a Var Assignment node after visiting the RHS.protected booleanvisitVarAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)Visit a Var Op/Assignment node after visiting the RHS.protected booleanvisitVoid(CAstNode n, C c, CAstVisitor<C> visitor)Visit a Void node.-
Methods inherited from class com.ibm.wala.cast.tree.visit.CAstVisitor
doVisitArrayRefNode, doVisitAssignNodes, getCurrentPosition, leaveAssert, leaveEachElementGet, leaveEachElementHasNext, leaveEcho, leaveForIn, leaveGlobalEntity, leaveInclude, leaveIsDefinedExpr, leaveMacroEntity, leaveMacroVar, leaveTypeLiteralExpr, makeSpecialParentContext, visit, visitAllChildren, visitAssert, visitAssignNodes, visitChildren, visitEachElementGet, visitEachElementHasNext, visitEcho, visitEntities, visitForIn, visitGlobalEntity, visitInclude, visitIsDefinedExpr, visitMacroEntity, visitMacroVar, visitScopedEntities, visitScopedEntities, visitTypeLiteralExpr
-
-
-
-
Constructor Detail
-
DelegatingCAstVisitor
protected DelegatingCAstVisitor(CAstVisitor<C> delegate)
Delegating CAstVisitorconstructor. Needs to have a valid (non-null) delegate visitor. - Parameters:
delegate- the visitor to delegate to for default implementation
-
-
Method Detail
-
makeFileContext
protected C makeFileContext(C context, CAstEntity n)
Construct a context for a File entity or delegate by default.- Overrides:
makeFileContextin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
context- a visitor-specific context in which this file was visitedn- the file entity
-
makeTypeContext
protected C makeTypeContext(C context, CAstEntity n)
Construct a context for a Type entity or delegate by default.- Overrides:
makeTypeContextin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
context- a visitor-specific context in which this type was visitedn- the type entity
-
makeCodeContext
protected C makeCodeContext(C context, CAstEntity n)
Construct a context for a Code entity or delegate by default.- Overrides:
makeCodeContextin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
context- a visitor-specific context in which the code was visitedn- the code entity
-
makeLocalContext
protected C makeLocalContext(C context, CAstNode n)
Construct a context for a LocalScope node or delegate by default.- Overrides:
makeLocalContextin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
context- a visitor-specific context in which the local scope was visitedn- the local scope node
-
makeUnwindContext
protected C makeUnwindContext(C context, CAstNode n, CAstVisitor<C> visitor)
Construct a context for an Unwind node or delegate by default.- Overrides:
makeUnwindContextin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
context- a visitor-specific context in which the unwind was visitedn- the unwind node
-
getParent
protected CAstEntity getParent(CAstEntity entity)
Get the parent entity for a given entity.- Overrides:
getParentin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
entity- the child entity- Returns:
- the parent entity for the given entity
-
setParent
protected void setParent(CAstEntity entity, CAstEntity parent)
Set the parent entity for a given entity.- Overrides:
setParentin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
entity- the child entityparent- the parent entity
-
delegate
protected final CAstVisitor<C> delegate()
-
doVisitEntity
protected boolean doVisitEntity(CAstEntity n, C context, CAstVisitor<C> visitor)
Entity processing hook; sub-classes are expected to override if they introduce new entity types. Should invoke super.doVisitEntity() for unprocessed entities.- Overrides:
doVisitEntityin classCAstVisitor<C extends CAstVisitor.Context>- Returns:
- true if entity was handled
-
enterEntity
protected boolean enterEntity(CAstEntity n, C context, CAstVisitor<C> visitor)
Enter the entity visitor.- Overrides:
enterEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific context- Returns:
- true if no further processing is needed
-
postProcessEntity
protected void postProcessEntity(CAstEntity n, C context, CAstVisitor<C> visitor)
Post-process an entity after visiting it.- Overrides:
postProcessEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific context
-
visitEntity
public boolean visitEntity(CAstEntity n, C context, CAstVisitor<C> visitor)
Visit any entity. Override only this to change behavior for all entities.- Overrides:
visitEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveEntity
public void leaveEntity(CAstEntity n, C context, CAstVisitor<C> visitor)
Leave any entity. Override only this to change behavior for all entities.- Overrides:
leaveEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific context
-
visitFileEntity
protected boolean visitFileEntity(CAstEntity n, C context, C fileContext, CAstVisitor<C> visitor)
Visit a File entity.- Overrides:
visitFileEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific contextfileContext- a visitor-specific context for this file- Returns:
- true if no further processing is needed
-
leaveFileEntity
protected void leaveFileEntity(CAstEntity n, C context, C fileContext, CAstVisitor<C> visitor)
Leave a File entity.- Overrides:
leaveFileEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific contextfileContext- a visitor-specific context for this file
-
visitFieldEntity
protected boolean visitFieldEntity(CAstEntity n, C context, CAstVisitor<C> visitor)
Visit a Field entity.- Overrides:
visitFieldEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveFieldEntity
protected void leaveFieldEntity(CAstEntity n, C context, CAstVisitor<C> visitor)
Leave a Field entity.- Overrides:
leaveFieldEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific context
-
visitTypeEntity
protected boolean visitTypeEntity(CAstEntity n, C context, C typeContext, CAstVisitor<C> visitor)
Visit a Type entity.- Overrides:
visitTypeEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific contexttypeContext- a visitor-specific context for this type- Returns:
- true if no further processing is needed
-
leaveTypeEntity
protected void leaveTypeEntity(CAstEntity n, C context, C typeContext, CAstVisitor<C> visitor)
Leave a Type entity.- Overrides:
leaveTypeEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific contexttypeContext- a visitor-specific context for this type
-
visitFunctionEntity
protected boolean visitFunctionEntity(CAstEntity n, C context, C codeContext, CAstVisitor<C> visitor)
Visit a Function entity.- Overrides:
visitFunctionEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific contextcodeContext- a visitor-specific context for this function- Returns:
- true if no further processing is needed
-
leaveFunctionEntity
protected void leaveFunctionEntity(CAstEntity n, C context, C codeContext, CAstVisitor<C> visitor)
Leave a Function entity.- Overrides:
leaveFunctionEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific contextcodeContext- a visitor-specific context for this function
-
visitScriptEntity
protected boolean visitScriptEntity(CAstEntity n, C context, C codeContext, CAstVisitor<C> visitor)
Visit a Script entity.- Overrides:
visitScriptEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific contextcodeContext- a visitor-specific context for this script- Returns:
- true if no further processing is needed
-
leaveScriptEntity
protected void leaveScriptEntity(CAstEntity n, C context, C codeContext, CAstVisitor<C> visitor)
Leave a Script entity.- Overrides:
leaveScriptEntityin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the entity to processcontext- a visitor-specific contextcodeContext- a visitor-specific context for this script
-
doVisit
protected boolean doVisit(CAstNode n, C context, CAstVisitor<C> visitor)
Node processing hook; sub-classes are expected to override if they introduce new node types. Should invoke super.doVisit() for unprocessed nodes.- Overrides:
doVisitin classCAstVisitor<C extends CAstVisitor.Context>- Returns:
- true if node was handled
-
enterNode
protected boolean enterNode(CAstNode n, C c, CAstVisitor<C> visitor)
Enter the node visitor.- Overrides:
enterNodein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
postProcessNode
protected void postProcessNode(CAstNode n, C c, CAstVisitor<C> visitor)
Post-process a node after visiting it.- Overrides:
postProcessNodein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitNode
public boolean visitNode(CAstNode n, C c, CAstVisitor<C> visitor)
Visit any node. Override only this to change behavior for all nodes.- Overrides:
visitNodein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveNode
public void leaveNode(CAstNode n, C c, CAstVisitor<C> visitor)
Leave any node. Override only this to change behavior for all nodes.- Overrides:
leaveNodein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitFunctionExpr
protected boolean visitFunctionExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a FunctionExpr node.- Overrides:
visitFunctionExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveFunctionExpr
protected void leaveFunctionExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a FunctionExpr node.- Overrides:
leaveFunctionExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitFunctionStmt
protected boolean visitFunctionStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a FunctionStmt node.- Overrides:
visitFunctionStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveFunctionStmt
protected void leaveFunctionStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a FunctionStmt node.- Overrides:
leaveFunctionStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitLocalScope
protected boolean visitLocalScope(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a LocalScope node.- Overrides:
visitLocalScopein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveLocalScope
protected void leaveLocalScope(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a LocalScope node.- Overrides:
leaveLocalScopein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitBlockExpr
protected boolean visitBlockExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a BlockExpr node.- Overrides:
visitBlockExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveBlockExpr
protected void leaveBlockExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a BlockExpr node.- Overrides:
leaveBlockExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitBlockStmt
protected boolean visitBlockStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a BlockStmt node.- Overrides:
visitBlockStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveBlockStmt
protected void leaveBlockStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a BlockStmt node.- Overrides:
leaveBlockStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitLoop
protected boolean visitLoop(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Loop node.- Overrides:
visitLoopin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveLoopHeader
protected void leaveLoopHeader(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Loop node after processing the loop header.- Overrides:
leaveLoopHeaderin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
leaveLoop
protected void leaveLoop(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Loop node.- Overrides:
leaveLoopin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitGetCaughtException
protected boolean visitGetCaughtException(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a GetCaughtException node.- Overrides:
visitGetCaughtExceptionin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveGetCaughtException
protected void leaveGetCaughtException(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a GetCaughtException node.- Overrides:
leaveGetCaughtExceptionin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitThis
protected boolean visitThis(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a This node.- Overrides:
visitThisin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveThis
protected void leaveThis(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a This node.- Overrides:
leaveThisin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitSuper
protected boolean visitSuper(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Super node.- Overrides:
visitSuperin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveSuper
protected void leaveSuper(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Super node.- Overrides:
leaveSuperin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitCall
protected boolean visitCall(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Call node.- Overrides:
visitCallin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveCall
protected void leaveCall(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Call node.- Overrides:
leaveCallin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitVar
protected boolean visitVar(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Var node.- Overrides:
visitVarin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveVar
protected void leaveVar(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Var node.- Overrides:
leaveVarin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitConstant
protected boolean visitConstant(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Constant node.- Overrides:
visitConstantin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveConstant
protected void leaveConstant(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Constant node.- Overrides:
leaveConstantin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitBinaryExpr
protected boolean visitBinaryExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a BinaryExpr node.- Overrides:
visitBinaryExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveBinaryExpr
protected void leaveBinaryExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a BinaryExpr node.- Overrides:
leaveBinaryExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitUnaryExpr
protected boolean visitUnaryExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a UnaryExpr node.- Overrides:
visitUnaryExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveUnaryExpr
protected void leaveUnaryExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a UnaryExpr node.- Overrides:
leaveUnaryExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitArrayLength
protected boolean visitArrayLength(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an ArrayLength node.- Overrides:
visitArrayLengthin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveArrayLength
protected void leaveArrayLength(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an ArrayLength node.- Overrides:
leaveArrayLengthin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitArrayRef
protected boolean visitArrayRef(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an ArrayRef node.- Overrides:
visitArrayRefin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveArrayRef
protected void leaveArrayRef(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an ArrayRef node.- Overrides:
leaveArrayRefin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitDeclStmt
protected boolean visitDeclStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a DeclStmt node.- Overrides:
visitDeclStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveDeclStmt
protected void leaveDeclStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a DeclStmt node.- Overrides:
leaveDeclStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitReturn
protected boolean visitReturn(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Return node.- Overrides:
visitReturnin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveReturn
protected void leaveReturn(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Return node.- Overrides:
leaveReturnin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitIfgoto
protected boolean visitIfgoto(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an Ifgoto node.- Overrides:
visitIfgotoin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveIfgoto
protected void leaveIfgoto(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an Ifgoto node.- Overrides:
leaveIfgotoin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitGoto
protected boolean visitGoto(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Goto node.- Overrides:
visitGotoin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveGoto
protected void leaveGoto(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Goto node.- Overrides:
leaveGotoin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitLabelStmt
protected boolean visitLabelStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a LabelStmt node.- Overrides:
visitLabelStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveLabelStmt
protected void leaveLabelStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a LabelStmt node.- Overrides:
leaveLabelStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitIfStmt
protected boolean visitIfStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an IfStmt node.- Overrides:
visitIfStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveIfStmtCondition
protected void leaveIfStmtCondition(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an IfStmt node after processing the condition.- Overrides:
leaveIfStmtConditionin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
leaveIfStmtTrueClause
protected void leaveIfStmtTrueClause(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an IfStmt node after processing the true clause.- Overrides:
leaveIfStmtTrueClausein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
leaveIfStmt
protected void leaveIfStmt(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an IfStmt node.- Overrides:
leaveIfStmtin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitIfExpr
protected boolean visitIfExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an IfExpr node.- Overrides:
visitIfExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveIfExprCondition
protected void leaveIfExprCondition(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an IfExpr node after processing the condition.- Overrides:
leaveIfExprConditionin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
leaveIfExprTrueClause
protected void leaveIfExprTrueClause(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an IfExpr node after processing the true clause.- Overrides:
leaveIfExprTrueClausein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
leaveIfExpr
protected void leaveIfExpr(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an IfExpr node.- Overrides:
leaveIfExprin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitNew
protected boolean visitNew(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a New node.- Overrides:
visitNewin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveNew
protected void leaveNew(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a New node.- Overrides:
leaveNewin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitObjectLiteral
protected boolean visitObjectLiteral(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an ObjectLiteral node.- Overrides:
visitObjectLiteralin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveObjectLiteralFieldInit
protected void leaveObjectLiteralFieldInit(CAstNode n, int i, C c, CAstVisitor<C> visitor)
Visit an ObjectLiteral node after processing the {i}th field initializer.- Overrides:
leaveObjectLiteralFieldInitin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processi- the field position that was initializedc- a visitor-specific context
-
leaveObjectLiteral
protected void leaveObjectLiteral(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an ObjectLiteral node.- Overrides:
leaveObjectLiteralin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitArrayLiteral
protected boolean visitArrayLiteral(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an ArrayLiteral node.- Overrides:
visitArrayLiteralin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveArrayLiteralObject
protected void leaveArrayLiteralObject(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an ArrayLiteral node after processing the array object.- Overrides:
leaveArrayLiteralObjectin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
leaveArrayLiteralInitElement
protected void leaveArrayLiteralInitElement(CAstNode n, int i, C c, CAstVisitor<C> visitor)
Visit an ArrayLiteral node after processing the {i}th element initializer.- Overrides:
leaveArrayLiteralInitElementin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processi- the index that was initializedc- a visitor-specific context
-
leaveArrayLiteral
protected void leaveArrayLiteral(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a ArrayLiteral node.- Overrides:
leaveArrayLiteralin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitObjectRef
protected boolean visitObjectRef(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an ObjectRef node.- Overrides:
visitObjectRefin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveObjectRef
protected void leaveObjectRef(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an ObjectRef node.- Overrides:
leaveObjectRefin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitAssign
public boolean visitAssign(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an Assign node. Override only this to change behavior for all assignment nodes.- Overrides:
visitAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveAssign
public void leaveAssign(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an Assign node. Override only this to change behavior for all assignment nodes.- Overrides:
leaveAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitArrayRefAssign
protected boolean visitArrayRefAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)
Visit an ArrayRef Assignment node after visiting the RHS.- Overrides:
visitArrayRefAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the LHS node to processv- the RHS node to processa- the assignment node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveArrayRefAssign
protected void leaveArrayRefAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)
Visit an ArrayRef Assignment node after visiting the LHS.- Overrides:
leaveArrayRefAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the LHS node to processv- the RHS node to processa- the assignment node to processc- a visitor-specific context
-
visitArrayRefAssignOp
protected boolean visitArrayRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)
Visit an ArrayRef Op/Assignment node after visiting the RHS.- Overrides:
visitArrayRefAssignOpin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
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 context- Returns:
- true if no further processing is needed
-
leaveArrayRefAssignOp
protected void leaveArrayRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)
Visit an ArrayRef Op/Assignment node after visiting the LHS.- Overrides:
leaveArrayRefAssignOpin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
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 context
-
visitObjectRefAssign
protected boolean visitObjectRefAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)
Visit an ObjectRef Assignment node after visiting the RHS.- Overrides:
visitObjectRefAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the LHS node to processv- the RHS node to processa- the assignment node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveObjectRefAssign
protected void leaveObjectRefAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)
Visit an ObjectRef Assignment node after visiting the LHS.- Overrides:
leaveObjectRefAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the LHS node to processv- the RHS node to processa- the assignment node to processc- a visitor-specific context
-
visitObjectRefAssignOp
protected boolean visitObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)
Visit an ObjectRef Op/Assignment node after visiting the RHS.- Overrides:
visitObjectRefAssignOpin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
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 context- Returns:
- true if no further processing is needed
-
leaveObjectRefAssignOp
protected void leaveObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)
Visit an ObjectRef Op/Assignment node after visiting the LHS.- Overrides:
leaveObjectRefAssignOpin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
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 context
-
visitBlockExprAssign
protected boolean visitBlockExprAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)
Visit a BlockExpr Assignment node after visiting the RHS.- Overrides:
visitBlockExprAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the LHS node to processv- the RHS node to processa- the assignment node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveBlockExprAssign
protected void leaveBlockExprAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)
Visit a BlockExpr Assignment node after visiting the LHS.- Overrides:
leaveBlockExprAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the LHS node to processv- the RHS node to processa- the assignment node to processc- a visitor-specific context
-
visitBlockExprAssignOp
protected boolean visitBlockExprAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)
Visit a BlockExpr Op/Assignment node after visiting the RHS.- Overrides:
visitBlockExprAssignOpin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
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 context- Returns:
- true if no further processing is needed
-
leaveBlockExprAssignOp
protected void leaveBlockExprAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)
Visit a BlockExpr Op/Assignment node after visiting the LHS.- Overrides:
leaveBlockExprAssignOpin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
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 context
-
visitVarAssign
protected boolean visitVarAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)
Visit a Var Assignment node after visiting the RHS.- Overrides:
visitVarAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the LHS node to processv- the RHS node to processa- the assignment node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveVarAssign
protected void leaveVarAssign(CAstNode n, CAstNode v, CAstNode a, C c, CAstVisitor<C> visitor)
Visit a Var Assignment node after visiting the LHS.- Overrides:
leaveVarAssignin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the LHS node to processv- the RHS node to processa- the assignment node to processc- a visitor-specific context
-
visitVarAssignOp
protected boolean visitVarAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)
Visit a Var Op/Assignment node after visiting the RHS.- Overrides:
visitVarAssignOpin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
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 context- Returns:
- true if no further processing is needed
-
leaveVarAssignOp
protected void leaveVarAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, C c, CAstVisitor<C> visitor)
Visit a Var Op/Assignment node after visiting the LHS.- Overrides:
leaveVarAssignOpin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
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 context
-
visitSwitch
protected boolean visitSwitch(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Switch node.- Overrides:
visitSwitchin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveSwitchValue
protected void leaveSwitchValue(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Switch node after processing the switch value.- Overrides:
leaveSwitchValuein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
leaveSwitch
protected void leaveSwitch(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Switch node.- Overrides:
leaveSwitchin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitThrow
protected boolean visitThrow(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Throw node.- Overrides:
visitThrowin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveThrow
protected void leaveThrow(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Throw node.- Overrides:
leaveThrowin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitCatch
protected boolean visitCatch(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Catch node.- Overrides:
visitCatchin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveCatch
protected void leaveCatch(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Catch node.- Overrides:
leaveCatchin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitUnwind
protected boolean visitUnwind(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an Unwind node.- Overrides:
visitUnwindin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveUnwind
protected void leaveUnwind(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an Unwind node.- Overrides:
leaveUnwindin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitTry
protected boolean visitTry(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Try node.- Overrides:
visitTryin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveTryBlock
protected void leaveTryBlock(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Try node after processing the try block.- Overrides:
leaveTryBlockin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
leaveTry
protected void leaveTry(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Try node.- Overrides:
leaveTryin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitEmpty
protected boolean visitEmpty(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an Empty node.- Overrides:
visitEmptyin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveEmpty
protected void leaveEmpty(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an Empty node.- Overrides:
leaveEmptyin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitPrimitive
protected boolean visitPrimitive(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Primitive node.- Overrides:
visitPrimitivein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leavePrimitive
protected void leavePrimitive(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Primitive node.- Overrides:
leavePrimitivein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitVoid
protected boolean visitVoid(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Void node.- Overrides:
visitVoidin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveVoid
protected void leaveVoid(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Void node.- Overrides:
leaveVoidin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitCast
protected boolean visitCast(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a Cast node.- Overrides:
visitCastin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveCast
protected void leaveCast(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a Cast node.- Overrides:
leaveCastin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitInstanceOf
protected boolean visitInstanceOf(CAstNode n, C c, CAstVisitor<C> visitor)
Visit an InstanceOf node.- Overrides:
visitInstanceOfin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveInstanceOf
protected void leaveInstanceOf(CAstNode n, C c, CAstVisitor<C> visitor)
Leave an InstanceOf node.- Overrides:
leaveInstanceOfin classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
visitSpecialParentScope
protected boolean visitSpecialParentScope(CAstNode n, C c, CAstVisitor<C> visitor)
Visit a LocalScope node.- Overrides:
visitSpecialParentScopein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context- Returns:
- true if no further processing is needed
-
leaveSpecialParentScope
protected void leaveSpecialParentScope(CAstNode n, C c, CAstVisitor<C> visitor)
Leave a LocalScope node.- Overrides:
leaveSpecialParentScopein classCAstVisitor<C extends CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
-