async def bus_remove_match_action_async(self, rule, func, user_data, error = None, timeout = DBUS.TIMEOUT_USE_DEFAULT) :
        "removes a message filter previously installed with bus_add_match_action."
        rulekey = format_rule(rule)
        rule = unformat_rule(rule)
        self._match_actions[rulekey].actions.remove(_MatchActionEntry._Action(func, user_data))
        if len(self._match_actions[rulekey].actions) == 0 :
            await self.bus_remove_match_async(rulekey, error, timeout) # shouldn’t fail!
            del self._match_actions[rulekey]
            if len(self._match_actions) == 0 :
                self.remove_filter(self._rule_action_match, None)
async def bus_remove_match_action_async ( self , rule , func , user_data , error = None , timeout = DBUS . TIMEOUT_USE_DEFAULT ) : rulekey = format_rule ( rule ) rule = unformat_rule ( rule ) self . _match_actions [ rulekey ] . actions . remove ( _MatchActionEntry . _Action ( func , user_data ) ) if len ( self . _match_actions [ rulekey ] . actions ) == 0 : await self . bus_remove_match_async ( rulekey , error , timeout ) del self . _match_actions [ rulekey ] if len ( self . _match_actions ) == 0 : self . remove_filter ( self . _rule_action_match , None )
removes a message filter previously installed with bus_add_match_action.