def __str__(self):
if self._module_names:<EOL><INDENT>ret = []<EOL>ret.append("<STR_LIT>")<EOL>for module_name in sorted(self._module_names):<EOL><INDENT>ret.append("<STR_LIT>".format(module_name))<EOL><DEDENT>if self._class_names:<EOL><INDENT>ret.append("<STR_LIT>")<EOL>for class_name in sorted(self._class_names):<EOL><INDENT>ret.append("<STR_LIT>".format(class_name))<EOL><DEDENT><DEDENT>for entry in sorted(self._modules_dict):<EOL><INDENT>dict_value = self._modules_dict[entry]<EOL>for value in sorted(dict_value, key=lambda x: x["<STR_LIT>"][<NUM_LIT:1>]):<EOL><INDENT>start, stop = value["<STR_LIT>"][<NUM_LIT:1>], value["<STR_LIT>"]<EOL>cname, ctype = value["<STR_LIT:name>"], value["<STR_LIT:type>"]<EOL>range_lines = (start, ["<STR_LIT>", "<STR_LIT:->" + str(stop)][start != stop])<EOL>crange = "<STR_LIT>".format(*range_lines)<EOL>ret.append("<STR_LIT>".format(cname, ctype, crange))<EOL><DEDENT><DEDENT>return "<STR_LIT:\n>".join(ret)<EOL><DEDENT>return "<STR_LIT>"<EOL>
Return a string with a detailed description of the object's contents.

For example:

    >>> from __future__ import print_function
    >>> import pexdoc.pinspect, os, sys
    >>> import docs.support.pinspect_example_1
    >>> cobj = pexdoc.pinspect.Callables([
    ...     sys.modules['docs.support.pinspect_example_1'].__file__
    ... ])
    >>> print(cobj) #doctest: +ELLIPSIS
    Modules:
       ...pinspect_example_1
    Classes:
       ...pinspect_example_1.my_func.MyClass
    ...pinspect_example_1.my_func: func (10-29)
    ...pinspect_example_1.my_func.MyClass: class (13-29)
    ...pinspect_example_1.my_func.MyClass.__init__: meth (21-23)
    ...pinspect_example_1.my_func.MyClass._get_value: meth (24-26)
    ...pinspect_example_1.my_func.MyClass.value: prop (27-29)
    ...pinspect_example_1.print_name: func (30-31)

The numbers in parenthesis indicate the line number in which the
callable starts and ends within the file it is defined in