added Deprecator
This commit is contained in:
30
adhoc.py
30
adhoc.py
@ -3,7 +3,7 @@ from time import sleep
|
|||||||
|
|
||||||
from epics import PV
|
from epics import PV
|
||||||
|
|
||||||
#from slic.core.adjustable import Adjustable
|
from slic.core.adjustable import PVAdjustable
|
||||||
from slic.devices.device import Device
|
from slic.devices.device import Device
|
||||||
from slic.devices.simpledevice import SimpleDevice
|
from slic.devices.simpledevice import SimpleDevice
|
||||||
from slic.devices.general.motor import Motor
|
from slic.devices.general.motor import Motor
|
||||||
@ -52,3 +52,31 @@ class TXS(Device):
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
from colorama import Fore, Style
|
||||||
|
|
||||||
|
|
||||||
|
class Deprecator:
|
||||||
|
|
||||||
|
def __init__(self, old_name, new_name):
|
||||||
|
self._old_name = old_name
|
||||||
|
self._new_name = new_name
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return ""
|
||||||
|
|
||||||
|
def __getattr__(self, name):
|
||||||
|
print(
|
||||||
|
Fore.RED +
|
||||||
|
f"\"{self._old_name}\" has been renamed \"{self._new_name}\""
|
||||||
|
+ Style.RESET_ALL
|
||||||
|
)
|
||||||
|
return lambda *args, **kwargs: self._method(self._new_name, name, *args, **kwargs)
|
||||||
|
|
||||||
|
def _method(self, new_name, meth_name, *args, **kwargs):
|
||||||
|
args = [repr(v) for v in args]
|
||||||
|
args += [f"{k}={repr(v)}" for k, v in kwargs.items()]
|
||||||
|
args = ", ".join(args)
|
||||||
|
print(f"please use the following command instead:\n {new_name}.{meth_name}({args})")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user