From a20b9e1fcd675e593c8b4cb383f28f404ff62add Mon Sep 17 00:00:00 2001 From: IWASE Yusuke Date: Tue, 17 May 2016 10:52:15 +0900 Subject: [PATCH] BGP: Make RouteFamily class hashable In Python 3, the key objects of dict must be hashable, but RouteFamily class does not have '__hash__' method. This patch adds this method. Signed-off-by: IWASE Yusuke Signed-off-by: FUJITA Tomonori --- ryu/lib/packet/bgp.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ryu/lib/packet/bgp.py b/ryu/lib/packet/bgp.py index 2b8e42c8..2fb51e88 100644 --- a/ryu/lib/packet/bgp.py +++ b/ryu/lib/packet/bgp.py @@ -579,6 +579,9 @@ class RouteFamily(StringifyMixin): def __eq__(self, other): return (self.afi, self.safi) == (other.afi, other.safi) + def __hash__(self): + return hash((self.afi, self.safi)) + # Route Family Singleton RF_IPv4_UC = RouteFamily(addr_family.IP, subaddr_family.UNICAST) RF_IPv6_UC = RouteFamily(addr_family.IP6, subaddr_family.UNICAST)