#NEWLINE# def merge( self , other , deep_copy = False ) : #NEWLINE# #INDENT# 'Merges the current task detail with the given one.\n\n        NOTE(harlowja): This merge does **not** copy and replace\n        the ``results`` or ``revert_results`` if it differs. Instead the\n        current objects ``results`` and ``revert_results`` attributes directly\n        becomes (via assignment) the other objects attributes. Also note that\n        if the provided object is this object itself then **no** merging is\n        done.\n\n        See: https://bugs.launchpad.net/taskflow/+bug/1452978 for\n        what happens if this is copied at a deeper level (for example by\n        using ``copy.deepcopy`` or by using ``copy.copy``).\n\n        :returns: this task detail (freshly merged with the incoming object)\n        :rtype: :py:class:`.TaskDetail`\n        ' #NEWLINE# if ( not isinstance ( other , TaskDetail ) ) : #NEWLINE# #INDENT# raise exc . NotImplementedError ( 'Can only merge with other task details' ) #NEWLINE# #UNINDENT# if ( other is self ) : #NEWLINE# #INDENT# return self #NEWLINE# #UNINDENT# super ( TaskDetail , self ) . merge ( other , deep_copy = other ) #NEWLINE# self . results = other . results #NEWLINE# self . revert_results = other . revert_results #NEWLINE# return self