(self, rhs: Listener)
return c1 == c2
Compare for equality to rhs. This returns true if rhs has our id id(rhs) is same as
        id(self) or id(callable in self).
Compare for equality to rhs. This returns true if rhs has our id id(rhs) is same as
        id(self) or id(callable in self).
Compare for equality to rhs . This returns true if rhs has our id id ( rhs ) is same as id ( self ) or id ( callable in self ) .
def __eq__(self, rhs: Listener):
        """
        Compare for equality to rhs. This returns true if rhs has our id id(rhs) is same as
        id(self) or id(callable in self).
        """
        if id(self) == id(rhs):
            return True

        c1 = self._callable()
        try:
            c2 = rhs._callable()
        except Exception:
            # then rhs is not a Listener, compare with c1
            return c1 == rhs

        # both side of == are Listener, but always compare unequal if both dead
        if c2 is None and c1 is None:
            return False

        return c1 == c2
def __eq__ ( self , rhs : Listener ) : if id ( self ) == id ( rhs ) : return True c1 = self . _callable ( ) try : c2 = rhs . _callable ( ) except Exception : # then rhs is not a Listener, compare with c1 return c1 == rhs # both side of == are Listener, but always compare unequal if both dead if c2 is None and c1 is None : return False return c1 == c2