(self, pyClassObj: type)
Extract a topic definition from a Python class: topic name,
        docstring, and MDS, and docstring for each message data.
        The class name is the topic name, assumed to be a root topic, and
        descends recursively into nested classes to define subtopic etc.
Extract a topic definition from a Python class: topic name,
        docstring, and MDS, and docstring for each message data.
        The class name is the topic name, assumed to be a root topic, and
        descends recursively into nested classes to define subtopic etc.
Extract a topic definition from a Python class : topic name docstring and MDS and docstring for each message data . The class name is the topic name assumed to be a root topic and descends recursively into nested classes to define subtopic etc .
def __addDefnFromClassObj(self, pyClassObj: type):
        """
        Extract a topic definition from a Python class: topic name,
        docstring, and MDS, and docstring for each message data.
        The class name is the topic name, assumed to be a root topic, and
        descends recursively into nested classes to define subtopic etc.
        """
        if self.__iterStarted:
            raise RuntimeError('addDefnFromClassObj must be called before iteration started!')

        parentNameTuple = (pyClassObj.__name__,)
        if pyClassObj.__doc__ is not None:
            self.__rootTopics.append((parentNameTuple, pyClassObj))
            if self.__rootDoc is None:
                self.__rootDoc = pyClassObj.__doc__

        self.__findTopics(pyClassObj, parentNameTuple)

        # iterator is now out of sync, so reset it; obviously this would
        # screw up getNextTopic which is why we had to test for self.__iterStarted
        self.__nextTopic = iter(self.__rootTopics)
def __addDefnFromClassObj ( self , pyClassObj : type ) : if self . __iterStarted : raise RuntimeError ( 'addDefnFromClassObj must be called before iteration started!' ) parentNameTuple = ( pyClassObj . __name__ , ) if pyClassObj . __doc__ is not None : self . __rootTopics . append ( ( parentNameTuple , pyClassObj ) ) if self . __rootDoc is None : self . __rootDoc = pyClassObj . __doc__ self . __findTopics ( pyClassObj , parentNameTuple ) # iterator is now out of sync, so reset it; obviously this would # screw up getNextTopic which is why we had to test for self.__iterStarted self . __nextTopic = iter ( self . __rootTopics )