@property<EOL><INDENT>def recursive_bases(self):<DEDENT>
if self._recursive_bases is None:<EOL><INDENT>to_go = self.bases[:]<EOL>all_bases = []<EOL>while to_go:<EOL><INDENT>base = to_go.pop()<EOL>if base not in all_bases:<EOL><INDENT>all_bases.append(base)<EOL>to_go.extend(base.related_class.bases)<EOL><DEDENT><DEDENT>self._recursive_bases = all_bases<EOL><DEDENT>return self._recursive_bases<EOL>
list of all :class:`base classes <hierarchy_info_t>`