angr.analyses.decompiler.region_walker 源代码

from __future__ import annotations
from .graph_region import GraphRegion


[文档] class RegionWalker: """ A simple traverser class that walks GraphRegion instances. """
[文档] def __init__(self): self._parent_region = None self._current_region = None
[文档] def walk(self, region: GraphRegion): for node in region.graph.nodes(): if isinstance(node, GraphRegion): self._parent_region = node self.walk(node) self._parent_region = None else: self.walk_node(region, node)
[文档] def walk_node(self, region, node): # pylint:disable=no-self-use,unused-argument raise NotImplementedError("Please override this method with your own logic")