2
2
from inspect import signature
3
3
from warnings import warn
4
4
5
+ from multimethod import multimethod , DispatchError
6
+
5
7
6
8
class deprecate_kwarg :
7
9
def __init__ (self , name , new_value ):
@@ -25,6 +27,28 @@ def wrapped(*args, **kwargs):
25
27
26
28
return wrapped
27
29
30
+
31
+ class deprecate :
32
+ def __call__ (self , f ):
33
+ @wraps (f )
34
+ def wrapped (* args , ** kwargs ):
35
+
36
+ warn (f"{ f .__name__ } will be removed in the next release." , FutureWarning )
37
+
38
+ return f (* args , ** kwargs )
39
+
40
+ return wrapped
41
+
42
+
43
+ class cqmultimethod (multimethod ):
44
+ def __call__ (self , * args , ** kwargs ):
45
+
46
+ try :
47
+ return super ().__call__ (* args , ** kwargs )
48
+ except DispatchError :
49
+ return next (iter (self .values ()))(* args , ** kwargs )
50
+
51
+
28
52
class deprecate_kwarg_name :
29
53
def __init__ (self , name , new_name ):
30
54
@@ -46,22 +70,4 @@ def wrapped(*args, **kwargs):
46
70
return f (* args , ** kwargs )
47
71
48
72
return wrapped
49
-
50
- class deprecate :
51
- def __call__ (self , f ):
52
- @wraps (f )
53
- def wrapped (* args , ** kwargs ):
54
-
55
- warn (f"{ f .__name__ } will be removed in the next release." , FutureWarning )
56
-
57
- return f (* args , ** kwargs )
58
-
59
- return wrapped
60
-
61
- class cqmultimethod (multimethod ):
62
- def __call__ (self , * args , ** kwargs ):
63
-
64
- try :
65
- return super ().__call__ (* args , ** kwargs )
66
- except DispatchError :
67
- return next (iter (self .values ()))(* args , ** kwargs )
73
+
0 commit comments