File tree Expand file tree Collapse file tree 1 file changed +20
-15
lines changed
Expand file tree Collapse file tree 1 file changed +20
-15
lines changed Original file line number Diff line number Diff line change 3636from .lazyre import LazyReCompile
3737
3838
39+ class _Repr :
40+ """
41+ Helper for `ArgSpec`: Returns the given value in `__repr__()`.
42+ """
43+
44+ __slots__ = ("value" ,)
45+
46+ def __init__ (self , value : str ) -> None :
47+ self .value = value
48+
49+ def __repr__ (self ) -> str :
50+ return self .value
51+
52+ __str__ = __repr__
53+
54+
3955@dataclass
4056class ArgSpec :
4157 args : List [str ]
@@ -110,20 +126,6 @@ def __exit__(
110126 return False
111127
112128
113- class _Repr :
114- """
115- Helper for `fixlongargs()`: Returns the given value in `__repr__()`.
116- """
117-
118- def __init__ (self , value : str ) -> None :
119- self .value = value
120-
121- def __repr__ (self ) -> str :
122- return self .value
123-
124- __str__ = __repr__
125-
126-
127129def parsekeywordpairs (signature : str ) -> Dict [str , str ]:
128130 preamble = True
129131 stack = []
@@ -293,12 +295,15 @@ def _get_argspec_from_signature(f: Callable) -> ArgSpec:
293295
294296 """
295297 args = []
296- varargs = varkwargs = None
298+ varargs = None
299+ varkwargs = None
297300 defaults = []
298301 kwonly = []
299302 kwonly_defaults = {}
300303 annotations = {}
301304
305+ # We use signature here instead of getfullargspec as the latter also returns
306+ # self and cls (for class methods).
302307 signature = inspect .signature (f )
303308 for parameter in signature .parameters .values ():
304309 if parameter .annotation is not parameter .empty :
You can’t perform that action at this time.
0 commit comments