Я пытаюсь обернуть объект слушателя, который принимает функции обратного вызова, своим собственным объектом, который проверит некоторые условия и вызовет переданные функции обратного вызова в зависимости от условий. Разве python не позволяет передавать функции в классы и устанавливать их как переменные класса?
Это то, что я хотел бы сделать, но я получаю не вызываемую ошибку:
class Wrapper:
def __init__(fun1, fun2):
self.fun1 = fun1
self.fun2 = fun2
self.listener = None
def _fun1:
if condition1:
self.fun1()
def _fun2:
if condition2:
self.fun2()
def GetListener():
return module.Listener(callback1=self._fun1, callback2=self._fun2)
Я понимаю, что python не рассматривает переменные класса как функции, но как еще мне обернуть функции обратного вызова? Я знаю, что смогу сделать это на других языках программирования.
Спасибо за любую помощь!