code: def set_filters(self, filters=None):
          
          self._filters = filters or None
          self._apply_filters(self._filters)
docs: Apply filtering to all messages received by this Bus.
  
          All messages that match at least one filter are returned.
          If `filters` is `None` or a zero length sequence, all
          messages are matched.
  
          Calling without passing any filters will reset the applied
          filters to `None`.
  
          :param filters:
              A iterable of dictionaries each containing a "can_id",
              a "can_mask", and an optional "extended" key.
  
              >>> [{"can_id": 0x11, "can_mask": 0x21, "extended": False}]
  
              A filter matches, when
              ``<received_can_id> & can_mask == can_id & can_mask``.
              If ``extended`` is set as well, it only matches messages where
              ``<received_is_extended> == extended``. Else it matches every
              messages based only on the arbitration ID and mask.