mirror of https://github.com/GNS3/gns3-server
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
380 B
21 lines
380 B
import functools
|
|
|
|
|
|
class patch:
|
|
|
|
originals = {}
|
|
|
|
def __init__(self, host, name):
|
|
self.host = host
|
|
self.name = name
|
|
|
|
def __call__(self, func):
|
|
original = getattr(self.host, self.name)
|
|
self.originals[self.name] = original
|
|
|
|
functools.update_wrapper(func, original)
|
|
setattr(self.host, self.name, func)
|
|
|
|
return func
|
|
|