code: def watch(self, signal_name):
  		
  		watcher = WSignalSource.Watcher(
  			self.__queues[signal_name], lambda x: self.__watchers_callbacks[signal_name].remove(x)
  		)
  		self.__watchers_callbacks[signal_name].add(watcher)
  		return watcher
docs: :meth:`.WSignalSourceProto.watch` implementation
  
  		:rtype: watcher: WSignalSource.Watcher