def report(self, fileobj=None, indent=0, clobber=False):

        return_string = False
        filepath = None

        if isinstance(fileobj, string_types):
            if os.path.exists(fileobj) and not clobber:
                raise IOError("File {0} exists, aborting (pass in "
                              "clobber=True to overwrite)".format(fileobj))
            else:
                filepath = fileobj
                fileobj = open(filepath, 'w')
        elif fileobj is None:
            fileobj = StringIO()
            return_string = True

        self._fileobj = fileobj
        self._indent = indent  # This is used internally by _writeln

        try:
            self._report()
        finally:
            if filepath:
                fileobj.close()

        if return_string:
            return fileobj.getvalue()
Generates a text report on the differences (if any) between two
dataset/ETHPy150Open spacetelescope/PyFITS/pyfits/diff.py/_BaseDiff.report