mirror of
https://github.com/python/cpython.git
synced 2025-09-29 11:45:57 +00:00
[3.6] bpo-31567: add or fix decorator markup in docs (GH-3959) (GH-3966)
(cherry picked from commit 0e61e67a57
)
This commit is contained in:
parent
5f908005ce
commit
205dd4e14d
6 changed files with 24 additions and 15 deletions
|
@ -278,7 +278,7 @@ The :mod:`abc` module also provides the following decorators:
|
||||||
:func:`abstractmethod`, making this decorator redundant.
|
:func:`abstractmethod`, making this decorator redundant.
|
||||||
|
|
||||||
|
|
||||||
.. decorator:: abstractproperty(fget=None, fset=None, fdel=None, doc=None)
|
.. decorator:: abstractproperty
|
||||||
|
|
||||||
A subclass of the built-in :func:`property`, indicating an abstract
|
A subclass of the built-in :func:`property`, indicating an abstract
|
||||||
property.
|
property.
|
||||||
|
|
|
@ -182,9 +182,9 @@ are always available. They are listed here in alphabetical order.
|
||||||
base 16). :exc:`ValueError` will be raised if *i* is outside that range.
|
base 16). :exc:`ValueError` will be raised if *i* is outside that range.
|
||||||
|
|
||||||
|
|
||||||
.. function:: classmethod(function)
|
.. decorator:: classmethod
|
||||||
|
|
||||||
Return a class method for *function*.
|
Transform a method into a class method.
|
||||||
|
|
||||||
A class method receives the class as implicit first argument, just like an
|
A class method receives the class as implicit first argument, just like an
|
||||||
instance method receives the instance. To declare a class method, use this
|
instance method receives the instance. To declare a class method, use this
|
||||||
|
@ -1384,9 +1384,9 @@ are always available. They are listed here in alphabetical order.
|
||||||
|
|
||||||
For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`.
|
For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`.
|
||||||
|
|
||||||
.. function:: staticmethod(function)
|
.. decorator:: staticmethod
|
||||||
|
|
||||||
Return a static method for *function*.
|
Transform a method into a static method.
|
||||||
|
|
||||||
A static method does not receive an implicit first argument. To declare a static
|
A static method does not receive an implicit first argument. To declare a static
|
||||||
method, use this idiom::
|
method, use this idiom::
|
||||||
|
@ -1405,12 +1405,21 @@ are always available. They are listed here in alphabetical order.
|
||||||
:func:`classmethod` for a variant that is useful for creating alternate class
|
:func:`classmethod` for a variant that is useful for creating alternate class
|
||||||
constructors.
|
constructors.
|
||||||
|
|
||||||
|
Like all decorators, it is also possible to call ``staticmethod`` as
|
||||||
|
a regular function and do something with its result. This is needed
|
||||||
|
in some cases where you need a reference to a function from a class
|
||||||
|
body and you want to avoid the automatic transformation to instance
|
||||||
|
method. For these cases, use this idiom:
|
||||||
|
|
||||||
|
class C:
|
||||||
|
builtin_open = staticmethod(open)
|
||||||
|
|
||||||
For more information on static methods, consult the documentation on the
|
For more information on static methods, consult the documentation on the
|
||||||
standard type hierarchy in :ref:`types`.
|
standard type hierarchy in :ref:`types`.
|
||||||
|
|
||||||
.. index::
|
|
||||||
single: string; str() (built-in function)
|
|
||||||
|
|
||||||
|
.. index::
|
||||||
|
single: string; str() (built-in function)
|
||||||
|
|
||||||
.. _func-str:
|
.. _func-str:
|
||||||
.. class:: str(object='')
|
.. class:: str(object='')
|
||||||
|
|
|
@ -264,9 +264,9 @@ The :mod:`functools` module defines the following functions:
|
||||||
return value
|
return value
|
||||||
|
|
||||||
|
|
||||||
.. decorator:: singledispatch(default)
|
.. decorator:: singledispatch
|
||||||
|
|
||||||
Transforms a function into a :term:`single-dispatch <single
|
Transform a function into a :term:`single-dispatch <single
|
||||||
dispatch>` :term:`generic function`.
|
dispatch>` :term:`generic function`.
|
||||||
|
|
||||||
To define a generic function, decorate it with the ``@singledispatch``
|
To define a generic function, decorate it with the ``@singledispatch``
|
||||||
|
|
|
@ -440,7 +440,7 @@ The :mod:`test.support` module defines the following functions:
|
||||||
otherwise.
|
otherwise.
|
||||||
|
|
||||||
|
|
||||||
.. decorator:: skip_unless_symlink()
|
.. decorator:: skip_unless_symlink
|
||||||
|
|
||||||
A decorator for running tests that require support for symbolic links.
|
A decorator for running tests that require support for symbolic links.
|
||||||
|
|
||||||
|
|
|
@ -897,17 +897,17 @@ The module defines the following classes, functions and decorators:
|
||||||
|
|
||||||
See :pep:`484` for details and comparison with other typing semantics.
|
See :pep:`484` for details and comparison with other typing semantics.
|
||||||
|
|
||||||
.. decorator:: no_type_check(arg)
|
.. decorator:: no_type_check
|
||||||
|
|
||||||
Decorator to indicate that annotations are not type hints.
|
Decorator to indicate that annotations are not type hints.
|
||||||
|
|
||||||
The argument must be a class or function; if it is a class, it
|
This works as class or function :term:`decorator`. With a class, it
|
||||||
applies recursively to all methods defined in that class (but not
|
applies recursively to all methods defined in that class (but not
|
||||||
to methods defined in its superclasses or subclasses).
|
to methods defined in its superclasses or subclasses).
|
||||||
|
|
||||||
This mutates the function(s) in place.
|
This mutates the function(s) in place.
|
||||||
|
|
||||||
.. decorator:: no_type_check_decorator(decorator)
|
.. decorator:: no_type_check_decorator
|
||||||
|
|
||||||
Decorator to give another decorator the :func:`no_type_check` effect.
|
Decorator to give another decorator the :func:`no_type_check` effect.
|
||||||
|
|
||||||
|
|
|
@ -1471,8 +1471,8 @@ class ForwardRefTests(BaseTestCase):
|
||||||
def test_meta_no_type_check(self):
|
def test_meta_no_type_check(self):
|
||||||
|
|
||||||
@no_type_check_decorator
|
@no_type_check_decorator
|
||||||
def magic_decorator(deco):
|
def magic_decorator(func):
|
||||||
return deco
|
return func
|
||||||
|
|
||||||
self.assertEqual(magic_decorator.__name__, 'magic_decorator')
|
self.assertEqual(magic_decorator.__name__, 'magic_decorator')
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue