diff options
| author | Camille Mougey <commial@gmail.com> | 2018-04-19 19:26:09 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-04-19 19:26:09 +0200 |
| commit | a4dbb99d5d169d79828caec9e20dc4392f9be95a (patch) | |
| tree | cbba60755e94e26ac29aa2574d93358c1c73ab5c | |
| parent | 145c218af968bea37ecc8a89585686e68566a875 (diff) | |
| parent | 7d4100ea290c0bd60ee225a401786bc856d92615 (diff) | |
| download | miasm-a4dbb99d5d169d79828caec9e20dc4392f9be95a.tar.gz miasm-a4dbb99d5d169d79828caec9e20dc4392f9be95a.zip | |
Merge pull request #725 from serpilliere/fix_eq_ne
Fix __ne__ calls
Diffstat (limited to '')
| -rw-r--r-- | miasm2/core/ctypesmngr.py | 3 | ||||
| -rw-r--r-- | miasm2/core/graph.py | 3 | ||||
| -rw-r--r-- | miasm2/core/interval.py | 3 | ||||
| -rw-r--r-- | miasm2/core/objc.py | 3 | ||||
| -rw-r--r-- | miasm2/core/types.py | 3 | ||||
| -rw-r--r-- | miasm2/ir/ir.py | 3 | ||||
| -rw-r--r-- | miasm2/ir/symbexec.py | 3 | ||||
| -rw-r--r-- | miasm2/ir/symbexec_top.py | 3 | ||||
| -rw-r--r-- | miasm2/jitter/jitload.py | 3 | ||||
| -rwxr-xr-x | test/core/test_types.py | 2 |
10 files changed, 28 insertions, 1 deletions
diff --git a/miasm2/core/ctypesmngr.py b/miasm2/core/ctypesmngr.py index 4bd32cb3..e99e3829 100644 --- a/miasm2/core/ctypesmngr.py +++ b/miasm2/core/ctypesmngr.py @@ -36,6 +36,9 @@ class CTypeBase(object): def _typerepr(self): return self.__repr + def __ne__(self, other): + return not self.__eq__(other) + def eq_base(self, other): """Trivial common equality test""" return self.__class__ == other.__class__ diff --git a/miasm2/core/graph.py b/miasm2/core/graph.py index b74717da..ce17fc75 100644 --- a/miasm2/core/graph.py +++ b/miasm2/core/graph.py @@ -57,6 +57,9 @@ class DiGraph(object): return all((self._nodes == graph.nodes(), sorted(self._edges) == sorted(graph.edges()))) + def __ne__(self, other): + return not self.__eq__(other) + def add_node(self, node): """Add the node @node to the graph. If the node was already present, return False. diff --git a/miasm2/core/interval.py b/miasm2/core/interval.py index 019764d4..3fde83ad 100644 --- a/miasm2/core/interval.py +++ b/miasm2/core/interval.py @@ -120,6 +120,9 @@ class interval(object): def __eq__(self, i): return self.intervals == i.intervals + def __ne__(self, other): + return not self.__eq__(other) + def __add__(self, i): if isinstance(i, interval): i = i.intervals diff --git a/miasm2/core/objc.py b/miasm2/core/objc.py index 91ef6604..80f1e341 100644 --- a/miasm2/core/objc.py +++ b/miasm2/core/objc.py @@ -430,6 +430,9 @@ class CGen(object): return (self.__class__ == other.__class__ and self._ctype == other.ctype) + def __ne__(self, other): + return not self.__eq__(other) + def to_c(self): """Generate corresponding C""" diff --git a/miasm2/core/types.py b/miasm2/core/types.py index 374fc804..b0aca07e 100644 --- a/miasm2/core/types.py +++ b/miasm2/core/types.py @@ -340,6 +340,9 @@ class Type(object): def __neq__(self, other): return not self == other + def __ne__(self, other): + return not self.__eq__(other) + class RawStruct(Type): """Dumb struct.pack/unpack field. Mainly used to factorize code. diff --git a/miasm2/ir/ir.py b/miasm2/ir/ir.py index 982399da..1c6895e0 100644 --- a/miasm2/ir/ir.py +++ b/miasm2/ir/ir.py @@ -177,6 +177,9 @@ class AssignBlock(object): return False return all(other[dst] == src for dst, src in self.iteritems()) + def __ne__(self, other): + return not self.__eq__(other) + def __len__(self): return len(self._assigns) diff --git a/miasm2/ir/symbexec.py b/miasm2/ir/symbexec.py index 3cde2af7..4070f261 100644 --- a/miasm2/ir/symbexec.py +++ b/miasm2/ir/symbexec.py @@ -53,6 +53,9 @@ class SymbolicState(StateEngine): return False return self.symbols == other.symbols + def __ne__(self, other): + return not self.__eq__(other) + def __iter__(self): for dst, src in self._symbols: yield dst, src diff --git a/miasm2/ir/symbexec_top.py b/miasm2/ir/symbexec_top.py index 71837ed0..1e1e76e9 100644 --- a/miasm2/ir/symbexec_top.py +++ b/miasm2/ir/symbexec_top.py @@ -39,6 +39,9 @@ class SymbolicStateTop(StateEngine): return (self.symbols == other.symbols and self.regstop == other.regstop) + def __ne__(self, other): + return not self.__eq__(other) + def __iter__(self): for dst, src in self._symbols: yield dst, src diff --git a/miasm2/jitter/jitload.py b/miasm2/jitter/jitload.py index 8eb7659e..8da6f3d0 100644 --- a/miasm2/jitter/jitload.py +++ b/miasm2/jitter/jitload.py @@ -156,6 +156,9 @@ class ExceptionHandle(): return False return (self.except_flag == to_cmp.except_flag) + def __ne__(self, to_cmp): + return not self.__eq__(to_cmp) + class jitter(object): diff --git a/test/core/test_types.py b/test/core/test_types.py index ab1d47c4..0b5f6baa 100755 --- a/test/core/test_types.py +++ b/test/core/test_types.py @@ -465,7 +465,7 @@ assert Union([("f2", Num("B")), ("f2", Num("H"))]) != \ assert Union([("f1", Num("B")), ("f2", Num("H"))]) != \ Union([("f1", Num("I")), ("f2", Num("H"))]) assert Bits(Num("I"), 3, 8) == Bits(Num("I"), 3, 8) -assert Bits(Num("I"), 3, 8) != Bits(Num("I"), 3, 8) +assert (Bits(Num("I"), 3, 8) != Bits(Num("I"), 3, 8)) is False assert Bits(Num("H"), 2, 8) != Bits(Num("I"), 3, 8) assert Bits(Num("I"), 3, 7) != Bits(Num("I"), 3, 8) assert BitField(Num("B"), [("f1", 2), ("f2", 4), ("f3", 1)]) == \ |