diff options
| author | Michele Simionato <michele.simionato@gmail.com> | 2015-07-24 06:37:15 +0200 |
|---|---|---|
| committer | Michele Simionato <michele.simionato@gmail.com> | 2015-07-24 06:37:15 +0200 |
| commit | ec593bcda97927900a3989ebc76340edd977fe20 (patch) | |
| tree | 9b4cd81a47baed88c2d3023d941bc25b636bae77 /src/tests/documentation.py | |
| parent | 8b7b3aba63d278eb391c3c9b0ccbe065559f1b93 (diff) | |
| download | python-decorator-git-ec593bcda97927900a3989ebc76340edd977fe20.tar.gz | |
Removed dependency from inspect.getargspec
Diffstat (limited to 'src/tests/documentation.py')
| -rw-r--r-- | src/tests/documentation.py | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/tests/documentation.py b/src/tests/documentation.py index e0bc070..89dd6ec 100644 --- a/src/tests/documentation.py +++ b/src/tests/documentation.py @@ -166,9 +166,9 @@ keyword arguments: .. code-block:: python - >>> from inspect import getargspec + >>> from decorator import getargspec >>> print(getargspec(f1)) - ArgSpec(args=[], varargs='args', keywords='kw', defaults=None) + ArgSpec(args=[], varargs='args', varkw='kw', defaults=None) This means that introspection tools such as *pydoc* will give wrong informations about the signature of ``f1``, unless you are @@ -240,7 +240,7 @@ The signature of ``heavy_computation`` is the one you would expect: .. code-block:: python >>> print(getargspec(heavy_computation)) - ArgSpec(args=[], varargs=None, keywords=None, defaults=None) + ArgSpec(args=[], varargs=None, varkw=None, defaults=None) A ``trace`` decorator ------------------------------------------------------ @@ -273,7 +273,7 @@ and it that it has the correct signature: .. code-block:: python >>> print(getargspec(f1)) - ArgSpec(args=['x'], varargs=None, keywords=None, defaults=None) + ArgSpec(args=['x'], varargs=None, varkw=None, defaults=None) The same decorator works with functions of any signature: @@ -287,7 +287,7 @@ The same decorator works with functions of any signature: calling f with args (0, 3, 2), {} >>> print(getargspec(f)) - ArgSpec(args=['x', 'y', 'z'], varargs='args', keywords='kw', defaults=(1, 2)) + ArgSpec(args=['x', 'y', 'z'], varargs='args', varkw='kw', defaults=(1, 2)) $FUNCTION_ANNOTATIONS @@ -546,9 +546,8 @@ a tuple of defaults: >>> f1 = FunctionMaker.create( ... 'f1(a, b)', 'f(a, b)', dict(f=f), addsource=True, defaults=(None,)) - >>> import inspect - >>> print(inspect.getargspec(f1)) - ArgSpec(args=['a', 'b'], varargs=None, keywords=None, defaults=(None,)) + >>> print(getargspec(f1)) + ArgSpec(args=['a', 'b'], varargs=None, varkw=None, defaults=(None,)) Getting the source code @@ -569,6 +568,7 @@ $$example .. code-block:: python + >>> import inspect >>> print(inspect.getsource(example)) def wrapper(*args, **kw): return func(*args, **kw) @@ -1045,7 +1045,8 @@ annotations. Here is an example: ... pass In order to introspect functions with annotations, one needs the -utility ``inspect.getfullargspec``, new in Python 3: +utility ``inspect.getfullargspec``, new in Python 3 (and deprecated +in favor of ``inspect.signature`` in Python 3.5): .. code-block:: python |
