def write_list(self, out, heading, doc, value_type=None, imported=False,
                   inherited=False, prefix='', noindent=False,
                   verbose=True):
        # Get a list of the VarDocs we should describe.
        if isinstance(doc, ClassDoc):
            var_docs = doc.select_variables(value_type=value_type,
                                            imported=imported,
                                            inherited=inherited)
        else:
            var_docs = doc.select_variables(value_type=value_type,
                                            imported=imported)
        if not var_docs: return

        out(prefix+'\n')
        if not noindent:
            out(self.section(heading, prefix))
            prefix += '    '

        for i, var_doc in enumerate(var_docs):
            val_doc, name = var_doc.value, var_doc.name

            if not var_doc.is_public and not self._show_private:
                continue

            if verbose:
                out(prefix+'\n')

            # hmm:
            if not verbose:
                if isinstance(doc, ClassDoc):
                    name = var_doc.canonical_name
                elif val_doc not in (None, UNKNOWN):
                    name = val_doc.canonical_name
                    
            if isinstance(val_doc, RoutineDoc):
                self.write_function(out, val_doc, name, prefix, verbose)
            elif isinstance(val_doc, PropertyDoc):
                self.write_property(out, val_doc, name, prefix, verbose)
            elif isinstance(val_doc, ClassDoc):
                self.write_class(out, val_doc, name, prefix, verbose)
            else:
                self.write_variable(out, var_doc, name, prefix, verbose)
dataset/ETHPy150Open CollabQ/CollabQ/vendor/epydoc/docwriter/plaintext.py/PlaintextWriter.write_list/original