def update(self, func, **kw):
func.__name__ = self.name<EOL>func.__doc__ = getattr(self, '<STR_LIT>', None)<EOL>func.__dict__ = getattr(self, '<STR_LIT>', {})<EOL>func.__defaults__ = self.defaults<EOL>func.__kwdefaults__ = self.kwonlydefaults or None<EOL>func.__annotations__ = getattr(self, '<STR_LIT>', None)<EOL>try:<EOL><INDENT>frame = sys._getframe(<NUM_LIT:3>)<EOL><DEDENT>except AttributeError:  <EOL><INDENT>callermodule = '<STR_LIT:?>'<EOL><DEDENT>else:<EOL><INDENT>callermodule = frame.f_globals.get('<STR_LIT>', '<STR_LIT:?>')<EOL><DEDENT>func.__module__ = getattr(self, '<STR_LIT>', callermodule)<EOL>func.__dict__.update(kw)<EOL>
Update the signature of func with the data in self