Class CAstBasicRewriter<T extends CAstBasicRewriter.NonCopyingContext>
java.lang.Object
com.ibm.wala.cast.tree.rewrite.CAstRewriter<T, CAstBasicRewriter.NoKey>
com.ibm.wala.cast.tree.rewrite.CAstBasicRewriter<T>
- Direct Known Subclasses:
CAstCloner, ConstantFoldingRewriter
public abstract class CAstBasicRewriter<T extends CAstBasicRewriter.NonCopyingContext>
extends CAstRewriter<T, CAstBasicRewriter.NoKey>
abstract base class for
CAstRewriters that do no cloning of nodes-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classkey indicating that no duplication is being performedstatic classcontext indicating that no cloning is being performedNested classes/interfaces inherited from class CAstRewriter
CAstRewriter.CopyKey<Self>, CAstRewriter.Rewrite, CAstRewriter.RewriteContext<K> -
Field Summary
Fields inherited from class CAstRewriter
Ast, DEBUG, recursive, rootContext -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCAstBasicRewriter(CAst Ast, T context, boolean recursive) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract CAstNodecopyNodes(CAstNode root, CAstControlFlowMap cfg, T context, Map<Pair<CAstNode, CAstBasicRewriter.NoKey>, CAstNode> nodeMap) rewrite the CAst rooted at root under some context, returning the node at the root of the rewritten tree.Methods inherited from class CAstRewriter
copyChildren, copyChildrenArray, copyChildrenArrayAndTargets, copyFlow, copySource, copySubtreesIntoNewNode, copySubtreesIntoNewNode, copyTypes, flowOutTo, rewrite, rewrite
-
Constructor Details
-
CAstBasicRewriter
-
-
Method Details
-
copyNodes
protected abstract CAstNode copyNodes(CAstNode root, CAstControlFlowMap cfg, T context, Map<Pair<CAstNode, CAstBasicRewriter.NoKey>, CAstNode> nodeMap) Description copied from class:CAstRewriterrewrite the CAst rooted at root under some context, returning the node at the root of the rewritten tree. mutate nodeMap in the process, indicating how (original node, copy key) pairs are mapped to nodes in the rewritten tree.- Specified by:
copyNodesin classCAstRewriter<T extends CAstBasicRewriter.NonCopyingContext, CAstBasicRewriter.NoKey>
-