Class CAstPattern.Matcher
java.lang.Object
com.ibm.wala.cast.tree.visit.CAstVisitor<CAstVisitor.Context>
com.ibm.wala.cast.util.CAstPattern.Matcher
- Enclosing class:
CAstPattern
-
Nested Class Summary
Nested classes/interfaces inherited from class CAstVisitor
CAstVisitor.ContextModifier and TypeClassDescriptionstatic interfaceThis interface represents a visitor-specific context. -
Field Summary
Fields inherited from class CAstVisitor
currentPosition, DEBUG -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleandoVisit(CAstNode n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Node processing hook; sub-classes are expected to override if they introduce new node types.protected booleandoVisitAssignNodes(CAstNode n, CAstVisitor.Context context, CAstNode v, CAstNode a, CAstVisitor<CAstVisitor.Context> visitor) Node processing hook; sub-classes are expected to override if they introduce new node types that appear on the left hand side of assignment operations.findAll(CAstVisitor.Context c, CAstNode top) voidleaveNode(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave any node.Methods inherited from class CAstVisitor
doVisitArrayRefNode, doVisitEntity, enterEntity, enterNode, getCodeContext, getCurrentPosition, getParent, leaveArrayLength, leaveArrayLiteral, leaveArrayLiteralAssign, leaveArrayLiteralInitElement, leaveArrayLiteralObject, leaveArrayRef, leaveArrayRefAssign, leaveArrayRefAssignOp, leaveAssert, leaveAssign, leaveBinaryExpr, leaveBlockExpr, leaveBlockExprAssign, leaveBlockExprAssignOp, leaveBlockStmt, leaveCall, leaveCast, leaveCatch, leaveClassStmt, leaveConstant, leaveDeclStmt, leaveEachElementGet, leaveEachElementHasNext, leaveEcho, leaveEmpty, leaveEntity, leaveFieldEntity, leaveFileEntity, leaveForIn, leaveFunctionEntity, leaveFunctionExpr, leaveFunctionStmt, leaveGetCaughtException, leaveGlobalEntity, leaveGoto, leaveIfExpr, leaveIfExprCondition, leaveIfExprTrueClause, leaveIfgoto, leaveIfStmt, leaveIfStmtCondition, leaveIfStmtTrueClause, leaveInclude, leaveInstanceOf, leaveIsDefinedExpr, leaveLabelStmt, leaveLocalScope, leaveLoop, leaveLoopHeader, leaveMacroEntity, leaveMacroVar, leaveNew, leaveObjectLiteral, leaveObjectLiteralAssign, leaveObjectLiteralFieldInit, leaveObjectRef, leaveObjectRefAssign, leaveObjectRefAssignOp, leavePrimitive, leaveReturn, leaveScriptEntity, leaveSpecialParentScope, leaveSuper, leaveSwitch, leaveSwitchValue, leaveThis, leaveThrow, leaveTry, leaveTryBlock, leaveTypeEntity, leaveTypeLiteralExpr, leaveUnaryExpr, leaveUnwind, leaveVar, leaveVarAssign, leaveVarAssignOp, leaveVoid, leaveYield, makeCodeContext, makeFileContext, makeLocalContext, makeSpecialParentContext, makeTypeContext, makeUnwindContext, postProcessEntity, postProcessNode, setParent, visit, visitAllChildren, visitArrayLength, visitArrayLiteral, visitArrayLiteralAssign, visitArrayRef, visitArrayRefAssign, visitArrayRefAssignOp, visitAssert, visitAssign, visitAssignNodes, visitBinaryExpr, visitBlockExpr, visitBlockExprAssign, visitBlockExprAssignOp, visitBlockStmt, visitCall, visitCast, visitCatch, visitChildren, visitClassStmt, visitConstant, visitDeclStmt, visitEachElementGet, visitEachElementHasNext, visitEcho, visitEmpty, visitEntities, visitEntity, visitFieldEntity, visitFileEntity, visitForIn, visitFunctionEntity, visitFunctionExpr, visitFunctionStmt, visitGetCaughtException, visitGlobalEntity, visitGoto, visitIfExpr, visitIfgoto, visitIfStmt, visitInclude, visitInstanceOf, visitIsDefinedExpr, visitLabelStmt, visitLocalScope, visitLoop, visitMacroEntity, visitMacroVar, visitNew, visitNode, visitObjectLiteral, visitObjectLiteralAssign, visitObjectRef, visitObjectRefAssign, visitObjectRefAssignOp, visitPrimitive, visitReturn, visitScopedEntities, visitScopedEntities, visitScriptEntity, visitSpecialParentScope, visitSuper, visitSwitch, visitThis, visitThrow, visitTry, visitTypeEntity, visitTypeLiteralExpr, visitUnaryExpr, visitUnwind, visitVar, visitVarAssign, visitVarAssignOp, visitVoid, visitYieldModifier and TypeMethodDescriptionprotected booleandoVisitArrayRefNode(CAstNode n, CAstNode v, CAstNode a, boolean assign, boolean preOp, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Process the given array reference node.protected booleandoVisitEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Entity processing hook; sub-classes are expected to override if they introduce new entity types.protected booleanenterEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Enter the entity visitor.protected booleanenterNode(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Enter the node visitor.protected CAstVisitor.ContextgetCodeContext(CAstVisitor.Context context) protected CAstEntitygetParent(CAstEntity entity) Get the parent entity for a given entity.protected voidleaveArrayLength(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an ArrayLength node.protected voidleaveArrayLiteral(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a ArrayLiteral node.protected voidleaveArrayLiteralAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an array literal Assignment node after visiting the LHS.protected voidleaveArrayLiteralInitElement(CAstNode n, int i, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayLiteral node after processing the {i}th element initializer.protected voidleaveArrayLiteralObject(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayLiteral node after processing the array object.protected voidleaveArrayRef(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an ArrayRef node.protected voidleaveArrayRefAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayRef Assignment node after visiting the LHS.protected voidleaveArrayRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayRef Op/Assignment node after visiting the LHS.protected voidleaveAssert(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an InstanceOf node.voidleaveAssign(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an Assign node.protected voidleaveBinaryExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a BinaryExpr node.protected voidleaveBlockExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a BlockExpr node.protected voidleaveBlockExprAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a BlockExpr Assignment node after visiting the LHS.protected voidleaveBlockExprAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a BlockExpr Op/Assignment node after visiting the LHS.protected voidleaveBlockStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a BlockStmt node.protected voidleaveCall(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Call node.protected voidleaveCast(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Cast node.protected voidleaveCatch(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Catch node.protected voidleaveClassStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a FunctionStmt node.protected voidleaveConstant(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Constant node.protected voidleaveDeclStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a DeclStmt node.protected voidleaveEachElementGet(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an FOR_EACH_ELEMENT_GET node.protected voidleaveEachElementHasNext(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) protected voidleaveEcho(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an ECHO node.protected voidleaveEmpty(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an Empty node.voidleaveEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Leave any entity.protected voidleaveFieldEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Leave a Field entity.protected voidleaveFileEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context fileContext, CAstVisitor<CAstVisitor.Context> visitor) Leave a File entity.protected voidleaveForIn(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a For..In node.protected voidleaveFunctionEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context codeContext, CAstVisitor<CAstVisitor.Context> visitor) Leave a Function entity.protected voidleaveFunctionExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a FunctionExpr node.protected voidleaveFunctionStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a FunctionStmt node.protected voidleaveGetCaughtException(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a GetCaughtException node.protected voidleaveGlobalEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Leave a Field entity.protected voidleaveGoto(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Goto node.protected voidleaveIfExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an IfExpr node.protected voidleaveIfExprCondition(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an IfExpr node after processing the condition.protected voidleaveIfExprTrueClause(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an IfExpr node after processing the true clause.protected voidleaveIfgoto(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an Ifgoto node.protected voidleaveIfStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an IfStmt node.protected voidleaveIfStmtCondition(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an IfStmt node after processing the condition.protected voidleaveIfStmtTrueClause(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an IfStmt node after processing the true clause.protected voidleaveInclude(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an INCLUDE node.protected voidleaveInstanceOf(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an InstanceOf node.protected voidleaveIsDefinedExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an IS_DEFINED_EXPR node.protected voidleaveLabelStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a LabelStmt node.protected voidleaveLocalScope(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a LocalScope node.protected voidleaveLoop(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Loop node.protected voidleaveLoopHeader(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Loop node after processing the loop header.protected voidleaveMacroEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context codeContext, CAstVisitor<CAstVisitor.Context> visitor) Leave a Macro entity.protected voidleaveMacroVar(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an MACRO_VAR node.protected voidleaveNew(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a New node.protected voidleaveObjectLiteral(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an ObjectLiteral node.protected voidleaveObjectLiteralAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an array literal Assignment node after visiting the LHS.protected voidleaveObjectLiteralFieldInit(CAstNode n, int i, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ObjectLiteral node after processing the {i}th field initializer.protected voidleaveObjectRef(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an ObjectRef node.protected voidleaveObjectRefAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ObjectRef Assignment node after visiting the LHS.protected voidleaveObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ObjectRef Op/Assignment node after visiting the LHS.protected voidleavePrimitive(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Primitive node.protected voidleaveReturn(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Return node.protected voidleaveScriptEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context codeContext, CAstVisitor<CAstVisitor.Context> visitor) Leave a Script entity.protected voidleaveSpecialParentScope(CAstNode n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) protected voidleaveSuper(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Super node.protected voidleaveSwitch(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Switch node.protected voidleaveSwitchValue(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Switch node after processing the switch value.protected voidleaveThis(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a This node.protected voidleaveThrow(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Throw node.protected voidleaveTry(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Try node.protected voidleaveTryBlock(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Try node after processing the try block.protected voidleaveTypeEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context typeContext, CAstVisitor<CAstVisitor.Context> visitor) Leave a Type entity.protected voidleaveTypeLiteralExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an TYPE_LITERAL_EXPR node.protected voidleaveUnaryExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a UnaryExpr node.protected voidleaveUnwind(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an Unwind node.protected voidleaveVar(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Var node.protected voidleaveVarAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Var Assignment node after visiting the LHS.protected voidleaveVarAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Var Op/Assignment node after visiting the LHS.protected voidleaveVoid(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Void node.protected voidleaveYield(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave a Return node.protected CAstVisitor.ContextmakeCodeContext(CAstVisitor.Context context, CAstEntity n) Construct a context for a Code entity.protected CAstVisitor.ContextmakeFileContext(CAstVisitor.Context context, CAstEntity n) Construct a context for a File entity.protected CAstVisitor.ContextmakeLocalContext(CAstVisitor.Context context, CAstNode n) Construct a context for a LocalScope node.protected CAstVisitor.ContextmakeSpecialParentContext(CAstVisitor.Context context, CAstNode n) protected CAstVisitor.ContextmakeTypeContext(CAstVisitor.Context context, CAstEntity n) Construct a context for a Type entity.protected CAstVisitor.ContextmakeUnwindContext(CAstVisitor.Context context, CAstNode n, CAstVisitor<CAstVisitor.Context> visitor) Construct a context for an Unwind node.protected voidpostProcessEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Post-process an entity after visiting it.protected voidpostProcessNode(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Post-process a node after visiting it.protected voidsetParent(CAstEntity entity, CAstEntity parent) Set the parent entity for a given entity.final voidvisit(CAstNode n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Recursively visit a given node.final voidvisitAllChildren(CAstNode n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Visit all children of a node.protected booleanvisitArrayLength(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayLength node.protected booleanvisitArrayLiteral(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayLiteral node.protected booleanvisitArrayLiteralAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an array literal Assignment node after visiting the RHS.protected booleanvisitArrayRef(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayRef node.protected booleanvisitArrayRefAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayRef Assignment node after visiting the RHS.protected booleanvisitArrayRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ArrayRef Op/Assignment node after visiting the RHS.protected booleanvisitAssert(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) booleanvisitAssign(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an Assign node.protected booleanvisitAssignNodes(CAstNode n, CAstVisitor.Context context, CAstNode v, CAstNode a, CAstVisitor<CAstVisitor.Context> visitor) protected booleanvisitBinaryExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a BinaryExpr node.protected booleanvisitBlockExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a BlockExpr node.protected booleanvisitBlockExprAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a BlockExpr Assignment node after visiting the RHS.protected booleanvisitBlockExprAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a BlockExpr Op/Assignment node after visiting the RHS.protected booleanvisitBlockStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a BlockStmt node.protected booleanvisitCall(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Call node.protected booleanvisitCast(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Cast node.protected booleanvisitCatch(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Catch node.final voidvisitChildren(CAstNode n, int start, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Visit children of a node starting at a given index.protected booleanvisitClassStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a FunctionStmt node.protected booleanvisitConstant(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Constant node.protected booleanvisitDeclStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a DeclStmt node.protected booleanvisitEachElementGet(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an InstanceOf node.protected booleanvisitEachElementHasNext(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Leave an InstanceOf node.protected booleanvisitEcho(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) protected booleanvisitEmpty(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an Empty node.final voidvisitEntities(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Recursively visit an entity.booleanvisitEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Visit any entity.protected booleanvisitFieldEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Visit a Field entity.protected booleanvisitFileEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context fileC, CAstVisitor<CAstVisitor.Context> visitor) Visit a File entity.protected booleanvisitForIn(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a For..In node.protected booleanvisitFunctionEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context codeContext, CAstVisitor<CAstVisitor.Context> visitor) Visit a Function entity.protected booleanvisitFunctionExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a FunctionExpr node.protected booleanvisitFunctionStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a FunctionStmt node.protected booleanvisitGetCaughtException(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a GetCaughtException node.protected booleanvisitGlobalEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Visit a Field entity.protected booleanvisitGoto(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Goto node.protected booleanvisitIfExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an IfExpr node.protected booleanvisitIfgoto(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an Ifgoto node.protected booleanvisitIfStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an IfStmt node.protected booleanvisitInclude(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) protected booleanvisitInstanceOf(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an InstanceOf node.protected booleanvisitIsDefinedExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) protected booleanvisitLabelStmt(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a LabelStmt node.protected booleanvisitLocalScope(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a LocalScope node.protected booleanvisitLoop(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Loop node.protected booleanvisitMacroEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context codeContext, CAstVisitor<CAstVisitor.Context> visitor) Visit a Macro entity.protected booleanvisitMacroVar(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) protected booleanvisitNew(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a New node.booleanvisitNode(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit any node.protected booleanvisitObjectLiteral(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ObjectLiteral node.protected booleanvisitObjectLiteralAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an array literal Assignment node after visiting the RHS.protected booleanvisitObjectRef(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ObjectRef node.protected booleanvisitObjectRefAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ObjectRef Assignment node after visiting the RHS.protected booleanvisitObjectRefAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an ObjectRef Op/Assignment node after visiting the RHS.protected booleanvisitPrimitive(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Primitive node.protected booleanvisitReturn(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Return node.final voidvisitScopedEntities(CAstEntity n, Iterator<CAstEntity> i, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) final voidvisitScopedEntities(CAstEntity n, Map<CAstNode, Collection<CAstEntity>> allScopedEntities, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Visit scoped entities of an entity using a given iterator.protected booleanvisitScriptEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context codeContext, CAstVisitor<CAstVisitor.Context> visitor) Visit a Script entity.protected booleanvisitSpecialParentScope(CAstNode n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) protected booleanvisitSuper(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Super node.protected booleanvisitSwitch(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Switch node.protected booleanvisitThis(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a This node.protected booleanvisitThrow(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Throw node.protected booleanvisitTry(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Try node.protected booleanvisitTypeEntity(CAstEntity n, CAstVisitor.Context context, CAstVisitor.Context typeContext, CAstVisitor<CAstVisitor.Context> visitor) Visit a Type entity.protected booleanvisitTypeLiteralExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an TYPE_LITERAL_EXPR node.protected booleanvisitUnaryExpr(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a UnaryExpr node.protected booleanvisitUnwind(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit an Unwind node.protected booleanvisitVar(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Var node.protected booleanvisitVarAssign(CAstNode n, CAstNode v, CAstNode a, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Var Assignment node after visiting the RHS.protected booleanvisitVarAssignOp(CAstNode n, CAstNode v, CAstNode a, boolean pre, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Var Op/Assignment node after visiting the RHS.protected booleanvisitVoid(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Void node.protected booleanvisitYield(CAstNode n, CAstVisitor.Context c, CAstVisitor<CAstVisitor.Context> visitor) Visit a Return node.
-
Constructor Details
-
Matcher
public Matcher()
-
-
Method Details
-
leaveNode
Description copied from class:CAstVisitorLeave any node. Override only this to change behavior for all nodes.- Overrides:
leaveNodein classCAstVisitor<CAstVisitor.Context>- Parameters:
n- the node to processc- a visitor-specific context
-
findAll
-
doVisit
protected boolean doVisit(CAstNode n, CAstVisitor.Context context, CAstVisitor<CAstVisitor.Context> visitor) Description copied from class:CAstVisitorNode processing hook; sub-classes are expected to override if they introduce new node types.(Should invoke super.doVisit() for unprocessed nodes.)
- Overrides:
doVisitin classCAstVisitor<CAstVisitor.Context>- Returns:
- true if node was handled
-
doVisitAssignNodes
protected boolean doVisitAssignNodes(CAstNode n, CAstVisitor.Context context, CAstNode v, CAstNode a, CAstVisitor<CAstVisitor.Context> visitor) Description copied from class:CAstVisitorNode processing hook; sub-classes are expected to override if they introduce new node types that appear on the left hand side of assignment operations.(Should invoke super.doVisit() for unprocessed nodes.)
- Overrides:
doVisitAssignNodesin classCAstVisitor<CAstVisitor.Context>- Returns:
- true if node was handled
-