MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / GetNodes

Method GetNodes

flowgraph.cpp:211–235  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

209
210
211vector<Ref<FlowGraphNode>> FlowGraph::GetNodes()
212{
213 size_t count;
214 BNFlowGraphNode** nodes = BNGetFlowGraphNodes(m_object, &count);
215
216 vector<Ref<FlowGraphNode>> result;
217 result.reserve(count);
218 for (size_t i = 0; i < count; i++)
219 {
220 auto node = m_cachedNodes.find(nodes[i]);
221 if (node == m_cachedNodes.end())
222 {
223 FlowGraphNode* newNode = new FlowGraphNode(BNNewFlowGraphNodeReference(nodes[i]));
224 m_cachedNodes[nodes[i]] = newNode;
225 result.push_back(newNode);
226 }
227 else
228 {
229 result.push_back(node->second);
230 }
231 }
232
233 BNFreeFlowGraphNodeList(nodes, count);
234 return result;
235}
236
237
238Ref<FlowGraphNode> FlowGraph::GetNode(size_t i)

Callers 1

ApplyToFlowGraphMethod · 0.80

Calls 3

findMethod · 0.80
push_backMethod · 0.80
endMethod · 0.45

Tested by

no test coverage detected