about summary refs log tree commit diff stats
path: root/miasm2/core/graph.py
diff options
context:
space:
mode:
authorFabrice Desclaux <fabrice.desclaux@cea.fr>2017-04-14 16:59:36 +0200
committerFabrice Desclaux <fabrice.desclaux@cea.fr>2017-04-21 11:01:52 +0200
commit9b0ce9e798941e700b166da43e100f04f12df05f (patch)
treed52081ba74f4ae52f498eb9baaf7f3b71e3f81cc /miasm2/core/graph.py
parente6ab4fd79ea540de0dd4563f9b6605c8a2f7a1bd (diff)
downloadmiasm-9b0ce9e798941e700b166da43e100f04f12df05f.tar.gz
miasm-9b0ce9e798941e700b166da43e100f04f12df05f.zip
Graph: add discard_edge
Diffstat (limited to 'miasm2/core/graph.py')
-rw-r--r--miasm2/core/graph.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/miasm2/core/graph.py b/miasm2/core/graph.py
index d97ca8be..ec9eac36 100644
--- a/miasm2/core/graph.py
+++ b/miasm2/core/graph.py
@@ -100,6 +100,11 @@ class DiGraph(object):
         self._nodes_succ[src].remove(dst)
         self._nodes_pred[dst].remove(src)
 
+    def discard_edge(self, src, dst):
+        """Remove edge between @src and @dst if it exits"""
+        if (src, dst) in self._edges:
+            self.del_edge(src, dst)
+
     def predecessors_iter(self, node):
         if not node in self._nodes_pred:
             raise StopIteration