Represent the “signature” or protocol of a listener in the context of topics.
Inputs |
|
Return a tuple of names indicating which call arguments |
CallArgsInfo
¶Represent the “signature” or protocol of a listener in the context of topics.
__init__
(self, func, firstArgIdx)¶Inputs: - Args and defaultVals are the complete set of arguments and
default values as obtained form inspect.getargspec();
The firstArgIdx points to the first item in args that is of use, so it is typically 0 if listener is a function, and 1 if listener is a method.
The acceptsAllKwargs should be true if the listener has **kwargs in its protocol.
After construction, - self.allParams will contain the subset of ‘args’ without first
firstArgIdx items,
self.numRequired will indicate number of required arguments (ie self.allParams[:self.numRequired] are the required args names);
self.acceptsAllKwargs = acceptsAllKwargs
self.autoTopicArgName will be the name of argument in which to put the topic object for which pubsub message is sent, or None. This is identified by the argument that has a default value of AUTO_TOPIC.
For instance, listener(self, arg1, arg2=AUTO_TOPIC, arg3=None) will have self.allParams = (arg1, arg2, arg3), self.numRequired=1, and self.autoTopicArgName = ‘arg2’, whereas listener(self, arg1, arg3=None) will have self.allParams = (arg1, arg3), self.numRequired=1, and self.autoTopicArgName = None.
getAllArgs
(self)¶getOptionalArgs
(self)¶getRequiredArgs
(self)¶Return a tuple of names indicating which call arguments are required to be present when pub.sendMessage(…) is called.