angr.analyses.forward_analysis.visitors.single_node_graph 源代码
from __future__ import annotations
from .graph import GraphVisitor
[文档]
class SingleNodeGraphVisitor(GraphVisitor):
"""
:param node: The single node that should be in the graph.
"""
__slots__ = (
"node",
"node_returned",
)
[文档]
def __init__(self, node):
super().__init__()
self.node = node
self.node_returned = False
[文档]
def reset(self):
self.node_returned = False
[文档]
def next_node(self):
if self.node_returned:
return None
self.node_returned = True
return self.node
[文档]
def successors(self, node):
return []
[文档]
def predecessors(self, node):
return []
[文档]
def sort_nodes(self, nodes=None):
if nodes:
return nodes
return [self.node]